20131210 classmethod re:Growth session04

38
運用担当者からみた AWSへシステム移行する際に 気にしてほしい5つのこと CM re:Growth Developers.IO Meetup 01 classmethod.jp 1 2013/12/10 Kazuki Ueki

description

2013/12/10 classmethod re:Growth session04

Transcript of 20131210 classmethod re:Growth session04

Page 1: 20131210 classmethod re:Growth session04

運用担当者からみた AWSへシステム移行する際に 気にしてほしい5つのこと

CM re:Growth Developers.IO Meetup 01

classmethod.jp 1

2013/12/10 Kazuki Ueki

Page 2: 20131210 classmethod re:Growth session04

本日お話する内容

classmethod.jp 2

• 運用からみたAWS移行のハマりどころ

• テクニカルな話はでてきません

Page 3: 20131210 classmethod re:Growth session04

自己紹介 名前:植木 和樹(うえき かずき)

年齢:37歳 出身:新潟県妙高市(単身赴任中) 元製造業情報システムG常駐 主にUnixサーバエンジニア(監視、保守) 資格:IPAITサービスマネージャ IPA システムアーキテクト JAWS北陸コアメンバー(JAWS DAYS 2013~) JAWS埼玉コアメンバー(2013年8月~) 好きなAWSサービス:SQS

classmethod.jp 3

@czkuk

Page 4: 20131210 classmethod re:Growth session04

Developers.IO

classmethod.jp 4

• 主に運用よりのブログを書いてます

Page 5: 20131210 classmethod re:Growth session04

classmethod.jp 5

早速ですが既存システムの

AWS移行を考えてみましょう

Page 6: 20131210 classmethod re:Growth session04

とあるWebシステム

classmethod.jp 6

Page 7: 20131210 classmethod re:Growth session04

AWSへ移行

classmethod.jp 7

AZ-a AZ-c

Page 8: 20131210 classmethod re:Growth session04

classmethod.jp 8

かんたん?

Page 9: 20131210 classmethod re:Growth session04

実際の業務

classmethod.jp 9

一般ユーザー

1.協力会社

2.リリース

3.監視

4.保守

Page 10: 20131210 classmethod re:Growth session04

classmethod.jp 10

1. 協力会社

Page 11: 20131210 classmethod re:Growth session04

理想

• FTPサーバーやめてS3にしよう

• RDSはプライベートネットワークにあるので安全

• SES使えばメールサーバいらないよね

classmethod.jp 11

Page 12: 20131210 classmethod re:Growth session04

実際

「FFFTPからS3って使えるの?」

「FTPが使えないと外部業者のシステム見直しが必要になるんだよねぇ」

「DBに別のシステムから毎日データ取りに来てるみたい・・・」

classmethod.jp 12

Page 13: 20131210 classmethod re:Growth session04

ベストプラクティス

• システムへのデータの流れをすべて洗い出す(地道にヒアリング)

• ログファイルから通信を洗い出す

• 移行計画にオペトレを含める

classmethod.jp 13

Page 14: 20131210 classmethod re:Growth session04

classmethod.jp 14

2. リリース

Page 15: 20131210 classmethod re:Growth session04

勘違い

• これまで通りFTPでアップします (全部のWebサーバーに!)

• AutoScalingすると「今の」サーバーが増えるんでしょ?

• アプリサーバーが2台になると処理が分散されるんでしょ?

classmethod.jp 15

Page 16: 20131210 classmethod re:Growth session04

実際

• いつの間にか1号機と2号機で挙動が違う

• 1号機から2号機に繋ぎ直したら作業がリセットされた

• AMIから起動したらバージョンが元に戻った

classmethod.jp 16

Page 17: 20131210 classmethod re:Growth session04

ベストプラクティス

• AMIを使う

• Chefを使う

• 更新分はS3やgitから持ってくる

• EC2ローカルにデータは置かない (S3、ElastiCache、RDS)

classmethod.jp 17

Page 18: 20131210 classmethod re:Growth session04

classmethod.jp 18

3. 監視

Page 19: 20131210 classmethod re:Growth session04

