k8s 环境搭建(2)
安装docker组件
配置本地源或者自带的网络源2选1
1.切换镜像源
wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
2.查看docker有哪些版本
yum list docker-ce --showduplicates
3.安装docker (安装指定的版本,以提高稳定性。这里我直接安装最高版本) yum -y install --setopt=obsoletes=0 docker-ce-19.03.13-3.el8
yum -y install docker-ce
4.添加一个配置文件
docker在默认情况下使用的cgroup driver为cgroupfs,而kubernetes推荐使用systemd来代替cgroupfs
mkdir /etc/docker
cat > /etc/docker/daemon.json << q
{
"exec-opts": ["native.cgroupdriver=systemd"],
"registry-mirrors": ["https://kn0t2bca.mirror.aliyuncs.com"]
}
q
第一条切换引擎
第二条将国外仓库切换至阿里云
启动docker并开机自启
systemctl --now enable docker
查看docker版本
docker --version
安装kubernetes
1.配置yum源
可以省略check部分
[kubernetes]
name=kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
2.安装
yum -y install --setopt=obsoletes=0 kubeadm-1.17.4-0 kubelet-1.17.4-0 kubectl-1.17.4-0
3.配置kubelet的cgroup
vi /etc/sysconfig/kubelet
KUBELET_CGROUP_ARGS="--cgroup-drive=systemd"
KUBE_PROXY_MODE="ipvs"
指定引擎,性能更好一些
指定ipvs,性能更好,前面有加载过ipvs模块。
4.开机自启
systemctl enable kubelet
注意这里没有启动,他会被其他组件拉起来
准备集群镜像
kubeadm config images list
查看推荐版本
但是太新了,还是和之前的版本对应上,所以装旧的
设置对应列表
images=(
kube-apiserver:v1.17.4
kube-controller-manager:v1.17.4
kube-scheduler:v1.17.4
kube-proxy:v1.17.4
pause:3.1
etcd:3.4.3-0
coredns:1.6.5
)
for imagename in ${images[@]}; do
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imagename
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imagename k8s.gcr.io/$imagename
docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imagename
done
docker images
查看拉取的镜像
目前为止三台都需要做同样的操作
集群初始化
只需要在master上执行
创建集群
kubeadm init \
--kubernetes-version=v1.17.4 \
--pod-network-cidr=10.24 4.0.0/16 \
--service-cidr=10.96.0.0/12 \
--apiserver-advertise-address=192.168.200.128
看到successfully表示成功
报错
遇到k8s hostname ““ could not be reached
请在hosts写上完整域名
192.168.200.128 master master.example.com
192.168.200.130 node1 node1.example.com
192.168.200.129 node2 node2.example.com
docker版本太高可以yum指定低版本
yum -y install --setopt=obsoletes=0 docker-ce-19.03.13-3.el8
init里可以添加此行直接到指定的仓库下载
--image-repository registry.aliyuncs.com/google_containers \