# 事前準備

HULFT10 for Container Servicesの導入にあたって、事前に確認および決定しておく情報があります。

## 導入ユーザーの権限設定（必須）

導入ユーザーには「AdministratorAccess」権限が必要です。

導入作業のため様々なリソースへのアクセス、CloudFormation実行のためのIAMロール作成を行います。

CloudFormationを実行する際に指定するIAMロールについては、「CloudFormation実行ロール（必須）」を参照してください。

## サービスクォータの確保（必須）

CloudFormationで作成するリソースの中にはクォータが定められているものがあります。CloudFormationの実行前にHULFT10導入リージョンの各クォータに空きがあることを確認してください。 空きがない場合、クォータの引き上げリクエストを行うことができます。

詳細は 以下のAWS 公式ドキュメント を参照してください。

「クォータ引き上げのリクエスト」 （2023年11月1日現在）

CloudFormationで作成されるリソースのうち、初期クォータ数が少なく枯渇しやすいリソースについては、以下の表でご確認ください。

表3.2 シングルAZ構成導入時の初期クォータ数が少なく枯渇しやすいリソース

サービス名 | 作成数 | サービスクォータ
--- | --- | ---
VPC | 1 | VPCs per Region
Internet gateway | 1 | Internet gateways per Region
NAT gateway | 1 | NAT gateways per Availability Zone
Elastic IP | 1 | EC2-VPC Elastic IPs
Amazon Simple Storage Service (Amazon S3) | 2 | General purpose buckets

表3.3 マルチAZ構成導入時の初期クォータ数が少なく枯渇しやすいリソース

サービス名 | 作成数 | サービスクォータ
--- | --- | ---
VPC | 1 | VPCs per Region
Internet gateway | 1 | Internet gateways per Region
NAT gateway | 2 | NAT gateways per Availability Zone
Elastic IP | 2 | EC2-VPC Elastic IPs
Amazon Simple Storage Service (Amazon S3) | 2 | General purpose buckets

## 導入に必要な情報の確認

CloudFormationの実行時およびEFS導入VPCの設定に必要な情報を、導入作業の前に決定しておきます。

導入作業の流れは以下のとおりです。

事前に決定した値をどのCloudFormationのパラメーターに設定するのかについては、「表3.2 シングルAZ構成導入時の初期クォータ数が少なく枯渇しやすいリソース」でご確認ください。

(CloudFormation_parameters.csv)

  をクリックすると、各パラメーターの値をメモするファイルをダウンロードできます。

  CloudFormationを実行するとき、メモした値をコピーして各パラメーターに貼り付けてください。

表3.4 事前準備が必要な「CloudFormation NewDeployTemplate1」のパラメーター

グループ名 | パラメーター名 | 要否 | 事前準備 | AWSサービス名 | 入力説明
--- | --- | --- | --- | --- | ---
System Parameters | ResourceIdentifier | 必須 | 「システム名の決定（必須）」 |  | 19文字以内、英小文字、数字およびハイフン（-）
Create VPC Configuration | VpcCidr | 必須 | 「新規作成するVPCのCIDRの確認（必須）」 | Amazon VPC |
SubnetAZ1 | 任意 | 「導入先アベイラビリティゾーンの確認（任意）」 |
SubnetAZ2 | 任意 |
Storage Configuration | S3IAMPolicy | 必須 | 「S3接続の準備（必須）」 |  |
Domain Configuration | DomainName | 必須 | 「Route 53へのホストゾーン登録（必須）」 | Amazon Route 53 |
HostZoneID |
External ALB Configuration | SourceIP1 | 必須 | 「HULFT10への接続を許可するIPリストの確認（必須）」 |  | 接続の制限をかけない場合は、「SourceIP1」に0.0.0.0/0 を設定
SourceIP2 | 任意
SourceIP3 | 任意
DB Configuration | DBEngineVersion | 任意 | 「データベース エンジンバージョンの取得（任意）」 | Amazon RDS |
Peering HULFT VPC Configuration | PeeringVpcId | 任意 | 「HULFT8導入VPCID、CIDR情報（任意）」 | Amazon VPC |
PeeringVpcCidr |
アクセス許可 | 必須 | 「CloudFormation実行ロール（必須）」 | IAM |

### システム名の決定（必須）

任意のシステム名を決定します。CloudFormationで作成するAWSのリソース名およびDNS名に使用します。

入力説明 | : | 19文字以内、英小文字、数字およびハイフン（-）
設定先 | : | 「CloudFormation NewDeployTemplate1」のパラメーター「ResourceIdentifier」

### 新規作成するVPCのCIDRの確認（必須）

CloudFormationで新規に作成するのVPCのアドレス空間を指定する必要があります。アドレス空間は最小 /24で確保し、ほかのVPCやオンプレミスのCIDRと重複しないようにする必要があります。

