Setting samples
VMwareモデル(v1.1) 導入手順
※本書では「Exastro IT Automation」を「ITA」、「Setting samples VMwareモデル(v1.1)」を「VMwareモデル」と記載します。

第1.0版 (ITAバージョン1.9.0版)
Exastro developer目次
1. はじめに
2. VMwareモデル導入手順

3. VMwareモデルの実行
4. こんなときは？

1. はじめに1.1 はじめに▌このドキュメントはVMwareモデルをITAにインポートして実行するまでの手順を記載しています。
VMwareモデルの概要について知りたい方は、Exastroコミュニティサイトの 「VMwareモデル概要」をご参照ください。

Exastro4

1.2 連携サービスとの動作確認▌VMwareモデルは以下のバージョンでの動作確認しています。

No.

サービス名

利用条件

1vSphere

バージョン6.7.0.42200 以上

2

NSX-T

2.1

NSX Manager

バージョン2.5.1.0.0.15314292 以上

2.2

NSX Edge

バージョン2.5.1.0.0.15314292 以上

3

Terraform Cloud

Terraform Cloud Business
HTTPS(TCP/443)でアクセス出来ること

3.1
4

ExastroTerraform Cloud Agents
Exastro IT Automation

バージョン0.1.9 以上
バージョン1.9.1

5

1.3 用語の説明
No.

Exastro用 語説 明1

テナント

Setting samples VMwareモデルでの定義は、仮想ネットワークとWEB、AP、DB、踏み台サーバのセットをテナントと定義します。

2

テンプレートテンプレートは、仮想マシンのマスター イメージを作成してそこから数多くの仮想マシンをデプロイできるようにするために作成します。

3

Organizations

アカウントが所属している組織のこと。
組織単位で共同ワークスペースを提供したり、プライベートモジュールを共有したりすることができます。

4

Workspaces

Terraformの実行状態を保存するデータのこと。
プロビジョニングするリソースごとに管理することが可能です。

6

1.4 MovementとWorkspaceの関係▌VMwareモデルではITAの「テナント用Movement 」とTerraform上の「Workspace」が1対1の関係で管理されます。
新しくテナントを作成する際は、MovementとWorkspaceをセットで作成してください。
Terraform上のWorkspace
Movement: NSXT_テナントA

workspace-nsxt-A

VMware基盤上のリソース
Tier-0 ゲートウェイ
Tier-1 ゲートウェイ

Movement: NSXT_テナントB

Segment

Movement: vSphere_テナントA

workspace-vsphere-B

VM: WEB-01…

VM: AP-01…

1つのMovementに複数のテナントを紐づけることはできません。
新たにテナントBを作成したい場合は、Movementを新規作成もしくは複製して新しく作成したWorkspaceを登録する必要があります。
Exastro7

2. VMwareモデル導入手順

2.1 ITAの準備▌サーバの準備
公式ドキュメントのシステム構成／環境構築ガイド 基本編を参考にサーバを準備します。
▌ITAのインストール
サーバが準備出来たらInstallページを参照しながらITAをインストールします。
ITAはバージョン1.9.0以上をインストールしてください。

Exastro9

2.2 VMwareモデルのインポート▌VMwareモデルの導入ファイルのダウンロード
GitHubからHyper-Vモデルの導入ファイル(.kym)をダウンロードします。
URL:https://github.com/exastro-suite/SettingSamples-VMware/releases▌ダウンロードしたファイルをITAにインポート
導入ファイルをExastroの「エクスポート/インポート」機能を使ってITAへインポートします。
「エクスポート/インポート」機能はコミュニティサイトの ITA_利用手順マニュアル エクスポート/インポート に記載されています。

Exastro10

2.3 グローバル変数管理▌VMwareモデルではグローバル変数は使用していません。

Exastro11

2.4 ユーザ管理▌VMwareモデルでは用途の異なる2つのユーザが追加されます。
ユーザID​

ログインID​

初期パスワー
ド概要

250001

vmware_manager

password​

NSX-TやvSphereの接続情報など、重要な情報をメンテナンスできます。

250002​

vmware_user

password​

主に作成するVMの情報をメンテナンスできます。

▌アクセス権 概略図

●

●

●

●

●

●

●

●

●

●

●

●

_

●

VMware

●

ユー
ザー
モメ
デニ
ルュー

_

●

運用
者
メモニデュルー

VMware●_共通マスタ
管モ理
デル

VMware

●

ホス
ト
グ
ルー
プ
管理

Terraform

vmware_user

参照用

Ansible-Legacy

●

