[和訳] Chef を使い倒そう: Analytics, Provisioning その他 #getchef
この記事は1年以上前に投稿されました。情報が古い可能性がありますので、ご注意ください。
本稿は Get the Most From Chef: Analytics, Provisioning, and More (2015/07/14) の和訳です。
本日、Chef 社の自動化エンジニアの Galen Emery が、いくつかの最新機能を使って「Chef を使い倒す」にはどうしたらよいかの webinar を開催しました。
Chef Analytics: 仕様への遵守や監査の必要がありますか? Chef Server で何が起きているかリアルタイムで視覚的に確認してみましょう。
Chef Provisioning: たいくつな作業時間を減らしましょう。単一のツールセットで、あらゆる大きさや複雑さのクラスタを記述、バージョニング、デプロイ、管理しましょう。
Chef Delivery: 現在は招待制のみの新しい継続的デリバリツールをちょっと覗き見してみよう。
これらの機能をどのようにうまく使っていくか学ぶためとデモを見るために、webinar の録画をご覧ください。ライブ webinar からの Q&A はこの下にあります。
ライブ webinar からの Q&A
Q: Chef Analytics は Slack と統合できますか? できなければ、Webhook を使う必要がありますか?
A: 現時点では Webhook を使う必要があります。
Q: Node に何の Cookbook がインストールされたか見るために Chef Analytics を拡張するにはどうしたらいいですか?
A: 利用可能なルールの一覧はこちらをご覧ください: https://docs.chef.io/analytics_rules.html#run-converge
Q: 監査ルールを普通の言葉で書く簡単な方法はありますか?
A: ルールは JSON ドキュメントとして格納されています。
Q: 150 以上の Node で Chef 12 を使って料金を支払っていますが、それに Chef Analytics の料金は含まれていますか? 別々に支払わなければいけませんか?
A: Chef Analytics は Chef パッケージに含まれています。別個のものではありません。
Q: Chef Analytics を Chef Server とは異なるサーバに分離してインストールする個別のコンポーネントですか? もしそうなら、統合して動作させるにはどうしたらいいですか?
A: Chef Analytics はあなたのデータセンターのあなたのサーバで動作します。Chef Server ほどの大きさは必要ありませんが、データベースに書き込むために早いディスクを必要とします。
Q: Chef Supermarket に STIG (訳注: Security Technical Implementation Guide) に従う監査ルールはありますか?
A: 現在、いくつかの CIS ベンチマークのルールがあります。
Q: Chef Client を設定していない既存の環境に対して、PCI (訳注: Payment Card Industry) に従っているか本番環境を監査する方法はありますか?
A: Chef で管理しているかどうかに関わらず、Chef Analytics ルールを設定して audit_mode で実行することで、あなたのシステムが PCI に従っているか監査が可能です。
Q: これらの機能はホステッド Chef にありますか? もしなければ、いつ追加されますか?
A: 第4四半期のはじめに Chef Analytics をホステッド Chef に追加する予定でいます。
Q: Chef Server 12、Chef Analytics、Chef Provisioning などをテストのためにローカルに設定するためのステップバイステップの手順書やブログはありますか?
A: 現時点ではありません。構築の準備をしています。AWS Chef Server AMI をベースとしたものになるでしょう。
Q: Chef Server で PCI 遵守の AWS Node を管理するのは安全ですか?
A: Chef Analytics は、ルールを遵守している Node を Chef で管理するのに十分な能力を持たせてくれます。遵守した状態であり続ける変更をするように、十分な能力があります。
Q: Node に何かエージェントをインストールする必要がありますか?
A: 必要なエージェントは、Node にポリシーを適用するために使っている chef-client のみです。
Q: Chef Analytics は情報を取得するための REST API を提供していますか?
A: はい。Chef 上のすべてのものは REST API で構成されています。
Q: 特定のケーススタディのための完全なコードサンプルはどこで手に入りますか?
A: CIS ベンチマークの例はこちらにあります: https://supermarket.chef.io/cookbooks/audit-cis
Q: 既存の RSpec や Serverspec の spec は Chef Analytics で使えますか? それとも変換の必要がありますか?
A: 既存の Serverspec テストが「expects」形式を使っているなら、audit_mode でそのまま使えます。「should」を使っているなら、書き換える必要があります。
Q: Splunk 以外に、標準的な syslog をサポートしていますか? また、sumo logic、Alienvault、QRadar などのイベント関連ツールと統合できますか?
A: 次は PagerDuty と AWS サポートを追加しようと作業中です。Chef Analytics イベントはサーバに記録され、syslog やその他のフレームワークを通して引き出すことができます。
Q: Chef Provisioning は環境への変更を管理できますか? 新しい環境を作るときだけに便利なものですか? 例えば、アプリケーション Node を 5 から 10 にスケールするときにも使えますか?
A: はい。Chef Provisioning は新しい環境を作ることも既存の環境のスケールアップにも使えます。
Q: ec2 インスタンスを提供するために AWS CloudFormation を使い、その後でマシンをセットアップするために Chef を使えますか?
A: はい。システムを構築するのに CloudFormation を使い、それからマシンをセットアップするのに Chef を使えます。または、すべてを Chef で行えます。
Q: Chef は規範的なので、audit mode の他のユースケースの例はありますか? 例えば、最初に監査して適用する代わりに、べき等なので最初から単純に修復 Recipe を適用できます。予防的な別の層を作るのが audit mode の主目的ですか?
A: Chef Analytics は、Chef の実行に対して単なる予防手段を提供する以上のことをします。管理されていないサーバ群を、現在の状態を決定することで管理下に置くことができます。システムで Recipe が実行されていることとは関係なく、Node が必要なポリシーに適合した状態としておくために、監査チームやセキュリティチームが使います。
Q: 複数の Chef Server を実行している際、1つの Chef Analytics に統合できますか?
A: 現時点ではできません。複数の Chef Server からデータを集められるように作業中です。
Q: 電話にテキストで警告を送れますか?
A: 現時点では Webhook か SMTP とテキストサービスを組み合わせなければいけません。
Q: マルチテナント環境(例えば複数の Org)がある場合、それぞれの Org が Chef analytics の別々のインスタンスを必要としますか? 複数の Org をまたいでルールを適用する何か方法はありますか?
A: Chef Analytics は単一の Chef Server 上の複数の Org をまとめることができます。現時点では複数の Org をまたいでルールを適用する方法はありませんが、Chef Server の他の複製機能に加えてロードマップ上にあります。
Q: 例では VM だけでしたが、Chef Provisioning は物理ホストのデプロイをサポートしますか?
A: はい。Amazon にデプロイするように、Chef Provisioning は Hanlon ドライバ で物理ホストをサポートしています。
Q: 複数のプラットフォームをサポートした PCI 遵守の Cookbook の例はありますか?
A: 現時点ではありません。CIS ベンチマークの Cookbook のみです: https://github.com/chef-cookbooks/audit-cis
Q: Chef Server と Chef Analytics を 1つのサーバに入れるのはお勧めできませんか?
A: Chef Analytics と Chef Server は分離すべきです。システムが動作を記録することとシステムが動作を行うことは別々だからです。
Q: AWS にインスタンスを作成する際、ホスト名をどのように制御しますか? レポートは Chef から得られた Node の値に依存しますか?
A: machine Resource 内の名前は、AWS と Chef Server の両方のための名前です。
Q: Chef Delivery はどうしたら使えますか?
A: Chef Delivery は現在は招待制のみです。今後拡張がきた際に通知を受け取るには https://www.chef.io/delivery/ からサインアップしてください。