.ebextensionsはElastic Beanstalkの環境の設定ができるらしいのですがそれ以上はよくわかってなかったので調べてみた。(∩´∀`)∩ < イエー
.ebextensionsとは
ウェブアプリケーションのソースコードに追加することで、環境を設定し、環境に含まれるAWSリソースをカスタマイズできる。
使い方
・設定ファイルの拡張子は.configとしてYAMLもしくはJSON形式で作成する。
・設定ファイルを作成したら.extensionsというフォルダ内に配置してでデプロイする。
・設定ファイルが正しくフォーマットされていない場合、新しい環境の起動は失敗し、回復不可能になる。
※こわっ。。。(;・∀・)
.ebextensionsで設定できるリソースと詳細
設定ファイルに下記キーと値を設定することで設定が可能
◆オプション設定
option_settingsキーで環境変数の設定ができる。
◆Windows・Linuxサーバ
キー | 詳細 |
---|---|
packages | ElasticBeanstalkがサポートしているパッケージマネージャ(yum、pythonなど)を使用してアプリケーションのダウンロード、インストールができる。 |
groups | Linux/UnixグループをEC2インスタンス上に作成できる。(Linuxサーバのみ) |
users | Linux/UnixユーザをEC2インスタンス上に作成できる。(Linuxサーバのみ) |
Source | 公開URLからアーカイブファイルをダウンロードし、EC2インスタンス上のディレクトリに解凍できる。 |
files | EC2インスタンス上にファイルを作成できる。すでにファイルが存在する場合は既存ファイルの拡張子に.bakが付加されて保持される。 |
commands | EC2インスタンスでコマンドが実行できる。 |
services | インスタンスが起動されるときに開始または停止する必要のあるサービスを定義できる。 |
container_commands | アプリケーションのソースコードに影響するコマンドを実行できる。 |
◆カスタムリソース
Elastic Beanstalkで作成される下記のAWSリソースに対してResourcesキーで設定ができる。
- DynamoDB
- CloudWatch
- SNS
- ELB
- Elastic Cache
- RDS
- SQS
感想
実際設定しているのはこまごま入っていて大変そうな印象だったけど、一つ一つはサクッと設定できそう。
※だいたいそうか。。。