20121217 jawsug-yokohama
Upcoming SlideShare
Loading in...5
×
 

20121217 jawsug-yokohama

on

  • 973 views

 

Statistics

Views

Total Views
973
Views on SlideShare
970
Embed Views
3

Actions

Likes
5
Downloads
5
Comments
0

1 Embed 3

https://twitter.com 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

20121217 jawsug-yokohama 20121217 jawsug-yokohama Presentation Transcript

  • AmazonEC2 Hands-on 第2回 JAWS-UG 横浜(2012/12/17) 株式会社サーバーワークス 千葉 哲也 twitter : @kachina_t
  • 事前準備• AWSアカウントの開設• インターネットアクセス• Webブラウザ• ターミナル(Windows→TeraTerm、Mac→Terminal…)
  • アジェンダ• EC2の紹介• インスタンスの起動• sshでインスタンスに接続• PHP-SDKを使ってインスタンス情報を取得• ELBを使って分散構成を実現 • 新機能『IAM Roles for EC2』をつかって簡単に• かたづけ
  • 1. EC2の紹介(1/13)• 仮想サーバサービスです。• 必要な時に何百台でも数分で調達できます。• 完全従量課金をベースに様々な料金モデルが用意されています。• Webコンソールの他、APIでもコントールができます。• 特定OS、言語、フレームワークに縛られません。 • Windows,Linux等、多種多様なマシンイメージが用意されています。
  • 1. EC2の紹介(2/13)http://aws.amazon.com/jp/→AWS Management Console
  • 1. EC2の紹介(3/13)サインイン
  • 1. EC2の紹介(4/13)サービス一覧
  • 1. EC2の紹介(5/13)Dashboard
  • 1. EC2の紹介(6/13)INCETANCES::Instances 利用中のサーバ一を管理する【インスタンス】
  • 1. EC2の紹介(7/13)IMAGES::AMIs インスタンスをマシンイメージ として取得し管理する【AMI】
  • 1. EC2の紹介(8/13)ELASTIC BLOCK STORE::Volume ハードディスク【EBS】
  • 1. EC2の紹介(9/13)ELASTIC BLOCK STORE::Snapshots EBSのスナップショットを管理する 【EBSスナップショット】
  • 1. EC2の紹介(10/13)NETWORK & SECURITY::Security Groups ファイアウォール 【セキュリティグループ】
  • 1. EC2の紹介(11/13)NETWORK & SECURITY::Elastic IPs 固定グローバルIP 【EIP】
  • 1. EC2の紹介(12/13)NETWORK & SECURITY::Load Balancers ロードバランサ 【ELB】
  • 1. EC2の紹介(13/13)NETWORK & SECURITY::Key Pairs インスタンスに設定する SSH公開 を管理する【キーペア】
  • 【今日の目標】ELBにおける分散処理の動作を確認する
  • 2. インスタンスの起動(1/17) 【ベース環境】 【Goal】
  • 2. インスタンスの起動(2/17)キーペアの作成
  • 2. インスタンスの起動(3/17)キーペアの作成
  • 2. インスタンスの起動(4/17)キーペアの作成
  • 2. インスタンスの起動(5/17)キーペアの作成
  • 2. インスタンスの起動(6/17)インスタンスの起動
  • 2. インスタンスの起動(7/17)インスタンスの起動
  • 2. インスタンスの起動(8/17)インスタンスの起動
  • 2. インスタンスの起動(9/17)インスタンスの起動
  • 2. インスタンスの起動(10/17)インスタンスの起動
  • 2. インスタンスの起動(11/17)インスタンスの起動
  • 2. インスタンスの起動(12/17)インスタンスの起動
  • 2. インスタンスの起動(13/17)インスタンスの起動
  • 2. インスタンスの起動(14/17)インスタンスの起動 ssh,httpを選択
  • 2. インスタンスの起動(15/17)インスタンスの起動
  • 2. インスタンスの起動(16/17)インスタンスの起動
  • 2. インスタンスの起動(17/17)起動中
  • 3. sshでインスタンスに接続(1/4)Public DNSの確認(コピー) Mac→cmd + c Windows→ctrl + c
  • 3. sshでインスタンスに接続(2/4) ターミナルの起動→ssh接続 【Mac::Terminal】 cmd + vchmod 600 ~/Downloads/example.pemssh -i ~/Downloads/example.pem ec2-user@ec2-xxx-xxx-xxx-xxx.ap-northeast-1.compute.amazonaws.com 【Windows::TeraTerm】 ctrl + v →
  • 3. sshでインスタンスに接続(3/4)今日のハンズオンに必要なパッケージのインストール sudo yum install -y git httpd php php-amazon-sdk
  • 3. sshでインスタンスに接続(4/4)httpdの起動、自動起動の設定【httpdの起動】sudo /etc/init.d/httpd start 【自動起動の設定】sudo chkconfig httpd on 【httpdの起動の確認】ps -ef | grep httpd 【自動起動の設定確認】sudo chkconfig | grep httpd
  • 4. PHP-SDKを使ってインスタンス情報を取得(1/5)準備 【ファイルの作成】sudo touch /var/www/html/index.php【オーナーの変更】sudo chown ec2-user:ec2-user /var/www/html/index.php【githubからファイルの取得】cd /tmp/git clone https://github.com/kachina/20121217-jawsug-yokohama.git
  • 4. PHP-SDKを使ってインスタンス情報を取得(2/5)ファイルの設置、アクセスキーの編集【ファイルの設置】cp /tmp/20121217-jawsug-yokohama/sample_1.php /var/www/html/index.php【ファイルの編集】vi /var/www/html/index.php
  • 4. PHP-SDKを使ってインスタンス情報を取得(3/5)ファイルの設置、アクセスキーの編集
  • 4. PHP-SDKを使ってインスタンス情報を取得(4/5)ファイルの設置、アクセスキーの編集 EC2::Public DNS Mac→cmd + v Windows→ctrl + v
  • 4. PHP-SDKを使ってインスタンス情報を取得(5/5)ベース環境が完成! 【ベース環境】 【Goal】
  • 5. ELBを使って分散構成を実現(1/41) 【Goal】
  • 5. ELBを使って分散構成を実現(2/41)これまでの分散構成を構築する手順• 【ベース環境】を構築• 【ベース環境】のAMIを作成• AMIから、アベイラビリティゾーンにインスタンスを起動• ELBを作成• ELB配下に、インスタンスを設置
  • 5. ELBを使って分散構成を実現(2/41)これまでの分散構成を構築する手順• 【ベース環境】を構築• 【ベース環境】のAMIを作成• AMIから、アベイラビリティゾーンにインスタンスを起動• ELBを作成• ELB配下に、インスタンスを設置
  • 5. ELBを使って分散構成を実現(2/41)これまでの分散構成を構築する手順• 【ベース環境】を構築• 【ベース環境】のAMIを作成• AMIから、アベイラビリティゾーンにインスタンスを起動• ELBを作成• ELB配下に、インスタンスを設置
  • 5. ELBを使って分散構成を実現(2/41)これまでの分散構成を構築する手順• 【ベース環境】を構築• 【ベース環境】のAMIを作成• AMIから、アベイラビリティゾーンにインスタンスを起動• ELBを作成• ELB配下に、インスタンスを設置
  • 5. ELBを使って分散構成を実現(2/41)これまでの分散構成を構築する手順• 【ベース環境】を構築• 【ベース環境】のAMIを作成• AMIから、アベイラビリティゾーンにインスタンスを起動• ELBを作成 AccessKey,SecretAccessKey• ELB配下に、インスタンスを設置 はどうする?
  • 5. ELBを使って分散構成を実現(2/41)これまでの分散構成を構築する手順• 【ベース環境】を構築• 【ベース環境】のAMIを作成 新機能の『IAM Roles for EC2』で解決!• AMIから、アベイラビリティゾーンにインスタンスを起動• ELBを作成 AccessKey,SecretAccessKey• ELB配下に、インスタンスを設置 はどうする?
  • 5. ELBを使って分散構成を実現(3/41)『IAM Roles for EC2』について• インスタンス起動時にIAM Roleと紐付けることで、対象Roleを適用したインスタン スを起動することが可能 • 全てのEC2インスタンスタイプで利用可能 • 全てのAMIに対応 • VPCに対応 • 北米、南米、ヨーロッパ、アジア太平洋リージョンで対応
  • 5. ELBを使って分散構成を実現(4/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(5/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(6/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(7/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(8/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(9/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(10/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(11/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(12/41)IAM Roleの作成
  • 5. ELBを使って分散構成を実現(13/41) AMIの作成【ファイルの上書き】cp /tmp/20121217-jawsug-yokohama/sample_2.php /var/www/html/index.php
  • 5. ELBを使って分散構成を実現(14/41)AMIの作成
  • 5. ELBを使って分散構成を実現(15/41)AMIの作成
  • 5. ELBを使って分散構成を実現(16/41)AMIの作成
  • 5. ELBを使って分散構成を実現(17/41)AMIの作成
  • 5. ELBを使って分散構成を実現(18/41)AMIの作成
  • 5. ELBを使って分散構成を実現(19/41)AMIの作成
  • 5. ELBを使って分散構成を実現(20/41)AMIの作成
  • 5. ELBを使って分散構成を実現(21/41)AMIの作成
  • 5. ELBを使って分散構成を実現(22/41)インスタンスの起動(1a,1b,1c合計で3台起動) ←問題なく進んだ人はこちら ami-62c87363 途中で詰まってしまった人はこちら↑
  • 5. ELBを使って分散構成を実現(23/41)インスタンスの起動(1a,1b,1c合計で3台起動) 対象リージョンを選択
  • 5. ELBを使って分散構成を実現(24/41)インスタンスの起動(1a,1b,1c合計で3台起動)
  • 5. ELBを使って分散構成を実現(25/41)インスタンスの起動(1a,1b,1c合計で3台起動)
  • 5. ELBを使って分散構成を実現(26/41)インスタンスの起動(1a,1b,1c合計で3台起動) 対象リージョン毎に名前を変更 1a = elb_example_1a 1b = elb_example_1b 1c = elb_example_1c
  • 5. ELBを使って分散構成を実現(27/41)インスタンスの起動(1a,1b,1c合計で3台起動)
  • 5. ELBを使って分散構成を実現(28/41)インスタンスの起動(1a,1b,1c合計で3台起動)
  • 5. ELBを使って分散構成を実現(29/41)インスタンスの起動(1a,1b,1c合計で3台起動)
  • 5. ELBを使って分散構成を実現(30/41)インスタンスの起動(1a,1b,1c合計で3台起動) ここまでを1セットとして AZ毎に1台インスタンス起動
  • 5. ELBを使って分散構成を実現(31/41)インスタンスの起動(1a,1b,1c合計で3台起動)
  • 5. ELBを使って分散構成を実現(32/41)ELBの構築
  • 5. ELBを使って分散構成を実現(33/41)ELBの構築
  • 5. ELBを使って分散構成を実現(34/41)ELBの構築
  • 5. ELBを使って分散構成を実現(35/41)ELBの構築
  • 5. ELBを使って分散構成を実現(36/41)ELBの構築
  • 5. ELBを使って分散構成を実現(37/41)ELBの構築
  • 5. ELBを使って分散構成を実現(38/41)ELBの構築
  • 5. ELBを使って分散構成を実現(39/41)ELBの構築 Mac→cmd+c Windows→ctrl+c
  • 5. ELBを使って分散構成を実現(40/41)ELBの構築
  • 5. ELBを使って分散構成を実現(41/41)完成! 【ベース環境】 【Goal】
  • 動作確認
  • 動作確認
  • 動作確認
  • 6. かたづけ(1/8)ELBの削除
  • 6. かたづけ(2/8)EC2の削除
  • 6. かたづけ(3/8)AMIの削除
  • 6. かたづけ(4/8)Snapshotの削除
  • 6. かたづけ(5/8)Security Groupの削除
  • 6. かたづけ(6/8)Key Pairの削除
  • 6. かたづけ(7/8)IAM Roleの削除
  • 6. かたづけ(8/8)IAM Roleの削除
  • おしまい