はじめての Elastic Beanstalk

10,231 views

Published on

0 Comments
42 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
10,231
On SlideShare
0
From Embeds
0
Number of Embeds
1,080
Actions
Shares
0
Downloads
120
Comments
0
Likes
42
Embeds 0
No embeds

No notes for slide

はじめての Elastic Beanstalk

  1. 1. はじめてのElastic Beanstalk Amazon Data Services Japan
  2. 2. Elastic Beanstalkとは• AWS上のベストプラクティス構成を自動作成• コードをデプロイするだけでWebアプリケーションを開始 Instance WAR Elastic Load Amazon RDS Balancer deploy! Instance Auto scaling Group CloudWatch
  3. 3. ElasticBeanstalkの論理構成Application Environment Version URL Environment Configuration WAR/ZIP WAR/ZIP Environment URL Environment Configuration WAR/ZIP WAR/ZIP Environment WAR/ZIP URL Environment Configuration Configuration Template
  4. 4. 各環境の中を覗くと この環境が URL 自動で構成されている Environment ElasticLoadBalanceingManageme SNS nt Console S3 HM HM CloudWatch EC2 EC2 eclipse AutoScaling Security Group
  5. 5. アプリケーションの作成Application
  6. 6. アプリケーションと環境の作成希望のアプリケーションコンテナを選択してStartを押す 6
  7. 7. アプリケーションと環境の作成環境の構成が終わるのを待つ 7
  8. 8. アプリケーションと環境の作成初期バージョンにアクセス Click 8
  9. 9. アプリケーションと環境の作成デプロイされたサンプルアプリケーションを確認 9
  10. 10. ここまでに出来上がった構成Application Default Environment Version URL Environment Configuration WAR/ZIP http://Default-Environment- サンプルアプリケーション XXXXXX.elasticbeanstalk.com
  11. 11. マネージメントコンソールから コードをデプロイWARファイルやZIPで固めたプロジェクトなど Check バージョンに付ける名前 アップロードする ファイルを選択 11
  12. 12. Gitでコードをデプロイ ~準備編~作業環境の用意(既にあればスキップ)• EC2インスタンスを起動(t1.microで十分)• ログインしてgitをインストール $ sudo yum –y install gitElasticBeanstalkのCLIツールをダウンロード• 下記URLから最新版のURLを取得 • http://aws.amazon.com/code/6752709412171743• ダウンロードと解凍(下記例ではVersion 2.3) $ wget https://s3.amazonaws.com/elasticbeanstalk/cli/AWS- ElasticBeanstalk-CLI-2.3.zip $ unzip AWS-ElasticBeanstalk-CLI-2.3.zip 12
  13. 13. Gitでコードをデプロイ ~プロジェクトセットアップ編~プロジェクトを作成して初期化 $ mkdir helloworld $ cd helloworld $ git initAWS Dev Toolを使ってデプロイに関するコンフィグ • スクリプトを走らせてgit の拡張コマンドをインストール$ ~/AWS-ElasticBeanstalk-CLI-2.3/AWSDevTools/Linux/AWSDevTools-RepositorySetup.sh • aws.configコマンドでデプロイに関するコンフィグを設定$ git aws.configAWS Access Key: AKIXXXXXXXXXXXXXXXXAWS Secret Key: zGt9B9XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXAWS Region [default to us-east-1]: ap-northeast-1AWS Elastic Beanstalk Application: My First Elastic Beanstalk ApplicationAWS Elastic Beanstalk Environment: Default-Environment 13
  14. 14. Gitでコードをデプロイ ~実施編~コードを開発、ローカルでテスト• $ cat > index.php <html><head><title>PHP Test</title></head> <body><?php echo <h1>Hello, World!</h1>; ?></body></html> Ctrl+dGit でローカルレポジトリに変更をコミット $ git add index.php $ git commit -m "initial commit"Beanstalkの環境にコードをデプロイ $ git aws.push Counting objects: 3, done. Compressing objects: 100% (2/2), done. Writing objects: 100% (3/3), 306 bytes, done. Total 3 (delta 0), reused 0 (delta 0) remote: To https://AKIA.... * [new branch] HEAD -> master 14
  15. 15. 更新されたコードのデプロイを確認更新が完了するとステータスが再びグリーンにRunning Versionも更新される 15
  16. 16. 各バージョンの一覧を確認バージョンタブを選択 任意のバージョンを選 択してロールバックす ることも可能 16
  17. 17. ここまでに出来上がった構成Application サンプルアプリケーション Default Environment Version URL Environment Configuration WAR/ZIP … WAR/ZIP http://Default-Environment- XXXXXX.elasticbeanstalk.com 最後にデプロイした バージョン
  18. 18. ステージング環境の追加 環境名 環境に割り当てるURL (要Global Unique) デプロイするバー ジョンを指定 (ここでは再びサン プルを選択) 18
  19. 19. 新環境の初期設定 使用するインスタンスタイプ インスタンスにログインするための SSHキーペア名(任意) 19
  20. 20. 追加された環境の確認 20
  21. 21. ここまでに出来上がった構成Application サンプルアプリケーション Default Environment Version URL Environment Configuration WAR/ZIP … WAR/ZIP http://Default-Environment- XXXXXX.elasticbeanstalk.com 新たにデプロイした バージョン Staging Environment URL Environment Configuration
  22. 22. 環境のスワッピングステージング環境を本番環境に移行する場合など DNSの切り替えにより実施される 入れ替え元 入れ替え先 22
  23. 23. 環境スワップが実行されたことを確認 今までDefault-Environmentについてい たURLがStaging-Environmentに 23
  24. 24. ここまでに出来上がった構成Application サンプルアプリケーション Default Environment Version URL Environment Configuration WAR/ZIP … WAR/ZIP http://Default-Environment- XXXXXX.elasticbeanstalk.com 新たにデプロイした バージョン Staging Environment URL Environment Configuration

×