0
使用可能なボリュームグループのリストを取得し、ボリュームグループの属性を使用して、条件を満たすボリュームにファイルシステムを作成することができます。使用可能なボリュームグループ属性を入手する
基準 1:ボリュームに名前のルートを持っていなければなりませんそれ 2:私はこのロジック
- name: list volume groups
debug: msg="echo volume groups is {{ item }}"
with_items: "{{ ansible_lvm.vgs }}
を持っている。しかしのその属性を取得するために苦労しています
ギガバイト
-少なくとも2ボリュームでなければなりませんvgs。ここでちょうどeveryonesの利益のためにansible_lvm
"ansible_lvm": {
"lvs": {
"lvud01": {
"size_g": "0.50",
"vg": "vgud01"
},
"root": {
"size_g": "79.01",
"vg": "precise32"
},
"swap_1": {
"size_g": "0.75",
"vg": "precise32"
}
},
"vgs": {
"precise32": {
"free_g": "0",
"num_lvs": "2",
"num_pvs": "1",
"size_g": "79.76"
},
"vgud01": {
"free_g": "0.50",
"num_lvs": "1",
"num_pvs": "1",
"size_g": "1.00"
}
}
'ansible_lvm.vgs'は辞書です。ですから、あなたのタスクに 'with_items'の代わりに' with_dict'を使ってみてください。次に、 '{{item.key}} 'と' {{item.value.free_g}}'を介してdictキー(exact32やvgud01など)にアクセスできます。次に、あなたのタスクに条件付き 'when'を使用して、ドライブにルートが含まれているかどうかを判断することができます。' when: "{item.key}} == 'root'" 'ではありません。 – fishi
誤って構文が間違っています。私はいつ ':{{not item.key == 'root'}}" ' – fishi
それを解決したのかを意味しました。ありがとう。 – user3073335