ヤマムギ

growing hard days.

*

AWS CodeDeployからEC2 Auto Scalingにデプロイするチュートリアル

   

公式チュートリアルチュートリアル: アプリケーションを CodeDeployグループにデプロイするために使用します。Amazon EC2 Auto Scalingをベースにやってみます。

IAMロールを作成

CodeDeploy向け

AWS管理ポリシーAWSCodeDeployRoleをアタッチしました。
関連のAWS管理ポリシーの名前を見てるとCodeDeployができることが見えてきますね。

###EC2インスタンス向け

チュートリアル向けのこちらと、エージェントをインストールするためのAmazonSSMManagedInstanceCoreをアタッチしました。

起動テンプレート作成

AMIはAmazon Linux 2 にしました。
インスタンスタイプはt3.microにしました。
キーペアは事前に作成していたものを使いました。
セキュリティグループはHTTP 0.0.0.0/0のものを使いました。
IAMロールには、

オートスケーリンググループ作成

起動テンプレートを選択して、
グループサイズを1にして、
タグにCodeDeployDemoを設定したぐらいです。

CodeDeployエージェントのインストール

オートスケーリングで起動したインスタンスにCodeDeployエージェントをインストールしました。

インストールは、Systems Manager RunCommandで、AWS-ConfigureAWSPackageで、AWSCodeDeployAgentをNameに指定して行いました。

デプロイの作成

CodeDeployのメニューから[アプリケーションの作成]ボタンを押下しました。

コンピューティングタイプは、EC2/オンプレミスを選択しました。

[デプロイグループの作成]ボタンを押下しました。

作成済みのIAMロールARNを入力して、
デプロイタイプはインプレース、
環境設定はAmazon EC2 Auto Scalingグループを選択しました。

デプロイ設定はCodeDeployDefault.OneAtATimeで、ALBのチェックを外しました。

[デプロイグループの作成]ボタンを押下しました。
デプロイグループが作成できました。

次に、[デプロイの作成]ボタンを押下しました。

チュートリアルのサンプルアプリケーションのS3のzipファイルのパスを入力しました。
他にはGitHubも選択できます。

[デプロイの作成]ボタンを押下しました。

成功しました!

EC2インスタンスのWebサーバーにも無事、アクセスできました。

appspec.yml

サンプルアプリのzipの中身を見てみますと、appspec.ymlがありました。

それぞれのスクリプトファイルも見てみます。

install_dependencies

start_server

stop_server

なるほど、ですね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

ad

ad

  関連記事

AWS Global Acceleratorでアクセラレーターを作成する

バージニア北部、東京、大阪のEC2インスタンスをエンドポイントにして作成してみま …

AWS Data Pipelineを使ってDynamoDBのアイテムを全件S3バケットに書き出した

ちょっと試してみたくてやってみました。 手順はこちらのチュートリアルを参考にすす …

ブログの画像を別アカウントのS3に移動するためにIAMロールでクロスアカウントアクセス

ずっと先延ばしにしていたのですが、このブログの画像はEC2から直接配信しています …

AWS Transit Gateway Network ManagerにTransit Gatewayを登録してルートアナライザーで確認

グローバルネットワークの作成 VPC左ペインのメニュー Transit Gate …

ハンズオン目的アカウントに設定しているSCPポリシー

AWS Organizationsでハンズオン目的のアカウントに設定しているSC …

Amazon Glacierでボールトロックポリシーの作成開始をしてみました

Glacierを単体で使用することもそうそうないので、確認しました。 まずボール …

IAMセッションポリシーの利用(GetFederationToken)

GetFederationTokenでのセッションポリシーは、呼び出し元のIAM …

ヤマムギvol.23 Amazon RDS for MySQLとAmazon Aurora Serverlessの起動のデモをしました

ゴールデンウィーク毎朝デモ勉強会は終わったのですが、土曜日にやれるときがあれば、 …

よくあるサーバーレスアーキテクチャで質問フォーム

この記事はServerless2 Advent Calendar 2018に参加 …

AWS WAF Web ACLとルールをv1(Classic)からv2に自動移行しました

新しいものは、課題が解決されていたり、機能追加されたりするのでいいものです。 長 …