kubeadm安装k8s
-
环境配置
主节点 k8s-master :4核8G、40GB硬盘、CentOS7.9
从节点 k8s-node1: 4核8G、40GB硬盘、CentOS7.9
从节点 k8s-node2: 4核8G、40GB硬盘、CentOS7.9 -
初始化配置
关闭selinux、swap
# 关闭 Selinux:防止服务可能无法启动(企业中基本上都会选择关闭) sed -i 's/enforcing/disabled/' /etc/selinux/config setenforce 0 # 关闭 Swap:防止 kubelet 组件无法启动 swapoff -a sed -ri 's/.*swap.*/#&/' /etc/fstab
设置主机名
# 主服务器(bash显示主机名) hostnamectl set-hostname k8s-master bash # 从服务器1(bash显示主机名) hostnamectl set-hostname k8s-node1 bash # 从服务器2(bash显示主机名) hostnamectl set-hostname k8s-node2 bash
启动内核参数iptables
# 访问网络插件丢包 cat > /etc/sysctl.d/k8s.conf << EOF net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 EOF # 生效配置 sysctl --system
-
安装docker
参照docker安装的博客
-
安装cri-dockerd(docker与k8s通信的中间程序:翻译官)
因为k8s的容器运行时默认不再使用docker,因此如果要通过docker作为k8s的容器运行时需要安装对应组件,让其作为中间人来让k8s与docker通信。
# 安装cri-dockerd(docker与k8s通信的中间程序) # 下载 wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.2/cri-dockerd-0.3.2-3.el7.x86_64.rpm # 安装 rpm -ivh cri-dockerd-0.3.2-3.el7.x86_64.rpm
修改cri-docker镜像地址
# 修改cri-docker依赖的镜像地址 # 修改配置 vim /usr/lib/systemd/system/cri-docker.service # 将 ExecStart 配置改成下述这样: ExecStart=/usr/bin/cri-dockerd --container-runtime-endpoint fd:// --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.9