ahuffman.sat6_create_hosts

Ansible Role

ahuffman.sat6_create_hosts

Satellite 6.xで新しい仮想およびベアメタルホストを作成するためのAnsibleロール。Satellite6 APIのv2が必要です。

ロール変数

変数名 必須 説明 デフォルト
sat6_fqdn はい Satellite 6ホストの完全修飾ドメイン名。 文字列 ""
sat6_user はい 新しいホストを作成する権限を持つSatellite 6ユーザーのユーザー名。 文字列 ""
sat6_pass はい 新しいホストを作成する権限を持つSatellite 6ユーザーのパスワード。セキュリティのためにボールトされるべきです。 文字列 ""
sat6_organization はい sat6_hosts に定義されたホストを作成するSatellite6の組織名。 文字列 ""
sat6_fail_on_existing いいえ sat6_hosts に定義されたホストが既に存在する場合、プレイブックを失敗させるかどうか。通知を受け取る際に便利です。Trueはホストが存在する場合は失敗、Falseは要約を出力します。 ブール値 False
sat6_power_on_delay いいえ 新しい仮想マシンを作成した後、その電源を入れるまでの秒数(レース条件を防ぐため) 整数 30
sat6_hosts はい 作成したいSatellite 6ホスト 辞書のリスト []

sat6_hosts 辞書フィールド - 共通

ベアメタルまたは仮想ホストの作成に使用できるフィールド。

フィールド名 必須 説明
name はい 作成するホストのホスト名 文字列
comment いいえ ホストの追加情報に表示されるコメント。ホストの目的を説明する短い文。 文字列
domain いいえ ホストを作成するためのSatellite6ドメイン名。ホストグループのデフォルトドメインを使用する場合は必須ではない 文字列
host_group はい 新しいホストを作成するためのSatellite6ホストグループ名。ネストしたホストグループの場合、hostgroup1/hostgroup2/hostgroup3 という形式にしてください。 文字列
ipv4 いいえ ホストに割り当てるIPv4アドレス。ホストグループがipamまたはdhcpでIPv4アドレスを提案する場合は不要 文字列
location はい ホストを展開するSatellite6の場所名。 文字列
partition_table いいえ ホストを作成するためのSatellite6のパーティションテーブル名。ホストグループのデフォルトを使用する場合は不要。 文字列
subnet いいえ ホストを作成するためのSatellite6のサブネット名。ホストグループのデフォルトを使用する場合は不要。 文字列
parameters いいえ ホストに設定したい追加のSatellite6ホスト特有のパラメータのリスト。 辞書のリスト
register_only いいえ 実際に電源を入れて構成するのではなく、Satellite6にホストのエントリを作成するかどうか(デフォルトはFalse)。 ブール値
manage_host いいえ register_only: Trueおよびforce_host_update: Trueを使用した場合、ホストのビルドサイクルがSatellite6によって管理されます。 ブール値
force_host_update いいえ register_only: Trueを使用する場合、Satellite6ホストを指定されたオプションに更新します。 ブール値
provision_method いいえ buildまたはimageデプロイ。デフォルトはbuild 文字列

sat6_hosts 辞書フィールド - 仮想

フィールド名 必須 説明
compute_profile いいえ ホストを展開するためのSatellite6コンピュートプロファイルの名前。 文字列
compute_resource はい ホストを展開するためのSatellite6コンピュートリソースの名前。 文字列

sat6_hosts 辞書フィールド - 物理

フィールド名 必須 説明
mac はい 展開したい物理ホストのMACアドレス。 文字列

sat6_hosts.parameters 辞書フィールド

フィールド名 必須 説明
name はい 作成するパラメータの名前 文字列
value はい 作成するパラメータの値 文字列

デバッグ

完全なデバッグ出力を表示するには、Ansible Towerで冗長性を1(詳細)に増やすか、Ansible Core/Engineで -vを1回使用します。

サンプルプレイブック

---
- name: "ahuffman.sat6_create_hosts サンプルプレイブック"
  hosts: "localhost"
  vars_files:
    - "vars/myvaultedsecrets.yml"
  tasks:
    - name: "Satellite 6ホストのプロビジョン"
      include_role:
        name: "ahuffman.sat6_create_hosts"
      vars:
        sat6_fqdn: "mysat6server.mydomain.com"
        sat6_user: "mysat6admin"
        #sat6_pass: "これはvars/myvaultedsecrets.ymlファイルで設定されています"
        sat6_organization: "私の組織"
        sat6_fail_on_existing: True
        sat6_hosts:
          #VM
          - name: "my-new-vm"
            host_group: "RHEL7-Virtual"
            location: "Raleigh"
            ipv4: "192.168.122.24"
            domain: "redhat.com"
            comment: "新しいウェブサイトを提供するウェブサーバー"
            compute_resource: "vsphere.vmware.com" 
            compute_profile: "3-Large"
            parameters:
              - name: "build_type"
                value: "httpd"
          #ベアメタル
          - name: "my-new-bare-metal"
            host_group: "RHEL7-Physical"
            location: "Raleigh"
            ipv4: "192.168.122.25"
            domain: "redhat.com"
            comment: "データベースサーバー"
            mac: "12:34:56:78:91:23"
          #登録のみ(つまり、作成のみ)
          - name: "host1"
            host_group: "RHEL7-Virtual"
            location: "Raleigh"
            ipv4: "192.168.122.26"
            domain: "redhat.com"
            comment: "事前登録ホストエントリ"
            register_only: True
          #既存ホストの更新
          - name: "my-new-vm"
            host_group: "RHEL7-Virtual"
            location: "Armonk"
            ipv4: "192.168.122.24"
            comment: "Q3移行"
            domain: "ibm.com"
            parameters:
              - name: "build_type"
                value: "ihs"
            register_only: True 
            force_host_update: True 
          #既存のホストのプロビジョニングを管理
          - name: "someoldserver"
            host_group: "RHEL7-Physical"
            mac: "32:34:56:78:91:23"
            domain: "redhat.com"
            location: "Raleigh"
            register_only: True
            force_host_update: True
            manage_host: True

ライセンス

MIT

著者情報

Andrew J. Huffman

プロジェクトについて

An Ansible role to create new virtual and bare-metal hosts in Satellite 6.x.

インストール
ansible-galaxy install ahuffman.sat6_create_hosts
ライセンス
mit
ダウンロード
5.1k