代入値
自動
登録用

Ansiblevmware_manager

ユーザID​

Conductor

基本
コン
ソール

凡例: ●… メニューグループ内のメニューにメンテナンス権あり●※ 表に含まれないメニューについては、いずれのユーザもアクセス権を持ちません。
Exastro12

2.5 ファイル管理▌VMwareモデルではファイル管理機能は使用していません。

Exastro13

2.6 テンプレート管理▌VMwareモデルでは、以下の7つのテンプレートを使用しています。
実行するVMware基盤や作成したいVMの設定に応じて変更してください。
細部ついては利用手順マニュアル Ansible-driver 5.2.4 テンプレート管理をご参照ください。
素材ID

テンプレート
埋込変数名

テンプレート
素材集

変数定義

使用している
Movement

説明

yum.conf

VAR_protcol:
VAR_host:
VAR_port:

設定_踏み台サーバ設定

踏み台サーバに設定するyum.conf

250002 TPF_bas_squid

squid.conf

VAR_host:
VAR_port:
VAR_dns:

設定_踏み台サーバ設定

踏み台サーバに設定するsquid.conf

250003 TPF_bas_resolv

resolv.conf

VAR_dns:

設定_踏み台サーバ設定

踏み台サーバに設定するresolv.conf

250004 TPF_environment

environment

VAR_protcol:
VAR_host:
VAR_port:

設定_踏み台サーバ設定

踏み台サーバに設定するenvironment

250005 TPF_index

index.j2

設定_WEBサーバ設定

Apacheに設定するindexファイル

250006 TPF_environment_vm

environment_vmgrop

VAR_bastion:

設定_WEBサーバ設定
設定_APサーバ設定
設定_DBサーバ設定

各VMに設定するenvironment

target_host_counter.yml

VAR_exastro_user:
VAR_exastro_pswd:

設定_Webサーバ台数取得
設定_APサーバ台数取得
設定_DBサーバ台数取得

Conductor実行判定

250001 TPF_bas_yumconf

250007
ExastroTPF_target_host_coun
ter14

2.7 ネットワーク接続準備▌VMware基盤にインターネットへ接続可能なネットワークを準備してください。各サーバは作成後に踏み台サーバ経由で必要なyumパッケージをインストールします。
VMware基盤及び踏み台サーバがインターネットへ接続出来るよう準備をお願いします。

Exastro15

2.8 テンプレートの準備▌VMテンプレートの準備
VMwareモデルでは、VMテンプレートを使用して各VMを作成します。
それぞれのVMへは公開鍵暗号によるSSH接続を行うため、ITAに秘密鍵を登録する必要があります。
秘密鍵登録は 3.4.1 ユーザメニューの登録 - 秘密鍵管理 を参照ください。

▌ITAサーバ上に登録する秘密鍵とVMテンプレート上の公開鍵
VMwareモデルでは、ITAに登録する秘密鍵は一種類となっているため、各テンプレートに設定する公開鍵は共通のものを使用してください。
WebサーバテンプレートDBサーバ
テンプレートAPサーバ
テンプレート

公開鍵

公開鍵

公開鍵

ITAサーバ
Exastro秘密鍵
16

2.9 NSX Managerの準備▌VMwareモデルでは、テナント作成時に仮想ネットワークが作成されます。
この仮想ネットワークを作成するためにNSX Managerの設定を行う必要があります。
▌細部はVMware社の公式ドキュメント等を参照ください。

Exastro17

2.10 Terraform Cloud for Businessの準備 - 接続先設定▌Terraform Cloudの接続先登録
ITAの「Terraform」メニューグループ ＞「インターフェイス情報」から登録します。
「Hostname」に「app.terraform.io」と「UserToken」に「Terraform cloudのAPI Tokens」を設定し更新ボタンを押下する。(Terraform Enterpriseの場合はインストール先ホスト名を記載してください)▌プロキシサーバー登録
ITAがインストールされたサーバがTerraform Cloudへ接続する際にプロキシサーバを使用している場合、プロキシサーバを設定する必要があります。
細部はExastroコミュニティサイトのITA_利用手順マニュアル_Terraform-driver 6.2.1 インター
フェース情報をご参照ください。

Exastro18

2.10 Terraform Cloud for Businessの準備 – Organizations管理▌Organizations管理
ITAの「Terraform」メニューグループ ＞「Organizations管理」＞「Organization
ID=250001」を更新します。
1. Organizations NameとEmail adderssをご自身のアカウントのものに変更
2. 連携状態チェック」ボタンをクリックし、連携状態が「登録済み」になったことを確認※「登録なし」となった場合に「登録」ボタンを押下するとOrganizationsを新たに作成することも可能ですが、それぞれが所属する組織の管理ルールに準じてご利用ください。

