Weitere ähnliche Inhalte
Ähnlich wie Jawsug elastic beanstalk_150207 (20)
Mehr von Yutaka Hiroyama (6)
Kürzlich hochgeladen (11)
Jawsug elastic beanstalk_150207
- 13. サポートするプラットフォーム
名称 言語 Application / Web
サーバー
64bit Amazon Linux 2014.09 v1.0.9
running Ruby 2.1
(Puma)
Ruby 2.1.4 Puma 2.9.1 and
Nginx
1.6.2
64bit Amazon Linux 2014.09 v1.0.9
running Ruby 2.1
(Passenger Standalone)
Ruby 2.1.4 Passenger 4.0.53
64bit Amazon Linux 2014.09 v1.0.9
running Ruby 2.0
(Puma)
Ruby 2.0.0-
p594
Puma 2.9.1 and
Nginx
1.6.2
64bit Amazon Linux 2014.03 v1.0.2
running Ruby 1.9.3
Ruby 1.9.3 Passenger 4.0.37
32bit Amazon Linux 2013.09 running Ruby
1.8.7
Ruby 1.8.7 Passenger 4.0.20
などなど
- 20. Web Server 構成
Auto Scaling group
Security group Security group
Availability Zone
ホスト
マネージャー
ホスト
マネージャー
- 26. eb コマンド
コマンド 説明
eb init Application の初期設定
eb start Application 環境の開始
eb status ステータスの確認
eb update Application 環境の設定更新
eb stop Application 環境の停止
eb delete Application 環境の破棄
- 35. Enviroment の状態
Auto Scaling group
Security group
Availability Zone
URL アクセスURL アクセス
CNAME が正しく設定CNAME が正しく設定
ELB の存在ELB の存在
ELB に EC2 付与ELB に EC2 付与
Auto Scaling Group
の存在
Auto Scaling Group
の存在
ポート 80 疎通ポート 80 疎通
EC2 の状態EC2 の状態
- 42. 環境のカスタマイズ
名称 概要
Packages パッケージ管理
Sources アーカイブのダウンロードと
EC2 への展開
Files EC2 上にファイルを配置
Users ユーザー追加
Groups ユーザーグループ追加
Commands EC2 上でのコマンドの実行
Container_commands コンテナ上でのコマンドの実行
Services サービスの制御
Option_settings 環境変数の設定など
Hinweis der Redaktion
- ビーンズトークじゃありません
- と言うことで、今日はElastic Beanstalkについて話させていただきます。
- 公式ドキュメントにもこのように記されています。
- PaaSと言いましたが、このようなプラットフォームに対応しています。
- こちらは、Rubyの提供プラットフォームの一例です。まだまだあります。言語のバージョンやOS、Application/Webサーバーの様々な組み合わせを提供しています。
- そして、dockerもサポートしています。
これによって、たとえば、Perl言語を使ったサーバー構築など、PaaSでありながら、よりフレキシブルな環境構築が可能です。
- Elastic Beanstalkでは、application単位で管理していきます。
ここでのapplicationとは、Applicationサーバーなどのapplicationとは違った単語です。公式ドキュメントではフォルダのようなものと解説されています。
複数のapplicationを持つことができます。
Beanstalk環境構築時は、最初にこのapplicationを作るところから始めます。
- では、applicationの構成を見てみます。
applicationはEnviromentを持ちます。こちらも複数可能です。
各、Enviromentには、アクセスするURLと、EnviromentConfigrationを持ちます。
EnviromentConfigrationは、EnviromentやAWSリソースに関するパラメータ群です。
また、applicationはVersionリポジトリを持ちます。
このリポジトリに対し、コードをデプロイします。
ストレージはS3に確保されます。
Enviromentはリポジトリ上のいずれかのVersionを参照します。
ConfigrationTemplateとは、EnviromentConfigration用のテンプレートです。
- ホストマネージャーが実行される。
ホストマネージャーは以下のような機能を持つ。
・アプリケーションのデプロイ
・イベントとメトリックスの収集と取得(コンソール、API、またはコマンドラインを使用)。
・インスタンスレベルのイベントの生成
・アプリケーションログファイルで重大エラーがないかどうかを監視
・アプリケーションサーバーの監視
・インスタンスコンポーネントへの修正プログラムの適用
・アプリケーションのログファイルのローテーションと、Amazon S3 への公開
- ELBのない、Single Instance環境も選択できます。
Single InstanceでもAuto Scaling Groupは存在します。
- Workerはバックグラウンドタスクの処理に最適化されています。
SQSに登録されたタスクを非同期に処理する。
WebServerTierではELB+EC2のセットみたいな感じですが、
こちらはELBの代わりにSQSといった感じです。
EC2の中のaws-sqsdデーモンがよしなにSQSを処理してくれます。
- 別のバージョンを設定した複数の環境を持てることから、こんな技もできます。
例えば、新バージョンのプログラムができたけど、全体に適用するのは少し怖い。。。
徐々に新バージョンで動かしたい。
そんな要望も、Route53のWeightedRoundRobinと組み合わせることで実現可能です。
- 以上で、Beanstalkの概要の説明を終わります。
Beanstalkによって、どのようなシステムが構築できるかイメージを掴んでいただけましたでしょうか?
では、次にもう少し掘り下げて、Beanstalkの機能を説明したいと思います。
- ElasticなWebServerの場合
- Enviromentの状態を色で表現している
- Linuxサーバーでの例
アプリケーションやwebサーバーの起動前に実行する。
アプリケーションやwebサーバーの起動後に実行する。
- ふたたび登場の公式サイト。
もしかしたら、先ほどお気づきの方もいたかも知れませんが、こんなこと書かれています。