目录
一、循环
作用:循环迭代任务
1、简单循环
loop: ##赋值列表
- value1
- value2
- ...
{ {item}} ##迭代变量名称
现在吧建立的东西删掉
2、循环散列或字典列表
如果现在建立的有文件有目录,就会涉及到字典或者是循环散列
loop:
- ...
- ...
创建成功
以上就是单层和使用字典方式书写多层
3、练习
安装并在火墙中设定 开启vsftpd apache dns
1 安装服务
2 开启服务
3 设置火墙
- name: setup vsftpd apache dns
hosts: all
vars:
services:
- name: vsftpd
service: vsftpd
firewall_name: ftp
- name: httpd
service: httpd
firewall_name: http
- name: bind
service: named
firewall_name: dns
tasks:
- name: install service
dnf:
name: "{
{item['name']}}"
state: present
loop:
"{
{services}}"
- name: start service
service:
name: "{
{item['service']}}"
state: started
enabled: yes
loop:
"{
{services}}"
- name: setup firewalld
firewalld:
service: "{
{item['firewall_name']}}"
state: enabled
permanent: yes
immediate: yes
loop:
"{
{services}}"
二、条件
when:
- 条件1
- 条件2
#条件判断#
= value == "字符串",value == 数字
< value < 数字
> value > 数字
<= value <= 数字
>= value >= 数字
!= value != 数字
is defined value value is defined 变量存在
is not defined value is not defined 变量不存在
in value is in value 变量为
not in value is not in value 变量不为
bool变量 为true value