はじめに
この記事は、[2枚目]Nutanix Advent Calendar 2018 12月6日の分として作成しました。本記事の内容はこの日付の情報に基づいています。
(ここ数年12月しかQiitaを更新していないですね。反省)
Nutanixでは、ITオペレーションの効率化を実現するために、様々な機能を提供しています。
ワンクリックでインフラストラクチャーを管理できるシンプルさだけではなく、プロアクティブな対応を実現するための将来予測や、X-Fitという機械学習を取り入れた異常値検知などです。
これらの機能の多くはPrism Proと呼ばれるライセンスで提供されています。その新機能として、X-Playというアラート/イベント処理の自動化が発表されましたのでご紹介します。
#X-Playとは
X-Playは.Next 2018 New Orleansで発表されたPrism Proの機能です。(その時の発表資料はこちらから参照できます。)アラートやイベントをトリガーにして、メールの送信、仮想マシンのスナップショット取得などのアクションを自動的に実行します。アクションは複数のアクションをチェーンのように組合せることができます。
2018年11月にリリースされたNutanixのバージョン5.10ではテックプレビューで、5.11でGA(General Availability)になる予定です。
(ですので、本記事の内容はリリース前のバージョンを対象にしており、予告なく変更されることがあります)
これらの一連のトリガーとアクションを組合せたものをPlaybookを呼びます。Playbookの管理や設定は全てPrism Centralから実施します。
Playbookの構造
PlaybookはX-Playで自動化されるトリガーとアクションの組合せです。一つのトリガーに対して、複数のアクションをシーケンシャルに実施する事ができます。
上記の例では、「メモリの使用率が高い」というアラートがトリガーになっています。
そのトリガーに対して、以下の4つのアクションが定義されています。
- VMのスナップショットを取得する
- VMに対してメモリを1GiBホットアドで増設する (最大20GiB)
- アラートを解決状態にする
- 管理者にメールで通知を送信する
Trigger
トリガーはPlaybookで定義されたアクションを起動するきっかけです。アラートは下図のようにユーザが定義することができるため、かなり自由度の高いトリガーを設定することができます。
トリガーとするアラートを選択したら対象となるエンティティを選択します。例えばVMであれば、全てのVMがトリガーの対象となるのか、特定のVMのみが対象となるのかを指定します。
Actions
アクションはトリガーによって起動される様々な操作/動作です。一つのトリガーに対して複数のアクションを実行させることが可能です。アクションはプリセットされているもの以外にも、スクリプトの実行やAPIのコールなどを指定することができますので、非常に自由度が高くなっています。定義したアクションはAction Gallaleyに格納されます。
AOS5.10のテックプレビュー版のAction Galalleyには、以下のようなアクションがプリセットされていました。
終わりに
X-Playによるアラート/イベント処理の自動化の概要をご紹介しました。AOS/PC 5.11から利用可能になりますので、運用の効率化にお役立てください。