2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Exastro IT Automation の Setting samples(VMware版)を導入してみた

Last updated at Posted at 2021-10-05

#はじめに

Exastro IT Automation Setting samplesにVMwareモデルが追加されていたので使ってみました。

VMwareモデルイメージ

AnsibleとTerraformを使ってVMware環境にNWを含めた下記環境が構築されるみたいです。
image.png

#VMware環境について
VMware環境内にシステム構築するためvSphere、NSX Manager、NSX Edgeが必要になります。
今回は既存の環境にvSphere、NSX Manager、NSX Edge導入された環境がありましたので
その環境を使用しました。
詳細に関しては Setting samples VMware Model 導入手順 Ⅱ-1. 導入準備を参照してみて下さい。

###NSX-Tの簡易図
今回試したNSX-T環境の簡易図になります。
image.png

#導入までの流れ
項目を書き出してみると結構ありますね・・・

##準備/導入編

  1. ITAのインストール
  2. Setting samplesのインポート
  3. VMware環境にテンプレートを作成
  4. VMware環境にインターネット接続可能なネットワークの準備
  5. Terraform Cloud Agentの準備

##仕込編

  1. インターフェイス情報(Terraform)
  2. Organizations管理
  3. Workspaces管理
  4. Workspaces設定(Terraform Cloud)
  5. 基本コンソール設定
  6. NSX-Tの機器情報登録
  7. vSphereの機器情報登録
  8. Web01サーバ作成情報登録
  9. Web02サーバ作成情報登録
  10. AP01サーバ作成情報登録
  11. DB01サーバ作成情報登録
  12. 踏み台サーバ作成情報登録
  13. 踏み台サーバ接続情報登録
  14. 踏み台サーバDNS_PROXY設定登録

##実行編

  1. VMwareモデルの実行
  2. 実行結果の確認

準備/導入編

1. ITAのインストール

Exastro IT Automation クイックスタート (ver1.8.0)を参考にITA ver1.8.1をVMware環境に接続できる環境にサーバを構築しインストールしました。

2. Setting samplesのインポート

汎用的なシステムモデルを構築することができるSetting sampleのパッケージをITAにインポートします。

2.1 Setting samplesのダウンロード

GitHubリリースページからパッケージファイルをダウンロードします。
ダウンロードするファイル名は「cloud-system-template-vmware-1.0.0-exastro-1.8.1.kym」です。
image.png

2.2 Setting samplesのインポート

  1. ITAにログインします。
    image.png

  2. 「エクスポート/インポート」>「メニューインポート」を選択、「ファイルを選択」でダウンロードしたパッケージファイルを開き、アップロードします。
    image.png

  3. ファイルのアップロードが完了したらすべてのメニューを選択して、画面最下部の「インポート」をクリックします。
    image.png

  4. 「エクスポート/インポート管理」>「フィルタ」を押下し、インポートが完了しているか確認します。
    image.png

3. VMware環境にテンプレートを作成

VMwareモデルでは利用者が用意したテンプレートを使用し、各VMが自動構築されます。

テンプレート作成方法

  1. Exastro IT Automationの「Ansible共通」-「ファイル管理」メニューに登録されている「id_rsa.pub」をダウンロードします。
    image.png

  2. CentOS7のテンプレートを作成します。
    テンプレート化の手順はVMware公式のドキュメントvSphere Client でのテンプレートの作成などを参照して作成しました。
    またテンプレートに配置するSSHの公開鍵(id_rsa.pub)はQiita記事のSSHの公開鍵認証設定をするを参考にしました。

4.VMware環境にインターネット接続可能なネットワークの準備

構築された各VMは、踏み台サーバ経由でyumのパッケージをインストールするため、事前に外部接続できるネットワークをVMware環境に設定するか管理者より払い出しを受けて下さい。
私は管理者よりネットワークアダプター名とIPアドレスを払い出してもらいました。
ご自身で設定する場合は外部ネットワークの設定方法はVMwareの公式サイトを参照して下さい。
vmware docs

5.Terraform Cloud Agentの準備