1Exastro219

2.10 Terraform Cloud for Businessの準備 – Workspace管理▌Workspaces管理「Terraform」メニューグループ ＞「Workspaces管理」から管理します。
1. 登録されているOrganizationsをプルダウン選択
2. 既存または新規のWorkspaces名を入力して更新ボタンをクリック
12

3. 登録したWorkspaces名の「連携状態チェック」ボタンをクリックし、連携状態が「登録済み」となることを確認※「登録なし」となった場合に「登録」ボタンを押下するとOrganizationsを新たに作成することも可能です。

3

Exastro20

3. VMwareモデルの実行

3.1 マスタ情報登録▌VMwareモデルは実行時の入力ミスを減らすため、パラメータシート入力はプルダウン選択を採用しています。
対象のVMware基盤に合わせて「マスタ管理_VMwareモデル」メニューグループからプルダウンの選択内容を編集してください。

Exastro

項目名

入力内容

テンプレート名

仮想マシン作成に利用するテンプレート名の一覧を登録するマスタです。[最大] 128バイト

作成VM数

作成可能なVM数の一覧を登録するマスタです。
[最小] 0 [最大] 10

CPUコア数

VM作成時に登録可能なCPUコア数の一覧を登録するマスタです。[最小] 1 [最大] 256

メモリ容量(MB)VM作成時に登録可能なメモリ容量(MB)の一覧を登録するマスタです。[最小] 1 [最大] 256

vSphere接続情報

VMwareモデルの実行先vSphere接続情報を登録するメニューです。

22

3.1.1 vSphere接続情報▌vSphere接続情報メニューを対象のVMware基盤に合わせて編集します。

Exastro

項目名

入力内容

テナント名

テナント名入力します。
[最大長]128バイト

vSphereホスト名／IPアドレス

テナントか接続するvSphereのホスト名またはIPアドレスを入力します。[最大長]128バイト

vSphereログイン
ユーザ

テナントが接続するvSphereへのログインユーザ
IDを入力します。[最大長]128バイト

vSphereログイン
パスワード

vSphereへのログインパスワードを入力します。
[最大長]128バイト

データセンター名VMを保存するデータセンター名を入力します。
[最大長]128バイト

データストア名VMを保存するデータストア名を入力します。
[最大長]128バイト

クラスタ名

VMを構築するクラスタ名を入力します。
[最大長]128バイト
233.2 テナント作成の流れ▌ここからはVMwareモデルを使って、実際にテナントを作成していきます。
テナントを操作するための一連の流れは以下の通りです。
データシート登録
仮想ネットワークとVM作成の情報を登録します

VMware基盤運用者(vmware_manager)の作業

ホストグループ登録
ホストグループ名(=VM名のプレフィックス)を登録します

パラメータシート登録
作成したいテナント情報を登録します

VMware基盤利用者(vmware_user)の作業

Conductorの実行
Conductorを実行してテナントを作成します
Exastro24

3.2.1 オペレーション作成▌仮想マシンを操作するためのオペレーションを作成します。
1.4 オペレーション名と仮想マシン名の関係についてを参考にしてオペレーションを作成してください。

Exastro項目

入力内容

オペレーション名

テナントを作成する際の任意のオペレーション名

実施予定日時オペレーションの実施予定日時※ここで指定した日付で実際に処理が実行されるわけではありません。
25

運用者メニューの登録3.3 運用者メニューの登録▌利用ユーザがプルダウンでパラメータ登録できるように選択内容を設定します。
「運用者メニュー_VMwareモデル」メニューグループから操作を行います。
これらのメニューの操作は「vmware_manager」ユーザが行ってください。

Exastro

メニュー名

入力内容

VMグループ設定

各VMグループ設定に設定するネットワーク情報や作成フォルダなどを入力するメニューです。

NSX-T接続情報

NSX manager接続情報を入力するメニューです。

vSphere接続情報(Terraform)

Terraform用のvSphere接続情報入力するメニューです。

vSphere接続情報(Ansible)

Ansible用のvSphere接続情報入力するメニューです。

踏み台サーバ設定

踏み台サーバの接続情報やネットワーク情報を入力するメニューです。

RestAPI認証用
ITAユーザ

作成したVMを機器一覧に登録する時に使用するITAユーザを登録するメニューです。

27

