[VMware] vRealize Automation 7.4 発表!

2018/04/13 Updated

本日リリースされました! 😉

vRealize Automation 7.4 release notes

 

3月29日、vRealize Automation 7.4が発表されました!

What’s New in vRealize Automation 7.4

 

去年5月、今の7.3がリリースされてから約1年ぶりのアップデートバージョンです。まだ追加される機能の全貌が明らかになったわけじゃありませんが、公式ブログで紹介された機能だけでも、今すぐにでもアップグレードしたくなります。;)

 

簡単に追加/改善される内容をまとめてみると、7.4では…

  • 利用者がGUIベースのフォームよりサービスリクエストが可能なカスタムフォームデザイナー機能
  • ブループリントとしてOVFファイルが利用可能
  • vRO(vRealize Orchestrator)のマルチテナントサポート
  • vROのUI変更(HTML5ベース)
  • AzureおよびAWS用カスタムプロパティの追加
  • 20以上のブループリントテンプレートおよび120以上のOVFアプリケーションパッケージの追加
  • ServiceNowプラグインの統合

 

vRA 7.4の発表と同じタイミングでvRealize Operations 6.7vRealize Suite Lifcycle Manager 1.2も発表されました。

 

リリーススケジュールは明らかになっていませんが、いろんなところからの噂から推測すると4月〜5月中にはされるのではないかと思ったりしますね。 😉

 

広告

[VMware] vRealize Automationの導入 (15)

 

(0) vRAの概要
(1) vRAのコンポーネント
(2) vRAのインストール
(3) テナント作成
(4) Active Directoryの追加
(5) エンドポイントの作成
(6) ファブリックグループの作成
(7) マシンプリフィックス/ネットワークプロファイルの作成
(8) ビジネスグループの作成
(9) 予約/予約ポリシーの作成
(10)ブループリント作成
(11)サービスカタログの作成
(12)ブループリントのリクエスト
(13)承認ポリシーの作成
(14)カスタムプロパティの作成
(15)vROエンドポイントの作成

 

前回までで基本的なvRAの導入と設定について紹介しました。前回までの設定でも一応ユーザへのインフラサービスは提供できます。しかし提供できる内容は限定的と言えます。正直いうとvRAの50%も活用していません。vRO(vRealize Orchestrator)を利用しなければ…です。

ご存知の通り、vROは各プロセスや処理をワークフローで自動化するツールです。VMware社のプロダクトはもちろん3rdパーティーソリューションのプラグインをインストールすることでvROから簡単に該当プロダクトを制御できます。

vRA環境では、vRAがインフラサービスを、vROはその他のITサービスを提供することでブループリントでプロビジョニングした仮想マシンのDNSレコードを作成したり、Active Directoryのユーザやグループを作成するワークフローを作成し、カタログアイテムとして提供できます。

エンドポイントで利用するvROは、vRAに含まれている組み込みのものを利用することも可能ですし、仮想アプライアンスをインストールすることも可能です。またグローバル構成としてvRA全体で利用することも、テナント構成としてテナント単位で利用することも可能です。

 

ここではvRAの組み込みインスタンスをグローバルではなくテナントで構成する方法を紹介したいと思います。

 

(15)vROエンドポイントの作成

 

① [管理]タブから[vRO構成]を選択します。

 

②  [サーバ構成]から[システム管理者によって構成されたデフォルトのOrchestratorサーバを使用してください]を選択[接続をテスト]をクリックします。

 

③ 接続テストの結果が正常であることを確認後、[OK]をクリックします。

 

④ ウェブブラウザから以下のURLアクセスします。

https://vRAアプライアンスのFQDN(またはIPアドレス)

 

ページから[vRealize Orchestrator Client]をクリックします。

 

⑤ JavaアプリケーションのvROクライアントが起動するので以下の情報を入力し、[Login]をクリックします。

  • Hostname :  vRAアプライアンスのFQDN(またはIPアドレス):443
  • User name : vRAアプライアンスのadministrator@vsphere.local ※vCenterではありません
  • Password : vRAアプライアンスのadministratorパスワード

 

⑥ 左メニューから[Workflows]を選択、ライブラリ[vCenter] → [Configuration]順に展開して [Add a vCenter Server instance]選択します。画面中央の[Check Signature]をクリックして署名に問題がないことを確認します。この手順はvROからvCenterに接続するためです。

 

⑦ 署名に問題がなければ、画面中央上段の[Start Workflow]をクリックします。

 

⑧ vCenterに接続するため、ウィザードが表示されるので以下の情報を入力し[Next]をクリックします。

  • vCenter : vROに追加するvCenterのホスト名またはIPアドレス
  • HTTPS ポート番号 : 443
  • SDK パス : /sdk
  • vROによる自動化利用有無 : yes
  • インスタンス追加時の証明書エラー無視 : yes

 

⑨ 次の情報をお入力後、[Next]をクリックします。

  • vCenterへのマルチセッション利用 : No
  • vCenter管理者アカウント
  • vCenter管理者パスワード

