如何测试涉及使用分子更改 OS 参数(例如 kernel , ulimit 等)的ansible playbook?
How to test ansible playbook which involves changing OS parameter such as kernel , ulimit etc using molecule?
我正在尝试使用涉及更改内核参数的分子包对我的剧本进行 ansible 测试。但是 docker 不支持更改内核参数。在这种情况下我该如何进行测试(使用 molecule & docker)?
docker 容器只是同一内核中的另一个进程 运行,因此 可能 这样做,但您需要更改 sysctl 配置对于实际主机,这可能会有问题。
如果角色实际上不需要设置 sysctl 参数,我的建议是跳过 sysctl 任务(使用 tags: molecule-notest
),或者使用不同的驱动程序,如 vagrant 或 EC2
如果您仍想尝试更改 sysctl。方法如下:
更新您的 molecule.yml
添加 volumes
、capabilities
和 privileged
变量,如下所示:
...
platforms:
- name: instance
image: centos:7
capabilities:
- SYS_ADMIN
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
privileged: true
...
(使用风险自负)
我正在尝试使用涉及更改内核参数的分子包对我的剧本进行 ansible 测试。但是 docker 不支持更改内核参数。在这种情况下我该如何进行测试(使用 molecule & docker)?
docker 容器只是同一内核中的另一个进程 运行,因此 可能 这样做,但您需要更改 sysctl 配置对于实际主机,这可能会有问题。
如果角色实际上不需要设置 sysctl 参数,我的建议是跳过 sysctl 任务(使用 tags: molecule-notest
),或者使用不同的驱动程序,如 vagrant 或 EC2
如果您仍想尝试更改 sysctl。方法如下:
更新您的 molecule.yml
添加 volumes
、capabilities
和 privileged
变量,如下所示:
...
platforms:
- name: instance
image: centos:7
capabilities:
- SYS_ADMIN
volumes:
- /sys/fs/cgroup:/sys/fs/cgroup:rw
privileged: true
...
(使用风险自负)