Terraform Cloud Agentを使うことでオンプレミスのVMware基盤にプロビジョニングすることが出来ます。
Terraform Cloud Agentは無償版では使えないTerraform Cloud for Businessの有償機能のため
個人での利用は難しいかもしれません。
有償機能が30日無料で利用できるFree Trialの記事もありましたので
公式ページなどを確認してみて下さい。
今回はTerraform Cloud for Businessの既存環境があり
Terraform Cloud Agentをインストールするだけでした。
HashiCorp公式
Terraform Cloud Free Trial 記事

Terraform Cloud Agentのサポートにはx86_64ビットのLinuxオペレーティングシステムと
Dockerコンテナ2種類あり今回はLinuxオペレーティングシステム版を使用しました。
インストール要件や手順はTerraformの公式サイトを参照してインストール設定しました。
Terraform Cloud Agentインストール手順

#仕込編

1. インターフェイス情報(Terraform)

ITAにTerraform cloudの接続情報を登録します。

  1. 「Terraform」メニューグループ>「インターフェイス情報」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. 「User Token」に事前準備で作成したTerraform Cloudのユーザトークンを入力する。

※Proxy設定に関しては必要であれば入力する。
image.png

2. Organizations管理

ITAにTerraform cloudの接続ユーザが所属するOrganizations(アカウントが所属している組織)を登録します。

  1. 「Terraform」メニューグループ>「Organizations管理」をクリックする。
  2. 「OrganizationID=250001」の更新ボタンをクリックする。
  3. 「Organization Name」と「Email address」に既存のOrganizations名とメールアドレスを入力し更新ボタンをクリックする。
    image.png

今回は既存のOrganizations名とメールアドレスを入力しましたがITAから新規にOrganizationsを作成することも可能です。

  1. 作成方法は新規Organizations名とメールアドレスを入力し更新する。
  2. 連携状態チェックボタンをクリックする。
  3. 登録ボタンをクリックする。
    image.png

3. Workspaces管理

ITAにNSX-T構築とVM構築時のTerraform実行状態を保存する場所を登録します。

3.1 NSX-T用Workspaces登録

  1. 「Terraform」メニューグループ>「Workspaces管理」をクリックする。
  2. 「Workspace ID=250001」の更新ボタンをクリックする。
  3. 「Organization」を「2. Organizations管理」で登録したOrganizations名を設定し「Workspace Name」既存のWorkspace Nameを入力し更新ボタンをクリックしました。

    今回は既存のWorkspaces名を入力しましたが、Organizationsを新規に登録した手順で新規のWorkspacesを作成することも可能です。
    image.png

3.2 vSphere用Workspaces作成

  1. 「Terraform」メニューグループ>「Workspaces管理」をクリックする。
  2. 「Workspace ID=250002」の更新ボタンをクリックする。
  3. 「Organization」を「2. Organizations管理」で登録したOrganizations名を設定し「Workspace Name」既存のWorkspace Nameを入力し更新ボタンをクリックしました。

    今回は既存のWorkspaces名を入力しましたが、Organizationsを新規に登録した手順で新規のWorkspacesを作成することも可能です。
    image.png

4. Workspaces設定(Terraform Cloud)

Terraform上の各Workspacesに今回使用するTerraform Cloud Agentを設定します。

4.1 NSX-T用WorkspacesにAgentの設定

  1. Terraform Cloudにアクセスします。
  2. 「3.1 NSX-T用Workspaces作成」で設定した「Workspaces名」-「Settings」-「General」をクリックする。
  3. 「Execution Mode」の設定を「Agent」と「Agent pool」を設定する。
    image.png

4.2 vSphere用WorkspacesにAgentの設定

  1. Terraform Cloudにアクセスします。
  2. 「3.2 vSphere用Workspaces作成」で設定した「Workspaces名」-「Settings」-「General」をクリックする。
  3. 「Execution Mode」の設定を「Agent」と「Agent pool」を設定する。
    image.png

5. 基本コンソール設定