よくある勘違い

• CloudWatchで監視は十分

• 異常があったらCloudWatchが通知してくれる

• 通知先は開発担当のアドレスでいいよね

classmethod.jp 19

Page 20: 20131210 classmethod re:Growth session04

実際

• JVMのメモリ監視してもらいんだけど

• メトリクスにアラート設定するの面倒

• 1ヶ月前のCloudWatchのグラフがみたい

• 夜間や土日に担当者と連絡とれない

classmethod.jp 20

Page 21: 20131210 classmethod re:Growth session04

ベストプラクティス

• Web1台だけでもELB使う

• Zabbix、Cactiでミドルウェアも監視する

• CloudWatchのメトリクスは最低1年保存

• 24/365有人監視「HOOT24」

classmethod.jp 21

Page 22: 20131210 classmethod re:Growth session04

classmethod.jp 22

4. 保守

Page 23: 20131210 classmethod re:Growth session04

勘違い

• CloudWatchがあれば障害原因がわかる

• ログファイルは fluentd でS3に置いておけば大丈夫

• いざとなったらMySQLに接続してゴニョゴニョ

classmethod.jp 23

Page 24: 20131210 classmethod re:Growth session04

実際

• ログ流れちゃってる

• ミドルウェアの傾向変化を含めて俯瞰的にグラフの傾向をみたい

• S3に細切れになったログどうやってgrepするの?

• 開発PCからどうやってMySQLに繋げるの?

• AWS内部で障害起きてない?

classmethod.jp 24

Page 25: 20131210 classmethod re:Growth session04

ベストプラクティス

• Zabbix、Cactiでミドルウェアも監視する

• RDSのログも保存しておく

• 保守用経路(踏み台、VPN)を用意する

• AWSサポート(ビジネス) 利用料金の10% ※CMメンバーズなら5%

classmethod.jp 25

Page 26: 20131210 classmethod re:Growth session04

移行時に気にしてもらいたいこと

classmethod.jp 26

一般ユーザー

1.協力会社

2.リリース

3.監視

4.保守

Page 27: 20131210 classmethod re:Growth session04

移行時に気にしてもらいたいこと

classmethod.jp 27

一般ユーザー

そのシステムを使う人

1.協力会社

2.リリース

3.監視

4.保守

Page 28: 20131210 classmethod re:Growth session04

classmethod.jp 28

運用担当者からみた

AWSへシステム移行する際に

気にしてほしい5つのこと

Page 29: 20131210 classmethod re:Growth session04

classmethod.jp 29

・・・5つ目は?

Page 30: 20131210 classmethod re:Growth session04

classmethod.jp 30

5. 数年後の担当者

Page 31: 20131210 classmethod re:Growth session04

classmethod.jp 31

IT会社の平均勤続年数

「3~5年」

http://www.part-arbeit.jp/info/useful/it_company_average_years_of_service/

Page 32: 20131210 classmethod re:Growth session04

classmethod.jp 32

社員の異動・退職

「プログラマ定年」

Page 33: 20131210 classmethod re:Growth session04

classmethod.jp 33

あなたが構築したシステムは

あなたがいなくなっても

使われ続ける

Page 34: 20131210 classmethod re:Growth session04

「それを聞いて私決めたんです。自分一人がいくら技術を磨いてもしょうがない。チームをまとめフローを整備し、組織として運用を行うこと。そうすれば誰か一人いなくなってもサービスレベルは落ちない。会社として同じクオリティの運用を継続的に提供できる」

classmethod.jp 34

「なれる!SE2 基礎から学ぶ運用構築」より

http://www.amazon.co.jp/dp/4048689371

Page 35: 20131210 classmethod re:Growth session04

classmethod.jp 35

Amazon Web Services

日進月歩

革新的なインフラ

Page 36: 20131210 classmethod re:Growth session04

classmethod.jp 36

後世に知見を残す

Page 37: 20131210 classmethod re:Growth session04

classmethod.jp 37

Developers.IO

Page 38: 20131210 classmethod re:Growth session04

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

classmethod.jp 38