aws startup-tech-summer2015

51
ElasticBeanstalk と1年付き合ったから 現状確認 2015/09/01 AWS Startup Tech 夏のLT大会 at dots. Retty, Inc 梅田昌太 @ebisusurf 1

Upload: shota-umeda

Post on 15-Apr-2017

2.358 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Aws startup-tech-summer2015

ElasticBeanstalkと1年付き合ったから

現状確認2015/09/01

AWS Startup Tech 夏のLT大会 at dots. Retty, Inc

梅田昌太 @ebisusurf

1

Page 2: Aws startup-tech-summer2015

食を通じて 世界中の人々をHappyに

Page 3: Aws startup-tech-summer2015
Page 4: Aws startup-tech-summer2015
Page 5: Aws startup-tech-summer2015

About me

AWS & 炒飯

担当

@ebisusurf 梅田昌太

Page 6: Aws startup-tech-summer2015

We are hiring!

お約束!

Page 7: Aws startup-tech-summer2015

本当は Classic2VPC移行の 話がしたかったんです

Page 8: Aws startup-tech-summer2015
Page 9: Aws startup-tech-summer2015

他勉強会で 全くウケなかった

Page 10: Aws startup-tech-summer2015

本題

Page 11: Aws startup-tech-summer2015

We love EB!ジャックと豆の木なんだって!

Page 12: Aws startup-tech-summer2015

ElasticBeanstalk 使ってますか?

Page 13: Aws startup-tech-summer2015

ちょっと紹介

• 一般的な Web アプリケーションに必要 な設定を組んで、Public DNS 名を割り振って URL でアクセスできるようにしてくれます

• 実行環境PHP,Ruby,Node,Tomcat,Docker

Page 14: Aws startup-tech-summer2015

この機能が重要

• configuration

• deploy

• monitoring

Page 15: Aws startup-tech-summer2015

configuration

.ebextensionspackages: rpm: mackerel: http://file.mackerel.io/agent/rpm/mackerel-agent-latest.noarch.rpm container_commands: configure_mackerel: command: bash -c yum install -y mackerel-agent'

Page 16: Aws startup-tech-summer2015

deploy

eb deploy➜ ebisu-minmin git:(master) eb deploy INFO: Environment update is starting. INFO: Deploying new version to instance(s). INFO: New application version was deployed to running EC2 instances. INFO: Environment update completed successfully.

Page 17: Aws startup-tech-summer2015

monitoring

Page 18: Aws startup-tech-summer2015

こんな人におすすめ

• chefとかansibleとかナレッジ共有する時間無い(俺もやりたくない)

• capistranoとかナレッジ共有する時間無い(俺もやりたく無い)

• とりあえずgitで管理したい(当然)

Page 19: Aws startup-tech-summer2015

We use

10 Application 27 Enviroment

Page 20: Aws startup-tech-summer2015
Page 21: Aws startup-tech-summer2015

21

Page 22: Aws startup-tech-summer2015

今日の現状確認

Page 23: Aws startup-tech-summer2015

EB on PHPと EB on Docker+PHP

について

Page 24: Aws startup-tech-summer2015

Docker環境と提供されてるPHP環境を比較

VS AWS PaaS

Page 25: Aws startup-tech-summer2015

VS

AWS PaaSDockerfile

Page 26: Aws startup-tech-summer2015

完全にDockerの 勝ちじゃね?

Page 27: Aws startup-tech-summer2015

そうでもない

Page 28: Aws startup-tech-summer2015

Dockerfile

• RUN apt-get install -y awscli git nginx php5-cli php5-fpm php5-mysql php5-redis php5-intl php5-curl php5-imagick php5-apcu

Page 29: Aws startup-tech-summer2015

PaaSなのに たかがPHP環境作るの 自分で書くんですよ

Page 30: Aws startup-tech-summer2015

自分で

Page 31: Aws startup-tech-summer2015

何がしたくてPaaS

• 開発陣にDockerfile読めとか言いたく無い

• そもそも自分でconfigrationなんかしたく無いからPaaS使ってる

• Dockerのポータビリティとか言ってるけどそれ使うのいつよ?

Page 32: Aws startup-tech-summer2015

結論

• それでもDockerポータビリティは素晴らしい

• けどDockerfileが肥大化してくると本末転倒

• でも実はPaaS側の.ebextensionsも肥大化してる

Page 33: Aws startup-tech-summer2015

結局 ありきたりな回答ですが

適材適所

Page 34: Aws startup-tech-summer2015

やりたい事が 複雑になれば結局 設定ファイルも複雑化

Page 35: Aws startup-tech-summer2015

しょうがない

Page 36: Aws startup-tech-summer2015

PHP-FPM&Nginx

待ってます

Page 37: Aws startup-tech-summer2015

時間があれば tips

Page 38: Aws startup-tech-summer2015

ebコマンドを 使いこなす

Page 39: Aws startup-tech-summer2015

便利なコマンド群

• eb init

• eb list

• eb use

• eb clone

• eb setenv

• eb ssh

Page 40: Aws startup-tech-summer2015

eb clone

Page 41: Aws startup-tech-summer2015

環境を丸ごとclone して新しい環境 を作成してくれる

Page 42: Aws startup-tech-summer2015

ex:AMIアップデート時

• .ebextensionsのbashパスが通らなくなったりすることがある(ログインユーザで実行されない)

• 環境は変えずにamiだけ変えてテストしたい

• ex:deploy task

Page 43: Aws startup-tech-summer2015

eb ssh

Page 44: Aws startup-tech-summer2015

➜ retty git:(master) eb ssh

Select an instance to ssh into 1) i-************* 2) i-************* 3) i-************* 4) i-*************

Page 45: Aws startup-tech-summer2015

超便利!

Page 46: Aws startup-tech-summer2015

せっかく SAさんがいるので

文句要望

Page 47: Aws startup-tech-summer2015

エラーメッセージが よくわからん

• SecurityGroup削除にとにかくはまる

• CloudFormation limit

• ApplicationVersion limit

Page 48: Aws startup-tech-summer2015

/var/log/cfn-init.log

重要!

Page 49: Aws startup-tech-summer2015

それでも僕は EBが大好きですけどね

Page 50: Aws startup-tech-summer2015

I love EB!可愛いよ!

Page 51: Aws startup-tech-summer2015

ありがとうございました