cloud on the beach 2016 - 会社にawsを導入した話

Post on 09-Jan-2017

1.490 Views

Category:

Engineering

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

会社に AWS を導入した話

@tnaototo  Naoto Teruya  RyukyuInteractive, Inc.  Developer

突然ですが質問です

Q. オンプレサーバーの手配・設定でトラブったことがある

Q. 開発と運用両方やってて正直しんどい

Q. 作ってみたいものがあるけど環境構築・運用を考えるのつらい

Q. オンプレサーバーのHDD 障害 LED がついているけど無視したことがある

AWS を使えば解消できるかもしれませんよ?

お話すること

開発と運用をやっている弊社がAWS を導入して楽できていることなどをお話します

伝えたいこと

AWS を導入すると開発に集中できる

AWS を導入すると新しいことにチャレンジできる

予防線ご注意ください

制作会社が AWS を導入した話ですので、インフラの話はほぼ出てきません話が Web 系に寄ってます (^^;)

肩の力を抜いて、ご覧ください。

1. 自己紹介2. AWS との出会い〜現在3. 導入して良かった点4. 失敗談などなど5. こんなのも作ってます6. まとめ

アジェンダ

1. 自己紹介

- 琉球インタラクティブ所属 - エンジニアやってます - インフラも見てます - マネジメントも ( ちょっと ) やってます- めんどくさがり- ビール大好き- スプラトゥーン大好き- Ingress 大好き ( が、ルールよく分かってない )

Naoto Teruya (@tnaototo)

琉球インタラクティブ株式会社

琉球インタラクティブ株式会社

仲間を募集しています!

2. AWS との出会い〜現在

AWS ってなんぞ?

お腹いっぱいだからいいですよね (^^;)

出会ったきっかけ

- 元々は EC-Cube + さくらのレンサバ- リプレースは Magento で決定 - スペック低いと動きません・・- お客さん増加傾向 = 落ちるのはマズい- そんなにお金かけれません- オンプレ & 自前で持つとか絶対にイヤ- 大きめな VPS 借りるとお金が・・- 細かく見積もるのがめんどくさい- VPS 再契約・再構築とかやりたくない- スペックを自由に調整できれば・・

自社 EC サイトのリプレース

開発がしんどいので環境構築・運用は楽したい

そんな中で見つけたのが

AWS 使って無事リプレース

- 最初は小さいインスタンスで構築- 公開直前にメモリ不足が発覚 - スケールアップ - Web コンソールでポチポチやるだけ- スナップショットに感動 - Web コンソールでポチポチやるだけ- Security Group 便利すぎる - Web コンソールでポチポチやるだけ

EC2 のみの構成

- 最初は小さいインスタンスで構築- 公開直前にメモリ不足が発覚 - スケールアップ - Webコンソールでポチポチやるだけ- スナップショットに感動 - Webコンソールでポチポチやるだけ- SecurityGroup 便利すぎる - Webコンソールでポチポチやるだけ

EC2 のみの構成

ら、楽すぎる・・ (; ゚ д ゚ )

あと、

万が一の場合でも、スナップショットから戻せばいい

メモリが足りなくなったら、スケールアップしたらいい

安心して開発に集中できました

現在

- EC2 - 開発・検証サーバー - プロジェクトごとにインスタンス - ( 受託 ) 本番環境は AWS 以外を使用- S3 - バックアップファイル置き場

こんな感じで使ってます

- SES - 機器からのアラートメール - 複合機のスキャンメール- AWS ガッツリ - 自社サービス

こんな感じで使ってます

3. 導入して良かった点

サーバー周りで取られる時間が減った

導入して良かった点 その 1

- 本番環境と同じ環境で検証したいけど 手配できない ( 時間・コスト的に )- 突然、お客さんから開発中ページを見たい と言われたが、外部公開できる環境が無い   - てか、やってる時間ない- 社内開発機のリソースがもう限界- 発注したサーバーの納期が遅い- 機械学習で GPU 積んでる PC 使いたい

