【Kubernetes】kubeadm 安装集群(一)
环境
- virtual box 6.1
- centos 7.8
- docker 19.03
- kubernetes 1.20.2
前提条件
准备了 virtual box 6.1 的三台虚拟机,每台虚拟机安装 centos 7.8 的系统。
设置主机名和解析
设置三台服务的 IP 地址
这里以 NAT+host only 网络为例,外部 IP 可以不关注,host only 网络的 IP 分别为:
- 192.168.56.101
- 192.168.56.102
- 192.168.56.103
其中 101 将作为主节点。配置 /etc/hosts,增加如下内容,三台服务器都需要操作:
192.168.56.101 master
192.168.56.102 node1
192.168.56.103 node2
设置主机名
将三台主机名分别设置为 master, node1, node2:
master:
hostnamectl set-hostname master
logout
node1:
hostnamectl set-hostname node1
logout
node2:
hostnamectl set-hostname node2
logout
退出重新登录查看登录主机名已经生效
系统设置
关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
关闭 SELinux
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
关闭交换分区
swapoff -a
# 上面的命令是临时修改,还需要修改 /etc/fstab 关闭 swap 分区,在包含swap那一行最前面加一个“#”。
加载 br_netfilter 模块
modprobe br_netfilter
路由转发
cat <<EOF | sudo tee /etc/modules-load.d/k8s.conf
br_netfilter
EOF
cat <<EOF | sudo tee /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sudo sysctl --system
时间同步
yum install ntpdate -y
ntpdate ntp.aliyun.com
安装 Docker
Docker 的安装教程可以参考【Docker】Docker 安装。
查看 Docker 全部版本
yum list docker-ce.x86_64 --showduplicates | sort -r
安装指定版本
sudo yum install -y \
containerd.io-1.2.13 \
docker-ce-19.03.11 \
docker-ce-cli-19.03.11
配置 Docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"registry-mirrors": ["https://hub-mirror.c.163.com","https://0kzec4yw.mirror.aliyuncs.com"],
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOF
Docker 降级
Kubernetes 在 Docker 19.03 上测试通过,所以如果安装了最新的版本的话,可以选择降级。
yum downgrade docker-ce-19.03.11-3.el7 docker-ce-cli-19.03.11-3.el7 -y
启动 Docker
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo systemctl daemon-reload
sudo systemctl restart docker
sudo systemctl enable docker
总结
介绍了安装 Kubernetes 前的一些准备工作,包括系统设置和 Docker 的安装配置。
分类:
Docker
, Kubernetes
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!