ハンズオン(簡易版): Cloud9 (AWS CLI環境)入門 CloudFormation版

事前作業1.1. AWSリソースの不存在確認 (CFnリソース)

手順の目的

CloudFormationで作成するAWSリソースがまだ存在しないことを確認します。

手順の対象 [what]

  • IAMユーザー: handson-cloud9-user

  • IAMグループ: handson-cloud9-group

  • IAMロール: handson-cloud9-environment-role

  • インスタンスプロファイル: handson-cloud9-instance-profile

  • VPC: handson-cloud9-vpc

手順の標準時間

3分

処理の実行

標準時間:

3分

1. IAM関連リソースの不存在確認

1.1. IAMユーザーの不存在確認

IAMユーザー名を指定します。

変数の設定:

IAM_USER_NAME='handson-cloud9-user'

IAMが存在しないことを確認します。

コマンド:

aws iam list-users \
  --query "Users[?UserName == \`${IAM_USER_NAME}\`].UserName" \
  --output text

結果(例):

(出力なし)

1.2. IAMグループの不存在確認

IAMグループ名を指定します。

変数の設定:

IAM_GROUP_NAME='handson-cloud9-group'

IAMグループが存在しないことを確認します。

コマンド:

aws iam list-groups \
  --query "Groups[?GroupName == \`${IAM_GROUP_NAME}\`].GroupName" \
  --output text

結果(例):

(出力なし)

1.3. IAMロールの不存在確認

IAMロール名を指定します。

変数の設定:

IAM_ROLE_NAME='handson-cloud9-environment-role'

IAMロールが存在しないことを確認します。

コマンド:

aws iam list-roles \
  --query "Roles[?RoleName == \`${IAM_ROLE_NAME}\`].RoleName" \
  --output text

結果(例):

(出力なし)

1.4. インスタンスプロファイルの不存在確認

IAMインスタンスプロファイル名を指定します。

変数の設定:

IAM_INSTANCE_PROFILE_NAME='handson-cloud9-instance-profile'

インスタンスプロファイルが存在しないことを確認します。

コマンド:

aws iam list-instance-profiles \
  --query "InstanceProfiles[?InstanceProfileName == \`${IAM_INSTANCE_PROFILE_NAME}\`].InstanceProfileName" \
  --output text

結果(例):

(出力なし)

2. EC2関連リソースの不存在確認

2.0. リージョンの指定

リージョンを指定します。

環境変数の設定:

export AWS_DEFAULT_REGION='ap-northeast-1'

2.1. VPCの不存在確認

VPCのタグ名を指定します。

変数の設定:

EC2_VPC_TAG_NAME='handson-cloud9-vpc'

VPCが存在しないことを確認します。

コマンド:

aws ec2 describe-vpcs \
  --filters Name=tag:Name,Values=${EC2_VPC_TAG_NAME} \
  --query 'Vpcs[].Tags[?Key == `Name`].Value' \
  --output text

結果(例):

(出力なし)

手順の完了

警告

リソースが存在する場合、以下のどちらかの対応をしてください。

  • 構築手順実施前に、存在するリソースを削除する。(一般的に推奨)

  • 構築手順のうち、存在するリソースを作成する手順は実施せずに先に進む。

リソースを削除する場合は、そのリソースを作成した方法(CloudFormationスタック、CLI、マネジメントコンソールなど)に適した手順で削除してください。