目标是创建单master节点,3node节点的k8s集群。
具体IP配置如下
中控机 harbor | 10.0.0.94 |
k8s_master | 10.0.0.115 |
k8s_node01 | 10.0.0.116 |
k8s_node02 | 10.0.0.117 |
k8s_node03 | 10.0.0.119 |
中控机部署ansible。harbor安装在下文中使用
为保证通信,各个主机间使用hosts,后续可以采用dns方式
10.0.0.94 harbor.tangotz.com
10.0.0.115 k8s-master01
10.0.0.116 k8s-node01
10.0.0.117 k8s-node02
10.0.0.119 k8s-node03
创建k8s各个节点与中控机之间的ssh信任关系,中控机上执行
ssh-copy-id root@10.0.0.115
ssh-copy-id root@10.0.0.116
ssh-copy-id root@10.0.0.117
ssh-copy-id root@10.0.0.119
修改中控机ansible hosts文件
# /etc/ansible/hosts
[k8snode]
10.0.0.116
10.0.0.117
10.0.0.110
[k8smaster]
10.0.0.115
[k8s:children]
k8smaster
k8snode
通过ansible修改k8s节点主机名
ansible -m shell 10.0.0.116 -a 'hostnamectl set-hostname k8s-node01'
ansible -m shell 10.0.0.117 -a 'hostnamectl set-hostname k8s-node02'
ansible -m shell 10.0.0.119 -a 'hostnamectl set-hostname k8s-node03'
ansible -m shell 10.0.0.115 -a 'hostnamectl set-hostname k8s-master01'
将hosts文件推送到各个节点
ansible -m copy k8s -a 'src=hosts dest=/etc/hosts'
向k8s节点安装基础环境
docker安装脚本
# cat init_docker.sh
# 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加软件源信息
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
#
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo
# 更新并安装Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# 镜像加速 xxx需要替換為通過阿里雲申請的加速域名
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://xxx.mirror.aliyuncs.com"],
"insecure-registries": ["harbor.tangotz.com"]
}
EOF
# 开启Docker服务
sudo systemctl daemon-reload
sudo systemctl restart docker
使用ansible推送次脚本并执行
ansible -m script k8s -a 'init_docker.sh'
校验一下docker版本
ansible k8s -a 'docker --version '
k8smaster上与k8snode创建ssh互信关系。
在master上创建sshkey,然后使用ssh-copy-id将master的key传递给nodes
略~~~
至此,基础docker环境部署完毕