📅  最后修改于: 2023-12-03 15:32:31.858000             🧑  作者: Mango
Kubernetes 是 Google 开源的容器编排工具,用来管理和部署容器化应用程序。本文将介绍如何安装 Kubernetes。
在进行 Kubernetes 安装之前,需要先进行如下准备工作:
Kubernetes 可以通过多种方式安装,包括使用 kubeadm、minikube、kops 等等。这里我们介绍使用 kubeadm 的方式进行安装。
在安装 kubeadm 之前,需要先添加 Kubernetes 镜像源,以让系统能够获取到 Kubernetes 的最新版本。以 Ubuntu 系统为例,执行以下命令:
$ 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
添加完毕后,即可开始安装 kubeadm。执行以下命令:
$ sudo apt-get install -y kubelet kubeadm kubectl
安装完成后,可以通过以下命令查看 Kubernetes 版本号:
$ kubectl version
在安装 kubeadm 之后,即可开始初始化 Kubernetes 集群。执行以下命令:
$ sudo kubeadm init --pod-network-cidr=10.244.0.0/16
执行完以上命令后,控制台会输出如下信息:
Your Kubernetes control-plane has initialized successfully!
To start using your cluster, you need to run the following as a regular user:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
https://kubernetes.io/docs/concepts/cluster-administration/addons/
Then you can join any number of worker nodes by running the following on each as root:
kubeadm join <control-plane-host>:<control-plane-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
执行以上命令后,需要保存输出的 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
完成初始化之后,还需要安装网络插件,以让集群中的节点能够互相通信。这里我们选择使用 Flannel 网络插件。执行以下命令:
$ kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
如果需要将其他节点加入 Kubernetes 集群中,需要执行上面保存的 kubeadm join 命令。执行以下命令:
$ sudo kubeadm join <control-plane-host>:<control-plane-port> --token <token> --discovery-token-ca-cert-hash sha256:<hash>
至此,Kubernetes 已经安装好了。在使用 Kubernetes 之前,需要详细了解 Kubernetes 的概念和使用方式,以便更好地使用 Kubernetes。