Terraformで作成される踏み台サーバ(VM)に設定する外部通信可能なIPアドレスを登録します。

  1. 「基本コンソール」メニューグループ> 「機器一覧」をクリックする。
  2. 「管理システム項番=250002」の更新ボタンをクリックする。
  3. 「IPアドレス」に事前準備で用意したインターネット接続可能なネットワークのIPアドレスを入力する。
  4. 更新ボタンをクリックする。
    image.png

6. NSX-Tの機器情報登録

NSX-Tの接続情報や既存設定を登録します。

  1. 「NSX-T(入力用)」メニューグループ >「NSX-T設定」をクリックする。
  2. 「ID=250001」の更新ボタンをクリックする。
  3. NSX-Tマネージャー名:接続するNSX-TのIPアドレスを入力する。
  4. NSX-Tログインユーザ名:接続するNSX-Tのログインユーザ名を入力する。
  5. NSX-Tログインパスワード:接続するNSX-Tのパスワードを入力する。
  6. オーバレイトランスポートゾーン名:エッジクラスタに接続されるオーバレイトランスポートゾーンを入力する。
  7. edgeクラスタ名:仮想ネットワークの作成先となるエッジクラスタを入力する。
  8. edgeノード01名:エッジクラスタに含まれる1つ目のエッジノード名を入力する。
  9. edgeノード02名:エッジクラスタに含まれる2つ目のエッジノード名を入力する。
  10. 踏み台サーバIPアドレス:変更不要

    image.png

7. vSphereの機器情報登録

vSphereの接続情報やVM構築先を登録します。

  1. 「VM作成(入力用)」メニューグループ >「vSphere設定」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. vSphereホスト名/IPアドレス:接続するvCenterのIPアドレスを入力する。
  4. vSphereログインユーザ:接続するvCenterのログインユーザ名を入力する。
  5. vSphereログインパスワード:接続するvCenterのログインパスワードを入力する。
  6. データセンター名:仮想マシン作成先データセンター名を入力する。
  7. データストア名:仮想マシン作成先のデータストア名を入力する。
  8. クラスタ名:仮想マシン作成先のクラスタ名を入力する。
  9. 更新ボタンをクリックする。
    image.png

8. Web01サーバ作成情報登録

Terraformで作成されるWeb01サーバのスペック等を登録します。

  1. 「VM作成(入力用)」メニューグループ >「Web01サーバ設定」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. Web01用テンプレート名:事前に作成したテンプレート名入力する。
  4. Web01サーバ名:任意のサーバ名を入力する。今回はそのまま。
  5. CPU:作成する仮想マシンのCPUの値を入力する。今回はそのまま。
  6. メモリ:作成する仮想マシンのメモリの値を入力する。今回はそのまま。
    image.png

9. Web02サーバ作成情報登録

Terraformで作成されるWeb02サーバのスペック等を登録します。

  1. 「VM作成(入力用)」メニューグループ >「Web02サーバ設定」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. Web02用テンプレート名:事前に作成したテンプレート名入力する。
  4. Web02サーバ名:任意のサーバ名を入力する。今回はそのまま。
  5. CPU:作成する仮想マシンのCPUの値を入力する。今回はそのまま。
  6. メモリ:作成する仮想マシンのメモリの値を入力する。今回はそのまま。
  7. 更新ボタンをクリックする。
    image.png

10. AP01サーバ作成情報登録

Terraformで作成されるAP01サーバのスペック等を登録します。

  1. 「VM作成(入力用)」メニューグループ >「AP01サーバ設定」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. AP01用テンプレート名:事前に作成したテンプレート名入力する。
  4. AP01サーバ名:任意のサーバ名を入力する。今回はそのまま。
  5. CPU:作成する仮想マシンのCPUの値を入力する。今回はそのまま。
  6. メモリ:作成する仮想マシンのメモリの値を入力する。今回はそのまま。
  7. 更新ボタンをクリックする。
    image.png

11. DB01サーバ作成情報登録

