coredns 没有部署在新的 EKS 集群中?
coredns not deploying in new EKS cluster?
我正在使用具有 public 和私有子网的现有 VPC 在 Fargate(无 EC2 节点)中部署 AWS EKS 集群,并且能够使用 eksctl
成功创建集群。但是,我看到 coredns
部署卡在 EKS 控制台的 0/2 Pods ready
处。我读到我需要在我的安全组规则中启用端口 53,我已经启用了。这是我的配置文件。
$ eksctl create cluster -f eks-sandbox-cluster.yaml
eks-sandbox-cluster.yaml
------------------------
kind: ClusterConfig
apiVersion: eksctl.io/v1alpha5
metadata:
name: sandbox
region: us-east-1
version: "1.18"
# The VPC and subnets are for the data plane, where the pods will
# ultimately be deployed.
vpc:
id: "vpc-12345678"
clusterEndpoints:
privateAccess: true
publicAccess: false
subnets:
# us-east-1a is full
private:
us-east-1b:
id: "subnet-xxxxxxxx"
us-east-1c:
id: "subnet-yyyyyyy"
public:
us-east-1b:
id: "subnet-aaaaaaaa"
us-east-1c:
id: "subnet-bbbbbbbb"
fargateProfiles:
- name: fp-default
selectors:
- namespace: default
- name: fp-kube
- namespace: kube-system
- name: fp-myapps
selectors:
- namespace: myapp
labels:
app: myapp
cloudWatch:
clusterLogging:
enableTypes: ["api", "audit", "authenticator", "controllerManager", "scheduler"]
为什么没有出现 coredns 部署?
我确实在 kube-scheduler
CloudWatch 日志中看到了这一点。
I0216 16:46:43.841076 1 factory.go:459] Unable to schedule kube-system/coredns-c79dcb98c-9pfrz: no nodes are registered to the cluster; waiting
我认为因此我无法通过 kubectl
?
与我的集群通信
$ kubectl get pods
Unable to connect to the server: dial tcp 10.23.x.x:443: i/o timeout
当我使用配置文件部署 EKS 集群时,使用我们现有的 VPC 和仅私有端点,coredns 部署设置为在 EC2 节点上启动。当然,Fargate 没有 EC2 节点。我必须编辑 coredns
部署以使用 fargate
并重新启动部署。
我正在使用具有 public 和私有子网的现有 VPC 在 Fargate(无 EC2 节点)中部署 AWS EKS 集群,并且能够使用 eksctl
成功创建集群。但是,我看到 coredns
部署卡在 EKS 控制台的 0/2 Pods ready
处。我读到我需要在我的安全组规则中启用端口 53,我已经启用了。这是我的配置文件。
$ eksctl create cluster -f eks-sandbox-cluster.yaml
eks-sandbox-cluster.yaml
------------------------
kind: ClusterConfig
apiVersion: eksctl.io/v1alpha5
metadata:
name: sandbox
region: us-east-1
version: "1.18"
# The VPC and subnets are for the data plane, where the pods will
# ultimately be deployed.
vpc:
id: "vpc-12345678"
clusterEndpoints:
privateAccess: true
publicAccess: false
subnets:
# us-east-1a is full
private:
us-east-1b:
id: "subnet-xxxxxxxx"
us-east-1c:
id: "subnet-yyyyyyy"
public:
us-east-1b:
id: "subnet-aaaaaaaa"
us-east-1c:
id: "subnet-bbbbbbbb"
fargateProfiles:
- name: fp-default
selectors:
- namespace: default
- name: fp-kube
- namespace: kube-system
- name: fp-myapps
selectors:
- namespace: myapp
labels:
app: myapp
cloudWatch:
clusterLogging:
enableTypes: ["api", "audit", "authenticator", "controllerManager", "scheduler"]
为什么没有出现 coredns 部署?
我确实在 kube-scheduler
CloudWatch 日志中看到了这一点。
I0216 16:46:43.841076 1 factory.go:459] Unable to schedule kube-system/coredns-c79dcb98c-9pfrz: no nodes are registered to the cluster; waiting
我认为因此我无法通过 kubectl
?
$ kubectl get pods
Unable to connect to the server: dial tcp 10.23.x.x:443: i/o timeout
当我使用配置文件部署 EKS 集群时,使用我们现有的 VPC 和仅私有端点,coredns 部署设置为在 EC2 节点上启动。当然,Fargate 没有 EC2 节点。我必须编辑 coredns
部署以使用 fargate
并重新启动部署。