k8s环境配置
-
首先准备三台虚拟机,配置为CentOS7,4G内存,每个虚拟机两块硬盘各20G,安装Docker,管理节点能免密登录工作节点。
-
然后三台虚拟机关闭防火墙、iptables、SELinux
systemctl stop firewalld
systemctl disable firewalld
vi /etc/sysconfig/selinux
SELINUX=disabeld
-
然后重启使配置生效
-
然后把彼此的hosts表填写完整,例如
- 测试一下虚拟机的网络连通性
-
配置daemon.json
[root@node2 ~]# cat /etc/docker/daemon.json
{
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://reg-mirror.qiniu.com"
],
"insecure-registries":["registry:5000"]
}
- 配置本地镜像仓库:docker pull 如下镜像
-
可以写个脚本执行下载
-
由于以上带有google的镜像需要到谷歌hub下载,然而经过各种尝试,无法直接翻墙下载(虽然安装了代理软件之后阔以下载google首页网页),于是转为间接下载,在hub.docker.com上搜索相关镜像下载,然后docker pull时记得带上版本号
-
然后每一个镜像进行类似操作,将下载的镜像传入到本地镜像仓库:
docker tag docker.io/php:5.5 registry:5000/pre_images/php:5.5 docker push registry:5000/pre_images/php:5.5
-
测试:
docker安装完成后,开始安装k8s
-
添加源
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
安装指定版本的工具:
yum install -y kubelet-1.18.0 kubeadm-1.18.0 kubectl-1.18.0 --disableexcludes=kubernetes
systemctl enable kubelet & systemctl start kubelet
(我这边选的版本较低,现在已经更新至1.22了)
修改网络配置
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables =1
net.bridge.bridge-nf-call-iptables =1
EOF
sy