※何故かvCenterへのマルチセッション利用を”Yes”にすると、vCenterインスタンスは追加されるが以下のエラーで追加したvCenterのインベントリが参照できません。

unusable:java.lang.ClassCastException: com.vmware.vcac.authentication.http.spring.oauth2.OAuthToken cannot be cast to com.vmware.vim.sso.client.SamlToken

 

調べたところ、マルチセッションを利用する場合は、vIDMによる認証じゃないとうまく行かないようでした…

 

⑩ 追加エンドポイント設定は自動的に入力されるので、そのまま[Submit]をクリックします。

 

⑪ vCenter Server追加のワークフローが実行されます。終了ポイントが’緑’で終了されたことと、[General]のワークフロー実行結果が’completed’になっていることを確認します。

 

⑫ 左メニューの上段から[Inventory]を選択、追加したvCenterのインベントリ情報が参照できることを確認します。

 

⑬ 再度vRAのテナントにログインします。今度はvROをエンドポイントとして登録します。[インフラストラクチャ]タブを選択、[エンドポイント]をクリックします。

 

⑭ [エンドポイント]を選択し[新規] → [オーケストレーション – vRealize Orchestrator]をクリックします。

 

⑮ 以下の情報を入力し、[OK]をクリックします。

  • 名前: vRO
  • Address : https://vRAアプライアンスのFQDN(またはIPアドレス)/vco
  • User name : vROログインアカウント(administrator@vsphere.localでも構いません)
  • パスワード
  • Priority : 1

※Priorityですが、追加するvROを優先的に利用するといういことです。vRA 7.2までは”VMware.VcenterOrchestrator.Priority”カスタムプロパティを定義する必要がありました。 🙂

 

 

⑯ 作成したvROを選択、[Data Collection]をクリックします。

 

⑰ [Start]をクリックし、正常にvROのワークフローやインベントリの収集が行われるか確認します。データコレクションが成功したらvRAからvROのワークフローが利用できるようになります。[Cancel]をクリックし、データコレクションを終了します。

 

これでvROエンドポイント作成手順は終わりです。

 

 

[VMware] vRealize Automationの導入 (16)

 

※このエントリーは、vExperts Advent Calendar 2017に参加しています。

 

(0) vRAの概要
(1) vRAのコンポーネント
(2) vRAのインストール
(3) テナント作成
(4) Active Directoryの追加
(5) エンドポイントの作成
(6) ファブリックグループの作成
(7) マシンプリフィックス/ネットワークプロファイルの作成
(8) ビジネスグループの作成
(9) 予約/予約ポリシーの作成
(10)ブループリントの作成 — 公開予定
(11)サービスカタログの作成 — 公開予定
(12)ブループリントのリクエスト — 公開予定
(13)承認ポリシーの設定 — 公開予定
(14)カスタムプロパティの設定 — 公開予定
(15)vROエンドポイントの作成 — 公開予定
(16)イベントブローカーの設定(Advent Calendar参加のため、先に公開します)
(17)NSXとの統合 — 公開予定
(18)仮想マシンのインポート — 公開予定
(19)仮想マシンの解除 — 公開予定
(20)Nutanixエンドポイントの作成 — 公開予定
(21)vROpsとの統合 — 公開予定

 

(16)イベントブローカーの設定

 

今回はvRA 7.0から新しくなった”イベントブローカー(Event Broker、ライフサイクルの拡張性=Life Cycle Extensibilityともいう)”について紹介しようと思います。

 

“イベントブローカー”は6.xまで利用されていたWorkflow Stubに代わり、今後仮想マシンのライフサイクルを管理する方法です。

“イベントブローカー”を簡単にまとめると、ユーザのリクエストによりプロビジョニングされる(された)仮想マシンのライフサイクルに対してvROを連動させることになります。

この”イベントブローカー”を活用することで単なる仮想マシンのプロビジョニングやユーザ任せではなくより柔軟なサービスが提供できるようになります。

例えば…

  • 仮想マシンがプロビジョニングされたあとにDNSサーバにレコードを作成し、仮想マシンが削除されたらそのレコードを削除する
  • 特定のブループリントから仮想マシンがプロビジョニングされたら特定アプリケーションをインストールし、仮想マシンのリース期間が満了しらそのアプリケーションを削除する
  • 特定の仮想マシンを再起動する前にバックアップやスナップショットを作成する

などといった、より自動化に近いレベルになります。

 

この”イベントブローカー”を実現するためには、”イベントサブスクリプション”を利用します。
イベントサブスクリプションとは、vRAのイベントをトリガーにvROのワークフローを実行する定義です。定義というと難しそうに聞こえますが要は、あるイベントが発生したらvROのワークフローを実行するということです。 🙂

イベントサブスクリプションを作成するため、まず”イベントトピック”を指定します。”イベントトピック”は発生するイベントのことです。vRA 7.3では約20個のイベントを用意されていて下記のイベントが代表的なイベントトピックと言えます。

  • Machine lifecycle
  • Machine provisioning

 

