### 迷你主机 Kubernetes 集群使用指南

Kubernetes(简称 K8S)是一个用于自动部署、扩展和管理容器化应用程序的开源平台。在实际开发中,有时我们需要在一台迷你主机上搭建一个 K8S 集群来进行测试和开发。本文将教你如何在迷你主机上使用 K8S 集群。

#### 流程概要

下表列出了搭建迷你主机 K8S 集群的主要步骤:

| 步骤 | 操作 |
| ---- | ---------------------- |
| 1 | 安装 Docker |
| 2 | 安装 kubeadm、kubelet 和 kubectl |
| 3 | 初始化 Master 节点 |
| 4 | 加入 Worker 节点 |
| 5 | 部署应用程序 |

#### 详细步骤及代码示例

##### 1. 安装 Docker

安装 Docker 是 K8S 集群搭建的前提,运行以下命令安装 Docker:

```bash
sudo apt update
sudo apt install docker.io
sudo systemctl start docker
sudo systemctl enable docker
```

##### 2. 安装 kubeadm、kubelet 和 kubectl

运行以下命令安装 kubeadm、kubelet 和 kubectl:

```bash
sudo apt update
sudo apt install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
cat <deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
sudo apt update
sudo apt install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
```

##### 3. 初始化 Master 节点

在 Master 节点上运行以下命令初始化 K8S:

```bash
sudo kubeadm init
```

根据命令提示,将输出的命令保存下来,后续会用到。

##### 4. 加入 Worker 节点

在 Worker 节点上运行 Master 节点初始化时提供的命令,加入 K8S 集群。

```bash
sudo kubeadm join :<端口> --token --discovery-token-ca-cert-hash sha256:
```

##### 5. 部署应用程序

通过 kubectl 部署应用程序,例如部署一个 Nginx 服务:

```bash
kubectl create deployment nginx --image=nginx
kubectl expose deployment nginx --port=80 --type=NodePort
```

至此,你已经成功在迷你主机上搭建了一个简单的 K8S 集群,并部署了一个 Nginx 服务。

现在,你可以通过访问 Worker 节点的 IP 地址和 NodePort 来访问部署的 Nginx 服务。祝贺你成功搭建迷你主机 K8S 集群!

希望这篇文章能帮助到你,加油!