Kubernetes(简称K8s)是一种用于自动化容器化应用程序部署、扩展和管理的开放源代码平台。在K8s上部署应用程序可以提供高度可靠的应用程序环境,并从硬件中抽象出应用程序运行的操作系统层。本文将指导您如何在CentOS上使用K8s单机版进行安装。

## 安装步骤
以下是使用K8s单机版在CentOS上安装的步骤:

| 步骤 | 描述 |
| --- | --- |
| 步骤 1 | 安装容器运行时 |
| 步骤 2 | 安装K8s组件 |
| 步骤 3 | 配置Master节点 |
| 步骤 4 | 配置Worker节点 |
| 步骤 5 | 运行示例应用程序 |

接下来,我们将详细介绍每个步骤所需的代码以及代码的含义。

## 步骤 1:安装容器运行时
在安装K8s之前,我们需要先安装一个容器运行时。这里我们选择使用Docker作为我们的容器运行时。执行以下命令安装Docker:

```shell
sudo yum install -y docker
sudo systemctl start docker
sudo systemctl enable docker
```

上述代码会使用yum包管理器安装Docker,并启动Docker服务,并设置开机自启。

## 步骤 2:安装K8s组件
在本地安装K8s所需的软件包。执行以下命令安装需要的软件包:

```shell
sudo yum install -y kubelet kubeadm kubectl
sudo systemctl enable kubelet
```

上述代码将使用yum包管理器安装kubelet、kubeadm和kubectl组件,并设置kubelet服务开机自启。

## 步骤 3:配置Master节点
在Master节点上执行以下命令初始化K8s集群:

```shell
sudo kubeadm init
```

执行上述命令将初始化K8s集群,并生成一个加入命令。我们需要将这个加入命令保存下来,后续用于配置Worker节点。

## 步骤 4:配置Worker节点
在Worker节点上执行步骤3中生成的加入命令,将Worker节点加入到K8s集群中。执行以下命令:

```shell
sudo kubeadm join : --token --discovery-token-ca-cert-hash
```

请将``替换为Master节点的IP地址,``替换为Master节点的端口号,``替换为步骤3中生成的加入命令中的token值,``替换为步骤3中生成的加入命令中的hash值。

## 步骤 5:运行示例应用程序
K8s单机版安装完成后,我们可以部署一个示例应用程序来验证集群的正常运行。创建一个名为`example.yaml`的文件,并将以下内容复制到文件中:

```yaml
apiVersion: v1
kind: Pod
metadata:
name: example-pod
spec:
containers:
- name: example-container
image: nginx:latest
```

执行以下命令创建该示例应用程序:

```shell
kubectl apply -f example.yaml
```

上述命令将创建一个名为`example-pod`的Pod,并使用最新的nginx镜像。

至此,我们已经完成了在CentOS上使用K8s单机版的安装。您可以使用以下命令来查看Pod的状态:

```shell
kubectl get pods
```

恭喜!您现在已经成功安装并部署了一个K8s集群,并运行了一个示例应用程序。

希望本文对您理解CentOS上K8s单机版安装有所帮助。如果您有任何问题,请随时提问。