我最近正在为我们的产品开发基于AKS设置的POC。
我有2个问题:
1)我已经启用了插件http_application_routing,但看起来入口控制器pod并没有进入运行状态,如下所述:
kube-system addon-http-application-routing-nginx-ingress-controller-86l25ch 0/1 CrashLoopBackOff 18 1h
我检查了此Pod的日志,发现它没有必需的端点:
========
I0627 07:47:35.762857 8 flags.go:162]注意入口类:addon-http-application-routing W0627 07:47:35.762949 8 flags.go:165]此入口控制器仅处理类为“ addon-http-application-routing”的入口 W0627 07:47:35.763463 8 client_config.go:533] --kubeconfig和--master都未指定。使用inClusterConfig。这可能不起作用。 I0627 07:47:35.763682 8 main.go:181]为https://xx.xxx.x.x:443创建API客户端 I0627 07:47:35.812757 8 main.go:225]在Kubernetes群集版本v1.10(v1.10.3)中运行-git(干净)提交xxxxxxxxxxxxxxxxxxxx-平台linux / amd64 I0627 07:47:35.824981 8 main.go:84]验证了kube-system / addon-http-application-routing-default-http-backend作为默认后端
我可以看到到目前为止,没有为入口路由分配外部IP:
==========
kubectl get svc -n kube-system addon-http-application-routing-nginx-ingress 名称类型集群IP外部IP端口年龄
对于aks群集设置,这是我在Azure cli中完成的操作:
======
az aks create --resource-group xxxx --name xxxxxxxxx --admin-username xxxxx --dns-name-prefix xxxxxxxxx --enable-addons http_application_routing --network-plugin kubenet --enable-rbac --kubernetes -version 1.10.3 --location eastus --node-count x --node-vm-size Standard_xx_xx --node-osdisk-size xxx --pod-cidr 10.244.0.0/16 --service-cidr 10.110.0.0/ 16 --dns-service-ip 10.110.0.10 --docker-bridge-address 172.17.0.1/16 --service-principal xxxxxxxxx --client-secret xxxxxxxxx --generate-ssh-keys --debug
======
AKS的安装成功。我是否由于上述nginx入口http路由未联机而错过了上面的内容?
2)我的第二个问题是关于使用NodePorts而不是Ingress / LoadBalancer访问容器内部的应用程序。
我们在容器中运行了一些应用程序,这些应用程序仅用于内部访问,在AKS之前,我们使用社区K8,因为它使用了主机的私有IP和映射到容器端口的Nodeport之一的组合。我不确定如何在AKS环境中实现相同的目标。
此外,对于联网,我们使用基本联网而不是高级联网。
如果我对AKS是正确的,则主控平面和控制平面的所有控制都由Azure管理,因此我对IP也没有洞察力。
关于如何使用节点端口从浏览器访问容器中运行的应用程序的任何想法。
最好的问候,
MaheshR