这篇文章介绍一下使用Ansible安装node节点的docker服务的方法。
所用到的Ansible基础知识:
template模块用于设定证书的csr文件
copy模块用于拷贝文件并设定权限
shell模块用于执行命令
file模块可以用于创建目录
register/until/retries/delay可用于确认服务启动等常见场景,并实现sleep+retry的功能
前提条件:需要flannel启动状态
创建docker服务的基础知识
主要是与flannel如何结合使用的点需要注意在systemd的service文件中:
- 通过flannel的环境变量设定文件读取DOCKER_NETWORK_OPTIONS
- 启动时指定DOCKER_NETWORK_OPTIONS
- 镜像加速指定了registry-mirror
- selinux-enabled指定为了false
示例代码
- name: create dirs for docker
file:
path: "{
{ item }}"
state: directory
with_items:
- "{
{ var_docker_dir_bin }}"
- name: copy docker to install dir
copy:
src: "{
{ item }}"
dest: "{
{ var_docker_di