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

#関連リンク
Qiita記事
・[Exastro IT Automationをインストールしてみた（v1.7.2）](https://qiita.com/standsetx/items/54ff0786db151d980026)
・[Exastro IT Automation の Setting samples(AWS版)を動かしてみた]
(https://qiita.com/ojima-nobuya/private/0d2e94f4f6f71fd6c635)
・[Exastro IT Automation の Setting samples(ServiceNow連携版)を使ってみた]
(https://qiita.com/inumayuge/items/bcbeabc876b45100e62c)

ITAコミュニティサイト
・[Exastro IT Automation コミュニティサイト](https://exastro-suite.github.io/it-automation-docs/setting-samples_ja.html#cloudSystem)
・[CSテンプレート 1st-Model オートスケーリングWebシステム（AWS）導入手順](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-install_ja.pdf)
・[CSテンプレート 1st-Model オートスケーリングWebシステム（AWS）概要](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-overview_ja.pdf)
・[CSテンプレート GitHubリリースページ](https://github.com/exastro-suite/Settings-CloudSystemTemplate-1st/releases)
・[ITA_利用手順マニュアル エクスポート/インポート](https://exastro-suite.github.io/it-automation-docs/asset/Documents_ja/Exastro-ITA_%E5%88%A9%E7%94%A8%E6%89%8B%E9%A0%86%E3%83%9E%E3%83%8B%E3%83%A5%E3%82%A2%E3%83%AB_%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%9D%E3%83%BC%E3%83%88%EF%BC%8F%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88.pdf)
・[ITA_利用手順マニュアル Ansible-driver](https://exastro-suite.github.io/it-automation-docs/asset/Documents_ja/Exastro-ITA_%E5%88%A9%E7%94%A8%E6%89%8B%E9%A0%86%E3%83%9E%E3%83%8B%E3%83%A5%E3%82%A2%E3%83%AB_Ansible-driver.pdf)

#はじめに

[AWSモデル](https://exastro-suite.github.io/it-automation-docs/setting-samples_ja.html#cloudSystem)は、「設計済みクラウドシステムモデルのIaC(Infrastructure as a Code)」で「運用管理やセキュリテイなど運用上必須の機能が構築済みであることが特徴」とのことです。

[Exastro IT Automation](https://exastro-suite.github.io/it-automation-docs/index_ja.html)（以下ITAと表記）にAWSモデルを組み込むことで、パラメータ調整と実行の2アクションでクラウドサービス上にシステムを提供することが可能となるようです。

ITAのエクスポート/インポート機能を使って、ITAにAWSモデルを組み込むことができるパッケージファイルが[GitHUBのリリースページ](https://github.com/exastro-suite/Settings-CloudSystemTemplate-1st/releases)にて公開されていました。
AWSモデルではITAからAWS上にWebシステムを自動作成できるようなので、
今回はAWSモデルの導入（インポート）と、AWS環境の準備、実行に必要なパラメータの登録までを実行していきます。

##今回紹介するシナリオ
本記事は以下のシナリオで進めていきます。
事前準備と導入の手順については[CSテンプレート 1st-Model オートスケーリングWebシステム（AWS）導入手順マニュアル](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-install_ja.pdf)を参照しました。

**【準備／導入編】1．ITAのインストール**
**【準備／導入編】2．AWSモデルのインポート**
**【準備／導入編】3．AWS環境の準備**
**【準備／導入編】4．Teams連携通知の準備**

**【仕込編】1．機器一覧のホスト情報登録**
**【仕込編】2．プロキシ情報の登録**
**【仕込編】3．Teams連携通知の登録**
**【仕込編】4．共通パラメータの更新**
**【仕込編】5．AWSアカウント情報登録**
**【仕込編】6．CloudFormation実行用IAMロールの構築・更新**
**【仕込編】7．オートスケール用パラメータの登録・更新**

※コンテナ版を利用する場合は以下の手順は不要です。
コンテナ版の利用方法は[こちら](https://hub.docker.com/r/exastro/settingsamples-aws)を参照してください。
・【準備／導入編】1．ITAのインストール
・【準備／導入編】2．AWSモデルのインポート
・【仕込編】1．機器一覧のホスト情報登録



#作業環境

今回は以下の環境に導入してみました。

●サーバ／クライアント環境
・サーバOS : CentOS 7.8
・Exastro IT Automation v1.7.1
・クライアント環境 : Windows 10
・ブラウザ : Google Chrome

●AWS環境
・リージョン：ap-northeast-1　アジアパシフィック (東京)　

***
今回の導入イメージは以下の通り。
![{EFB9E1CA-FD91-4F79-A073-A55A9E1C515B}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/a84f7bef-a6bc-3f28-e688-b8522338c18f.png)

ITAを導入するサーバはオンプレ上でも、AWS上のインスタンスでの構築でもOKですが、ITA導入サーバからAWSに接続できるインターネット環境とhttp(https)／sshの通信許可が必要です。

またAWSモデルは ITA v1.4.1 以上のものに対応していますが、v1.7.1 に導入しました。
現バージョンにおいてはインポートの際に既存のITAのデータを上書きするので、新規のITAサーバにインポートすることをお勧めします。

#【準備／導入編】1．ITAのインストール

最初にCentOS上にITA v1.7.1をインストールします、インストール方法については以下の記事を参照しました。
参考Qiita記事 : [Exastro IT Automationインストール(v1.7.2)](https://qiita.com/standsetx/items/54ff0786db151d980026)

[AWSモデル導入手順](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-install_ja.pdf)に記載されている通り、インストーラのデフォルト機能（ドライバー）でインストールします。
インストール後、Exastro ITAにユーザーID「administrator」パスワード「password」でログインし、以下のメインメニューが表示されればインストールOKです。
(初回ログイン時はパスワード変更画面に遷移するので任意のパスワードに変更する。)
![インストール後ITAコンソール画面.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/805c2aa7-5870-0e78-ca1a-b81f980b3462.png)
#【準備／導入編】2．AWSモデルのインポート

###2.1　AWSモデルのダウンロード
[AWSモデル GitHub](https://github.com/exastro-suite/Settings-CloudSystemTemplate-1st/releases) からパッケージファイルをダウンロードします。
ダウンロードするファイル名は「cloud-system-template-aws-ce-1.1.1-exastro-1.7.1.kym」です。
![キャプチャ.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/8a41b5be-14db-d9e0-d0fe-b8693d15e929.png)

###2.2　AWSモデルのインポート
１． 「エクスポート／インポート」＞「メニューインポート」を選択、「ファイルを選択」でダウンロードしたパッケージファイルを開き、アップロードします。
![{FFAF67D0-DFDA-489F-A506-1DCF09F44572}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/aed6681c-d8fd-190d-c618-b206113bde70.png)
２．ファイルのアップロードが完了したらすべてのメニューを選択して、画面最下部の「インポート」をクリック。
![キャプチャ2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/1785b465-8762-ebf1-76ec-ee670da64a7b.png)
３．「エクスポート/インポート管理」＞「フィルタ」を押下し、インポートが完了しているか確認します。
![キャプチャ4.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/ea3fa4c6-b8ee-7d5d-d7ad-81168719de31.png)
４．インポートが完了した後、ユーザーID「1st-admin」パスワード「password」でログインしなおす。
(初回ログイン時はパスワード変更画面に遷移するので任意のパスワードに変更する。)

５．AWSモデルのインポートが完了している場合、メインメニューは以下のように表示されます。
![{30D1BE5E-B4D3-4A84-881D-0B8EE366AC73}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/129759d8-5909-4bb9-e4f4-2cd350c9eca0.png)

###2.3　API実行ユーザーのパスワード変更
導入後API実行ユーザーのパスワードはAWSモデルのデフォルトになっているので更新する必要があります。

１．「管理コンソール」＞「ユーザ管理」へ移動。
２． ログインID「1st-model-api」の「更新」をクリック。
３．「ログインPW」に任意のパスワードを入力して「更新」を押下。

![{B3423D27-E532-4C10-BA72-5F7BFAB89E8F}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/43b00194-d103-de92-8b26-ecd8cba9c186.png)

一度ログアウトして変更したパスワードでログインできれば、本作業は完了です。

###2.4　グローバル変数管理の変更
１．「Ansible共通」＞「グローバル変数管理」＞「フィルタ」＞ ログインID「1st-model-api」の「更新」をクリック。
２．項目「具体値」に「2.3　API実行ユーザーのパスワード変更」で登録したパスワードと同じパスワードを入力して「更新」を押下。

![{69E22CC6-46E9-4B8F-B7FC-69B91F35BEB1}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/3c4b9d8e-6744-f356-db6d-3015b1b5721a.png)

#【準備／導入編】3．AWS環境の準備

AWSの利用にあたりアカウント契約が必要です（個人・法人どちらの契約でも利用可能）
AWSモデルでは主に以下AWSサービスを利用します。

**【利用AWSサービス】**
◆コンピューティング
・EC2
・Auto Scale

◆ネットワーキング
・VPC

◆運用・構築
・CloudFormation
・CloudWatch
・CloudTrail
・Config　※今回の記事では利用しない
・Trusted Advisor　※今回の記事では利用しない

◆ストレージ
・S3

◆セキュリティ
・IAM 
・KMS
・GuardDuty　※今回の記事では利用しない
・Security Hub　※今回の記事では利用しない
・WAF　※今回の記事では利用しない

EC2やS3などのAWSのリソース利用にあたり月額の費用が発生するので、普段利用しない人は、[請求額や使用状況レポート](https://docs.aws.amazon.com/ja_jp/awsaccountbilling/latest/aboutv2/getting-viewing-bill.html)の確認や、不正に利用されないようにアカウント管理やセキュリティに注意しましょう。

アカウントが用意できたら導入手順を参考に、AWS操作用に以下の環境準備を行います。
・AWSモデル用システム管理者のIAMユーザー準備
・EC2 Auto Scaling利用の環境準備

###3.1　IAMユーザー準備（システム管理者）

 IAMは「Identity and Access Management」の略で、ユーザやグループの作成やAWSリソースへのアクセス権限設定の管理を行います。

AWSモデルの初期設定用に、利用するAWSの「アカウントID」と、システム管理者用に以下のIAMポリシーをアタッチしたIAMユーザーの「アクセスキーID」「シークレットアクセスキー」の情報を用意します。

+ IAMFullAccess
+ AWSCloudFormationFullAccess

<details><summary>`AWSの「アカウントID」の確認方法はこちらを参照`</summary><div>
マネジメントコンソール画面の右上のアカウントを開き、マイアカウントの番号を確認。
![AWS_IAM_USER_0.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/724f0baa-8481-93d1-4b4c-9b174aba1104.png)
</div></details>

今回IAMユーザーについてはAWSモデルの導入用にIAMユーザーを新規作成します。
AWSモデルをシステム管理者のみで運用する場合は、上記に加え以下のポリシーも必要なようですが、
今回は本来のロールごとにIAMユーザーを作成してみるので省略します。

+ ec2:DescribeInstances
+ elasticloadbalancing:Describe*
+ s3:*

ITAのユーザとAWSのIAMユーザーのロール（用途）については、
[AWSモデル導入手順](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-install_ja.pdf)の「Ⅰ.1stモデル概要 / 3.ユーザー一覧」「Ⅰ.1stモデル概要 / 4.ロール一覧」を参考にします。
![ユーザ説明1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/3c28ad7d-8c6e-1f5a-deae-f5c7d6da7498.png)
![ユーザ説明2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/b330e4e5-0c21-4708-f09d-b1d7d0a18669.png)
![ユーザ説明3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/6af27be9-5502-a622-84a1-d9e7acdb83f8.png)


####3.1.1　IAMユーザー追加とアクセス情報の取得

AWSコンソールのサービス一覧からIAMを選択します。
<details><summary>`目的のAWSサービスが見つからない場合の検索方法`</summary><div>
以下のようにすべてのサービスから検索し、サービス名を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/0273d1bf-404f-fa17-bd80-9c89464b535b.png)
</div></details>
「IAM」＞「アクセス管理」＞「ユーザー」画面にて、「ユーザーを追加」を押下。
![AWS_IAM_USER_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/54b8373c-f3d5-88e0-e03e-144683740eef.png)
***
**１．【ユーザー詳細の設定】画面の設定**
 ①ユーザー名：任意のユーザー名を設定
 ②③アクセスの種類：両方にチェック
　「②プログラムによるアクセス」「③AWSマネジメントコンソールのアクセス」
 ④⑤コンソールのパスワードは任意で設定
 ⑥「次のステップ」を押下
![AWS_IAM_USER_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/215a2c53-6411-7439-2f8f-75c7be27865b.png)
***
**２．【アクセス許可の設定】画面**
　①「既存のポリシーを直接アタッチ」を選択
　②③ ポリシー名「IAMFullAccess」を検索し、チェックを選択。
　④⑤ ポリシー名「AWSCloudFormationFullAccess」を検索し、チェックを選択。
　⑥「次のステップ」を押下
![AWS_IAM_USER_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/38b54e8c-4fdb-f0d7-0fcf-655492bac316.png)
***
**３．【タグの追加】画面：設定は任意、「次のステップ」を押下**
**４．【確認】画面：設定内容を確認し、「ユーザーの作成」を押下**
![AWS_IAM_USER_4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/ebe23f7e-5d68-b514-fe18-8342f0f0bade.png)
***
**５．【ユーザーの作成結果】画面**
　①「.csvのダウンロード」を押下し認証情報をダウンロードする。
　※注意：認証情報はここで取得しないと確認不可となりますので、必ず閉じる前に取得します。
![AWS_IAM_USER_5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/98966625-baf8-0e4e-68c1-a8d4f6c882fe.png)
「.csvのダウンロード」で取得できる「new_user_credentials.csv」の内容か、または上記画面で確認した「アクセスキーID」「シークレットアクセスキー（表示を押下）」の情報を保管し（1）の手順は完了。
***
###3.2　EC2 Auto Scaling利用の環境準備
AWSモデルの「オートスケールWebサーバ構築／更新」を実行するため、構築するリージョンの以下の設定情報を取得します。

+ AMI ID
+ EC2 キーペア
+ ELBのサーバ証明書

AWSのリージョンはAWSモデルにおいて、以下（表１参照）が動作確認済みとして初期登録されていますが、ユーザカスタマイズによりその他のリージョンの利用も可能かと思われます。今回は東京リージョンのEC2にて構築するサーバ用のキーペアとELB用サーバ証明書のインポートを行います。

【表1．AWSモデル初期登録済のリージョン】

|コード|名前|AWSモデルの初期サンプル|
|:---|:---|:---|
|ap-northeast-1|アジアパシフィック(東京)|サンプルのオペレーション「環境A」で指定|
|ap-southeast-1|アジアパシフィック(シンガポール)||
|ap-southeast-2|アジアパシフィック(シドニー)||
|us-east-1|米国東部(バージニア北部)|サンプルのオペレーション「環境B」で指定|

####3.2.1　AMI ID の取得

オートスケールWebサーバのOSイメージとして利用したいAMI IDを確認します。
利用したいLinuxサーバイメージのインスタンスでテンプレートを作り、
マイAMIに登録し、そのAMI IDを取得します。

●イメージの作成について
「EC2」＞「インスタンス」で対象を右クリック「イメージ」＞「イメージの作成」

[参考：Amazon EC2 インスタンスからの AMI の作成](https://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/tkv-create-ami-from-instance.html)

![AWS_AMI_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/5ee476c4-3fed-fe3b-d478-ce179d786be6.png)
![AWS_AMI_02.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/57c0d40c-5306-f89e-1cac-7d33a89cd885.png)

####3.2.2　EC2 キーペアの作成

１．「EC2」>「ネットワーク&セキュリティ」>「キーペア」にて「キーペアを作成」を押下
![AWS_AUTOS_KEY_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/00220d62-4f2a-b67b-6d51-88f6a9816cef.png)
２． 名前に「任意のキーペア名」を入力、ファイル形式は「pem」を選択して「キーペアを作成」を押下。
![AWS_AUTOS_KEY_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/b4fe8e42-efdb-5406-cd90-05296b8190dc.png)
３．キーペア作成を確認し、「キーペア名」とダウンロードされた「キーペア（pemファイル）」を保管する。

`※Webサーバ用と踏み台サーバ用に認証鍵を分ける場合は上記の手順を繰り返し2つ準備します。`
![AWS_AUTOS_KEY_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/98ecaef7-791e-7217-43c3-c6d036f98770.png)
***
####3.2.3　ELB用サーバ証明書の登録

オートスケールWebサーバへの負荷分散に利用するELB (Elastic Load Balancing) の構築用に、HTTPS通信に利用するSSLサーバ証明をインポートし、リソースネーム（ARN）を取得します。

**１．秘密鍵・サーバ証明書の作成とダウンロード**

今回はテスト用に自己証明書を作成します。ITA導入用のCentOS 7.8のコンソールにて、以下のコマンドを例に、
秘密鍵ファイル（\*.key）とサーバ証明書（\*.crt）を作成し、端末にダウンロードまたはcatで中身を確認します。
（OpenSSLがインストールされたLinuxであればどこでも作成可。　※OpenSSL 1.0.2で確認）

```console:SSL自己証明書作成コマンド
# mkdir /root/cert
# cd /root/cert
# openssl genrsa 2048 > cs-temp.sample.com.key
# openssl req -new -x509 -days 3650 -key cs-temp.sample.com.key -sha256 -out cs-temp.sample.com.crt
```

```console:実行例
### 格納ディレクトリ作成
# mkdir /root/cert
# cd /root/cert

### 秘密鍵作成
# openssl genrsa 2048 > cs-temp.sample.com.key
Generating RSA private key, 2048 bit long modulus
.............+++
.............................+++
e is 65537 (0x10001)

### 証明書リクエスト作成 & 自己証明書発行
openssl req -new -x509 -days 3650 -key cs-temp.sample.com.key -sha256 -out cs-temp.sample.com.crt
(~省略~)
-----
Country Name (2 letter code) [XX]:JP
State or Province Name (full name) []:
Locality Name (eg, city) [Default City]:
Organization Name (eg, company) [Default Company Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:cs-temp.sample.com
Email Address []:
#
### 以下のファイルが作成。ダウンロードまたは表示してテキストをコピーする（BEGIN行・END行を含む）
# ls -l
~
-rw-r--r-- 1 root root 1298 10月 xx 18:22 cs-temp.sample.com.crt
-rw-r--r-- 1 root root 1679 10月 xx 18:21 cs-temp.sample.com.key

# cat cs-temp.sample.com.crt
-----BEGIN CERTIFICATE-----
(~ 証明書の内容が表示 ~)
-----END CERTIFICATE-----
#
# cat cs-temp.sample.com.key
-----BEGIN RSA PRIVATE KEY-----
(~ 秘密鍵の内容が表示 ~)
-----END RSA PRIVATE KEY-----
#
```
***
**２．Certificate Manager － 証明書のインポート（登録）とARN取得**

 （１）サービス「Certificate Manager」＞「証明書」＞「証明書のインポート」を押下
 (※初めて作成する場合、「Certificate Manager」＞「証明書のプロビジョニング」の「今すぐ始める」より)
![AWS_AUTOS_CERT_1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/07362c55-2efe-ad72-5456-752c8d7b880d.png)

 （２）「証明書のインポート」画面にて以下を実施

上記（１）の手順で作成した証明書をインポートします（BEGIN行・END行を含めテキストで貼り付け）

  ① 「証明書本文」にサーバ証明書（\*.crt）のテキスト内容を貼り付ける。
  ② 「証明書のプライベートキー」に秘密鍵ファイル（\*.key）のテキスト内容を貼り付ける。
  ③ 「次へ」を押下

![AWS_AUTOS_CERT_2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/95dc40be-b563-9d7a-42b0-c81f86693b6d.png)

 （３）インポート実施とリソース名（ARN)の取得

 ・「タグを追加」画面：設定は任意。右下の「レビューとインポート」を押下
 ・「レビューとインポート」画面で内容を確認。右下の「インポート」を押下
 ・「証明書」画面にて、① 作成した証明書を選択し、②証明書のARN名をテキストで保存する。
![AWS_AUTOS_CERT_3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/4dfbc87e-a82e-0f5a-ebb7-17670f81ac02.png)

#【準備／導入編】4．Teams連携通知の準備

MicrosoftのTeamsを利用している場合、チャネルのコネクタ（Incoming Webhook）を用意することで、
ITAのAWSモデルのコンダクター実行時に「処理完了」などの通知を飛ばすことができます。

以下の記事を参考に通知したいチャネルの「Incoming Webhook」を構成し、URLを取得します。
[参考：Microsoft Teamsにメッセージを飛ばす](https://qiita.com/miyay/items/38a21f00768a19737d12)

【簡易手順】
　１．Teamsにて通知対象チャネルを右クリック 、「コネクタ」を選択。
　２．「Incoming Webhook」を選択する。
　３．名前を入力し作成　⇒　構成されたWebhockのURLをコピーし保管する。
![4.1_TEAMS_01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/8110d645-fd9a-4a82-b009-d8b39ac45ebd.png)

#【仕込編】1．機器一覧のホスト情報登録

今回はITA導入サーバ自身の情報として、rootユーザの認証情報を登録します。
１．「基本コンソール」＞「機器一覧」＞「フィルタ」＞登録済みのホスト「exastro-it-automation」の「更新」をクリック。
２．rootユーザの認証情報（※1）を入力し、「更新」をクリック。

※1 認証方式により入力手順が異なる、rootユーザの認証方式ごとに下記手順を参照。
・パスワード認証の場合
　「ログインパスワード」を入力し、「認証方式」 ⇒ 「パスワード認証」、「管理」 ⇒ 「●」を選択。
・鍵認証の場合
　「認証方式」 ⇒ 「鍵認証(パスフレーズなし)」「鍵認証(パスフレーズあり)」「鍵認証(鍵交換済み)」から選択し、「管理」 ⇒ 「●」、「ssh認証鍵ファイル」の「ファイルを選択」を押下後、ssh認証鍵ファイルを選択して「事前アップロード」をクリック。

アップロードが完了したことを確認。
![{880E909C-D65D-48A6-8AA5-73624C5B84E0}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/2c25eab7-c66f-f0fe-bd6c-e8c8d54027c6.png)

#【仕込編】2．プロキシ情報の登録

ITA導入サーバの外部通信がプロキシサーバ経由となる環境の場合は、AWSモデルで用意されたグローバル変数にプロキシサーバの情報を設定することで、AWSモデルの自動実行の通信（https/ssh）を設定したプロキシサーバ経由で行うことが可能です。

１．「Annsible共通」＞「グローバル変数管理」＞「フィルタ」をクリック。
２．「一覧/更新」から「グローバル変数名」が「GBL_PROXY」のレコードの更新ボタンを押下。
３．「具体値」にプロキシサーバの情報を入力して更新をクリック。

![{39ADF156-4C79-48C0-B06E-3FE77A456DDD}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/f2acfcdc-5fbb-87b4-8e9d-b9f3494cd7b9.png)

#【仕込編】3．Teams連携通知の登録

###3.1　Teams連携管理の登録

「【準備／導入編】4．Teams連携通知の準備」で取得した「Incoming Webhook」のURLを入力します。

 １. 「通知先管理」> 「MS Teams」へ移動。
 ２．「一覧/更新」から「オペレーション名」が「共通オペレーション(1stモデル)」と「環境A(1stモデル)」のレコードの更新ボタンを押下。
 ３．「ホスト名」「オペレーション」「Webhook」を入力して「更新」をクリック。
![{EA52A1E4-E799-4B10-AB3E-3F3F93305368}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/b649f861-43df-3a7d-0659-abb6a4821e9d.png)

###3.2　Conductorの編集（スキップ状態の解除）

Teams連携通知はデフォルトでConductorの実行状態がスキップ状態となっているため、
通知するためにはConductorクラスを編集し、スキップ状態を解除します。

１．「Conductor」＞「Conductorクラス一覧」＞ Teamsへ通知させたいConductorの「詳細」をクリック ＞ 移動先画面下部の「編集」をクリック
![{FE0B71A3-B2E1-4193-B526-21C9905E749E}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/81d4447a-4c54-735d-3a39-4aa67d31c0de.png)

２．「Teams正常終了通知」を押下して画面右側の「Default skip」のチェックを解除、
　　「Teams異常終了通知」を押下して画面右側の「Default skip」のチェックを解除して、画面下部の「更新」をクリック
![{254223AD-C01F-43B5-ABC1-3EA779914608}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/176b2575-d5f3-7271-8f97-4d0480f732be.png)

#【仕込編】4．共通パラメータの更新
共通パラメータの更新を行います。
（１）「基盤管理」＞「共通パラメータ」へ移動。
（２）「一覧/更新」から「オペレーション名」が「共通オペレーション」のレコードの更新ボタンを押下。
（３）全ての項目に値を入力し「更新」をクリック。
　
　※以下項目の値は変更が必要になります。
　「システム名」…英数字、ハイフンで任意の値を入力
　「アカウントID」…数字12桁で入力

![{6269396E-244C-45CB-A19C-4B2C72C730A6}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/ed8b7ac2-dd3f-5a31-657f-8ac19de31483.png)

#【仕込編】5．AWSアカウント情報登録

###5.1　システム管理者アクセスキーの登録

１．「AWS認証情報管理」＞「1stモデル管理者【認証】」へ移動。
２．「一覧/更新」から「オペレーション名」が「共通オペレーション(1stモデル)」のレコードの更新ボタンを押下。
３．「アクセスキーID」「シークレットアクセスキー」に、「【準備／導入編】3．AWS環境の準備」にて作成、確認したAWSから取得した情報を入力し更新をクリック。
![{AE1AAFFD-02BB-491A-91A9-0EACEECF6D85}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/74b66667-39ba-41e3-8479-6782d77645a5.png)

###5.2　AWS管理者のIAMユーザー作成と登録

AWSモデルでは、操作権限をIAMユーザーとそれに紐づいたITAユーザーごとに分けての運用をポリシーとしており、それに従い各ロールごとにIAMユーザーの作成とアクセスキーの登録を行います。

**１．Conductor実行によるAWS管理者のIAMグループ、IAMポリシーの作成または更新**

<details><summary>`実行前にAWS管理者のIAMグループ名（デフォルト値）を変更したい場合はこちらを参照`</summary>
（１）「基盤管理」＞「AWS管理者グループ」へ移動。
（２）「一覧/更新」から、登録済みのパラメータのレコードの更新ボタンを押下。
（３）「AWS管理者グループ名」を任意の内容に変更し、「更新」をクリック。
![{008628EC-828A-41DD-A00E-958B0929F7B4}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/41291e53-d703-7bca-c704-51a13fcb7a29.png)

（１）「Conductor」＞「Conductor作業実行」をクリック
（２）「Conductor[一覧]」の「AWS管理者基盤 / 構築・更新」を選択し、
「オペレーション[一覧]」から「共通オペレーション(1stモデル)」のオペレーションを選択して、画面最下部の「実行」をクリック
（３）実行開始後、正常終了することを確認する。
![{46F7684E-8BD3-4270-AD9B-FBE961ED6D68}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/313e92fe-5a53-1014-6618-36630ca078fb.png)

**２．Conductor実行によるIAMユーザ(AWS管理者)作成**

<details><summary>`実行前にAWS管理者のITAユーザー、IAMユーザーのログイン情報（デフォルト値）を変更したい場合はこちらを参照`</summary>
（１）「ユーザーリスト管理」＞「AWS管理者リスト」へ移動
（２）「一覧/更新」から登録済みのパラメータのレコードの更新ボタンを押下。
（３）登録済みのITAユーザー、IAMユーザーのログイン情報を適当な内容に変更し、「更新」をクリック
　　※IAMユーザーの「初回ログインPW」には入力規則があるようですので、変更する場合は「小文字・大文字・記号・数字」を含めた値を登録してください。
![{EBDEE511-F4D2-4FC4-AE81-A655D85A0794}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/09765144-d903-e9d3-6c70-fcea7fdae637.png)

（１）「Conductor」＞「Conductor作業実行」をクリック
（２）「Conductor[一覧]」の「AWS管理者(IAMユーザー,ITAユーザー)の作成」を選択し、「オペレーション[一覧]」から「共通オペレーション」のオペレーションを選択して、画面最下部の「実行」をクリック
（３）実行開始後、正常終了することを確認する。
![{1EC3F1FF-308A-4785-968D-B515CD3D608C}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/b885abd6-23a7-8f0f-7db5-6fc0484824f8.png)

**３．IAMアクセスキーの取得**

（１）AWSマネジメントコンソールにログインする。
（２）「IAM」＞「アクセス管理」＞「ユーザー」画面にて、
　　　　新規に払い出したAWS管理者ユーザー（1st-aws-admin-xxx）を押下。
（３）「ユーザー」＞「概要」＞「認証情報」タブ＞「アクセスキーの作成」をクリック
（４） 作成された「アクセスキー」の情報を取得する。「アクセスキーID」「シークレットキー」を取得する。
![{8684B91D-BBDA-46C8-9376-767320036A7D}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/bccee221-ad47-a908-a57c-ba046d524ec2.png)

###5.3　インフラユーザーのIAMユーザ作成と登録

**１．AWS管理者のアクセスキーの登録**

 上記**「5.1　システム管理者アクセスキーの登録」**と同様にアクセスキーの登録を行う。
 ※本作業は、「AWS管理者」にて実施します（今回はITA再ログインを省略）

（１）「AWS認証情報管理」＞「AWS管理者【認証】」へ移動
（２） 全てのレコードの「アクセスキーID」「シークレットアクセスキー」をAWSから取得した値に更新
![{7AC0E0E8-A86A-4D55-BCAD-38DBBFE6FD5A}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/8dd9e745-ed29-c923-747c-f93df50d94b4.png)

**２．Conductor実行によるインフラユーザーのIAMグループ、IAMポリシーの作成または更新**

<details><summary>`実行前にインフラユーザのIAMグループ名（デフォルト値）を変更したい場合はこちらを参照`</summary>
（１）「基盤管理」＞「インフラユーザーグループ」に移動。
（２）「一覧/更新」から登録済みのパラメータのレコードの更新ボタンを押下。
（３）「インフラ管理者グループ名」「インフラメンバーグループ名」を任意の内容に変更し、「更新」をクリック。
![{3C17042B-4886-4F12-B7C9-EE75F16C356C}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/c4bee3c0-1295-7bc9-f027-8478297fe2f7.png)

（１）「Conductor」＞「Conductor作業実行」をクリック
（２）「Conductor[一覧]」の「インフラユーザー基盤 / 構築・更新」を選択し、
「オペレーション[一覧]」から「共通オペレーション(1stモデル)」のオペレーションを選択して、画面最下部の「実行」をクリック
（３）実行開始後、正常終了することを確認する。

**３．Conductor実行によるIAMユーザ(インフラ管理者)作成**

<details><summary>`実行前にインフラ管理者のITAユーザー、IAMユーザーのログイン情報（デフォルト値）を変更したい場合はこちらを参照`</summary>
（１）「ユーザーリスト管理」＞「インフラ管理者リスト」へ移動
（２）「一覧/更新」から登録済みのパラメータのレコードの更新ボタンを押下。
（３）登録済みのITAユーザー、IAMユーザーのログイン情報を適当な内容に変更し、「更新」をクリック。
　　※IAMユーザーの「初回ログインPW」には入力規則があるようなので、変更する場合は「小文字・大文字・記号・数字」を含めた値を登録してください。
![{3E9EBE04-B29E-4A89-ACEF-1950D2D5FB3B}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/031cc29a-ab55-733a-bafd-914238f92184.png)

（１）「Conductor」＞「Conductor作業実行」をクリック
（２）「Conductor[一覧]」の「インフラ管理者(ITAユーザー,IAMユーザー)の作成」を選択し、
「オペレーション[一覧]」から「共通オペレーション(1stモデル)」のオペレーションを選択して、画面最下部の「実行」をクリック
（３）実行開始後、正常終了することを確認する。

**４．IAMアクセスキーの取得**
　AWSマネジメントコンソールにログインし、「IAM」＞「アクセス管理」＞「ユーザー」画面にて、作成したユーザのアクセスキーを取得する。
　　・インフラ管理者　   ：1st-infra-admin-xxx

**５．インフラ管理者のアクセスキーの登録**
　取得したインフラ管理者のアクセスキーを登録する。
（１）「AWS認証情報管理」＞「インフラ管理者【認証】」へ移動。
（２）「一覧/更新」から「オペレーション名」が「環境A(1stモデル)」のレコードの更新ボタンを押下。
（３） 「アクセスキーID」「シークレットアクセスキー」をAWSから取得した値に変更し、「更新」をクリック。
![{F088B50B-C018-44AB-B3CC-885979DE214A}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/5d7771df-b637-2d4c-3888-64d5dcf460b7.png)

**６．Conductor実行によるIAMユーザ(インフラメンバー)作成**

<details><summary>`実行前にインフラメンバーのITAユーザー、IAMユーザーのログイン情報（デフォルト値）を変更したい場合はこちらを参照`</summary>
（１）「ユーザーリスト管理」＞「インフラメンバーリスト」へ移動。
（２）「一覧/更新」から登録済みのパラメータのレコードの更新ボタンを押下。
（３）登録済みのITAユーザー、IAMユーザーのログイン情報を適当な内容に変更し、「更新」をクリック。
　　※IAMユーザーの「初回ログインPW」には入力規則があるようですので、変更する場合は「小文字・大文字・記号・数字」を含めた値を登録してください。
![{7F44283B-3253-40E2-924B-6E0EC8CFF02B}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/e6ae8cad-8d2d-5a73-1ab9-f4fce1156deb.png)

（１）「Conductor」＞「Conductor作業実行」をクリック
（２）「Conductor[一覧]」の「インフラメンバー(IAMユーザー,ITAユーザー)の作成」を選択し、
「オペレーション[一覧]」から「共通オペレーション(1stモデル)」のオペレーションを選択して、画面最下部の「実行」をクリック
（３）実行開始後、正常終了することを確認する。

#【仕込編】６．CloudFormation実行用IAMロールの構築・更新

**１．共通パラメータの更新**

（１）「基盤管理」＞「共通パラメータ」へ移動
（２）「一覧/更新」から「オペレーション名」が「環境-A(1stモデル)」のレコードの値を更新
（３）全ての項目に値を入力し「更新」を押下
　
　※以下項目の値は変更が必要になります。
　「システム名」…英数字、ハイフンで任意の値を入力
　「アカウントID」…数字12桁で入力

**２．Conductor実行によるCloudFormation実行用IAMロールの構築・更新**

（１）「Conductor」＞「Conductor作業実行」をクリック
（２）「Conductor[一覧]」の「CloudFormationロール / 構築・更新」を選択し、「オペレーション[一覧]」から「環境A(1stモデル)」のオペレーションを選択して、画面最下部の「実行」をクリック
（３）実行開始後、正常終了することを確認する。

#【仕込編】７．オートスケール用パラメータの登録・更新

###7.1　AutoScaleパラメータへの登録

AutoScale用のWebサーバ／ELB構築用のパラメータ値を入力します。
※本作業は、ITAのインフラ管理者ユーザ「1st-infra-admin」にて実施します (今回はITA再ログインを省略)

 １．「システム管理」＞「AutoScaleパラメータ」＞ オペレーション名=「環境-A(1stモデル)」のレコードの「更新」をクリック。
 ２．「AMI ID」「キーペア名」「SSL証明書(ARN)」を入力、
 　  今回は検証用に「最小インスタンス数」を「２」に変更し「更新」をクリック。

 「【準備／導入編】3．AWS環境」の「3.2　EC2 Auto Scaling利用の環境準備」で用意した以下の情報を入力。

| パラメータ | 入力内容 | 備考 |
|:--|:--|:--|
| AMI ID | ami-xxxxxxxxxxxxxxxxx|利用する AMI ID  |
| キーペア名 | キーペア名（Webサーバ用） | WebSV用に作成したキーペア名   |
| 最小インスタンス数| 4 ⇒ 2 | テストシナリオ用にパラメータを変更  |
| SSL証明書(ARN)   | ELB用サーバ証明書のARN | インポートした証明書   |

![{9C5F84D5-0D0F-42F7-90F5-CFAFE14342AA}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/85b996df-40a6-8ed8-b5a6-14dae5c64193.png)

###7.2　Bastionパラメータへの登録

踏み台サーバ構築用のパラメータ値を入力します。

 １．「システム管理」＞「Bastionパラメータ」＞ オペレーション名=「環境-A(1stモデル)」のレコードの「更新」をクリック。
 ２．「AMI ID」「キーペア名」を入力して「更新」をクリック。

 「【準備／導入編】3．AWS環境」の「3.2　EC2 Auto Scaling利用の環境準備」で用意した以下の情報を入力。

| パラメータ | 入力内容 | 備考 |
|:--|:--|:--|
| キーペア名 | キーペア名（踏み台サーバ用） | 踏み台SV用に作成したキーペア名   |
| AMI ID | ami-xxxxxxxxxxxxxxxxx| 利用する AMI ID  |

![{73F1A67C-1DE3-45FC-96B5-1523207825E5}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/8573a7fa-13cd-dd3c-76ba-7259d9840bbf.png)

###7.3　キーペアファイルの登録

 １．「Ansible共通」＞「ファイル管理」＞「CPF_SECRET_KEY_BASTION」の「更新」をクリック
 ２．「ファイルを選択」を押下して、「導入準備－AWS環境準備－ ②EC2 Auto Scaling利用の環境準備」で用意した踏み台サーバー用の「キーペア（pemファイル）」を選択して「事前アップロード」をクリック
 ３．アップロードが完了したら「更新」をクリック

同様の手順で「CPF_KEY_PAIR_WEB」へWebサーバー用の「キーペア（pemファイル）」を登録する。
![{513432BA-4ECC-4697-9A07-FA80718017E0}.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/761075/caf4f6ed-f18f-005d-e5b2-1dedbe133a43.png)

***
以上、今回は、AWSモデルの準備・導入と、AWS環境の準備、実行に必要なパラメータの登録を実施しました。
次回は、今回登録した設定をもとに、実際にAWSのオートスケジュールWebサーバの自動構築・更新を実施します。

##関連リンク
Qiita記事
・[Exastro IT Automationをインストールしてみた（v1.7.2）](https://qiita.com/standsetx/items/54ff0786db151d980026)
・[Exastro IT Automation の Setting samples(AWS版)を動かしてみた]
(https://qiita.com/ojima-nobuya/private/0d2e94f4f6f71fd6c635)
・[Exastro IT Automation の Setting samples(ServiceNow連携版)を使ってみた]
(https://qiita.com/inumayuge/items/bcbeabc876b45100e62c)

ITAコミュニティサイト
・[Exastro IT Automation コミュニティサイト](https://exastro-suite.github.io/it-automation-docs/setting-samples_ja.html#cloudSystem)
・[CSテンプレート 1st-Model オートスケーリングWebシステム（AWS）導入手順](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-install_ja.pdf)
・[CSテンプレート 1st-Model オートスケーリングWebシステム（AWS）概要](https://exastro-suite.github.io/it-automation-docs/asset/SettingSamples_ja/cloud-system-template-1st-aws-overview_ja.pdf)
・[CSテンプレート GitHubリリースページ](https://github.com/exastro-suite/Settings-CloudSystemTemplate-1st/releases)
・[ITA_利用手順マニュアル エクスポート/インポート](https://exastro-suite.github.io/it-automation-docs/asset/Documents_ja/Exastro-ITA_%E5%88%A9%E7%94%A8%E6%89%8B%E9%A0%86%E3%83%9E%E3%83%8B%E3%83%A5%E3%82%A2%E3%83%AB_%E3%82%A8%E3%82%AF%E3%82%B9%E3%83%9D%E3%83%BC%E3%83%88%EF%BC%8F%E3%82%A4%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88.pdf)
・[ITA_利用手順マニュアル Ansible-driver](https://exastro-suite.github.io/it-automation-docs/asset/Documents_ja/Exastro-ITA_%E5%88%A9%E7%94%A8%E6%89%8B%E9%A0%86%E3%83%9E%E3%83%8B%E3%83%A5%E3%82%A2%E3%83%AB_Ansible-driver.pdf)