---
title: VMware Tanzu Operations Manager 3.0とBOSH DirectorをAWSにインストールするメモ
tags: ["AWS", "Cloud Foundry", "Pivotal Cloud Foundry", "Ops Manager", "TAS", "Terraform"]
categories: ["Dev", "PaaS", "CloudFoundry", "PCF"]
date: 2024-06-25T16:46:57Z
updated: 2024-06-26T04:22:25Z
---
この記事ではVMware Tanzu Operations Manager (Ops Manager) をAWSにインストールをします
[次の記事](/entries/802)では、ここで構築した環境上にTanzu Application Service 6.0 (TAS) をインストールします。
この記事では初めてインストールする人向けにできるだけGUIベースで設定を行います。
**目次**
### AWS環境の準備
まずはOps Manager及びTASをインストールする下地となるAWSリソースを作成します。
作成するネットワーク構成は次の図のようになります。
必要なリソースは[ドキュメント](https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-required-objects.html)に記載されていますが、これをマニュアルで作成するのは大変なので、Terraformを使用します。
Terraform CLIのインストールは[こちら](https://www.hashicorp.com/official-packaging-guide?product_intent=terraform)を参照してください。
本記事の内容はUbuntu Jammy上で次のバージョンのCLIを使って動作確認しています。
```
$ terraform --version
Terraform v1.8.5
on linux_amd64
```
また前提条件としてRoute 53のHosted Zoneが1つ必要です。ここでは`aws.maki.lol`というHosted Zoneを例に説明します。
Terraformの[テンプレート](https://github.com/making/tas-paving-aws)を取得します。
```
git clone https://github.com/making/tas-paving-aws
cd tas-paving-aws
```
このテンプレートで
* VPC
* Subnet
* Security Group
* EIP
* NLB
* Internet Gateway
* NAT Gateway
* IAM Role
* IAM Policy
* IAM Instance Profile
* Route53 Record
* S3 Bucket
などを作成します。
以下の環境変数を設定します。
```bash
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...
export AWS_SESSION_TOKEN=... (Optional)
export AWS_REGION=ap-northeast-1
export TF_VAR_availability_zones='["ap-northeast-1a","ap-northeast-1c","ap-northeast-1d"]'
export TF_VAR_environment_name=sandbox
export TF_VAR_hosted_zone=aws.maki.lol
```
> [!NOTE] `AWS_ACCESS_KEY_ID`と`AWS_SECRET_ACCESS_KEY`はTerraformの実行及び、後述のOps Manager VMの作成にのみ利用します。以降はTerraformで作成されたInstance Profileを使用してAWS APIにアクセスします。TAS自体に`AWS_ACCESS_KEY_ID`と`AWS_SECRET_ACCESS_KEY`を設定することはありません。
> [!TIP] VMWare社員は[Cloud Gate](https://console.cloudgate.vmware.com/)で発行できるPower Userの一時的なCredentialsで作業できます。
Terraformを実行します。
```
cd aws
terraform init
terraform plan -out plan
terraform apply plan
cd ..
````
AWSのConsoleで前述の図の通りのNetworkが作成されたことがわかるでしょう。
### Ops Managerのインストール
TASをインストールするために必要なOps Managerをインストールします。
次の図のようにOps Managerは`public`ネットワーク上に作成し、EIPを経由してアクセスします。
Ops ManagerのインストールをAWS Consoleから行うのは手間がかかるので、[`om`](https://github.com/pivotal-cf/om) CLIを使って、Ops Manage VMを作成します。
```
curl https://github.com/pivotal-cf/om/releases/download/7.12.0/om-linux-amd64-7.12.0 -sL -o om
chmod +x om
sudo mv om /usr/local/bin/om
```
Ops Manager VMを作成するための設定ファイルを次のように作成します。
```yaml
cat < opsman.yml
---
opsman-configuration:
aws:
region: ${AWS_REGION}
vpc_subnet_id: $(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_subnet_id)
security_group_ids:
- $(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_security_group_id)
- $(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .platform_vms_security_group_id)
key_pair_name: $(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_key_pair_name)
iam_instance_profile_name: $(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_iam_instance_profile_name)
access_key_id: ${AWS_ACCESS_KEY_ID}
secret_access_key: ${AWS_SECRET_ACCESS_KEY}
public_ip: $(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_public_ip)
private_ip: 10.0.0.10
---
EOF
```
Ops ManagerのAMIイメージのIDは[Broadcom Support Portal](https://support.broadcom.com/) (BSP)から取得する必要があります。
BSPにログインして、次の図のように"Tanzu"を選択してください。
"My Downloads"から"VMware Tanzu Operation Manager"を選択してください。
"VMware Tanzu Operation Manager"をクリックしてください。
最新バージョンを選択してください。下の図では`3.0.30+LTS-T`です。
**"I agree to the Terms and Conditions"にチェックを入れて**、"Tanzu Ops Manager YAML for AWS ..."をダウンロードしてください。
次のようなYAMLが取得できます。
```yaml
$ cat ops-manager-aws-3.0.30+LTS-T.yml
---
ap-south-2: ami-079351fec0d47937b
# ...
ap-northeast-1: ami-00d6d7bbd9d6a202f
# ...
```
先ほど作成した`opsman.yml`とBSPからダウンロードしたYAMLを使って、次のように`om`コマンドでOps Manager VMを作成します。
```
om vm-lifecycle create-vm --config=opsman.yml --image-file=ops-manager-aws-3.0.30+LTS-T.yml
```
次のようなログが出力され、Ops Manager VMが作成されます。
```
Using aws...
Executing: "aws ec2 run-instances --tag-specifications ResourceType=instance,Tags=[{Key=Name,Value=ops-manager-vm}] --image-id ami-00d6d7bbd9d6a202f --subnet-id subnet-014057c9d1c4a7bd6 --security-group-ids sg-01e92981c8c881bec sg-0ffd0662a685d574f --count 1 --instance-type m5.large --key-name sandbox-ops-manager-key --no-associate-public-ip-address --iam-instance-profile Name=sandbox-ops-manager --query Instances[0].InstanceId --private-ip-address 10.0.0.10"
This could take a few moments...
aws[stdout]: "i-0ddbef586f5731165"
Executing: "aws ec2 describe-volumes --filters Name=attachment.instance-id,Values=i-0ddbef586f5731165 Name=attachment.status,Values=attached Name=status,Values=in-use --query Volumes[0].VolumeId"
This could take a few moments...
aws[stdout]: "vol-0a4005fe1de960ff7"
Executing: "aws ec2 modify-volume --volume-id vol-0a4005fe1de960ff7 --size 200"
This could take a few moments...
aws[stdout]: {
aws[stdout]: "VolumeModification": {
aws[stdout]: "VolumeId": "vol-0a4005fe1de960ff7",
aws[stdout]: "ModificationState": "modifying",
aws[stdout]: "TargetSize": 200,
aws[stdout]: "TargetIops": 600,
aws[stdout]: "TargetVolumeType": "gp2",
aws[stdout]: "TargetMultiAttachEnabled": false,
aws[stdout]: "OriginalSize": 10,
aws[stdout]: "OriginalIops": 100,
aws[stdout]: "OriginalVolumeType": "gp2",
aws[stdout]: "OriginalMultiAttachEnabled": false,
aws[stdout]: "Progress": 0,
aws[stdout]: "StartTime": "2024-06-25T03:08:34+00:00"
aws[stdout]: }
aws[stdout]: }
Executing: "aws ec2 describe-addresses --filters Name=public-ip,Values=54.65.94.27 --query Addresses[0].AllocationId"
This could take a few moments...
aws[stdout]: "eipalloc-0b56ffe4ab20a23d2"
Executing: "aws ec2 associate-address --allocation-id eipalloc-0b56ffe4ab20a23d2 --instance-id i-0ddbef586f5731165"
This could take a few moments...
aws[stdout]: {
aws[stdout]: "AssociationId": "eipassoc-0b5a6e1c26ee8d6ec"
aws[stdout]: }
Executing: "aws ec2 stop-instances --instance-ids i-0ddbef586f5731165"
This could take a few moments...
aws[stdout]: {
aws[stdout]: "StoppingInstances": [
aws[stdout]: {
aws[stdout]: "CurrentState": {
aws[stdout]: "Code": 64,
aws[stdout]: "Name": "stopping"
aws[stdout]: },
aws[stdout]: "InstanceId": "i-0ddbef586f5731165",
aws[stdout]: "PreviousState": {
aws[stdout]: "Code": 16,
aws[stdout]: "Name": "running"
aws[stdout]: }
aws[stdout]: }
aws[stdout]: ]
aws[stdout]: }
Executing: "aws ec2 describe-instances --instance-ids i-0ddbef586f5731165 --query Reservations[*].Instances[*].State.Name"
This could take a few moments...
aws[stdout]: [
aws[stdout]: [
aws[stdout]: "stopping"
aws[stdout]: ]
aws[stdout]: ]
Executing: "aws ec2 describe-instances --instance-ids i-0ddbef586f5731165 --query Reservations[*].Instances[*].State.Name"
This could take a few moments...
aws[stdout]: [
aws[stdout]: [
aws[stdout]: "stopping"
aws[stdout]: ]
aws[stdout]: ]
Executing: "aws ec2 describe-instances --instance-ids i-0ddbef586f5731165 --query Reservations[*].Instances[*].State.Name"
This could take a few moments...
aws[stdout]: [
aws[stdout]: [
aws[stdout]: "stopping"
aws[stdout]: ]
aws[stdout]: ]
...
Executing: "aws ec2 describe-instances --instance-ids i-0ddbef586f5731165 --query Reservations[*].Instances[*].State.Name"
This could take a few moments...
aws[stdout]: [
aws[stdout]: [
aws[stdout]: "stopped"
aws[stdout]: ]
aws[stdout]: ]
Executing: "aws ec2 start-instances --instance-ids i-0ddbef586f5731165"
This could take a few moments...
aws[stdout]: {
aws[stdout]: "StartingInstances": [
aws[stdout]: {
aws[stdout]: "CurrentState": {
aws[stdout]: "Code": 0,
aws[stdout]: "Name": "pending"
aws[stdout]: },
aws[stdout]: "InstanceId": "i-0ddbef586f5731165",
aws[stdout]: "PreviousState": {
aws[stdout]: "Code": 80,
aws[stdout]: "Name": "stopped"
aws[stdout]: }
aws[stdout]: }
aws[stdout]: ]
aws[stdout]: }
OpsMan VM created successfully
```
ECSのダッシュボードで`opa-manage-vm`という名前のインスタンスを確認できるでしょう。
このOps ManagerのDNS名は次のコマンドで確認できます。`opsmanager.${TF_VAR_environment_name}.${TF_VAR_hosted_zone}`であるはずです。
```
cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_dns
```
自己署名証明書が使用されているため、ブラウザでアクセスすると、次のような警告が表示されるでしょう。ブラウザの画面にカーソルを合わせて、`this is unsafe`と入力してください。
Ops Managerの初回セットアップ画面が表示されます。"Internal Authentication"ボタンをクリックしてください。
管理ユーザーのユーザー名とパスワード、復号パスフレーズを設定し、"Setup Authentication"ボタンをクリックしてください。
しばらく待ってください。
ログイン画面が表示されます。
設定した管理ユーザーのユーザー名とパスワードを入力して、"SIGN IN"ボタンをクリックしてください。次のようなダッシュボード画面が表示されます。
> [!TIP]
> Ops Managerにsshでサクセスしたい場合は、次のコマンドでSSH秘密鍵を取得してください。
> ```
> cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_ssh_private_key > opsman.pem
> chmod 600 opsman.pem
> ```
>
> 取得したSSH秘密鍵を使って次のコマンドでSSHアクセスできます。
>
> ```
> ssh ubuntu@$(cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_dns) -i opsman.pem
> ```
### Let's Encryptで証明書を作成
自己署名証明書のままでもインストールは進められますが、ここではLet's Encryptで発行した証明書を使用してインストールを進めます。ここで作成した証明書は次のTASのインストールでも使用されます。
`lego` CLIをインストールします。
```
sudo apt-get install lego -y
```
次の環境変数を設定します。
```
export AWS_REGION=...
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...
export AWS_SESSION_TOKEN=... (Optional)
export AWS_HOSTED_ZONE_ID=$(aws route53 list-hosted-zones | jq -r --arg NAME "${TF_VAR_hosted_zone}." '.HostedZones[] | select(.Name == $NAME) | .Id' | sed 's|/hostedzone/||')
export SUBDOMAIN=${TF_VAR_environment_name}.${TF_VAR_hosted_zone}
export EMAIL=
```
次のコマンドで証明書を作成します。
```
lego --accept-tos \
--key-type=rsa4096 \
--domains="*.${SUBDOMAIN}" \
--domains="*.apps.${SUBDOMAIN}" \
--domains="*.sys.${SUBDOMAIN}" \
--email=${EMAIL} \
--dns=route53 \
run
```
次のディレクトリに証明書が生成されます。
```
$ ls -la .lego/certificates/
total 16
drwx------ 6 tmaki tmaki 192 Jun 25 08:00 .
drwx------ 4 tmaki tmaki 128 Jun 25 07:56 ..
-rw------- 1 tmaki tmaki 4014 Jun 25 08:00 _.sandbox.aws.maki.lol.crt
-rw------- 1 tmaki tmaki 1802 Jun 25 08:00 _.sandbox.aws.maki.lol.issuer.crt
-rw------- 1 tmaki tmaki 243 Jun 25 08:00 _.sandbox.aws.maki.lol.json
-rw------- 1 tmaki tmaki 3243 Jun 25 08:00 _.sandbox.aws.maki.lol.key
```
証明書のSubject Alternative Namesを次のコマンドで確認できます。
```
$ cat .lego/certificates/_.sandbox.aws.maki.lol.crt | openssl x509 -noout -text | grep DNS:
DNS:*.apps.sandbox.aws.maki.lol, DNS:*.sandbox.aws.maki.lol, DNS:*.sys.sandbox.aws.maki.lol
```
この証明書をOps Managerに設定するために、`om` CLIを使用します。
`Ops Manager`にアクセするための情報を次のように`env.yml`に記述します。
```
export OM_USERNAME=
export OM_PASSWORD=
export OM_DECRYPTION_PASSPHRASE=
cat < env.yml
target: https://opsmanager.${SUBDOMAIN}
connect-timeout: 30
request-timeout: 1800
skip-ssl-validation: true
username: ${OM_USERNAME}
password: ${OM_PASSWORD}
decryption-passphrase: ${OM_DECRYPTION_PASSPHRASE}
EOF
```
Ops Managerに設定する証明書を`ssl-certificate.yml`に定義します。
```
cat < ssl-certificate.yml
ssl-certificate:
certificate: |
$(cat .lego/certificates/_.${SUBDOMAIN}.crt | sed 's/^/ /g')
private_key: |
$(cat .lego/certificates/_.${SUBDOMAIN}.key | sed 's/^/ /g')
EOF
```
次のコマンドで、Ops Managerに証明書を設定します。
```
om --env env.yml configure-opsman --config ssl-certificate.yml
```
しばらくして、ブラウザにアクセスすると証明書の警告はなくなるでしょう。新しいウインドウでアクセスしたほうが反映が早いです。
> [!TIP] Ops ManagerのGUIから設定したい場合は、右上のユーザー名をクリックして、"Settings"→"SSL Certificate"を選択し、CertificateとPrivate Keyを設定し、保存してください。
>
>
### BOSH Directorのインストール
次にOps Managerを使ってBOSH Directorのインストールを行います。
BOSH DirectorはTASのインストールやアップデート、死活監視を担当する重要なコンポーネントです。VMに対するKubernetesのようなものに相当します。
BOSH Directorは次の図のように`management`ネットワーク上にインストールされます。
#### AWS Config
BOSH DirectorがAWSにアクセスするための情報を設定します。AWSのアクセスキーは使わず、Instance Profileを使用します。
https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-config-manual.html#step-2-configure-aws-1
1. `Use AWS Instance Profile`を選択し、`AWS IAM Instance Profile`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_iam_instance_profile_name`の結果を設定
1. `Security Group ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .platform_vms_security_group_id`の結果を設定
1. `Key Pair Name`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_key_pair_name`の結果を設定
1. `SSH Private Key`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .ops_manager_ssh_private_key`の結果を設定
1. `Region`に`echo $AWS_REGION`の結果を設定
"Save"ボタンをクリックして設定を保存。
#### Director Config
BOSH Director自体の設定を行います。BlobstoreとしてTerraformで作成したS3のバケットを使用します。
https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-config-manual.html#step-3-complete-the-director-config-page-2
1. `NTP Servers (comma delimited)`にNTPサーバーのアドレスを設定(e.g. `time.google.com`)
1. `Enable VM Resurrector Plugin`をチェック
1. `Blobstore Location`に`S3 Compatible Blobstore`を選択し、
1. `S3 Endpoint`に対象のリージョンの[S3 Endpoint URL](https://docs.aws.amazon.com/general/latest/gr/s3.html)を設定。通常は`echo https://s3.${AWS_REGION}.amazonaws.com`の値
1. `Credentials Source`に`IAM Instance Profile`を選択
1. `S3 Signature Version`に`V4 Signature`を選択し、`Region`に`echo $AWS_REGION`の結果を設定
1. `S3 Backup Strategy`に`Use a versioned bucket`を選択
1. `Certificate Duration Overrides`で`On`を選択 (証明書の期限を10年に延長。期限切れによる事故防止のため)
1. `CA Certificate Duration (days)`に`3650`を設定
1. `Leaf Certificate Duration (days)`に`3650`を設定
"Save"ボタンをクリックして設定を保存。
#### Create Availability Zones
BOSH DirectorがVMをデプロイする先のAvailability Zonesの選択肢を設定します。
https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-config-manual.html#step-4-create-availability-zones-3
1. `cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .availability_zones`で出力されるAvailability Zonesの数の分だけ"Add"ボタンをクリックし、それぞれの値を設定。
"Save"ボタンをクリックして設定を保存。
#### Create Networks
BOSH DirectorがVMをデプロイする先のNetworkの選択肢を設定します。TASを含めて、今回のインストール作業で一番設定が大変なのはここです。
https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-config-manual.html#step-5-create-networks-4
1. "Add Network"ボタンをクリックし、`Name`に`management`を設定 (BOSH Directorをインストールするネットワーク)
1. `Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_ids[0]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_cidrs[0]`の結果を設定 (デフォルト: `10.0.16.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_reserved_ip_ranges[0]`の結果を設定 (デフォルト: `10.0.16.1-10.0.16.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_gateways[0]`の結果を設定 (デフォルト: `10.0.16.1`)
1. `Availability Zones`は1番目のものを選択
1. "Add Subnet"ボタンをクリックし、`Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_ids[1]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_cidrs[1]`の結果を設定 (デフォルト: `10.0.17.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_reserved_ip_ranges[1]`の結果を設定 (デフォルト: `10.0.17.1-10.0.17.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_gateways[1]`の結果を設定 (デフォルト: `10.0.17.1`)
1. `Availability Zones`は2番目のものを選択
1. "Add Subnet"ボタンをクリックし、`Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_ids[2]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_cidrs[2]`の結果を設定 (デフォルト: `10.0.18.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_reserved_ip_ranges[2]`の結果を設定 (デフォルト: `10.0.18.1-10.0.18.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .management_subnet_gateways[2]`の結果を設定 (デフォルト: `10.0.18.1`)
1. `Availability Zones`は3番目のものを選択
1. `Name`に`tas`を設定 (TAS含む主なProductをインストールするネットワーク)
1. `Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_ids[0]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_cidrs[0]`の結果を設定 (デフォルト: `10.0.4.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_reserved_ip_ranges[0]`の結果を設定 (デフォルト: `10.0.4.1-10.0.4.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_gateways[0]`の結果を設定 (デフォルト: `10.0.4.1`)
1. `Availability Zones`は1番目のものを選択
1. "Add Subnet"ボタンをクリックし、`Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_ids[1]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_cidrs[1]`の結果を設定 (デフォルト: `10.0.5.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_reserved_ip_ranges[1]`の結果を設定 (デフォルト: `10.0.5.1-10.0.5.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_gateways[1]`の結果を設定 (デフォルト: `10.0.5.1`)
1. `Availability Zones`は2番目のものを選択
1. "Add Subnet"ボタンをクリックし、`Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_ids[2]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_cidrs[2]`の結果を設定 (デフォルト: `10.0.6.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_reserved_ip_ranges[2]`の結果を設定 (デフォルト: `10.0.6.1-10.0.6.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_tas.value -r | jq -r .tas_subnet_gateways[2]`の結果を設定 (デフォルト: `10.0.6.1`)
1. `Availability Zones`は3番目のものを選択
1. `Name`に`services`を設定 (オンデマンドサービスのMySQL, PostgreSQL, RabbitMQなどをインストールするネットワーク)
1. `Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_ids[0]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_cidrs[0]`の結果を設定 (デフォルト: `10.0.8.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_reserved_ip_ranges[0]`の結果を設定 (デフォルト: `10.0.8.1-10.0.8.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_gateways[0]`の結果を設定 (デフォルト: `10.0.8.1`)
1. `Availability Zones`は1番目のものを選択
1. "Add Subnet"ボタンをクリックし、`Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_ids[1]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_cidrs[1]`の結果を設定 (デフォルト: `10.0.9.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_reserved_ip_ranges[1]`の結果を設定 (デフォルト: `10.0.9.1-10.0.9.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_gateways[1]`の結果を設定 (デフォルト: `10.0.9.1`)
1. `Availability Zones`は2番目のものを選択
1. "Add Subnet"ボタンをクリックし、`Subnets`の
1. `VPC Subnet ID`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_ids[2]`の結果を設定
1. `CIDR`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_cidrs[2]`の結果を設定 (デフォルト: `10.0.10.0/24`)
1. `Reserved IP Ranges`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_reserved_ip_ranges[2]`の結果を設定 (デフォルト: `10.0.10.1-10.0.10.9`)
1. `DNS`に`10.0.0.2`を設定
1. `Gateway`に`cat tas-paving-aws/terraform.tfstate | jq .outputs.stable_config_opsmanager.value -r | jq -r .services_subnet_gateways[2]`の結果を設定 (デフォルト: `10.0.10.1`)
1. `Availability Zones`は3番目のものを選択
"Save"ボタンをクリックして設定を保存。
#### Assign AZs and Networks
BOSH Director自体をデプロイする先のAZとNetworkを設定します。
https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-config-manual.html#step-6-assign-azs-and-networks-5
1. `Singleton Availability Zone`に任意のAvailability Zoneを選択 (このAZにBOSH Directorがインストールされる)
1. `Network`に`management`を選択
"Save"ボタンをクリックして設定を保存。
#### Security
BOSH Directorが作成するVMに信頼させるTLS証明書の設定を行います。
https://docs.vmware.com/en/VMware-Tanzu-Operations-Manager/3.0/vmware-tanzu-ops-manager/aws-config-manual.html#step-7-configure-security-6
1. `Include Tanzu Ops Manager Root CA in Trusted Certs`をチェック
"Save"ボタンをクリックして設定を保存。
ダッシュボードに戻ります。
"REVIEW PENDING CHANGES"ボタンをクリック
"APPLY CHANGES"ボタンをクリック。
"Changes Applied"と表示されれば、インストールは成功です。
[次の記事](/entries/802)でこの環境上にTanzu Application Serviceをインストールします。