我正在尝试使用Kubeadm初始化Kubernetes集群。
我基本上有3个问题。 1个大问题和2个“子问题”,如果愿意的话
我很难为集群分配集群名称。当我读到Worksheets("1099-Misc_Form_Template").Range("B2:B" & LastRow).Formula = "=IF(COUNTIF('payorTab'!A:A,B2)>0, """", ""PayerID is not set up"")"
docs时,它带有一个标记kubeadm
,您可以在其中指定将用于初始化集群的yml文件。
在他们的页面上指定了一个示例yml文件,但是该文件有很多配置,我不知道如何设置。因此,我创建了如下配置文件:
--config
我这样apiVersion: kubeadm.k8s.io/v1beta1
kind: InitConfiguration
advertiseAddress: "10.62.194.4" # is this correct (see below)
bindPort: 6443
---
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
networking:
podSubnet: "10.62.194.0/16" # is this correct (see below)
controlPlaneEndpoint: "10.62.194.4:6443" #is this correct (see below)
clusterName: "dev-cluster"
但是,当我尝试初始化上面的文件时,它无法按预期工作,并在一段时间后超时
错误与此类似: 不幸的是,发生了一个错误:等待条件超时 该错误可能是由于: -kubelet没有运行 -由于节点的某种方式错误配置(必需的cgroup禁用),因此kubelet不健康
当我执行sudo kubeadm init --config=config.yml
时,我可以看到kube系统容器全部在运行,没有退出的容器。正在运行的容器是
库伯调度器
kube-controller-manager_kube-controller
kube-apiserver
etcd-ubuntu
kube-controller-manager-ubuntu-xenial
第二个问题:群集名称重要吗?我想设置一个群集名称,因为我打算为3个不同的环境设置3个群集,这意味着3个不同的上下文。如果所有3个具有相同的默认集群名称,会出现问题吗?
如果我正在运行命令的服务器的IP(也是主服务器)的IP是docker ps
,则字段的10.62.194.4
,advertiseAddress
和podSubnet
对吗?我正计划向该群集中再添加一个节点,该节点的IP为10.62.194.5
谢谢
答案 0 :(得分:0)
我相信,您打算设置高可用性的kubernetes设置。您必须在controlPlaneEndpoint选项上配置/提供负载均衡器IP。
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterConfiguration
networking:
podSubnet: "10.62.194.0/16"
controlPlaneEndpoint: "Loadbalancer IP:6443"
clusterName: "dev-cluster"
您必须在kubeadm初始化命令上添加--upload-certs选项,如下所示。
sudo kubeadm init --config=config.yaml --upload-certs
以上命令的输出提供了join命令,可将另一个主节点添加到此HA kubernetes集群设置中。
答案 1 :(得分:0)
我知道这有点晚了,但podSubnet似乎与您拥有节点的子网重叠。我将为此使用一个不同的/ 16子网,并将节点(VM或裸机)分配给另一个子网。