synchronization

This commit is contained in:
2025-08-25 17:53:08 +08:00
commit c201eb5ef9
318 changed files with 23092 additions and 0 deletions

View File

@@ -0,0 +1,36 @@
> 本文作者:丁辉
## Kubeadm初始化安装Kubernetes节点
1. Kubernetes安装
```bash
kubeadm init \
--image-repository=registry.aliyuncs.com/google_containers \
--apiserver-advertise-address=192.168.1.10 \
--pod-network-cidr=10.244.0.0/16 \
--service-cidr=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
> ```
3. 安装网络插件
请跳转此文档
- [Flannel网络插件安装](https://gitee.com/offends/Kubernetes/blob/main/部署文档/网络插件安装/Flannel网络插件安装.md)
- [Calico网络插件安装](https://gitee.com/offends/Kubernetes/blob/main/部署文档/网络插件安装/Calico网络插件安装.md)

View File

@@ -0,0 +1,15 @@
> 本文作者:丁辉
# Kubeadm基础常用命令
- 打印出 `kubeadm` 工具初始化 Kubernetes 集群时的默认配置
```bash
kubeadm config print init-defaults > kubeadm.yaml
```
- 列出所有容器镜像
```bash
kubeadm config images list --config kubeadm.yaml
```

View File

@@ -0,0 +1,41 @@
> 本文作者:丁辉
# Kubeadm部署单机Kubernetes(Containerd)
| 节点名 | 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
```
## 安装Containerd
请跳转此文档 [网络源安装Containerd](https://gitee.com/offends/Kubernetes/blob/main/Containerd/Docs/%E7%BD%91%E7%BB%9C%E6%BA%90%E5%AE%89%E8%A3%85Containerd.md)
## 安装Kubeadm
请跳转此文档 [安装Kubeadm](https://gitee.com/offends/Kubernetes/blob/main/%E9%83%A8%E7%BD%B2%E6%96%87%E6%A1%A3/Kubeadm/%E5%AE%89%E8%A3%85Kubeadm.md)
## 安装 Kubernetes
请跳转此文档 [Kubeadm初始化安装Kubernetes节点](https://gitee.com/offends/Kubernetes/tree/main/%E9%83%A8%E7%BD%B2%E6%96%87%E6%A1%A3/Kubeadm/Kubeadm%E5%88%9D%E5%A7%8B%E5%8C%96%E5%AE%89%E8%A3%85Kubernetes%E8%8A%82%E7%82%B9.md)

View File

@@ -0,0 +1,142 @@
> 本文作者:丁辉
# 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)

View File

@@ -0,0 +1,188 @@
> 本文作者:丁辉
# 安装Kubeadm
[阿里源配置文件](https://developer.aliyun.com/mirror/kubernetes)
[官方安装文档](https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/#installing-kubeadm-kubelet-and-kubectl)
## YUM安装
1. 添加网络源
- 官方源
```bash
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/
enabled=1
gpgcheck=1
gpgkey=https://pkgs.k8s.io/core:/stable:/v1.30/rpm/repodata/repomd.xml.key
exclude=kubelet kubeadm kubectl cri-tools kubernetes-cni
EOF
```
- 阿里源
- 新版
```bash
cat <<EOF | tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/
enabled=1
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/rpm/repodata/repomd.xml.key
EOF
```
- 旧版
```bash
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
```
2. 安装
- 官方源
```bash
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
```
- 阿里源
> 由于官网未开放同步方式, 可能会有索引gpg检查失败的情况, 这时请用 `yum install -y --nogpgcheck kubelet kubeadm kubectl` 安装
```bash
yum install -y --nogpgcheck kubelet kubeadm kubectl
```
3. 启动
```bash
systemctl enable --now kubelet
```
## APT安装
- 官方源
1. 更新`apt`软件包索引并安装使用 Kubernetes`apt`存储库所需的软件包
```bash
sudo apt-get update
sudo apt-get install -y apt-transport-https ca-certificates curl gpg
```
2. 下载 Kubernetes 软件包存储库的公共签名密钥。所有存储库都使用相同的签名密钥,因此您可以忽略 URL 中的版本
```bash
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.30/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
```
3. 添加适当的 Kubernetes`apt`存储库。请注意,此存储库仅包含适用于 Kubernetes 1.30 的软件包;对于其他 Kubernetes 次要版本,您需要更改 URL 中的 Kubernetes 次要版本以匹配所需的次要版本(您还应该检查您正在阅读的文档是否适用于您计划安装的 Kubernetes 版本)。
```bash
echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.30/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
```
4. 更新`apt`软件包索引,安装 kubelet、kubeadm 和 kubectl并固定其版本
```bash
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl
```
5. 运行 kubeadm 之前启用 kubelet 服务
```bash
systemctl enable --now kubelet
```
- 阿里源
- 新版
1. 更新`apt`软件包索引并安装使用 Kubernetes`apt`存储库所需的软件包
```bash
apt-get update && apt-get install -y apt-transport-https
```
2. 下载 Kubernetes 软件包存储库的公共签名密钥。
```bash
curl -fsSL https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/deb/Release.key |
gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
```
3. 添加适当的 Kubernetes`apt`存储库。
```bash
echo "deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://mirrors.aliyun.com/kubernetes-new/core/stable/v1.28/deb/ /" |
tee /etc/apt/sources.list.d/kubernetes.list
```
4. 更新`apt`软件包索引,安装 kubelet、kubeadm 和 kubectl并固定其版本
```bash
apt-get update
apt-get install -y kubelet kubeadm kubectl
```
5. 运行 kubeadm 之前启用 kubelet 服务
```bash
systemctl enable --now kubelet
```
- 旧版
1. 更新`apt`软件包索引并安装使用 Kubernetes`apt`存储库所需的软件包
```bash
apt-get update && apt-get install -y apt-transport-https
```
2. 下载 Kubernetes 软件包存储库的公共签名密钥。
```bash
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | apt-key add -
```
3. 添加适当的 Kubernetes`apt`存储库。
```bash
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main
EOF
```
4. 更新`apt`软件包索引,安装 kubelet、kubeadm 和 kubectl并固定其版本
```bash
apt-get update
apt-get install -y kubelet kubeadm kubectl
```
5. 运行 kubeadm 之前启用 kubelet 服务
```bash
systemctl enable --now kubelet
```

View File

@@ -0,0 +1,138 @@
> 本文作者:丁辉
# 旧版Kubeadm部署单机Kubernetes-v1.23(Docker)
[Github-v1.23版本情况](https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.23.md)
> 指定 v1.23 版本安装
>
| 节点名 | 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
- 设置存储库
[阿里源配置文件](https://developer.aliyun.com/mirror/docker-ce?spm=a2c6h.13651102.0.0.4eac1b11shXBpr)
```bash
yum install -y yum-utils
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
```
- 安装(特定版本)
```bash
yum install docker-ce-20.10.24-3.el7 docker-ce-cli-20.10.24-3.el7 -y
```
- 编辑配置文件
```bash
vi /etc/docker/daemon.json
```
```bash
{
"exec-opts": ["native.cgroupdriver=systemd"]
}
```
- 启动
```bash
systemctl start docker
systemctl enable docker
systemctl status docker
```
## 安装Kubeadm
[阿里源配置文件](https://developer.aliyun.com/mirror/kubernetes?spm=a2c6h.13651102.0.0.4eac1b11shXBpr)
- 添加网络源
```bash
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
```
- 安装(特定版本)
```bash
yum install kubelet-1.23.17 kubeadm-1.23.17 kubectl-1.23.17 -y
```
- 启动
```bash
systemctl enable --now kubelet
```
## 安装Kubernetes
- master 安装
```bash
kubeadm init \
--kubernetes-version=v1.23.17 \
--pod-network-cidr=10.244.0.0/16 \
--service-cidr=10.96.0.0/12 \
--apiserver-advertise-address=192.168.1.10 --image-repository=registry.aliyuncs.com/google_containers
```
**参数**
- 根据提示配置文件
```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)