Contents
ManageIQでAnsibleを有効化して使ってみます。
必要
- GitLabやGitHubなどのサービス
ManageIQでAnsibleを使う
OSに設定してあるホスト名が名前解決できることを確認してください。
名前解決できない場合はManageIQからAnsibleを使うことは出来ません。
名前解決が出来ない場合は /etc/hosts
に追記してください。
ManageIQでAnsible有効化
ManageIQにログインして 構成
へ移動します。
サーバ制御
で Embedded Ansible
を有効化して 保存
をクリックします。
ManageIQではAnsibleを有効化すると AWX がインストールされます。
そのためインストールが完了するまで待つ必要があります。
Proxy配下にある場合はコンテナイメージを取得できるよう Dockerのプロキシ設定 が必要になります。
認証設定
自動化
-> Ansible
-> 認証情報
をクリックします。
構成
-> 新規認証情報の追加
をクリックします。
名前
を入力して 認証タイプ
を Scm
を選択し必要なパラメーターを入力して 追加
をクリックします。
リポジトリー設定
自動化
-> Ansible
-> リポジトリー
をクリックします。
構成
-> 新規リポジトリーの追加
をクリックします。
必要パラメーターを入力して 追加
をクリックします。
Playbook確認
自動化
-> Ansible
-> Playbooks
をクリックしてPlaybookが登録されているか確認します。
サービスダイアログ作成
ManageIQでAnsibleを実行する時は一つのサービスダイアログを紐づける必要があります。
サービスダイアログは実行する時に表示されるダイアログでパラメーター(AnsibleだとExtra Vars)を入力することができます。
自動化
-> 自動化
-> カスタマイズ
をクリックします。
サービスダイアログ
をクリックします。
構成
-> 新規ダイアログの追加
をクリックします。
ダイアログの名前
を入力します。
サイドバーから必要な要素をドラッグしてセクションを追加します。
ここでは テキストボックス
を追加します。
鉛筆マーク
をクリックして編集します。
ラベル
と 名前
を入力して 保存
をクリックします。
Ansibleで変数として渡す場合は param_変数名
を指定する必要があります。
保存
をクリックします。
サービスダイアログの詳細については公式ドキュメントを確認ください。
サービスカタログの作成
ManageIQではサービスカタログと言う単位でカタログを作成します。
利用者は使用したいサービスカタログを選択してオーダーして実行します。
ここではカタログを2つ作成します。
- example1.yml Playbook用カタログ(変数無し)
- example2.yml Playbook用カタログ(変数あり)
ソースは以下から確認ください。
カタログの作成
サービス
-> カタログ
をクリックします。
カタログ
をクリックします。
構成
-> 新規カタログの追加
をクリックします。
名前
を入力して 保存
をクリックします。
カタログ項目
をクリックして example
を選択します。
構成
-> 新規カタログ項目の追加
をクリックします。
必要なパラメーターを入力して 追加
をクリックします。
パラメーター | 説明 |
---|---|
名前 | カタログへの表示名 |
カタログないに表示 | カタログに表示させるためYes |
カタログ | 作成したカタログを選択 |
リポジトリー | 作成したリポジトリーを選択 |
Playbook | 実行するPlaybookを選択 |
マシンの認証情報 | マシンの認証情報を選択、ここではローカルで実行するので標準のものを使用 |
ホスト | Localhostを選択 |
ダイアログ | 作成したダイアログを選択 |
同じ手順で example2.yml
用のカタログを追加します。
登録したカタログ(Playbook)を実行
サービス
-> サービスカタログ
をクリックします。
実行したいサービスの オーダー
をクリックします。
変数を使うPlaybookを実行する時は メッセージ変数
を入力して 送信
をクリックします。
実行結果の確認は サービス
-> マイサービス
をクリックします。
確認したいサービスを選択します。
プロビジョニング
タブを選択すると結果が確認できます。
変数を埋め込んだ結果は以下のようになります。