k8s安装读取内核modules_kubespray国内云平台一键部署k8s

  • Post author:
  • Post category:其他


9fd2fa221162de6126ffcd2e419e3b09.png

1、环境

以下机器都是centos7.7版本

192.168.0.100   node1      master1    etcd1   kubespray 部署机器  192.168.0.101   node2      master2    etcd2192.168.0.102   node3      master3    etcd3192.168.0.103   node4      node1192.168.0.104   node5      node2

2、kubespray地址

https://github.com/kubernetes-sigs/kubespray

3、设置部署机器到所有节点无密码访问

# 在部署节点master1 上 ssh-keygen ssh-copy-id node1ssh-copy-id node2ssh-copy-id node3ssh-copy-id node4ssh-copy-id node5

4、安装python3和ansible

yun install python36pip3 install ansible

5、配置kubespray环境和地址

以下安装都是基于root进行的,如果没有权限请设置sudo权限

cd /optgit clone https://github.com/kubernetes-sigs/kubespray# 安装依赖cd kubespraypip3 install -r requirements.txt# 拷贝配置文件cp -rfp inventory/sample inventory/mycluster# 使用脚本配置 ansible inventory 文件declare -a IPS=(192.168.0.100 192.168.0.101 192.168.0.102 192.168.0.103 192.168.0.104)CONFIG_FILE=inventory/mycluster/hosts.yaml python3 contrib/inventory_builder/inventory.py ${IPS[@]}


设置gcr地址,由于国内网络问题导致gcr镜像和quay镜像拉取很慢,本人自建了个仓库用来中转镜像, 暂时没限制,不保证后续一直能用,后续会分享怎么搭建步骤。

vim inventory/mycluster/group_vars/all/all.yml#最后进行追加# 加载内核模块,否则 ceph, gfs 等无法挂载客户端kubelet_load_modules: truegcr_image_repo: "gcr.xdpai.cn"kube_image_repo: "gcr.xdpai.cn/google-containers"quay_image_repo: "quayio.xdpai.cn"docker_rh_repo_base_url: "https://mirrors.aliyun.com/docker-ce/linux/centos/7/$basearch/stable/"docker_rh_repo_gpgkey: "https://mirrors.aliyun.com/docker-ce/linux/centos/gpg"docker_version: "19.03"
b50081f096a655d2bebfe3cb960f6187.png
vim inventory/mycluster/group_vars/k8s-cluster/k8s-cluster.ymlkube_image_repo: "gcr.xdpai.cn/google-containers"
8b1ae6f6fd04a79905644611b1b2fd4d.png

配置一些额外的插件 比如helm dashboard ingress

vim inventory/mycluster/group_vars/k8s-cluster/addons.yml 把需要的插件插件设置成True

启动安装,可能需要一段时间

ansible-playbook -i inventory/mycluster/hosts.yaml --become --become-user=root cluster.yml

无报错安装成功界面

6dfce82b9550ebe116a27e88a8b2e314.png