初始化成功集群后,我们需要安装网络pod到集群中。这里使用是Calico。

安装Calico

只需在master节点执行安装。

安装Tigera Calico operator

命令如下

kubectl create -f tigera-operator.yaml

tigera-operator.yaml连接下载:tigera-operator下载https://raw.githubusercontent.com/projectcalico/calico/v3.24.5/manifests/tigera-operator.yaml

Calico安装

kubectl create -f custom-resources.yaml

根据需要修改参数cidr来匹配你设置pod网络cidr,custom-resources.yaml内容如下

# This section includes base Calico installation configuration.
# For more information, see: https://projectcalico.docs.tigera.io/master/reference/installation/api#operator.tigera.io/v1.Installation
apiVersion: operator.tigera.io/v1
kind: Installation
metadata:
  name: default
spec:
  # Configures Calico networking.
  calicoNetwork:
    # Note: The ipPools section cannot be modified post-install.
    ipPools:
    - blockSize: 26
      cidr: 192.168.0.0/16
      encapsulation: VXLANCrossSubnet
      natOutgoing: Enabled
      nodeSelector: all()

---

# This section configures the Calico API server.
# For more information, see: https://projectcalico.docs.tigera.io/master/reference/installation/api#operator.tigera.io/v1.APIServer
apiVersion: operator.tigera.io/v1
kind: APIServer 
metadata: 
  name: default 
spec: {}

检查Calico相关的pod

watch kubectl get pods -n calico-system

检查所有的pod是否处于running状态

加入节点

加入节点命令格式

kubeadm join --token <token> <control-plane-host>:<control-plane-port> --discovery-token-ca-cert-hash sha256:<hash>

可以参考kubeadm init初始化输出的日志,如下

kubeadm join 192.168.24.135:6443 --token abcdef.0123456789abcdef \
    --discovery-token-ca-cert-hash sha256:97056c4a02872fb494889e53c74e9f0c559c137545a97662ec1bac5a256736a0 

如果没有令牌,可以通过在控制平面节点上运行以下命令来获取令牌:

kubeadm token list

默认情况下,令牌会在 24 小时后过期。如果要在当前令牌过期后将节点加入集群, 则可以通过在控制平面节点上运行以下命令来创建新令牌

kubeadm token create

如果你没有 --discovery-token-ca-cert-hash 的值,则可以通过在控制平面节点上执行以下命令链来获取它

openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | \
   openssl dgst -sha256 -hex | sed 's/^.* //'

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