華麗なるElastic Beanstalkでの環境構築
-
Upload
takehito-tanabe -
Category
Technology
-
view
7.964 -
download
7
description
Transcript of 華麗なるElastic Beanstalkでの環境構築
![Page 1: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/1.jpg)
華麗なるElastic Beanstalkでの環境構築
2013年2月22日NetCOBOLによるAWS活用事例とAWSを活用した事例セミナー欧文印刷株式会社・田名辺健人 http://blog.dateofrock.com/
![Page 2: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/2.jpg)
Who am I ?(この顔にピンときたら)
![Page 3: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/3.jpg)
田名辺 健人(たなべたけひと)
ソフトウェアエンジニア
欧文印刷株式会社(東京都)高校まで札幌在住2011年11月から札幌でテレワーク
@dateofrock
http://blog.dateofrock.com/
有効期限切れてますww
![Page 4: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/4.jpg)
1946年創業/社員数130名本社:東京都文京区工場:埼玉県坂戸市
![Page 5: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/5.jpg)
アナログ・デジタル独自商品開発
![Page 6: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/6.jpg)
紙で出来たホワイトボード消せる紙(し)
http://www.g-mark.org/award/describe/39114
ノート型ホワイトボードNUboard
![Page 7: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/7.jpg)
![Page 8: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/8.jpg)
✓Elastic Beanstalkとは?✓使う3つの理由
![Page 9: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/9.jpg)
✓Elastic Beanstalkとは?✓使う3つの理由
![Page 10: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/10.jpg)
ウェブインターフェース 識別&アクセスIAM
Identity FederationConsolidated Billing
デプロイ&自動化AWSElasticBeanstalk
AWSCloudFormation
AWSMangement Console Amazon CloudWatch
モニタリング
マネージメント&管理
コンテンツ配信Amazon
CloudFront
メッセージング
AmazonSNS
AmazonSQS
AmazonSES
検索Amazon CloudSearch
分散処理
ElasticMapReduce
AmazonSWF
ライブラリ&SDKJava, PHP, Python,
Ruby, .NET
アプリケーションプラットフォームサービス
基本サービスコンピューティング クラウドストレージ データベース ネットワーク
AmazonEC2
AutoScaling Amazon
S3Amazon
EBSAWS Storage
GatewayAmazon
RDSAmazon
DynamoDBAmazon
ElasticacheAmazon
VPCElastic Load
BalancerAmazonRoute53
AWS DirectConnect
アベイラビリティ―ゾーン
リージョンエッジロケーション
AWSグローバルインフラストラクチャ
アマゾン ウェブ サービスの製品・サービス構成
©Amazon Web Services LLC or its affiliates. All rights reserved.
http://aws.amazon.com/jp/what-is-aws/
![Page 11: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/11.jpg)
ウェブインターフェース 識別&アクセスIAM
Identity FederationConsolidated Billing
デプロイ&自動化AWSElasticBeanstalk
AWSCloudFormation
AWSMangement Console Amazon CloudWatch
モニタリング
マネージメント&管理
コンテンツ配信Amazon
CloudFront
メッセージング
AmazonSNS
AmazonSQS
AmazonSES
検索Amazon CloudSearch
分散処理
ElasticMapReduce
AmazonSWF
ライブラリ&SDKJava, PHP, Python,
Ruby, .NET
アプリケーションプラットフォームサービス
基本サービスコンピューティング クラウドストレージ データベース ネットワーク
AmazonEC2
AutoScaling Amazon
S3Amazon
EBSAWS Storage
GatewayAmazon
RDSAmazon
DynamoDBAmazon
ElasticacheAmazon
VPCElastic Load
BalancerAmazonRoute53
AWS DirectConnect
アベイラビリティ―ゾーン
リージョンエッジロケーション
AWSグローバルインフラストラクチャ
アマゾン ウェブ サービスの製品・サービス構成
©Amazon Web Services LLC or its affiliates. All rights reserved.
![Page 12: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/12.jpg)
ウェブインターフェース 識別&アクセスIAM
Identity FederationConsolidated Billing
デプロイ&自動化AWSElasticBeanstalk
AWSCloudFormation
AWSMangement Console Amazon CloudWatch
モニタリング
マネージメント&管理
コンテンツ配信Amazon
CloudFront
メッセージング
AmazonSNS
AmazonSQS
AmazonSES
検索Amazon CloudSearch
分散処理
ElasticMapReduce
AmazonSWF
ライブラリ&SDKJava, PHP, Python,
Ruby, .NET
アプリケーションプラットフォームサービス
基本サービスコンピューティング クラウドストレージ データベース ネットワーク
AmazonEC2
AutoScaling Amazon
S3Amazon
EBSAWS Storage
GatewayAmazon
RDSAmazon
DynamoDBAmazon
ElasticacheAmazon
VPCElastic Load
BalancerAmazonRoute53
AWS DirectConnect
アベイラビリティ―ゾーン
リージョンエッジロケーション
AWSグローバルインフラストラクチャ
アマゾン ウェブ サービスの製品・サービス構成
©Amazon Web Services LLC or its affiliates. All rights reserved.
2013/02/19追加!
AWSOpsWorks
![Page 13: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/13.jpg)
ウェブインターフェース 識別&アクセスIAM
Identity FederationConsolidated Billing
デプロイ&自動化AWSElasticBeanstalk
AWSCloudFormation
AWSMangement Console Amazon CloudWatch
モニタリング
マネージメント&管理
コンテンツ配信Amazon
CloudFront
メッセージング
AmazonSNS
AmazonSQS
AmazonSES
検索Amazon CloudSearch
分散処理
ElasticMapReduce
AmazonSWF
ライブラリ&SDKJava, PHP, Python,
Ruby, .NET
アプリケーションプラットフォームサービス
基本サービスコンピューティング クラウドストレージ データベース ネットワーク
AmazonEC2
AutoScaling Amazon
S3Amazon
EBSAWS Storage
GatewayAmazon
RDSAmazon
DynamoDBAmazon
ElasticacheAmazon
VPCElastic Load
BalancerAmazonRoute53
AWS DirectConnect
アベイラビリティ―ゾーン
リージョンエッジロケーション
AWSグローバルインフラストラクチャ
アマゾン ウェブ サービスの製品・サービス構成
©Amazon Web Services LLC or its affiliates. All rights reserved.
2013/02/19追加!
AWSOpsWorks
![Page 14: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/14.jpg)
時間もないので
![Page 15: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/15.jpg)
AWSの良い資料があります
【注】スライドの手抜きではありません(笑)
![Page 16: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/16.jpg)
はじめてのElastic Beanstalk
Amazon Data Services Japan
http://www.slideshare.net/AmazonWebServicesJapan/getting-startedwithbeanstalk-20130111
![Page 17: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/17.jpg)
AWS資料より抜粋 http://www.slideshare.net/AmazonWebServicesJapan/getting-startedwithbeanstalk-20130111
![Page 18: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/18.jpg)
AWS資料より抜粋 http://www.slideshare.net/AmazonWebServicesJapan/getting-startedwithbeanstalk-20130111
![Page 19: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/19.jpg)
AWS資料より抜粋 http://www.slideshare.net/AmazonWebServicesJapan/getting-startedwithbeanstalk-20130111
![Page 20: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/20.jpg)
AWS資料より抜粋 http://www.slideshare.net/AmazonWebServicesJapan/getting-startedwithbeanstalk-20130111
続きはWebで
![Page 21: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/21.jpg)
✓Elastic Beanstalkとは?✓使う3つの理由
![Page 22: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/22.jpg)
✓Elastic Beanstalkとは?✓使う3つの理由
![Page 23: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/23.jpg)
【1】簡単すぎる環境構築
![Page 24: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/24.jpg)
![Page 25: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/25.jpg)
![Page 26: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/26.jpg)
war
![Page 27: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/27.jpg)
![Page 28: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/28.jpg)
![Page 29: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/29.jpg)
構築+deploy完了
![Page 30: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/30.jpg)
EC2 InstanceElastic Load Balancing
S3
war
Cloud Watch SNS
EC2 Instance
Elastic Beanstalk Environment
Auto scaling group
![Page 31: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/31.jpg)
![Page 32: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/32.jpg)
$ git aws.push
![Page 33: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/33.jpg)
【2】便利なSwap URL
![Page 34: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/34.jpg)
本番環境+
ステージング環境
![Page 35: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/35.jpg)
![Page 36: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/36.jpg)
2つの environment
![Page 37: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/37.jpg)
environment1honban.elasticbeanstalk.com
![Page 38: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/38.jpg)
environment1Running Version: version2
![Page 39: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/39.jpg)
environment2staging.elasticbeanstalk.com
![Page 40: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/40.jpg)
environment2Running Version: version3
![Page 41: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/41.jpg)
ステージングを本番に昇格
![Page 42: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/42.jpg)
![Page 43: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/43.jpg)
SwapEnvironmentURL
![Page 44: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/44.jpg)
![Page 45: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/45.jpg)
staging.elasticbeanstalk.com
honban.elasticbeanstalk.com
![Page 46: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/46.jpg)
本番がversion3になりました!
![Page 47: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/47.jpg)
【3】必要十分なConfig
![Page 48: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/48.jpg)
AMI
![Page 49: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/49.jpg)
AMI
素のAMIをカスタマイズしたい!
![Page 50: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/50.jpg)
AMI
✓パッケージ インストール✓コンテナ カスタマイズ
etc...
![Page 51: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/51.jpg)
![Page 52: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/52.jpg)
YAML
![Page 53: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/53.jpg)
YAML
$APP_ROOT/.ebextensions/*.config
✓パッケージインストール✓アーカイブダウンロード + 展開✓ファイル生成 or コピー✓OSユーザー・グループ作成✓コマンド実行(OS用)✓コマンド実行(コンテナ用)✓サービス設定(/etc/init.d)✓Beanstalk固有の設定
![Page 54: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/54.jpg)
YAML
![Page 55: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/55.jpg)
packages: yum: libmemcached: [] ruby-devel: [] nfs-utils: [1.0.9]
rpm, yum, apt,rubygems (chef)
![Page 56: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/56.jpg)
sources: /usr/local/bin:↵
http://hoge.com/hoge.tar.gz
tar, tar+gzip, tar+bz2, zip
![Page 57: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/57.jpg)
files: "/home/ec2-user":
mode: "000777" owner: ec2-user group: ec2-user source: http://hoge.com/a.txt
![Page 58: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/58.jpg)
files: "/home/ec2-user":
mode: "000777" owner: ec2-user group: ec2-user content: |
# this is my file# with content
content直書きOK
![Page 59: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/59.jpg)
users: myuser: groups: group1 group2 uid: "50" homeDir: “/tmp”groups: - groupOne - groupTwo gid: "45"
![Page 60: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/60.jpg)
commands: test: command: myscript.py cwd: /home/ec2-user env: myvarname: myvarvalue
![Page 61: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/61.jpg)
container_commands: replace-server_xml: command: ↵ cp .ebextensions/server.xml ↵
/etc/tomcat7/server.xml
server.xmlの置換
![Page 62: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/62.jpg)
container_commands: 01syncdb: command: "django-admin.py syncdb --noinput" leader_only: true 02migrate: command: "django-admin.py migrate" leader_only: true
マイグレーションの実行
![Page 63: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/63.jpg)
services: sysvinit: myservice: enabled: true ensureRunning: true
![Page 64: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/64.jpg)
option_settings: - namespace: ↵ aws:elasticbeanstalk:container:tomcat:jvmoptions option_name: Xmx value: 512m - option_name: AWS_SECRET_KEY value: SECRET_KEY - option_name: AWS_ACCESS_KEY_ID value: ACCESS_KEY
![Page 65: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/65.jpg)
![Page 66: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/66.jpg)
✓Elastic Beanstalkとは?✓使う3つの理由1.簡単すぎる環境構築2.便利なSwap URL3.必要十分なConfig
![Page 67: 華麗なるElastic Beanstalkでの環境構築](https://reader034.fdocuments.net/reader034/viewer/2022051514/548771c9b4af9f7d0d8b53ed/html5/thumbnails/67.jpg)
Elastic Beanstalkで華麗に環境構築しよう!
おしまい