こんなことありませんか?

AWS なら

- Web -> EC2 / DB -> RDS- Web上でポチポチ- イメージから復元 - 本番環境のコピーも作れます - 1 つ雛形作っておくとか- お客さんだけに公開もすぐできる- GPU 積んでるインスタンスもあるので、 機械学習用途でもバッチリ

とっても簡単

Web コンソールでアクセス制限便利すぎる

RDS 使えば DB 周りで時間をとられることが少ない

不要になれば捨てればいい (削除する )

サーバー周りで取られる時間が減った導入して良かった点 その 1

サーバー周りで取られる時間が減った導入して良かった点 その 1

開発に時間が割けるようになった

大企業しか触れなかったようなものが触れる

導入して良かった点 その 2

あの高価なロードバランサーも簡単に導入できる(ELB)

SSL 証明書はロードバランサー側に入れるのでWeb サーバーの設定不要

オートスケールする環境を(割と )簡単に構築できる

事例 : Facebook アプリElastic Beanstalk container

EC2 instance

Elastic Load Balancing

Amazon Route 53

AmazonS3

AmazonRDS

AmazonSES

Auto Scaling group

事例 : JobAntennaJobAntenna( ジョブアンテナ ) とは、沖縄の「はたらく」をもっと面白く ! する沖縄の求人・転職サイトです

安心して開発に集中できます

これら以外にもたくさんのサービスがあります

大企業しか触れなかったようなものが触れる導入して良かった点 その 2

大企業しか触れなかったようなものが触れる導入して良かった点 その 2

新しい機能・アイデアの実現に向けてチャレンジできるようになった

4. 失敗談などなど

失敗 1. AutoScaling したらファイルが消えた

- AutoScale したらファイルがいなくなった・・・- 基本は外に置く - 例 - 画像 => S3 - 負荷が減るので助かります - DB => RDS or DynamoDB - ログ => CloudWatchLogs

Auto Scaling したらファイルが消えた

捨てても大丈夫な作りを最初から考慮しておく

失敗 2. 増え続ける EC2

- 東京リージョン以外に海外にも・・- 開発サーバーはエンジニア以外も見てるので、 なんだかんだ 24h起動- 時間あたりは安く見えるけど、塵も積もれば・・orz- MarketPlace で実は有料だったり・・- 使っていないはずなのに落としてない・・- Elastic IP の解放し忘れ

増え続ける EC2

- 不要なインスタンスは停止 & EIP 解放- スポット・リザーブドインスタンスの活用- 開発用途なら小さいインスタンスでスタート- Route53+CLI で 起動時に EIP が変わっても ドメイン名でアクセスできるようにする- AWS Lambda でスケジュール起動・停止- 大きいインスタンスに Docker 入れて・・

対策

全然できてません (^^;)

失敗 3. EBS の I/O で課金

\ (^o^)/オワタ

- ゲームサーバー用途で使用- I/O結構するミドルウェアを使用 ?- メモリ足りなくて Swap ガリガリ ?- コストを気にして仇となる- I/O の処理を見直し -> 解消

原因と対策

CloudWatch は設定すべし

5. こんなのも作ってます

お知らせ bot(AWS Lambda)

お知らせ bot(AWS Lambda + PhantomJS)

6. まとめ

AWS を使うとサーバー周りに割く時間を減らせますその分、開発に集中できます

まとめ

AWS を使うと新しいことにチャレンジできます

まとめ

逆に、うまく使えないとコストがかさみますので要注意

まとめ

まずは試してみたら?

AWS は情報たくさんあります

安心ですね (^^)

え?ちゃんと使えるかまだ不安?

安心してください

がありますよ

またのご参加をお待ちしております

質問ありますか?

ご清聴ありがとうございました

焦るんじゃない、俺は開発に集中したいだけなんだ

top related