mirror of https://github.com/easzlab/kubeasz.git
58 lines
1.8 KiB
YAML
58 lines
1.8 KiB
YAML
- name: 获取是否已经安装containerd
|
|
shell: 'systemctl is-active containerd || echo "NoFound"'
|
|
register: containerd_svc
|
|
|
|
- block:
|
|
- name: 准备containerd相关目录
|
|
file: name={{ item }} state=directory
|
|
with_items:
|
|
- "{{ bin_dir }}/containerd-bin"
|
|
- "/etc/containerd"
|
|
|
|
- name: 加载内核模块 overlay
|
|
modprobe: name=overlay state=present
|
|
|
|
- name: 下载 containerd 二进制文件
|
|
copy: src={{ item }} dest={{ bin_dir }}/containerd-bin/ mode=0755
|
|
with_fileglob:
|
|
- "{{ base_dir }}/bin/containerd-bin/*"
|
|
tags: upgrade
|
|
|
|
- name: 下载 crictl
|
|
copy: src={{ base_dir }}/bin/crictl dest={{ bin_dir }}/crictl mode=0755
|
|
|
|
- name: 添加 crictl 自动补全
|
|
lineinfile:
|
|
dest: ~/.bashrc
|
|
state: present
|
|
regexp: 'crictl completion'
|
|
line: 'source <(crictl completion bash) # generated by kubeasz'
|
|
|
|
- name: 创建 containerd 配置文件
|
|
template: src=config.toml.j2 dest=/etc/containerd/config.toml
|
|
tags: upgrade
|
|
|
|
- name: 创建systemd unit文件
|
|
template: src=containerd.service.j2 dest=/etc/systemd/system/containerd.service
|
|
tags: upgrade
|
|
|
|
- name: 创建 crictl 配置
|
|
template: src=crictl.yaml.j2 dest=/etc/crictl.yaml
|
|
|
|
- name: 开机启用 containerd 服务
|
|
shell: systemctl enable containerd
|
|
ignore_errors: true
|
|
|
|
- name: 开启 containerd 服务
|
|
shell: systemctl daemon-reload && systemctl restart containerd
|
|
tags: upgrade
|
|
|
|
- name: 轮询等待containerd服务运行
|
|
shell: "systemctl is-active containerd.service"
|
|
register: containerd_status
|
|
until: '"active" in containerd_status.stdout'
|
|
retries: 8
|
|
delay: 2
|
|
tags: upgrade
|
|
when: "'NoFound' in containerd_svc.stdout"
|