在Ubuntu上使用kubeadm創建和管理Kubernetes節點的過程分為以下幾個步驟:
首先,確保你的系統已經安裝了Docker。如果沒有,請按照以下命令進行安裝:
sudo apt-get update
sudo apt-get install docker.io
sudo systemctl enable docker.service
sudo systemctl start docker.service
接下來,安裝Kubernetes組件(kubeadm、kubelet和kubectl):
sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <<EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
在主節點上運行以下命令以初始化Kubernetes集群:
sudo kubeadm init
初始化完成后,你將看到一條消息,其中包含將工作節點加入集群所需的kubeadm join命令。請復制此命令以供后續使用。
要在主節點上配置kubectl,請運行以下命令:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
現在,你可以使用kubectl與Kubernetes集群進行交互。
在Kubernetes集群中,你需要部署一個網絡插件以實現Pod之間的通信。這里我們使用Calico作為示例:
kubectl apply -f https://docs.projectcalico.org/manifests/tigera-operator.yaml
kubectl apply -f https://docs.projectcalico.org/manifests/custom-resources.yaml
在每個工作節點上,運行在步驟2中復制的kubeadm join命令。這將把工作節點加入到Kubernetes集群中。
在主節點上,運行以下命令以查看集群中的節點:
kubectl get nodes
如果一切正常,你應該會看到所有節點的狀態為Ready。
現在你已經在Ubuntu上使用kubeadm成功創建并管理了一個Kubernetes集群。你可以開始部署和管理應用程序了。