AWSを活用して少人数で複数のサービスを運用するコツ    株式会社 ソニックガーデン        安達 輝雄
自己紹介@interu 安達輝雄 アプリケーションの開発      +  インフラの構築/運用http://interu.hatenablog.com開発しているサービス
SonicGarden    エンジニア:5名
開発/運用サービス一覧            自社サービス        パートナーシップモデル  ・データ販売サイト        ・植物栽培キッド販売サイト  ・ドキュメント配信        ・SEO関連サービス  ・Flash動画生成サ...
いくつものサービスをたった5人のエンジニアで   どうやって開発 / 運用 してる?
Answer.   DevOps    and AWS/Heroku    and自動化/共通化/効率化
利用比率  :5 : 5
今日は JAWS-UG。Herokuの話は すべて割愛!
そろそろ本題に  SonicGardenは サービス運用についてどのように考えているか?
SonicGardenのMission   開発 >    運用
SonicGarden流サービス運用ポリシー 構築/運用コストは抑えつつ 安定したサービスを提供する
運用コストをどのように抑える?
構築/運用コストを抑える      航空業界の      LCC的発想
構築/運用コストを抑える LCC  ●   機体を1つのシリーズに統一      ●   研修/教育コストを抑えれる      ●   パイロットなら誰でも運転できる          ※ 機体毎に免許取得が義務付けられている  ●   システ...
構築/運用コストを抑える SonicGarden ●   OS/ディストロを統一     - ミドルウェア導入/設定     - セキュリティ設定     など基本設定を行ったテンプレートAMIを     作成し、アプリのみを入れ替えてサービス...
安定したサービスの提供 SonicGarden●   システムの自動化    - EBSスナップショットの取得    - 実データをS3にバックアップ    - AMIの定期作成 ...etc    安定した品質を全サービスで提供
LCC的発想以外にも...
新しいディストロの採用2年で全乗り換え●   新しいパッケージを利用可能    ●   アプリケーションF/Wに追従しやすい●   パッケージがメンテされている    ●   Security Fix / Bug Fixをすぐに適用できる   ...
ディストロの置き換えは大変では?
Railsのバージョンアップに伴いAPサーバを新しいディストロに切り替え Ruby 1.8.7 ⇛ 1.9.3
リプレースまでの過程(0)新環境構築   EC2の活用(1)新環境単体でテスト                    EBSの活用(2)新環境に本番データを利用して動作確認(3)新環境を本番DBに接続し限定ユーザで試用(4)新環境を本番環境に切...
リプレースまでの過程(0)新環境構築(1)新環境単体でテスト(2)新環境に本番データを利用して動作確認(3)新環境を本番DBに接続し限定ユーザで試用(4)新環境を本番環境に切り替え
リプレースまでの過程(0)新環境構築(1)新環境単体でテスト(2)新環境に本番データを利用して動作確認(3)新環境を本番DBに接続し限定ユーザで試用(4)新環境を本番環境に切り替え           ELB/Route53/Elastic I...
その他、 効率化を目的にいくつか取り組んで いることを紹介
① バックアップ
① バックアップ  データ/ログのバックアップを   取得するのは当たりまえ  バックアップ処理中のエラー     検出も当たりまえ
① バックアップ    本当にバックアップを     取得できてる??
① バックアップ    バックアップしたものが  存在するかを確認する方が確実      だけど・・・  複数サービスを運用していると   全てを確認するのは一苦労
① バックアップ AWS Backup Checker指定した期間内のバックアップが存在するかをAWSのAPIを利用してチェック - EBS snapshot - S3 - AMI
アプリケーションログ、システムログ、アプリケーションデータ            データディスクのスナップショット
Coming Soon.
② AWS障害対策
AWSは障害が少なくて  非常に助かってます!      が、障害を0にはできないのが現実
過去に遭遇した大規模障害●   2011年4月    us-eastでEBS障害    http://interu.hatenablog.com/entry/20110425/1303731515●   2012年6月    us-eastで電...
障害からの学びEBS障害が発生すると ●   EBS bootのAMIは起動不可 ●   EBS上のデータへのアクセス不可
障害からの学び●   Instance storeタイプのAMIを    別Regionに作成しておく●   データも別RegionのS3にバックアップ ⇛ DR対策できあがり
で、何を効率化したの?
●   定期EBS snapshot取得スクリプト●   EBS boot型AMI作成スクリプト●   Instance store型AMIを別Regionに    作成するスクリプト              ※要AKIの準備    http...
Fin.
「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜
Upcoming SlideShare
Loading in...5
×

「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜

7,417

Published on

Published in: Technology
0 Comments
22 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
7,417
On Slideshare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
48
Comments
0
Likes
22
Embeds 0
No embeds

No notes for slide

