# K8S虚拟机安装指南

作为一名经验丰富的开发者,我将会向你介绍如何在虚拟机上安装Kubernetes(K8S)。在本文中,我将分步指导你完成整个安装过程,以确保你可以成功搭建起一个K8S集群。

## 步骤概述

在下面的表格中,我将列出整个安装过程的步骤概述,以便你可以更好地了解整个流程。

| 步骤 | 描述 |
|------|--------------------------|
| 1 | 配置虚拟机环境 |
| 2 | 下载并安装Kubernetes软件 |
| 3 | 部署K8S Master节点 |
| 4 | 部署K8S Worker节点 |
| 5 | 验证集群状态 |

## 具体步骤及代码示例

### 步骤 1:配置虚拟机环境

在虚拟机中安装K8S之前,你需要配置虚拟机环境,确保虚拟机拥有足够的资源来运行Kubernetes。以下是在虚拟机中配置环境的代码示例:

```bash
# 更新软件包列表
sudo apt update

# 安装Docker
sudo apt install docker.io -y

# 安装kubeadm、kubelet和kubectl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo apt-add-repository "deb http://apt.kubernetes.io/ kubernetes-xenial main"
sudo apt install kubeadm kubelet kubectl -y
```

### 步骤 2:下载安装Kubernetes软件

在配置好虚拟机环境后,你需要下载并安装Kubernetes软件,以便后续部署K8S集群。以下是下载和安装Kubernetes软件的代码示例:

```bash
# 使用kubeadm初始化Master节点
sudo kubeadm init --apiserver-advertise-address=192.168.1.100

# 配置kubectl
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
```

### 步骤 3:部署K8S Master节点

一旦Kubernetes软件下载完毕,你需要部署K8S Master节点来管理整个集群。以下是部署Master节点的代码示例:

```bash
# 安装网络插件
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/kubernetes-datastore/calico-networking/1.7/calico.yaml
```

### 步骤 4:部署K8S Worker节点

一旦Master节点部署完成,你需要继续部署K8S Worker节点,以便集群有足够的计算资源来运行应用程序。以下是部署Worker节点的代码示例:

```bash
# 加入Worker节点到集群
sudo kubeadm join 192.168.1.100:6443 --token YOUR_TOKEN --discovery-token-ca-cert-hash sha256:YOUR_CERT_HASH
```

### 步骤 5:验证集群状态

最后,你需要验证K8S集群的状态,确保集群正常运行。以下是验证集群状态的代码示例:

```bash
# 查看集群节点状态
kubectl get nodes
```

通过上述步骤,你已经成功在虚拟机上安装并部署了一个Kubernetes(K8S)集群。现在你可以开始在这个集群上部署应用程序并进行测试了。希望这篇文章对你有所帮助,如果有任何疑问或问题,请随时联系我。祝你在学习和工作中取得更大的进步!