Terraformで作成されるDB01サーバのスペック等を登録します。

  1. 「VM作成(入力用)」メニューグループ >「DB01サーバ設定」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. DB01用テンプレート名:事前に作成したテンプレート名入力する。
  4. DB01サーバ名:任意のサーバ名を入力する。今回はそのまま。
  5. CPU:作成する仮想マシンのCPUの値を入力する。今回はそのまま。
  6. メモリ:作成する仮想マシンのメモリの値を入力する。今回はそのまま。
  7. 更新ボタンをクリックする。
    image.png

12. 踏み台サーバ作成情報登録

Terraformで作成される踏み台サーバのスペック等を登録します。

  1. 「VM作成(入力用)」メニューグループ >「踏み台サーバ設定」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. 踏み台サーバ用テンプレート名:事前に作成したテンプレート名入力する。
  4. 踏み台サーバ名:任意のサーバ名を入力する。今回はそのまま。
  5. CPU:作成する仮想マシンのCPUの値を入力する。今回はそのまま。
  6. メモリ:作成する仮想マシンのメモリの値を入力する。今回はそのまま。
  7. 外部接続用ネットワークアダプター名:事前準備で用意した外部接続用ネットワークアダプター名を入力する。
  8. 外部接続IPアドレス:変更不要
  9. 外部接続用サブネットマスク:事前準備で用意した外部接続用サブネットマスクを入力する。
  10. 外部接続用ゲートウェイ:事前準備で用意した外部接続用ゲートウェイを入力する。
  11. 更新ボタンをクリックする。
    image.png

13. 踏み台サーバ接続情報登録

Terraformで作成される踏み台サーバへの接続が登録されています。

  1. 「VM作成(入力用)」メニューグループ >「踏み台サーバ情報」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
  3. IPアドレス/ログインID:踏み台サーバになっていることを確認する。
  4. 更新ボタンをクリックする。
    image.png

14. 踏み台サーバDNS_PROXY設定登録

Terraformで作成される踏み台サーバに設定するDNSとPROXY設定を登録します。

  1. 「VM作成(入力用)」メニューグループ >「踏み台サーバ作成」をクリックする。
  2. 「No=1」の更新ボタンをクリックする。
    1. DNS設定:踏み台サーバに設定するDNSを入力する。
  3. プロトコル:踏み台サーバに設定するProxyのプロトコル部分を入力する。※必要に応じて
  4. ホスト:踏み台サーバに設定するProxyのホスト部分を入力する。※必要に応じて
  5. ポート:踏み台サーバに設定するProxyのポート部分を入力する。※必要に応じて
    image.png

#実行編

1.VMwareモデルの実行

  1. 「Conductor」>「Conductor作業実行」へ移動する。
  2. 「Conductor[一覧]」の「VMware環境作成」を選択する。
  3. 「オペレーション[一覧]」から「VMware-Model」を選択する。
    image.png

2.実行結果の確認

###ITAの確認
ITAのConductor実行結果画面のStatusに「正常終了」が表示されていることを確認します。
image.png

###Webサーバ
踏み台サーバからcurlでロードバランサーにアクセスし、Web01サーバとWeb02サーバがラウンドロビンされていることを確認します。

  1. 踏み台サーバへSSHログインする。
  2. ロードバランサー(192.168.10.100)に対してcurlコマンドでラウンドロビンによって、Webサーバ01とWebサーバ02から交互に応答があることを確認しました。
    image.png

###APサーバ
SSHでAPサーバに接続しDjangoがインストールされていることを確認します。

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

###DBサーバ
SSHでDBサーバに接続しMariadbがインストールされていることを確認します。

  1. 踏み台サーバへSSHログインする。
  2. DBサーバへSSHログインし、mysqlコマンドでバージョンを確認しました。
    image.png

#最後に
AWSなどのクラウド基盤と比べるとオンプレ環境なので事前準備などが多く実行するまでが大変でした。

#関連リンク

Qiita記事
Exastro IT Automation クイックスタート (ver1.8.0)

ITAコミュニティサイト
Exastro IT Automation コミュニティサイト
VMwareモデル 概要
VMwareモデル 導入手順
GitHubリリースページ
ITA_利用手順マニュアル エクスポート/インポート
ITA_利用手順マニュアル Ansible-driver

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?