#ansible循环+判断
文章目录
练习:
给node1添加一块5G的硬盘
给node2添加一块2G的硬盘
node3不添加硬盘
写一个partition.yml的playbook,满足如下要求:
给所有的受控主机创建分区,创建2500M的分区,然后对分区进行格式化,格式化为xfs的文件系统。
如果不能满足创建2500M的分区,则显示错误消息为:disk size not enough,接着改为创建1000M。
如果没有/dev/sdb硬盘,则显示错误消息为:the device is not sdb
剧本
[student@server ansible]$ cat partition.yml
---
- name: create vg
hosts: node1,node2,node3
tasks:
- name: test sdb
shell: lsblk | grep -w sdb
register: sdb
ignore_errors: yes
- name: sdb
debug:
msg: the device not is sdb
when: sdb.rc != 0
- name: create vg
block:
- name: creste 2500
parted:
device: /dev/sdb
number: 1
state: present
part_end: 2500MiB
rescue:
- name: output fail message
debug:
msg: disk size not enough
- name: create 1000
parted: