JAPAN VMUG Summer Meeting With BIGLOBE の LT「今日からはじめた Idem と Aria Guardrails」で、Idem & Aria Guardrails の様子を紹介しました。今回は、Aria Guardrails から Idem が利用されている様子を見てみます。
セッション録画はこちら。
LT の前半部分の内容(Idem の紹介)は、こちらをどうぞ。
今回の内容です。
Aria Guardrails の様子
Aria Guardrails は、名前のとおりマルチクラウド環境にガードレールを設定するような製品です。とりあえず製品の雰囲気を確認したい場合は、Aria Hub Free Tier にも機能が含まれています。少し前までは「Guardrails」というメニューがありましたが、現在は「Governance」になっています。
Aria Hub Free Tier では、セキュリティ関連の問題点を「Findings」画面から一覧できますが、ここに Aria Guardrails によって検知された問題も表示されます。ちなみに、Aria Automation for Secure Clouds で検知されていた問題なども表示されます。
Findings の検知元は、検知の Type であたりがついたりします。
たとえば、Aria Automation for Secure Clouds の機能によって見つけられたものは、Type が Violation になっています。
そして、Aria Guardrails によって見つけられたものは Type が Drift になっています。
Aria Guardrails からの Findings と idem
前回紹介したように、idem では期待する設定状態との Drift を検知して、差分があれば自動修正できます。ここからは、Aria Guardrails が見つけた「Drift」Type の Findings をもう少し具体的に確認してみます。
Aria Guardails のポリシー適用
今回は、Aria Guardrails にビルトインで用意されている「Create or verify Azure Resource Group」というポリシー テンプレートを利用して、ポリシーを適用しておきました。
ポリシー テンプレートをポリシーとしてを適用する際に、適用先 Azure アカウント(Aria Hub に登録した Azure サブスクリプション)と、リージョンを指定します。
Aria Guardrails のポリシーは、下記のようにフォームにパラメータを入力して設定できるようになっています。たとえば「チェック対象のリソース グループ名: rg-idem」などを指定できたりします。
ポリシーをもとにチェックをするだけ(Monitor)か、自動修正する(Enforce)かを選択できます。
Aria Guardails でのポリシー チェックの結果
それでは、すでに Findings 画面に検出されている「rg-idem という名前の Azure リソース グループが正しく作成されている」ようにするポリシーからの問題点を確認してみます。
この Findings は、Type が「Drift」なので「VIEW DIFF」ボタンが表示されています。ここから、期待されているリソース グループの設定と、実際に Azure に作成されているリソース グループの設定との Diff(差分)を確認できます。
じつはこの Aria Guardrails のポリシーでは、リソース グループに「Name: リソース グループ名」タグが割り当てられているべきというルールを記述してありました。そして、rg-idem リソース グループにタグが指定されていないことが検知されています。
実際に Azure Portal で rg-idem リソース グループを確認すると、やはり「Name: rg-idem」タグは設定されていません。
Aria Guardails ポリシーを記述する Code の様子
Aria Guardails のポリシーは、フォーム入力だけでなく、コードを書いて指定することもできます。「Code」タブを開いて、コードの様子を確認すると、前回紹介した idem での Azure リソース グループの構成情報(.sls / Salt の State ファイル)と同様の記述がみつけられます。
前回のスライドの再掲になりますが、idem では、Azure リソース グループが作成されていることを「azure.resource_management.resource_groups.present」で定義していました。
このように、Aria Guardrails でのポリシー記述を見ると、実際に idem が利用されていることがわかります。今回はふれませんでしたが、前回紹介した「idem describe」の様子をみると、Aria Guardails が既存環境から構成情報を取得できることも理解できると思います。
以上、Aria Guardrails と Idem の関係性についての話でした。