143 lines
4.2 KiB
Markdown
143 lines
4.2 KiB
Markdown
|
> 本文作者:丁辉
|
|||
|
|
|||
|
# Kubeadm部署单机Kubernetes(Docker)
|
|||
|
|
|||
|
> Kubernetes v1.24 以后需要额外安装 cri-dockerd , Kubernetes 就正常识别到 Docker
|
|||
|
>
|
|||
|
|
|||
|
| 节点名 | IP |
|
|||
|
| :----: | :----------: |
|
|||
|
| master | 192.168.1.10 |
|
|||
|
|
|||
|
## 环境准备
|
|||
|
|
|||
|
> !!!每次部署都写挺麻烦的索性都放在一个文件内了请查看 [Kubernetes基础环境准备](https://gitee.com/offends/Kubernetes/blob/main/部署文档/Kubernetes基础环境准备.md) ,请按照此文档初始化环境
|
|||
|
|
|||
|
1. 配置主机名
|
|||
|
|
|||
|
```bash
|
|||
|
hostnamectl set-hostname master && bash
|
|||
|
```
|
|||
|
|
|||
|
2. 配置主机 hosts
|
|||
|
|
|||
|
```bash
|
|||
|
vi /etc/hosts
|
|||
|
```
|
|||
|
|
|||
|
添加如下内容
|
|||
|
|
|||
|
```bash
|
|||
|
192.168.1.10 master
|
|||
|
```
|
|||
|
|
|||
|
## 安装Docker
|
|||
|
|
|||
|
请跳转此文档 [Docker网络安装](https://gitee.com/offends/Kubernetes/blob/main/Docker/Docs/Centos%E5%AE%89%E8%A3%85Docker.md)
|
|||
|
|
|||
|
## 安装Cri-dockerd
|
|||
|
|
|||
|
[Github软件包下载](https://github.com/Mirantis/cri-dockerd/releases)
|
|||
|
|
|||
|
1. 下载
|
|||
|
|
|||
|
```bash
|
|||
|
wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.8/cri-dockerd-0.3.8-3.el7.x86_64.rpm
|
|||
|
```
|
|||
|
|
|||
|
2. 安装
|
|||
|
|
|||
|
```bash
|
|||
|
rpm -ivh *.rpm --force --nodeps
|
|||
|
```
|
|||
|
|
|||
|
3. 配置国内源
|
|||
|
|
|||
|
```bash
|
|||
|
vi /usr/lib/systemd/system/cri-docker.service
|
|||
|
```
|
|||
|
|
|||
|
修改
|
|||
|
|
|||
|
```bash
|
|||
|
ExecStart=/usr/bin/cri-dockerd --network-plugin=cni --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.9
|
|||
|
```
|
|||
|
|
|||
|
4. 启动
|
|||
|
|
|||
|
```bash
|
|||
|
systemctl daemon-reload
|
|||
|
systemctl enable cri-docker.socket cri-docker
|
|||
|
systemctl start cri-docker.socket cri-docker
|
|||
|
systemctl status cri-docker.socket
|
|||
|
systemctl status cri-docker
|
|||
|
```
|
|||
|
|
|||
|
## 安装Runc
|
|||
|
|
|||
|
[Github软件包下载](https://github.com/opencontainers/runc/releases)
|
|||
|
|
|||
|
1. 下载
|
|||
|
|
|||
|
```bash
|
|||
|
wget https://github.com/opencontainers/runc/releases/download/v1.1.10/runc.amd64
|
|||
|
```
|
|||
|
|
|||
|
2. 安装
|
|||
|
|
|||
|
```bash
|
|||
|
install -m 755 runc.amd64 /usr/local/bin/runc
|
|||
|
```
|
|||
|
|
|||
|
## 安装Kubeadm
|
|||
|
|
|||
|
请跳转此文档 [安装Kubeadm](https://gitee.com/offends/Kubernetes/blob/main/部署文档/Kubeadm/安装Kubeadm.md)
|
|||
|
|
|||
|
## 安装Kubernetes
|
|||
|
|
|||
|
1. Kubernetes 安装
|
|||
|
|
|||
|
```bash
|
|||
|
kubeadm init \
|
|||
|
--node-name=master \
|
|||
|
--image-repository=registry.aliyuncs.com/google_containers \
|
|||
|
--cri-socket=unix:///var/run/cri-dockerd.sock \
|
|||
|
--apiserver-advertise-address=192.168.1.10 \
|
|||
|
--pod-network-cidr=10.244.0.0/16 \
|
|||
|
--service-cidr=10.96.0.0/12
|
|||
|
```
|
|||
|
|
|||
|
**参数解释**
|
|||
|
|
|||
|
| 参数 | 说明 |
|
|||
|
| :------------------------------: | :----------------------------------------------------------: |
|
|||
|
| `--node-name=master` | 指定节点的名称为“master”。 |
|
|||
|
| `--image-repository=` | 指定容器镜像仓库地址,此处指定了镜像仓库为registry.aliyuncs.com/google_containers。 |
|
|||
|
| `--cri-socket=` | 指定容器运行时接口(CRI)的Unix套接字文件路径,用于与容器运行时通信。此处设置为`unix:///var/run/cri-dockerd.sock`,与CRI-Dockerd通信。 |
|
|||
|
| `--apiserver-advertise-address=` | 指定API服务器公告地址,即API服务器将会公布的地址。在此设置为`192.168.1.10`。 |
|
|||
|
| `--pod-network-cidr=` | 指定Pod网络的CIDR地址段。这个CIDR地址段用于分配给Pod。在此设置为`10.244.0.0/16`。 |
|
|||
|
| `--service-cidr=` | 指定Service的CIDR地址段。这个CIDR地址段用于分配给Service。在此设置为`10.96.0.0/12`。 |
|
|||
|
|
|||
|
2. 根据提示配置文件
|
|||
|
|
|||
|
```bash
|
|||
|
mkdir -p $HOME/.kube
|
|||
|
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
|
|||
|
sudo chown $(id -u):$(id -g) $HOME/.kube/config
|
|||
|
export KUBECONFIG=/etc/kubernetes/admin.conf
|
|||
|
```
|
|||
|
|
|||
|
> 永久生效
|
|||
|
>
|
|||
|
> ```bash
|
|||
|
> echo "export KUBECONFIG=/etc/kubernetes/admin.conf" >> ~/.bash_profile
|
|||
|
> source ~/.bash_profile
|
|||
|
> ```
|
|||
|
|
|||
|
## 安装网络插件
|
|||
|
|
|||
|
请跳转此文档
|
|||
|
|
|||
|
- [Flannel网络插件安装](https://gitee.com/offends/Kubernetes/blob/main/部署文档/网络插件安装/Flannel网络插件安装.md)
|
|||
|
- [Calico网络插件安装](https://gitee.com/offends/Kubernetes/blob/main/部署文档/网络插件安装/Calico网络插件安装.md)
|