「AWSを活用して少人数で複数のサービスを運用するコツ」〜jawsug in nagoya〜

  1. 1. AWSを活用して少人数で複数のサービスを運用するコツ 株式会社 ソニックガーデン 安達 輝雄
  2. 2. 自己紹介@interu 安達輝雄 アプリケーションの開発 + インフラの構築/運用http://interu.hatenablog.com開発しているサービス
  3. 3. SonicGarden エンジニア:5名
  4. 4. 開発/運用サービス一覧 自社サービス パートナーシップモデル ・データ販売サイト ・植物栽培キッド販売サイト ・ドキュメント配信 ・SEO関連サービス ・Flash動画生成サービス          ・・・etc
  5. 5. いくつものサービスをたった5人のエンジニアで どうやって開発 / 運用 してる?
  6. 6. Answer. DevOps and AWS/Heroku and自動化/共通化/効率化
  7. 7. 利用比率 :5 : 5
  8. 8. 今日は JAWS-UG。Herokuの話は すべて割愛!
  9. 9. そろそろ本題に SonicGardenは サービス運用についてどのように考えているか?
  10. 10. SonicGardenのMission 開発 > 運用
  11. 11. SonicGarden流サービス運用ポリシー 構築/運用コストは抑えつつ 安定したサービスを提供する
  12. 12. 運用コストをどのように抑える?
  13. 13. 構築/運用コストを抑える 航空業界の LCC的発想
  14. 14. 構築/運用コストを抑える LCC ● 機体を1つのシリーズに統一 ● 研修/教育コストを抑えれる ● パイロットなら誰でも運転できる ※ 機体毎に免許取得が義務付けられている ● システムの自動化 ● チェックイン等を全てシステム化 ● 通常フローで人を介すサービスをしない
  15. 15. 構築/運用コストを抑える SonicGarden ● OS/ディストロを統一 - ミドルウェア導入/設定 - セキュリティ設定 など基本設定を行ったテンプレートAMIを 作成し、アプリのみを入れ替えてサービス 構築/運用コストの削減
  16. 16. 安定したサービスの提供 SonicGarden● システムの自動化 - EBSスナップショットの取得 - 実データをS3にバックアップ - AMIの定期作成 ...etc 安定した品質を全サービスで提供
  17. 17. LCC的発想以外にも...
  18. 18. 新しいディストロの採用2年で全乗り換え● 新しいパッケージを利用可能 ● アプリケーションF/Wに追従しやすい● パッケージがメンテされている ● Security Fix / Bug Fixをすぐに適用できる 運用コストを削減
  19. 19. ディストロの置き換えは大変では?
  20. 20. Railsのバージョンアップに伴いAPサーバを新しいディストロに切り替え Ruby 1.8.7 ⇛ 1.9.3
  21. 21. リプレースまでの過程(0)新環境構築 EC2の活用(1)新環境単体でテスト EBSの活用(2)新環境に本番データを利用して動作確認(3)新環境を本番DBに接続し限定ユーザで試用(4)新環境を本番環境に切り替え
  22. 22. リプレースまでの過程(0)新環境構築(1)新環境単体でテスト(2)新環境に本番データを利用して動作確認(3)新環境を本番DBに接続し限定ユーザで試用(4)新環境を本番環境に切り替え
  23. 23. リプレースまでの過程(0)新環境構築(1)新環境単体でテスト(2)新環境に本番データを利用して動作確認(3)新環境を本番DBに接続し限定ユーザで試用(4)新環境を本番環境に切り替え ELB/Route53/Elastic IPの活用
  24. 24. その他、 効率化を目的にいくつか取り組んで いることを紹介
  25. 25. ① バックアップ
  26. 26. ① バックアップ データ/ログのバックアップを 取得するのは当たりまえ バックアップ処理中のエラー 検出も当たりまえ
  27. 27. ① バックアップ 本当にバックアップを 取得できてる??
  28. 28. ① バックアップ バックアップしたものが 存在するかを確認する方が確実 だけど・・・ 複数サービスを運用していると 全てを確認するのは一苦労
  29. 29. ① バックアップ AWS Backup Checker指定した期間内のバックアップが存在するかをAWSのAPIを利用してチェック - EBS snapshot - S3 - AMI
  30. 30. アプリケーションログ、システムログ、アプリケーションデータ データディスクのスナップショット
  31. 31. Coming Soon.
  32. 32. ② AWS障害対策
  33. 33. AWSは障害が少なくて 非常に助かってます! が、障害を0にはできないのが現実
  34. 34. 過去に遭遇した大規模障害● 2011年4月 us-eastでEBS障害 http://interu.hatenablog.com/entry/20110425/1303731515● 2012年6月 us-eastで電源障害・API障害
  35. 35. 障害からの学びEBS障害が発生すると ● EBS bootのAMIは起動不可 ● EBS上のデータへのアクセス不可
  36. 36. 障害からの学び● Instance storeタイプのAMIを 別Regionに作成しておく● データも別RegionのS3にバックアップ ⇛ DR対策できあがり
  37. 37. で、何を効率化したの?
  38. 38. ● 定期EBS snapshot取得スクリプト● EBS boot型AMI作成スクリプト● Instance store型AMIを別Regionに 作成するスクリプト ※要AKIの準備 https://github.com/interu/management_utilities
  39. 39. Fin.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×