需求: 从ansible_facts.ansible_devices变量中查找符合条件的磁盘
- 数据:
{
'sdbu': {
'virtual': 1,
'links': {
'ids': [],
'uuids': [],
'labels': [],
'masters': []
},
'vendor': 'INSPUR',
'model': 'AS13000',
'sas_address': None,
'sas_device_handle': None,
'serial': '1a70f26b8b4567',
'removable': '0',
'support_discard': '512',
'partitions': {},
'rotational': '1',
'scheduler_mode': 'mq-deadline',
'sectors': '20971520',
'sectorsize': '512',
'size': '10.00GB',
'host': '',
'holders': []
},
'sda': {
'virtual': 1,
'links': {
'ids': [
'scsi-3600605b01022732000000180198fe1e9',
'scsi-SAVAGO_MR9361-8i_00e9e18f198001000020732210b00506',
'wwn-0x600605b01022732000000180198fe1e9'
],
'uuids': [],
'labels': [],
'masters': []
},
'vendor': 'AVAGO',
'model': 'MR9361-8i',
'sas_address': None,
'sas_device_handle': None,
'serial': '00e9e18f198001000020732210b00506',
'removable': '0',
'support_discard': '0',
'wwn': '0x600605b01022732000000180198fe1e9',
'rotational': '1',
'scheduler_mode': 'mq-deadline',
'sectors': '4686348288',
'sectorsize': '512',
'size': '2.18TB',
'host': 'RAIDbuscontroller: Broadcom/LSIMegaRAIDSAS-33108[Invader](rev02)',
'holders': []
},
省略 ...
}
- template 模板:
blacklist {
{% for item in ansible_devices %}
{% if ansible_devices[item].host %}
devnode "^{{ item }}$"
{% endif %}
{% endfor %}
devnode "^rbd*"
}
- 结果:
blacklist {
devnode "^sda$"
devnode "^rbd*"
}
网友评论