我有困難我Kubernetes集羣上訪問NodePort服務。Kubernetes集羣在AWS上與芭斯 - NodePort服務不可用
目標
設置ALB入口控制器,這樣我可以使用WebSockets和HTTP/2
設置NodePort服務所要求的是,控制器採取
步驟
以前,在AWS eu-west-1上創建了一個Kops(1.6.2版)集羣。增加了用於nginx入口的kops插件以及Kube-lego。 ELB入口正常工作。
設置的ALB入口控制器使用由該項目指定IAM的個人資料了AWS的密鑰。從負載平衡器
改變後的服務類型來使用NodePort替換kubectl --force
> kubectl describe svc my-nodeport-service
Name: my-node-port-service
Namespace: default
Labels: <none>
Selector: service=my-selector
Type: NodePort
IP: 100.71.211.249
Port: <unset> 80/TCP
NodePort: <unset> 30176/TCP
Endpoints: 100.96.2.11:3000
Session Affinity: None
Events: <none>
> kubectl describe pods my-nodeport-pod
Name: my-nodeport-pod
Node: <ip>.eu-west-1.compute.internal/<ip>
Labels: service=my-selector
Status: Running
IP: 100.96.2.11
Containers:
update-center:
Port: 3000/TCP
Ready: True
Restart Count: 0
(ssh into node)
$ sudo netstat -nap | grep 30176
tcp6 0 0 :::30176 :::* LISTEN 2093/kube-proxy
結果
從ALB捲曲從<public ip address of all nodes>:<node port for service>
掛起
捲曲掛起
預期
捲曲來自ALB並直接向節點:節點端口應該返回200「OK」(該服務的HTTP響應於根)
更新:在github在一些進一步的細節以上引用創建 問題有些情況是:
- https://github.com/kubernetes/kubernetes/issues/50261
- https://github.com/coreos/alb-ingress-controller/issues/169
- https://github.com/kubernetes/kops/issues/3146