awsビギナー向け資料 ec2 20111124
DESCRIPTION
JAWS-UG presentsAWS初心者向け勉強会第1回Amazon EC2についてTRANSCRIPT
1
初心者向け勉強会シリーズ
• AWSを使い始めた/そろそろ使おうかな AWSを使い始めたばかりの人
AWSでアカウント登録していない人
• 仕事で関係ありそうな予感 自社でAWSの利用を検討している
周辺でAWSを使い始めている
• 専門用語をなるべく使いません
日本語で分かりやすく
業界用語は補足します
2
JAWS-UG:各勉強会の位置づけ
ビギナー
ユーザー
マスター 使いこなす
使う人を増やす
事例の共有 マイスター シリーズ、
中の人セミナー
初心者向け 勉強会
いつもの勉強会、 イベント
3
Amazon EC2について
30分で徹底理解
クラスメソッド株式会社 横田 聡
@sato_shi
4
今日憶えて帰るキーワード一覧
• Amazon EC2
• AWS Management Console
• インスタンス(仮想サーバー)
• リージョン、AZ(地域と場所)
• AMI(マシンイメージ)
• セキュリティグループ(ファイアウォール)
• EBS(仮想ドライブ)
• EIP(固定IPアドレス)
• ELB(ロードバランサー)
5
アジェンダ
• Amazon EC2(EC2)とは?
• Amazon EC2を使ってみよう
• Webサーバーを立てて公開する
• Amazon EC2は何がElasticなのか?
• 負荷分散のためにロードバランサーを使う
• まとめ
6
Amazon EC2(EC2)とは?
7
• Amazon EC2 = Elastic Computing Cloud
すぐに始められる/すぐに止められる
Webコンソールから容易に利用可能
必要に応じて仮想サーバー数/タイプを変更
高負荷なコンシューマ向けWebサイトから 信頼性重視の業務向けアプリホスティングまで
1時間約2円のお試しサーバーから 世界ランキング上位のスーパーコンピュータまで
1時間単位で利用可能
Amazon EC2とは?
伸縮自在な
8
Amazon EC2を絵で表すと
データセンター
仮想サーバ(Amazon EC2) Windows ( スタンダード)
CentOS (ハイCPU)
Oracle DB(Linux) (ハイメモリ)
コマンドライン / SDK利用
SSH公開鍵 認証
仮想外部ディスク (Amazon EBS)
ストレージ
AMI から
仮想デスクトップ
ターミナル
AMI 保存
REST / SOAP API
Webコンソール
9
Amazon EC2の主要コンポーネント
ロードバランサー
固定IPアドレス
セキュリティ
地域
場所
EC2 インスタンス
ドライブ
永続ストレージ
スナップショット
マシン イメージ
監視 サービス
自動伸縮
10
Amazon EC2を使ってみよう
• STEP1:AWSアカウントの作成
(今日は省略します)
• STEP2:Management Consoleへログイン
EC2インスタンスを起動します
• STEP3:仮想サーバーにログイン
Webサーバーを立てて公開します。
11
Amazon EC2を使ってみよう
12
AWS Management Consoleのタブと役割
プラットフォーム
永続ストレージ
仮想 サーバー
仮想ネットワーク
監視 監視
分散処理
自動化
データベース
キャッシュ
キュー 通知 DNS
認証 メール
13
リージョンを指定してインスタンスを起動
リージョンの指定
インスタンス の起動
14
リージョンとアベイラビリティゾーン(AZ)
リージョン (東京) • 現時点で世界7か所のリージョン
• ユーザーは任意に選択可能
• 1リージョン内には、データセンターが複数拠点存在
• 東京リージョンの場合、EC2のために物理的に離れた2つのDCが存在(アベイラビリティゾーン: AZと呼ぶ)
• AZは、お互いに、地理的、電源的、ネットワーク的に分離されており、地震面、洪水面も考慮
• 任意のゾーンを選択し、EC2インスタンスを起動できる
• AZ間は高速専用線でつながれている ( データ転送量も安い)
• リージョン間はインータネット経由
米国 東海岸
米国 西海岸
米国 政府
アベイラビリティゾーン A
アベイラビリティゾーン B
EC2 EC2
米国 オレゴン
ヨーロッパ シンガポー
ル
15
AMIの指定
AMIの指定
AMIには、Instance Storeタイプと、EBSタイプがあります。 良く使うのは、EBSタイプです。Quick Startに出てくる
Amazon LinuxはEBSタイプとなります。
16
インスタンスタイプとAZの指定
インスタンス タイプの指定
場所(AZ) の指定
17
インスタンスタイプ例
• スタンダード インスタンス
スモール インスタンス
ラージ インスタンス
エクストララージ インスタンス
• マイクロインスタンス
• ハイメモリ インスタンス
• ハイ CPU インスタンス
• クラスタコンピュート インスタンス
• クラスタ GPU インスタンス
用途や性能要求に合わせて指定
後からタイプの 変更が可能!
18
インスタンスにタグをつける
インスタンスの 名前付け
19
キーペア(公開鍵と秘密鍵)の作成
キーペアの作成/指定
20
セキュリティグループの作成/指定と設定
ポートとアドレス によるフィルタ
セキュリティ グループの作成/指定
21
セキュリティグループ
• デフォルトでは、全てのポートが閉じており、外からアクセスできない
• 必要なポートのみを、必要に応じて空ける
EC2 インスタンス
ポート 22 (SSH)
ポート80 (HTTP)
EC2ファイアウォール
インスタンス毎に セキュリティグループの 設定を行うことができます
22
セキュリティグループ間での制御
Web Security Group
Web サーバー
ポート 22 (SSH)
ポート 80 (HTTP)
App Security Group
App サーバー
ポート 22, 2048
DB Security Group
DB サーバー
ポート3300
ポート 22 (SSH)
Web サーバー
App サーバー
DB サーバー
23
インスタンス起動の確認
起動中から 起動完了へ
DNS名が 割り当てられる
24
ターミネート、リブート、ストップ、スタート
インスタンスの ターミネート・ リブート・
ストップ・スタート
Terminate:インスタンス内のデータが消えます(デフォルト) Reboot:インスタンスの再起動 Stop:インスタンスの停止で後から再開(Start)できます。
25
EBSボリュームとスナップショット
インスタンスには、 EBSボリュームが付く
スナップショットと S3に保存できます
ボリュームの追加
26
EBS (Elastic Block Store)とは?
リージョン
AZ - a
EC2インスタンス
インスタンス ストレージ
Amazon S3
EBS
スナップショット
EC2への仮想外付けハードディスク
• サイズは1GB単位で~1TBまで
• サイズ/期間/IOで課金される
詳細
• 寿命は、EC2インスタンスと独立している (データは永続的に保存される)
• アベイラビリティゾーン(AZ) に存在する
• 他のインスタンスに付け替え可能
• EBSスナップショットでS3にバックアップ
• バックアップから、EBSを作成可能 (他のAZに作成できる)
EBS
AZ - b
EC2インスタンス
EBS EBS
EBS
27
Webサーバーを立てて公開する
28
インスタンスへの接続
インスタンスへの接続
29
AWS Management Console
• SSHクライアント選択
putty,terminalなど
• 秘密鍵の場所確認
pemファイル
• アクセス権の変更
chmod 400
• パブリックDNS名を 使った接続
30
EC2インスタンスにSSH接続する
$ ssh -i mykey1.pem [email protected]
__| __|_ )
_| ( / Amazon Linux AMI
___|¥___|___|
[ec2-user@ip-10-146-9-29 ~]$
セキュリティグループの 設定でSSHポートを
開けたので接続できます 対となる秘密鍵を利用
接続OK!
31
Webサーバーのインストールと設定を行う
$ sudo yum update –y $ sudo yum install httpd-devel –y $ sudo service httpd start
Starting httpd: [ OK ] $ sudo chkconfig httpd on $ chkconfig --list httpd httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off $ echo "<h2>Hello AWS Server 1</h2>" | sudo tee
/var/www/html/index.html
アップデートと Webサーバーの インストール
OS起動時に Webサーバーを 自動起動に設定
ロードバランサーの 死活監視用に使う
チェックファイルの作成
32
ブラウザーから動作確認
セキュリティグループ の設定でHTTPポート を開けているので見える
ロードバランサーの 死活監視用に使う チェックファイル が見えるか確認
33
Amazon EC2は何がElasticなのか?
34
EBSボリュームのサイズを変更する
リージョン
アベイラビリティゾーン
EC2 インスタンス
Amazon S3
スナップショット
EBS (10GB)
EBS (100GB)
流れ
• EBSをデタッチする
• EBSからS3にスナップショットを作成する
• 新たなボリュームサイズを指定して、EBSを作成する
• EBSをアタッチする
• マウントして、リサイズする
EBSのサイズを 後から変更可能!
35
インスタンスのタイプを変更する
ストップ中の インスタンスは タイプを変更可能
スケールアップ/ダウンが簡単!
36
固定IPアドレスを取得し割り振る
Elastic IPs を選択する
固定IPアドレス の取得
37
負荷分散のためにロードバランサーを使う
38
設定済みインスタンスからオリジナルAMIの作成
インスタンスを基に オリジナルAMIの作成
39
AMIイメージ名の指定
AMIイメージの 名前を指定
処理が開始されました
40
オリジナルAMIのインスタンスを起動する
自分で作成した AMIのタブ
今回作成した AMIを指定
41
インスタンスを起動する場所(AZ)の指定
場所(AZ)を分ける のがポイント
42
ロードバランサーの振り分け動作確認用に
$ echo "<h2>Hello AWS Server 2</h2>" | sudo tee /var/www/html/index.html
43
同じAMIをベースにしたインスタンス群
このインスタンス群 に振り分ける
44
ロードバランサーを作成する
ロードバランサー メニュー
ロードバランサー の作成
45
ロードバランサー配下にインスタンスを指定
HTTP(80)ポート を振り分ける設定
46
その他設定
死活監視のための ポートとアドレスの指定
47
ロードバランサー配下のインスタンスを指定
複数のAZで 均等に振り分ける
48
ロードバランサーの状態を確認
インスタンスの 追加/削除が可能
Out of Serviceから In Serviceへ
49
まとめ
50
今日憶えて帰るキーワード一覧
• Amazon EC2
• AWS Management Console
• インスタンス(仮想サーバー)
• リージョン、AZ(地域と場所)
• AMI(マシンイメージ)
• セキュリティグループ(ファイアウォール)
• EBS(仮想ドライブ)
• EIP(固定IPアドレス)
• ELB(ロードバランサー) 理解度をチェック してみよう!
51
参考資料
• AWSマイスターシリーズ
http://aws.typepad.com/aws_japan/2011/10/aws-meister-5.html
• Amazon Web Services ブログ
http://aws.typepad.com/aws_japan/
• はじめてのアマゾンクラウド ②[仮想サーバ(Amazon EC2)を立ち上げる]
http://slidesha.re/ec2-open
• クラスメソッド技術ブログ
http://dev.classmethod.jp/
• クラスメソッド技術ブログ(クラウド編)
http://dev.classmethod.jp/category/cloud/