Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
AmazonWebService(AWS)   を使ってみたよ!    タイムリミット80hで分かった事  ∼技術的なじゃなくて世間話的な内容∼                2013/3/30                 山重 崇人
山重 崇人 (やましげ たかと)広島市内の中小IT企業でインフラ・ネットワークエンジニア風な事をやっていますした。サーバやネットワーク機器が好きです。焼酎が好きです。お肉が好きです。猫も好きです。
好きなサービスはVPCです(キリッ
AWSを使った仕事に参加• 公開系のサービス   (Apache+php+Mysql)• すでに何となく構成が決定• NFSを使うLB環境• DBはRDSを使用• 要件としてはAutoScalingあり• とりあえずEC2で構成しよう  →(D...
私のスキル• レイヤの低い順に得意• LinuxよりもWindowsが好き• 公開系のサービスは苦手• DB苦手(というか、任せる)  俺に任せろ!と言えるほどの スキル適合ではない(́・ω・`)
対象となる方?• AWSを触ったことがあるけど、サービス利用したこ とのない方• AWSの基本的な事はなんとなく理解できた(つも り)の方• どういう事で問題が発生しそうかを見てみたい方• 何かわからないけど、何となくモヤモヤしてる方 (一緒に...
何が起こったか• CDP本があるし余裕じゃね?  →実装する段階でどう配置すれば?• 環境を作ってみてから気づく事が多数• 単純な仮想化以上に考慮する必要が 個人的な見通しの甘さと認識の甘さから問題が多発!
CDP本もあるし、余裕じゃね?        さてと。        これを実装と・・・        ん? これって。        ネットワーク的にど        うなってんの?
Plan APlan B
Plan A•当時のEC2では実装できない (2NIC構成)•必然的にVPCの利用が条件•ネットワークの設計が必要
Plan B•NFS+Web+DBアクセス。全部同じNICに乗るけどいいの?
EC2での設計  • サブネットは設計でき   ないのでインスタンス   の配置と、論理的な接   続をイメージして書く   ※ただし
VPCでの設計• サブネットを含めた設計が可能• ELBはサブネットを跨げる• 1つのインスタンスはAZを跨げない
EC2,VPCの比較   項目           EC2      VPCグローバルIP               ○(非固定)      ✗ (標準) ローカルIP          ✗      ○(指定可能)サブネット定義      ...
ざっと見ても、こんなに違いが   VPCさん、舐めてました。      ごめんなさい。やっぱ、触ってみないとわかんないよね。
おさわり❤開始
あー! 遠くに行きたい!
なー         てん       りし  も っさ何か
なー          てん        りし     っさ      Pin何 かも             g折                   り                      返                    ...
なー          てん        りし     っさ      Pin何 かも             g折                   り                      返                    ...
なー          てん        りし     っさ      Pin何 かも             g折                   り                      返                    ...
まず確認       リージョン
環境を作った後•   EC2インスタンスを停止→開始するとIPアドレスが変わる•   EC2でEIPを使っても停止→開始時にEIPが剥がされる(半泣き•   NFSが遅い•   EIP付与時の挙動がEC2とVPCでは異なる•   2NICのイン...
EC2インスタンスを停止→開始する    とIPアドレスが変わる• そういうもん• 検証中はあまり停止しないから気付き にくい• EIPを使えば固定できる
EC2でEIPを使っても停止→開始時に   EIPが剥がされる(半泣き• そういうもん• AWS Toolsを使って(ry おググりください。 • cronに @rebootを指定して起動時におまじ  ないをしてくっつける• 検証中はあまり停止...
NFSでパフォーマンスが出ない• EC2でのレイテンシ(2-3ms) VPCだと0.5ms程度 →これは主要因では無い(asyncで対応)• NFS自体の理解不足 • プログラムとの相性 →NFSにソースだけを置くと遅くない  TMPファイルの...
EIP付与時の挙動が      EC2とVPCでは異なる• EC2は無条件に外に出れるが、VPCはルー ティングが必要• VPCを手動で作成した場合は InternetGatewayの作成と割り当ても必要• PublicDNSの扱い EC2:F...
2NICのインスタンスをAMI化• 2NIC構成のインスタンスをAMI化→デプロイ すると、1NICとなる。• これが、AutoScalingで問題になる。      ←このWebインスタンスのような場合                    ...
ELBとサブネット指定• ELB作成時に2サブネット構成 片側にしかインスタンスを配置環境ではブラウザ接続時に「ページを 表示で(ry」エラーが不定期に発生する→インスタンスがなくてもバ ランスしようとしてる?• インスタンスを未配置なサブネッ...
メンテナンス環境• OpenVPNサーバをAWS上に配置し開発拠点 内のクライアントにOpenVPNクライアント• Tunnelモードで接続• OpenVPN用のネットワークを作成• VPC内でルーティングを定義 established• AC...
こんな感じ
OpenVPN構成の注意点• VPCのルーティングにOpenVPNネットワー クへのルーティングを追加• ACLは慎重に(双方向の試験を)• インスタンスの「Change Source/Dest Check」を無効にする• OpenVPNサーバ...
インスタンスサイズに関する考察• 評価環境と本番環境• 動けばOKであればmicroでもいいかな• パフォーマンスも評価の一部なら本番と同じ インスタンスサイズ• 「遅い」の切り分けを行うにあたってインス タンスサイズが小さい事が原因でした(・...
セキュリティ診断について• 公開前のセキュリティ診断等は事前に申請が 必要• 知らなかったけど、申請しないとマズイらし い• 1∼2週刊ぐらい前に申請が必要(だった気 がする)• ドメイン取得、証明書等余裕を持って準備を
まとめ• 海外気分を楽しみたければバージニア• CDP本は魔法じゃない。頭のなかで組み立て よう• 検証中もインスタンスの停止、部分停止など サービスへの影響を確認しよう• 今日の常識は明日の非常識? 活きのいいネタで勝負。• VPCは色々と捗る
お詫び 記載されているEC2に関する内容は、す でに古いものとなっております。
ご静聴ありがとうございました。(絶賛、スカウト受付中です!)
20130330 awsを使ってみたよ
Upcoming SlideShare
Loading in …5
×

20130330 awsを使ってみたよ

1,324 views

Published on

  • Be the first to comment

20130330 awsを使ってみたよ

  1. 1. AmazonWebService(AWS) を使ってみたよ! タイムリミット80hで分かった事 ∼技術的なじゃなくて世間話的な内容∼ 2013/3/30 山重 崇人
  2. 2. 山重 崇人 (やましげ たかと)広島市内の中小IT企業でインフラ・ネットワークエンジニア風な事をやっていますした。サーバやネットワーク機器が好きです。焼酎が好きです。お肉が好きです。猫も好きです。
  3. 3. 好きなサービスはVPCです(キリッ
  4. 4. AWSを使った仕事に参加• 公開系のサービス  (Apache+php+Mysql)• すでに何となく構成が決定• NFSを使うLB環境• DBはRDSを使用• 要件としてはAutoScalingあり• とりあえずEC2で構成しよう →(DevはEC2のmicroで構築済)• 10日(80h)という制限。できる所まで
  5. 5. 私のスキル• レイヤの低い順に得意• LinuxよりもWindowsが好き• 公開系のサービスは苦手• DB苦手(というか、任せる) 俺に任せろ!と言えるほどの スキル適合ではない(́・ω・`)
  6. 6. 対象となる方?• AWSを触ったことがあるけど、サービス利用したこ とのない方• AWSの基本的な事はなんとなく理解できた(つも り)の方• どういう事で問題が発生しそうかを見てみたい方• 何かわからないけど、何となくモヤモヤしてる方 (一緒に悩みましょう)
  7. 7. 何が起こったか• CDP本があるし余裕じゃね? →実装する段階でどう配置すれば?• 環境を作ってみてから気づく事が多数• 単純な仮想化以上に考慮する必要が 個人的な見通しの甘さと認識の甘さから問題が多発!
  8. 8. CDP本もあるし、余裕じゃね? さてと。 これを実装と・・・ ん? これって。 ネットワーク的にど うなってんの?
  9. 9. Plan APlan B
  10. 10. Plan A•当時のEC2では実装できない (2NIC構成)•必然的にVPCの利用が条件•ネットワークの設計が必要
  11. 11. Plan B•NFS+Web+DBアクセス。全部同じNICに乗るけどいいの?
  12. 12. EC2での設計 • サブネットは設計でき ないのでインスタンス の配置と、論理的な接 続をイメージして書く ※ただし
  13. 13. VPCでの設計• サブネットを含めた設計が可能• ELBはサブネットを跨げる• 1つのインスタンスはAZを跨げない
  14. 14. EC2,VPCの比較 項目 EC2 VPCグローバルIP ○(非固定) ✗ (標準) ローカルIP ✗ ○(指定可能)サブネット定義 ✗ ○(指定可能)SecurtyGroup In In/Out NACL ✗ In/Out
  15. 15. ざっと見ても、こんなに違いが VPCさん、舐めてました。 ごめんなさい。やっぱ、触ってみないとわかんないよね。
  16. 16. おさわり❤開始
  17. 17. あー! 遠くに行きたい!
  18. 18. なー てん りし も っさ何か
  19. 19. なー てん りし っさ Pin何 かも g折 り 返 し っ て こ ん な も ん?
  20. 20. なー てん りし っさ Pin何 かも g折 り 返 し っ て こ ん な も ん? あれ!?かーさん!! 俺のインスタンス知らない!?
  21. 21. なー てん りし っさ Pin何 かも g折 り 返 し っ バージニアリージョンを こ ん て な も 利用する事案が多発!! ? ん あれ!?かーさん!! 俺のインスタンス知らない!?
  22. 22. まず確認 リージョン
  23. 23. 環境を作った後• EC2インスタンスを停止→開始するとIPアドレスが変わる• EC2でEIPを使っても停止→開始時にEIPが剥がされる(半泣き• NFSが遅い• EIP付与時の挙動がEC2とVPCでは異なる• 2NICのインスタンスをAMI化→デプロイ 1NIC構成になる• ブラウザで表示するとサーバが見つからないエラー• 2NIC構成は同一AZ内の各サブネットにだけ利用可能
  24. 24. EC2インスタンスを停止→開始する とIPアドレスが変わる• そういうもん• 検証中はあまり停止しないから気付き にくい• EIPを使えば固定できる
  25. 25. EC2でEIPを使っても停止→開始時に EIPが剥がされる(半泣き• そういうもん• AWS Toolsを使って(ry おググりください。 • cronに @rebootを指定して起動時におまじ ないをしてくっつける• 検証中はあまり停止しないから気付きにくい• インスタンスの停止→開始で想定外の事がな いかを確認する習慣をつける →物理サーバでの確認事項+αが必要
  26. 26. NFSでパフォーマンスが出ない• EC2でのレイテンシ(2-3ms) VPCだと0.5ms程度 →これは主要因では無い(asyncで対応)• NFS自体の理解不足 • プログラムとの相性 →NFSにソースだけを置くと遅くない  TMPファイルの取り扱いが問題
  27. 27. EIP付与時の挙動が EC2とVPCでは異なる• EC2は無条件に外に出れるが、VPCはルー ティングが必要• VPCを手動で作成した場合は InternetGatewayの作成と割り当ても必要• PublicDNSの扱い EC2:FQDNが変わる VPC:PublicDNSは無い• 内部からPublicをlookupすると、ローカルIP が返ってくる
  28. 28. 2NICのインスタンスをAMI化• 2NIC構成のインスタンスをAMI化→デプロイ すると、1NICとなる。• これが、AutoScalingで問題になる。 ←このWebインスタンスのような場合 未解決
  29. 29. ELBとサブネット指定• ELB作成時に2サブネット構成 片側にしかインスタンスを配置環境ではブラウザ接続時に「ページを 表示で(ry」エラーが不定期に発生する→インスタンスがなくてもバ ランスしようとしてる?• インスタンスを未配置なサブネットはELBに 含めない
  30. 30. メンテナンス環境• OpenVPNサーバをAWS上に配置し開発拠点 内のクライアントにOpenVPNクライアント• Tunnelモードで接続• OpenVPN用のネットワークを作成• VPC内でルーティングを定義 established• ACLでアクセス管理 のみを要望• AWS→クライアントについてはダイナミック ポート(32768以上とか)Rejectする事で制限
  31. 31. こんな感じ
  32. 32. OpenVPN構成の注意点• VPCのルーティングにOpenVPNネットワー クへのルーティングを追加• ACLは慎重に(双方向の試験を)• インスタンスの「Change Source/Dest Check」を無効にする• OpenVPNサーバの/etc/sysctl.confで net.ipv4.ip_foward=1 を定義
  33. 33. インスタンスサイズに関する考察• 評価環境と本番環境• 動けばOKであればmicroでもいいかな• パフォーマンスも評価の一部なら本番と同じ インスタンスサイズ• 「遅い」の切り分けを行うにあたってインス タンスサイズが小さい事が原因でした(・ω<) は、避けたい
  34. 34. セキュリティ診断について• 公開前のセキュリティ診断等は事前に申請が 必要• 知らなかったけど、申請しないとマズイらし い• 1∼2週刊ぐらい前に申請が必要(だった気 がする)• ドメイン取得、証明書等余裕を持って準備を
  35. 35. まとめ• 海外気分を楽しみたければバージニア• CDP本は魔法じゃない。頭のなかで組み立て よう• 検証中もインスタンスの停止、部分停止など サービスへの影響を確認しよう• 今日の常識は明日の非常識? 活きのいいネタで勝負。• VPCは色々と捗る
  36. 36. お詫び 記載されているEC2に関する内容は、す でに古いものとなっております。
  37. 37. ご静聴ありがとうございました。(絶賛、スカウト受付中です!)

×