菜单

利用Ansible批量部署K8s集群

duckflew
发布于 2022-07-05 / 264 阅读
0
0

利用Ansible批量部署K8s集群

借用lework大佬提供的roles做简单修改可以实现部署 记录如下

准备工作

roles 地址: https://github.com/lework/Ansible-roles.git

kubernetes-bin role需要用到的files地址 放两个 第一个是我自己的对象存储 第二个是github作者的网盘地址

http://file.duckflew.cn/k8s-v1.14.3.7za
链接:https://pan.baidu.com/s/1bY9Bh6AFyrnS5MrjrRFowg
提取码:u3um
复制这段内容后打开百度网盘手机App,操作更方便哦
# yum -y install p7zip
# 7za x k8s-v1.14.3.7za -r -o/opt/
# cp -rf  v1.14.3/* /etc/ansible/roles/kubernetes-bin/files/

解压后放到role对应的files下

ansible修改主机检查

host_key_checking = False

修改ansible hosts 按需修改

[k8s_master]
172.16.1.3
[k8s_node]
172.16.1.4
172.16.1.5
[k8s_cluster:children]
k8s_master
k8s_node
[k8s_cluster:vars]
ansible_ssh_pass=xxxxxxx

playbook

ansible-playbook k8s.yml
# 初始化节点
- hosts: k8s_cluster
  serial: "100%"
  any_errors_fatal: true
  vars:
    - ipnames:
        '172.16.1.3': 'k8s-m1'
        '172.16.1.4': 'k8s-n1'
        '172.16.1.5': 'k8s-n2'
  roles:
    - hostnames
    - { role: ssh-keys, ssh_keys_host: '172.16.1.3' }
    - repo-epel
    - ntp
    - docker
    - update-kernel 

# 安装master节点
- hosts: k8s_master
  any_errors_fatal: true
  vars:
    - kubernetes_master: true
  roles: 
    - kubernetes-bin

# 安装node节点
- hosts: k8s_node
  any_errors_fatal: true
  vars:
    - kubernetes_node: true
  roles:
    - kubernetes-bin

# 安装addons组件
- hosts: k8s_master
  any_errors_fatal: true
  vars:
    - kubernetes_addons: true
    - kubernetes_ingress_ip: 192.168.77.140
    - kubernetes_external_dns_ip: 192.168.77.141
  roles:
    - kubernetes-bin

update-kernel 这个role可以考虑不执行 我没有运行成功 亲测注释之后依然可以安装成功


评论