Cloud9 環境の立ち上げ

Cloud9 環境の立ち上げ

CloudFormation を使って EC2 インスタンスやその他のリソースを用意します。

CloudFormation スタックで立ち上げられるリソースは以下の通りです。

  • ターミナル、エディタ、AWS CLI を利用するための AWS Cloud9 インスタンス
  • セキュアトンネリングで利用する Amazon EC2 インスタンス
  • バルクプロビジョニングで利用する S3 バケット
  • パブリックサブネットとセキュリティグループを持つ VPC
  • Cloud9 および EC2 インスタンスのインスタンスプロファイル
  • プロビジョニングに利用される IAM ロール

リージョンの選択

以下のリンクから CloudFormation スタックを立ち上げます。

この後の手順で AWS IoT の設定を変更するため、既にモノを作って動かしている場合などは、既存のデバイスに影響がないリージョンを選択してください。 特に影響がない場合は AWS IoT Core と AWS IoT Device Management の利用できる一番近いリージョンを選択してください。

パラメータの入力とスタックの作成

上記のリンクをクリックすると、スタックのクイック作成のページが表示されるので、次のステップに従ってスタックを作成します。

  1. スタックの名前, AWS Cloud9 Instance Type, Amazon EC2 Instance Type はデフォルトの値にします
  2. ページ下部の以下の項目にチェックを入れます
    • AWS CloudFormation によって IAM リソースがカスタム名で作成される場合があることを承認します。
    • AWS CloudFormation によって、次の機能が要求される場合があることを承認します: CAPABILITY_AUTO_EXPAND
  3. スタックの作成 をクリックします
  4. スタックの作成が完了するのを待ちます、スタックの作成には10分ほどかかります

出力の確認

全てのリソースが作成されるまでに、5〜10分程度かかります。CloudFormation のステータスが CREATE_IN_PROGRESS から CREATE_COMPLETE に変わるのを待ちましょう。

ステータスが CREATE_COMPLETE に変わったら、「出力」のタブから以下の値を確認します。

  • AWSCloud9URL: Cloud9 にアクセスするための URL です
  • S3Bucket: 作成されたバケット名です、EC2 のターミナルの環境変数($S3_BUCKET)にも同じ値が格納されていて、ワークショップ内で利用します

Cloud9 IDE へのアクセス

  • AWSCloud9URL のリンクをクリックすると、Cloud9 IDE にアクセスすることができます (設定によって背景色などが異なる場合があります)

Cloud9 IDE

環境変数の確認とS3へのアクセス

この後の手順で利用する環境変数を設定します、ユニークな名前を指定します。例)export NAME=tanaka

export NAME="YOUR_NAME"

以下のコマンドで先ほどの出力に表示されていた値が環境変数として設定されていることを確認できます。

echo $S3_BUCKET

S3バケットの中身を確認しましょう。

aws s3 ls s3://$S3_BUCKET

以下のような出力が確認できます (フォルダ構成が違う場合がありますが、問題ありません)。

                           PRE bootstrap/
                           PRE cloud9/
                           PRE ssh/

S3_BUCKET 以外にも、この後のワークショップで利用する以下のような環境変数が設定されています。

以下を実行する必要はありません。

IOT_ENDPOINT=xxx-ats.iot.your-region.amazonaws.com
IOT_POLICY=IoTDeviceManagementWS-IoTWSIoTPolicy-XXXXX
ARN_LAMBDA_ROLE=arn:aws:iam::ACCOUNT-ID:role/IoTDeviceManagementWS-IoTWSRegLambdaJITRRole-XXXXX
REGION=your-region
S3_BUCKET=iotdevicemanagementws-iotwss3bucket-xxxxx
IOT_ENDPOINT_OLD=xxx.iot.your-region.amazonaws.com
ARN_IOT_PROVISIONING_ROLE=arn:aws:iam::ACCOUNT-ID:role/IoTDeviceManagementWS-IoTWSIoTServiceRole-XXXXX

ファイルツリーの表示

Cloud9 左上のファイルツリーの歯車のアイコンをクリックして、Show Home in Favorites にチェックを入れ、 Show Environment Root のチェックを外します。

Cloud9 IDE

ファイルのダウンロード

ワークショップで利用するファイルをダウンロードして展開します。

cd
wget https://awsj-iot-handson.s3-ap-northeast-1.amazonaws.com/DeviceManagementWS/resources.zip -O /tmp/resources.zip
unzip -o /tmp/resources.zip

この後の手順を進める際に Cloud9 を利用しているブラウザのタブは開いたままにしてください。タブを閉じると、Cloud9のインスタンスは1時間(デフォルト設定の場合)で自動的に終了します。 Cloud9 画面の左上のアイコンからメニューを開き、Go To Your Dashboard のリンクをクリックすると、別のタブで AWS のマネジメントコンソールを開くことができます。 Cloud9 Menu