pbicskei.classify
ロール名
これは、ansible_factsから簡単な分類を簡略化するロールです。
Proxmoxの分類 p24.xlarge
は、ansible_processor_count
が 24
で、ansible_memtotal_mb
が 32456
より大きい Proxmox
ホストを指します。
Raspberryの分類 a4.large
は、ansible_processor_count
が 4
で、ansible_memtotal_mb
が 4096
と 8096
の間の Arm
ホストを指します。
Genericの分類 g4.nano
は、ansible_processor_count
が 4
で、ansible_memtotal_mb
が 4096
と 8096
の間の Generic
ホストを指します。
Proxmoxの例では、先頭の文字は ansible_kernel
に基づいて次のように設定されています:
- name: Proxmox ハイパーバイザー
set_fact:
type: p
type_desc: "{{ ansible_distribution }} Proxmox"
when: '"pve" in ansible_kernel'
このマップは、size_map
と type_map
という2つの変数に基づいて生成されます。これらはdefaults/main.ymlで見つけることができます。
要件
Ansible自体やロールがカバーしていない可能性のある前提条件をここに記載してください。例えば、ロールがEC2モジュールを使用している場合、botoパッケージが必要であることをこのセクションで言及するのが良いでしょう。
ロール変数
このロールの設定可能な変数の説明をここに記載します。defaults/main.yml、vars/main.ymlに含まれる変数や、ロールのパラメータを通じて設定できる(すべき)変数を含めます。他のロールやグローバルスコープ(ホスト変数、グループ変数など)から読み取られる変数もここに記載してください。
依存関係
Galaxyにホストされている他のロールのリストをここに記載し、他のロールのために設定する必要があるパラメータや、他のロールから使用される変数に関する詳細を含めます。
サンプルプレイブック
ロールの使用方法(例えば、パラメータとして変数を渡す方法)の例を含めることは、ユーザーにとっても良いことです:
デフォルトテーブルを使用:
- hosts: servers
roles:
- pbicskei.classify
カスタムテーブルを使用:
- hosts: servers
roles:
- pbicskei.classify
vars:
type_map:
- { name: "ハイパーバイザー", letter: "hv", kernel_match: "pve" }
- { name: "コンピュート(ARM)", letter: "a", kernel_match: "raspi" }
- { name: "ジェネリック", letter: "g", kernel_match: "default" }
size_map:
- { name: "ナナイト", min: 1, max: 1024 }
- { name: "マイクロベ", min: 1024, max: 2048 }
- { name: "昆虫", min: 2048, max: 4092 }
- { name: "ハムスター", min: 4092, max: 8184 }
- { name: "犬", min: 8184, max: 16368 }
- { name: "馬", min: 16368, max: 32736 }
- { name: "象", min: 32736, max: 65472 }
- { name: "クジラ", min: 65472, max: 130944 }
roles:
- pbicskei.classify
ライセンス
BSD
著者情報
ロールの著者が連絡先情報やウェブサイトを含めるためのオプションのセクション(HTMLは禁止されています)。