Help us understand the problem. What is going on with this article?

[JAWS-UG CLI]Amazon AppStream 2.0 入門 (6) FleetおよびStackの削除

More than 3 years have passed since last update.

この記事について

JAWS-UG CLI専門支部 #76 AppStream 2.0入門で実施するハンズオン用の手順書です。

前提条件

必要な権限

作業にあたっては、以下の権限を有したIAMユーザもしくはIAMロールを利用してください。

  • AppStream(2.0)のフルコントロール権限
  • EC2のフルコントロール権限
  • CloudFormationの関するフルコントロール権限
  • IAMの関するフルコントロール権限

0. 準備

0.1. リージョンを指定

コマンド
export AWS_DEFAULT_REGION="ap-northeast-1"

0.2. 資格情報を確認

コマンド
aws configure list

インスタンスプロファイルを設定したEC2インスタンスでアクセスキーを設定せずに実行した場合、以下のようになります。

結果
      Name                    Value             Type    Location
      ----                    -----             ----    --------
   profile                <not set>             None    None
access_key     ****************QSAA         iam-role
secret_key     ****************c1xY         iam-role
    region                us-west-2              env    AWS_DEFAULT_REGION

0.3. バージョン確認

コマンド
aws --version
結果
aws-cli/1.11.35 Python/2.7.12 Linux/4.4.35-33.55.amzn1.x86_64 botocore/1.4.92

0.4. バージョンアップ(必要に応じて)

コマンド
sudo pip install -U awscli

1. Fleetの削除

1.1. Fleetの停止

Fleetを削除するにあたり、Fleetを停止させる必要があります。

変数の確認

コマンド
cat << ETX

    FLEET_NAME: ${FLEET_NAME}

ETX
結果
    FLEET_NAME: FLEET_JAWSUG_CLI

Fleetの停止

コマンド
aws appstream stop-fleet \
    --name ${FLEET_NAME}
結果
(返値無し)

停止するまでしばらく待ちます。(5分くらいかかります)

Fleetの状態の確認

StateがSTOPPEDになってることを確認します。(STOPPEDにならないと削除できません。)

コマンド
aws appstream describe-fleets \
    --names ${FLEET_NAME}
結果
{
    "Fleets": [
        {
            "ComputeCapacityStatus": {
                "Available": 1,
                "Desired": 2,
                "Running": 1,
                "InUse": 0
            },
            "DisplayName": "JAWSUG_CLI",
            "Name": "JAWSUG_CLI",
            "VpcConfig": {
                "SubnetIds": [
                    "subnet-6bfc381d",
                    "subnet-d0071089"
                ]
            },
            "FleetErrors": [],
            "DisconnectTimeoutInSeconds": 900,
            "State": "STOPPING",
            "ImageName": "Amazon-AppStream2-Sample-Image-12-15-2016",
            "CreatedTime": 1483117639.89,
            "MaxUserDurationInSeconds": 3600,
            "InstanceType": "stream.standard.medium",
            "Arn": "arn:aws:appstream:ap-northeast-1:788063364413:fleet/JAWSUG_CLI",
            "Description": "A fleet for test at jaws-ug"
        }
    ]
}

1.2. StackとFleetの関連づけを解除

変数の確認

コマンド
cat << ETX

    FLEET_NAME: ${FLEET_NAME}
    STACK_NAME: ${STACK_NAME}

ETX
結果
    FLEET_NAME: FLEET_JAWSUG_CLI
    STACK_NAME: STACK_JAWSUG_CLI

StackとFleetの関連づけを解除

コマンド
aws appstream disassociate-fleet \
    --fleet-name ${FLEET_NAME}\
    --stack-name ${STACK_NAME}
結果
(返値無し)

Fleetに関連づけられたStackの確認

コマンド
aws appstream list-associated-stacks \
    --fleet-name ${FLEET_NAME}
結果
{
    "Names": []
}

Stackに関連づけられたFleetの確認

コマンド
aws appstream list-associated-fleets \
    --stack-name ${STACK_NAME}
結果
{
    "Names": []
}

1.3. Fleetの削除

変数の確認

コマンド
cat << ETX

    FLEET_NAME: ${FLEET_NAME}

ETX
結果
    FLEET_NAME: FLEET_JAWSUG_CLI

Fleetの削除

コマンド
aws appstream delete-fleet \
    --name ${FLEET_NAME}
結果
(返値無し)

Fleetが削除されたことを確認

コマンド
aws appstream describe-fleets \
    --query Fleets[?Name==\`${FLEET_NAME}\`]
結果
[]

2. Stackの削除

変数の確認

コマンド
cat << ETX

    STACK_NAME: ${STACK_NAME}

ETX
結果
    STACK_NAME: STACK_JAWSUG_CLI

Stackの削除

コマンド
aws appstream delete-stack \
    --name ${STACK_NAME}
(返値無し)

Stackが削除されたことを確認

コマンド
aws appstream describe-stacks \
    --query Stacks[?Name==\`${STACK_NAME}\`]
結果
[]

以上

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away