AWSサービス名 | : | Amazon VPC
設定先 | : | 「CloudFormation NewDeployTemplate1」のパラメーター「VpcCidr」

### 導入先アベイラビリティゾーンの確認（任意）

周辺システムと合わせ特定のアベイラビリティゾーン（AZ）に導入する必要がある場合、CloudFormationで新規に作成するサブネットのAZを指定することができます。

SubnetAZ1とSubnetAZ2の指定は重複しないように設定してください。

シングルAZの導入ではSubnetAZ1に主要なリソースが作成され、SubnetAZ2には一部サービスのリソース作成に必要なサブネットのみが作成されます。

AWSサービス名 | : | Amazon VPC
設定先 | : | 「CloudFormation NewDeployTemplate1」の以下のパラメーター SubnetAZ1 SubnetAZ2

= 備考 =

AWS Wavelengthを利用中の場合、サブネット作成時に選択できるAZにWavelength Zonesが表示されます。

HULFT10 for Container ServicesはWavelength Zoneでの動作をサポートしていないため、導入先AZとして指定できません。

### S3接続の準備（必須）

プラットフォームにAWS Fargate（以降、Fargate）を使用してコンテナを動かす場合、HULFT10 for Container Servicesでの配信先および集信先には、S3を使用します。

S3接続の準備として、以下が必要です。

- 配信先および集信先としてのS3バケットの作成

- ECSタスクがS3にアクセスするために使用するIAMポリシーの作成

  S3へのすべての操作を許可する場合は、ビルトインのarn:aws:iam::aws:policy/AmazonS3FullAccessを指定します。

設定先 | : | 「CloudFormation NewDeployTemplate1」の以下のパラメーター 「S3IAMPolicy」

### Route 53へのホストゾーン登録（必須）

HULFT10 for Container Servicesをホストとするためのドメインを、Route 53でホストゾーンとして登録および管理しておく必要があります。HULFT10導入時にACMを利用してTLSの証明書を発行してください。

これにより、インターネットに公開するホスト名として使用できます。

AWSサービス名 | : | Amazon Route 53
設定先 | : | 「CloudFormation NewDeployTemplate1」の以下のパラメーター 「DomainName」 「HostZoneID」

### HULFT10への接続を許可するIPリストの確認（必須）

HULFT10 for Container Servicesに接続許可するIPをHULFT10導入時に設定します。事前に接続を許可するIPを確認しておく必要があります。

接続には以下の2種類があります。

- HULFT管理コンソールへの接続

- HULFT転送受付時の接続

接続の制限をかけない場合は接続を許可するIPに0.0.0.0/0を設定しますが、セキュリティを確保するために接続許可の設定を推奨します。

導入時にIPを3つまで指定できます。うち1つ目は入力必須ですが、2つ目以上の入力は任意です。4つ以上のIPを指定する必要がある場合は、導入後に「導入後の設定」の「HULFT10への接続を許可するIPリストの更新」を行ってください。

入力説明 | : | 接続の制限をかけない場合は、「14SourceIP1」に0.0.0.0/0 を設定します。
設定先 | : | 「CloudFormation NewDeployTemplate1」の以下のパラメーター 「SourceIP1」 「SourceIP2」 「SourceIP3」

### データベース エンジンバージョンの取得（任意）

データベースのエンジンバージョンを任意に指定する場合、事前に使用可能なデータベース エンジンバージョンの一覧を取得します。

取得した一覧から、Amazon Aurora MySQLバージョン3(MySQL8.0互換)のものを選択してください。

AWSサービス名 | : | Amazon RDS
設定先 | : | 「CloudFormation NewDeployTemplate1」のパラメーター「DBEngineVersion」

CLIでデータベースのエンジンバージョンを取得するコマンドの例

    aws rds describe-db-engine-versions --engine aurora-mysql --engine-version 8.0 --query "DBEngineVersions[].EngineVersion"

### HULFT8導入VPCID、CIDR情報（任意）

CloudFormationで新規に作成したVPCとPeering接続を行うVPCの情報を指定する必要があります。

AWSサービス名 | : | Amazon VPC
設定先 | : | 「CloudFormation NewDeployTemplate1」の以下のパラメーター 「PeeringVpcId」 「PeeringVpcCidr」

### CloudFormation実行ロール（必須）

様々なリソースの作成、ECSサービス登録のためにIAM設定を行うためAdministratorAccessの実行権限が必要になります。事前にIAMロールとして CloudFormationサービスで利用できる Admin権限のロールを作成してください。

AWSサービス名 | : | IAM
設定先 | : | 「CloudFormation NewDeployTemplate1」のパラメーター「アクセス許可」