簡體   English   中英

AWS EKS 沒有暴露的端口

[英]AWS EKS no exposed ports

所以我一直在努力解決我無法在我的 eks 集群中公開任何部署的事實。

我得到了這個:

  1. 我的 LoadBalancer 服務公共 IP 從不響應
  2. 轉到我的 aws 控制台中的負載均衡器部分
  3. 負載均衡器不工作,因為我的集群節點沒有通過健康檢查
  4. SSHd 到我的集群節點,發現容器沒有關聯的端口:

在此處輸入圖片說明

這會使集群節點無法通過運行狀況檢查,因此不會以這種方式轉發流量。

在此處輸入圖片說明

我嘗試手動運行一個簡單的 nginx 容器,而不直接在我的集群節點中使用 kubectl:

docker run -p 80:80 nginx

並在我的瀏覽器中粘貼節點公共 IP。 沒運氣:

在此處輸入圖片說明

然后我嘗試通過 ssh 直接從集群節點 curl 到 nginx 容器:

 curl localhost

我收到了這樣的回復:“curl: (7) 無法連接到本地主機端口 80:連接被拒絕”

  • 為什么集群節點中的容器不顯示端口?
  • 如何讓集群節點通過負載均衡器健康檢查?
  • 是否與我使用 eksctl 創建了單節點集群有關?
  • 我還有哪些其他選項可以在 AWS 中輕松運行 kubernetes 集群?

這是介於答案和問題之間的東西,但我希望它會幫助你。

在創建 EKS 集群時,我多年來一直使用使用Amazon EKS指南部署 Kubernetes集群。

出於測試目的,我剛剛啟動了新集群,它按預期工作,包括使用外部 LB ip 訪問測試應用程序並通過健康檢查...

簡而言之,您需要:

1.創建 EKS 角色

2.創建要在 EKS 中使用的 VPC

3.https://amazon-eks.s3-us-west-2.amazonaws.com/cloudformation/2019-01-09/amazon-eks-vpc-sample.yaml創建堆棧(Cloudformation)

4.導出變量以進一步簡化cli命令的使用

export EKS_CLUSTER_REGION=
export EKS_CLUSTER_NAME=
export EKS_ROLE_ARN=
export EKS_SUBNETS_ID=
export EKS_SECURITY_GROUP_ID=

5.創建集群,驗證其創建並生成適當的配置。

#Create
aws eks --region ${EKS_CLUSTER_REGION} create-cluster --name ${EKS_CLUSTER_NAME} --role-arn ${EKS_ROLE_ARN} --resources-vpc-config subnetIds=${EKS_SUBNETS_ID},securityGroupIds=${EKS_SECURITY_GROUP_ID}

#Verify
watch aws eks --region ${EKS_CLUSTER_REGION} describe-cluster --name ${EKS_CLUSTER_NAME} --query cluster.status

#Create .kube/config entry
aws eks --region ${EKS_CLUSTER_REGION} update-kubeconfig --name ${EKS_CLUSTER_NAME}

您能否檢查文章並確認您在安裝過程中沒有遺漏任何步驟?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM