Your SlideShare is downloading. ×
0
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

AWS勉強会 in 北海道札幌 at smokeymonkey #cmdevio

1,164

Published on

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

No Downloads
Views
Total Views
1,164
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
6
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. classmethod.jp 基礎だからこそ改めて知っておく
 EC2勘所 AWS勉強会 in 北海道
 Developers.IO Meetup 03 1 2014/3/21 クラスメソッド株式会社 佐々木 大輔
  • 2. classmethod.jp 2 ! ! 自己紹介
  • 3. 3
  • 4. classmethod.jp 4 自己紹介 佐々木 大輔 ! ! ! ! @smokeymonkey a.k.a. すもけ ! クラスメソッド株式会社 ソリューションアーキテクト
  • 5. classmethod.jp 5
  • 6. classmethod.jp 6
  • 7. 8
  • 8. 9
  • 9. 10
  • 10. classmethod.jp 11 はじめに •EC2はAWSの中で最も基本的なリソース ! •そのEC2上で「安定して」「安全で」「高性能な」実 行環境を提供できるようカスタマイズされているのが Amazon Linux ! •お手軽に構築出来るけど、運用も踏まえ適切な手法で 構築するべき ! •今日は「EC2でAmazon LinuxをLaunchするときに考 慮すべき点」を、EC2の勘所としてお伝えします
  • 11. classmethod.jp 12 一番最初にやること yum update
  • 12. classmethod.jp 13 タイムゾーンの設定 •Amazon Linux AMIのデフォルトタイムゾーンはUTC •運用に併せて適切に変更する •例えば日本のシステムで日本で運用管理するなら日 本時間(JST,UTC+9)にする •設定方法 $ sudo cp /usr/share/zoneinfo/Japan /etc/localtime
  • 13. classmethod.jp 14 IAM roleの設定 •アプリケーションからAWSリソースにアクセスするに はAWS認証情報を持ってAPIリクエストする必要があ る •Sample:AWS SDK for Ruby AWS.config({ :access_key_id => 'ACCESS_KEY_ID', :secret_access_key => 'SECRET_ACCESS_KEY', :region => 'us-west-2', }) ! • 認証情報をローカルに持つのはセキュリティからも汎 用性からもいまいち
  • 14. classmethod.jp 15 IAM roleの設定 •IAM role for EC2 •IAM: AWSサービス・リソースへのアクセスコント ロール基盤 •元々IAMはユーザやグループに割当てるものだった が、IAMロールによってアプリケーションやEC2の ようなAWSサービスに対してアクセス権限を割り当 てることが出来るようになった ! •IAM roleをEC2に割り当てることでローカルにセキュ リティ情報を持たなくて良い!
  • 15. classmethod.jp 16 IAM roleの設定 •設定手順 •(1)IAM DashboardでIAM role for EC2を作る •(2)EC2起動時にIAM roleを割り当てる。
  • 16. classmethod.jp 17 IAM roleの設定 •注意! •IAM roleはEC2 Launch時にしか割り当てられな い。 •Launchしたあとには割り当てられない! !     ___    /\ /\   _     /((⃝)(⃝))\  /   マジで!?  ¦ ゚ (__人__) ゚  ¦  \  \   ¦r┬、¦  /   ̄   /   `́͡ ヽ ! 割当て忘れていて   あとで気づいて   ショックを受けることも   多々あります… 補⾜足:割り当てさえしておけば、後から roleが持つ権限の内容を変更更することは出 来ます。とりあえず割り当てておこう!
  • 17. classmethod.jp 18 バックアップ •ファイルレベルでのバックアップはオンプレと一緒 •EBS単位のバックアップが取れる! •EBS Snapshot •オンプレで言うところのディスクイメージレベル •リストア •EBS SnapshotからEBS Volumeを作成 •ファイル単位 … 作成したEBS Volumeをマウント してファイルを取り出す •イメージレベル … 障害のあるEBSを取り外して変 わりに作成したEBS Volumeをマウント
  • 18. classmethod.jp 19 バックアップ • ec2-automate-backup •https://github.com/colinbjohnson/aws-missing- tools/tree/master/ec2-automate-backup ec2-automate-backup was created to provide easy backup/snapshot functionality for multiple EC2 EBS volumes.
  • 19. classmethod.jp 20 バックアップ •run ec2-automate-backup to snapshot all EBS volumes that contain the tag Backup=true" $ /home/ec2-user/ec2-automate-backup.sh -s tag -t "Backup=true" • バックアップ取得対象のEBSにTagを付けておく • あとはcronで回しておけばおk
  • 20. classmethod.jp 21 swapの設定 •Amazon EC2(Linux)のswap領域ベストプラクティス •http://dev.classmethod.jp/cloud/ec2linux- swap-bestpractice/
  • 21. 22 swapの設定 •公式AMIにはswap領域が含まれない •m1.small、c1.mediumには900MBのスワップ領域が おまけでついてくる •EC2インスタンスストアスワップボリューム •インスタンスタイプに依るので、インスタンスタイ プを変更すると使えなくなってしまう。頼るのはリ スキー •swap領域は手作業で追加しておくのがベター •swap領域には、インスタンスストア(別名 Ephemeral Disk)を使うべし
  • 22. classmethod.jp 23 swapの設定 •swap設定でやること •インスタンスストアを作る •インスタンスストアにswapファイルを作る ! •インスタンスストア •無料で使えるボリューム •インスタンスをストップするとデータが全部消える •インスタンスタイプによってサイズが決まっている
  • 23. classmethod.jp 24 swapの設定 •注意! •インスタンスストアはLaunch時に指定しないと作 られない •LaunchしたEC2には追加出来ない! !     ___    /\ /\   _     /((⃝)(⃝))\  /   マジで!?  ¦ ゚ (__人__) ゚  ¦  \  \   ¦r┬、¦  /   ̄   /   `́͡ ヽ ! 割当て忘れていて   あとで気づいて   ショックを受けることも   多々あります…
  • 24. classmethod.jp 25 swapの設定 •EC2のLaunch時にインスタンスストアを作る。
  • 25. classmethod.jp 26 swapの設定 •起動時にインスタンスストアにswapファイルを作成し swaponする。 $ sudo vi /etc/rc.local ! SWAPFILENAME=/swap.img MEMSIZE=`cat /proc/meminfo ¦ grep MemTotal ¦ awk '{print $2}'` if [ $MEMSIZE -lt 2097152 ]; then SIZE=${((MEMSIZE * 2))}k elif [ $MEMSIZE -lt 8388608 ]; then SIZE=${MEMSIZE}k elif [ $MEMSIZE -lt 67108864 ]; then SIZE=${((MEMSIZE / 2))}k else SIZE=4194304k fi fallocate -l $SIZE $SWAPFILENAME && mkswap $SWAPFILENAME && swapon $SWAPFILENAME
  • 26. classmethod.jp 27 IPアドレスの考慮 •EC2のIPアドレスはデフォルトで動的 容易に構築したり廃棄したりできる = 出来るだけ固定的な要素は 持たせないほうが汎用性が高い •EC2間の通信をIPアドレス指定以外で行う •つまり、どうやってEC2を特定するか •Tagが簡単
  • 27. classmethod.jp 28 IPアドレスの考慮 •aws cli •http://aws.amazon.com/jp/cli/ •jq (JSON processor) •http://stedolan.github.io/jq/ $ aws ec2 describe-instances --filters Name=tag-value,Values="web" | jq '.Reservations[].Instances[] | {PrivateIpAddress}’ ! { "PrivateIpAddress": "172.31.4.218" }
  • 28. classmethod.jp 29 まとめ •クラスメソッドに入社して3ヶ月が経ちました •ひたすらAWSで設計して構築してリリースして… •EC2だけでも覚えること、知るべき事がたくさんある   そだ  ¦------、`͡ー--、   れが  ¦ハ{{ }} )))ヽ、l l ハ   が   ¦、{ ハリノノノノノノ)、 l l   い   ¦ヽヽー、彡彡ノノノ}  に   い   ¦ヾヾヾヾヾヽ彡彡}  や   !!    /:.:.:.ヾヾヾヾヽ彡彡} l っ \__/{ l ii ¦ l¦} ハ、ヾ} ミ彡ト 彡シ ,ェ、、、ヾ{{ヽ} l¦l ィェ=リ、シ} ¦l lミ{ ゙イシモ'テ、ミヽ}シィ=ラ'ァ、 }ミ}} l ヾミ    ̄ 'ィ''': ¦゙:ー. ̄   lノ/l ¦ ¦ ヾヾ   "  : : !、  `  lイノ l¦ ¦  >l゙、    ー、,'ソ     /.¦}、 l¦ ¦ :.lヽ ヽ   ー_ ---ァ'  /::ノl ト、 :.:.:.:\ヽ     二"  /::// /:.:.l:.:. :.:.:.:.:.::ヽ:\     /::://:.:,':.:..:l:.:. ;.;.;.;.;;.:.:.:.\`ー-- '" //:.:.:;l:.:.:.:l:.: クラスメソッド株式会社 北海道札幌市リージョンは 仲間を募集しています!

×