3.3.1 運用者メニューの登録 - NSX-T接続情報▌VMwareモデルがテナント作成時に使用するNSXマネージャとNSX-Tの設定情報を登録します。

Exastro

項目名

入力内容

NSX-Mgホスト名／IPアドレス

接続先のNSX Managerのホスト名またはIPアドレスを入力します。[最大長]128バイト

NSX-Mg
ログインユーザ

接続先のNSX Managerのログインユーザ名を入力します。[最大長]30バイト

NSX-Mgパスワード

接続先のNSX Managerのパスワードを入力します。
[最大長]128バイト

オーバレイトラン
スポートゾーン名

外部ネットワークと接続するオーバレイトランスポー
トゾーンを入力します。[最大長]128バイト

Edgeクラスタ名

仮想ネットワークを構築するエッジクラスタ名を入力します。[最大長]128バイト

Edgeノード01名

仮想ネットワークを構築するエッジクラスタに含まれる1つめのエッジノード名を入力します。
[最大長]128バイト

Edgeノード02名

仮想ネットワークを構築するエッジクラスタに含まれる1つめのエッジノード名を入力します。
[最大長]128バイト
283.3.2 運用者メニューの登録 - vSphere接続情報(Terraform/Ansible)▌3.1 マスタ情報登録 でテナント毎に登録したvSphereの接続情報をオペレーションと紐づけます。
vSphere接続情報(Terraform及びAnsible)メニューから設定してください。

Exastro

項目名

入力内容

オペレーション名vSphereに対して操作を実施するオペレーション名を選択します。

テナント名

3.1で設定したテナントを選択します。
29

3.3.3 運用者メニューの登録 - 踏み台サーバ設定▌「踏み台サーバ設定」メニューでテナントに設定する踏み台サーバの設定を登録します。

Exastro

項目名

入力内容

テナント名

利用ユーザに対して払い出すテナント名を入力します。
[最大]128バイト

ネットワークアダプター名踏み台サーバが外部接続に使用するネットワークアダプター名を入力します。[最大]128バイト

外部接続用IPアドレス

踏み台サーバが外部接続に使用するIPアドレスを入力します。
[最大] 15バイト

ローカルIPアドレス

踏み台サーバがテナント内ネットワークに使用するIPアドレスを入力します。 [最大] 15バイト

サブネットマスク

踏み台サーバが外部接続に使用するサブネットを入力します。
[最大]15バイト

ゲートウェイIP
アドレス

踏み台サーバが外部接続に使用するゲートウェイのIPアドレスを入力します。 [最大長]128バイト

接続ユーザ

踏み台サーバのログインユーザを入力します。[最大]128バイト

DNS設定

外部接続時に使用するDNSのIPアドレスを入力します。複数入力する場合はカンマ区切りで入力します。 [最大]128バイト

プロトコル

外部接続時に使用するプロキシサーバが使用するプロトコルを入力します。[最大]128バイト

ホスト

上記プロキシサーバのホストを入力します。 [最大]128バイト

ポート

上記プロキシサーバのポート番号を入力します。
[最小値]1024 [最大値]65535
30

3.3.4 運用者メニューの登録 - VMグループ設定▌「VMグループ設定」メニューでは、作成するテナントの基本設定を登録します。
作成するテナント名毎にパラメータ登録が必要です。

Exastro

項目名

入力内容

テナント名

利用ユーザが作成する(作成出来る)テナント名を入力します。[最大長]128バイト

VM作成フォルダ名vSphereに作成するVMをまとめるフォルダ名を入力します。[最大長]128バイト

tier0名NSX-Tに作成するTier-0ゲートウェイ名を入力します。
[最大長]128バイト

tier1名NSX-Tに作成するTier-1ゲートウェイ名を入力します。
[最大長]128バイト

セグメント名NSX-Tに作成するセグメント名を入力します。
[最大長]128バイト

CIDR範囲NSX-Tに作成するセグメントのCIDR範囲を指定します。
[最大長]18バイト

IPアドレス(第３オクテット)

VMグループに設定するIPアドレスの第3オクテットまでを入力します。[最大長]12バイト

IPアドレス(第4オクテット)

VMグループに設定するIPアドレスの第４オクテットを入力します。[最小値]1 [最大値]255

デフォルトゲートウェイ

VMグループに設定するデフォルトゲートウェイアドレ
スを入力します。[最大長]15バイト
31

3.3.5 運用者メニューの登録 - RestAPI認証用ITAユーザ▌VMwareモデルではオペレーションごとにRestAPI実行ユーザを設定します。
プルダウンからユーザ名を選択し、該当ユーザのログインパスワードを登録します。