各イベントトピックは複数のスキーマ(プロパティ)で構成されています。このプロパティを必要に応じて条件として組み立てます。あとはいつの段階でトリガーとしてvROのワークフローに渡すのかを決めたらとイベントサブスクリプションの作成が終わります。

 

“WinSvr”という名前のブループリントからデプロイされる仮想マシンはデプロイ後、DNSサーバにレコードを追加するvROワークフローを実行する作業を例としてみてみると下図のようなイメージです。

 

それでは簡単に手順を紹介します。

※このイベントブローカー機能を利用する場合は、vROが必要でエンドポイントとして作成されていること、そしてサブスクリプションで実行するvROのワークフローが作成されている必要があります。

 

① [管理]から[イベント]をクリックします。

 

② [サブスクリプション]を選択し、[新規]をクリックします。

 

③ まず[イベントトピック]からサブスクリプションで利用するイベントトピックを選びます。利用可能なイベントトピックの種類についてはここをご確認ください。この例では仮想マシンのデプロイ後DNSサーバにAレコードを登録する方法を紹介したいので、”マシンプロビジョニング”を選びました。イベントトピックを選択し、[次へ]をクリックします。

 

④ [条件]タブでは以下の条件を指定しました。

  • ブループリント名にLinuxという文字が含まれている。
  • ライフサイクルイベントが仮想マシンのプロビジョニグ(VMPSMasterWorkflow32.BuildingMachine)
  • ライフサイクルの段階はプロビジョニングのあと(POST)

上記の3つの条件をすべて満たした場合が条件です。

 

⑤ [ワークフロー]タブを選択し、手順④の条件を満たした時に実行するvROのワークフローを選択します。

※入力パラメータとして”payload”となっています。このpayloadはイベントトピックで生成されたスキーム(プロパティ)をvROに渡すプロパティです。イベントブローカーを使う場合は、これがほぼ100%必要になります。vROのワークフローの最初にこのpayloadを実装しないとワークフローは動作しません。

 

⑥ [詳細]タブで必要な情報を入力し、[完了]をクリックします。

  • 名前 : 作成するサブスクリプション名です。分かりやすいものにしましょう。
  • 優先順位 : 複数のサブスクリプションが存在する場合の実行順番です。
  • タイムアウト : ワークフローの実行タイムアウト値です。何らかの理由でワークフローの実行が完了せずこのタイムアウト値に達した場合、サブスクリプションの実行は失敗します。
  • ブロック : 複数のサブスクリプションを順に実行するようにします。このブロックを有効にしないと”優先順位”と”タイムアウト”は活性化されません。

 

※”ブロッキング”について少し補足です。サブスクリプションはその実行に対して”ブロッキング”と”ノンブロッキング”を指定します。単一イベントトピックに複数のサブスクリプションが存在する場合、各サブスクリプションは同時に実行されます。これを防ぐため、各サブスクリプションには”ブロッキング”を設定、優先順位を決めるわけです。”ノンブロッキング”は”ブロッキング”を指定したサブスクリプションが実行されたあと、またはタイムアウトで失敗した場合実行されます。

 

⑦ 作成したサブスクリプションは、ブループリント同様”ドラフト”状態のため、[公開]をクリックします。

 

⑧ 公開されたらサブスクリプションの作成は完了です。

 

⑨ 次へブループリントの[カスタムプロパティ]にサブスクリプションに渡すライフサイクルイベント用のカスタムプロパティを追加します。ここでは以下のプロパティと値をしてしました。

  • プロパティ名 : Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine
  • 値 : __*,*

 

この設定によって、仮想マシンがプロビジョニングされた時の各種プロパティがサブスクリプションに渡ることになります。ちないに値の__*,*(アンダースコアアンダースコア*,*)ですが__*は非表示(hidden)値を、*は表示値のすべてを渡すとことになります。

 

これで準備完了です。

 

⑩ では、ちゃんと動作するのか確認してみます。名前がLinux6のブループリントで仮想マシンをプロビジョニングしてみます。

 

⑪ 無事リクエストが処理されています。

 

⑫ vSphere Web Clientを見てみます。”LX-VM-018″という仮想マシンがプロビジョニングされていてIPアドレスは”192.168.205.153″がネットワークプロファイルより割り当てられました。

 

⑬ 仮想マシンのプロビジョニングが完了し、”Add DNS-Host”というワークフローが正常に完了したことが確認できます。この”Add DNS-Host”は手順⑤で指定したvROのワークフローです。

 

⑭ DNSサーバを見てみるとちゃんと”LX-VM-018″が”192.168.205.153″で登録されていることが確認できます。

 

⑮ 今度はvROを覗いてみましょう。ワークフローが正常に完了したことが分かります。その際に仮想マシン名とIPアドレスがちゃんとvRAから受け渡ったことも確認できます。

 

これでイベントブローカーの利用手順は終わりです。次回からは順番とおりに紹介していきます。