項目名

入力内容

ホスト名

「exastro-it-automation」を選択します。

オペレーション

RestAPIユーザを設定して、ITAに対してRestを実行したいオペ
レーション名を選択します。

ユーザ名

機器一覧に登録する際にRest APIを実行するITAユーザを入力します。

パスワード
ExastroREST API実行するITAユーザのパスワードを入力します。

32

3.3.6 ホストグループ設定▌VMwareモデルが作成するVM名は、ITAのホストグループ名をプレフィックスとして使用します。
例: ホストグループ名を”Web”とした場合、VMは”web-1”, “web-2” ... と設定されます▌「ホストグループ管理」メニューグループの「ホストグループ一覧」からWEB、AP、DB、踏み台サーバが所属するホストグループ名を設定します。

Exastro

項目名

入力内容

ホストグループ名

VMのプレフィックスとなるホストグループ名を入力します。

優先順位

VMwareモデルを使う際の指定はありませんが、他のホストグループに設定されていない数字を登録します。
33

ユーザメニューの登録3.4 ユーザメニューの登録▌VMwareモデルを使って作成したいテナントの情報をパラメータシートに登録します。
パラメータシートは「ユーザメニュー_VMwareモデル」メニューグループに配置されています。
これらのメニューの操作は「vmware_user」ユーザが行ってください。

Exastro

メニュー名

入力内容

NSX-T接続情報

テナント作成時にNSX-Tに作成される仮想ネットワークを登録するメニューです。

踏み台サーバ設定情報(Terraform)

踏み台サーバのVM作成時にTerraformに必要な設定を登録するメニューです。

踏み台サーバ設定情報

踏み台サーバのVM設定時にAnsibleに必要な設定を登録するメニューです。

VMグループ設定情報

各サーバのVM作成時に必要な設定を登録するメニューです。

(WEB/AP/DB)
サーバプロキシ設定

各サーバのプロキシ設定を登録するメニューです。

秘密鍵管理

テンプレートに設定した公開鍵の対となる秘密鍵を登録するメニューです。

35

3.4.1 ユーザメニューの登録 - 秘密鍵管理▌VMwareモデルでは1つのテナントに共通となる1つのキーペアを設定します。
秘密鍵管理メニューに「テナントと秘密鍵ファイル名と秘密鍵」の組み合わせを登録します。

Exastro

項目名

入力内容

ホスト名

「exastro-it-automation」を選択します。

オペレーション

秘密鍵を使用するオペレーションを選択します。

テナント名

秘密鍵を使用するテナントを選択します。

秘密鍵ファイル名

アップロードする秘密鍵のファイル名を入力します。

秘密鍵ファイル

使用する秘密鍵ファイルをアップロードしてください。

36

実行

3.5 Conductor実行▌Conductor: VMwareモデル_機器一括プロビジョニング
VMware基盤上にテナントを作成しITAの機器一覧にVMを登録します。

▌Conductor: VMwareモデル_機器一括設定作成したテナントに含まれるVMに必要な設定を一括投入します。

Exastro38

3.6 実行結果の確認 - ITAでの確認▌まずConductor実行画面で正しく終了したことを確認します。
例：「VMwareモデル_機器一括プロビジョニング」「Status:正常終了」となっていることを確認
それ以外の場合は途中で失敗しているので、Movementをクリックして詳細を確認してください。
Exastro39

3.6 実行結果の確認 - コマンドラインでの確認▌各サーバが正しく設定されていることをコマンドラインで確認します
確認方法

正しい応答の例

1. 踏み台サーバへSSHログイン
2. HTTPサーバに対してcurlコマンドでHTTPリクエ
ストします。

3. APサーバへSSHログインし、pipコマンドでDjangoがインストールされていることを確認します。

4. DBサーバへSSHログインし、mysqlコマンドでバージョンを確認します。

Exastro$ curl <対象HTTPサーバ>
Hello world. <br>
Powerd by web-0 <br)

$ pip3 list
Package
Version-------------------- -------Django
3.2.11$ mysql --version
mysql Ver 15.1 Distrib 5.5.68-MariaDB, for Linux (x86_64)
using readline 5.140

こんなときは？

4.1 作成したテナントを削除したい▌リソースの削除作成したリソースの削除は Terraform > Workspaceの管理 を選択し、対象のWorkspaceの「リソース削除」をクリックします。

▌リソース削除の順番
NSX-Tリソース上にvSphereリソースが展開しているため、vSphereリソースから削除してください。

Exastro42