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.

AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜

10,726 views

Published on

JAWS DAYS 2015 初心者向けのハンズオン資料です。
AWSのアカウントを作成して仮想サーバーを立ててみます。

Published in: Technology
  • Be the first to comment

AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜

  1. 1. AWS概要からサインアップまで! ∼アカウント開設 & 仮想サーバを立ててみる∼
 
 http://bit.ly/jawsho-ec2
  2. 2. AWSアカウントを作成する
  3. 3. AWSアカウント作成 AWSで作業を行うために、アカウントを作成します。 ご用意いただくもの インターネットにつながったPC クレジットカード(アカウント作成中に番号を登録します) 携帯電話(アカウント作成中に使用します) 作成手順 http://aws.amazon.com/jp/register-flow/ に沿って進めてください アカウント作成後、管理ツールにログインできれば完了です http://console.aws.amazon.com/
  4. 4. ハンズオンのアジェンダ Amazon EC2の基本操作 Amazon EC2とは? EC2インスタンスを起動する EC2インスタンスを操作する 固定IPアドレスを割り当てる”Elastic IP” SSHでログインしApacheをインストールする
  5. 5. Amazon EC2の基本操作 Amazon EC2とは?
  6. 6. Amazonが提供するクラウドの特徴 ワンクリックで、  数分後にはITリソースが手元に オンデマンドで、  必要な時に必要なだけ。初期投資ゼロ ITインフラの制約に縛られることなく、  ビジネス成長に集中
  7. 7. コンピュート処理 EC2 アマゾンが提供する 30以上のサービスのうちのひとつ グローバルインフラ リージョン、アベイラビリティゾーン、エッジロケーション AZRegion お客様のアプリケーション 分析 EMR, Kinesis, Data Pipeline アプリケーションサービス AppStream, Cloud Search, SWF,
 SQS, SES, Elastic Transcoder データベース RDS, DynamoDB,
 ElastiCache, RedShift ストレージ&CDN EBS, S3, Glacier,
 Storage Gateway, CloudFRont ネットワーク VPC, Route 53, Direct Connect 認証とログ IAM, CloudTrail, CloudHSM 監視 Cloud
 Watch Web管理画面
 Management Console デプロイと自動化
 Elastic Beanstalk,
 Cloud Formation, OpsWorks コマンドライン
 インターフェース CLI ライブラリ & SDKs
 Java, PHP, .NET, 
 Python, Ruby , Auto Scaling, Elastic
 Load Balancing, Workspaces 仮想サーバ
  8. 8. 1_Blank いつでも、必要なだけ、安価に 電気と同じように利用できる 仮想サーバーを提供するサービス Amazon EC2とは?
  9. 9. EC2の特徴その1: 初期投資が不要 物理的なスペース 配線 電力 冷却 ネットワーク ラック サーバ ストレージ 認定取得 労働力 オンプレミス ¥0 利用開始にかかる費用 クラウドコンピューティング
  10. 10. EC2の特徴その2: 完全従量課金 サーバー数 平常時使用 リソース量 Thur. Fri. Sun. Mon. Tue.Sat.Wed. 通常準備するインフラ=必要以上に高額なインフラコスト AWSの費用イメージ=実際に使った分だけ後払い ピーク時使用 リソース量
  11. 11. EC2の特徴その3: スケールアップ・ダウンが容易 EC2サーバの数 4/12/2008 Facebook上での公開 トラフィックの急増にも対応
 (ピーク時は5000サーバー) 4/14/2008 4/16/2008 4/18/2008 4/20/2008
  12. 12. EC2の特徴その4: 5分で用意できる 新しいインフラの構築は 複雑かつ遅くなりがち 障害対応・維持負担も高い ⇓ 5分で新しいインフラを 用意。維持管理なし ⇓ なるべく多くの ビジネスニーズに、 「できる」と答えられる 新しいデプロイ環境 新しいテスト環境 障害時の代替サーバー用意 メディア掲載による
 アクセス増対応 1,000台のサーバを
 追加・削除
  13. 13. 起動場所が選べる 任意のAZにEC2インスタンスを配置できる リージョン = データセンター群 現時点で世界9か所に存在 ユーザーは任意のリージョンを選択可能
 (GovCloud以外) リージョンは、複数のデータセンター(アベイラビリティー ゾーン: AZと呼ぶ)で構成 アベイラビリティーゾーン (AZ) お互いに、地理的、電源的、ネットワーク的に分離されており、 地震面、洪水面も考慮 AZ間は高速専用線でつながれている
 ( データ転送量も安い) リージョン間はインターネット経由 リージョン (東京) アベイラビリ ティゾーン A EC2 米国
 東海岸 米国
 西海岸① 米国
 西海岸② ヨーロッ パ シンガポー ル サンパウ ロ アベイラビリ ティゾーン B シドニー Gov
 Cloud EC2
  14. 14. スペックが選べる、後から変更できる 任意のインスタンスタイプ(スペック)を選択可能 CPU、メモリのスペック毎に用意 後からタイプを、変更することもできる Medium Large XLarge 2XLarge 4XLarge 8XLarge 256 128 64 32 16 8 4 1 1 2 4 8 16 32 vCPU (Hyper Threading含む) Memory(GB) m1.small t1.micro M3 – 汎用 C3 – コンピューティング最適 R3 – メモリ最適 I2 – ストレージ最適 G2 – GPU搭載 10 GB Inter-Instance Network http://aws.amazon.com/jp/ec2/instance-types/
  15. 15. 多様なOS/言語/ミドルウェアが選べる オペレーティングシステム 言語 & ライブラリ アプリケーション
  16. 16. Amazon EC2の基本操作 EC2インスタンスを起動する
  17. 17. EC2インスタンスを作る 今回は以下のインスタンスを作成していきます。 リージョン (配置場所) アジアパシフィック(東京)リージョンに作成したVPC内の
 パブリックサブネット(アベイラビリティーゾーンA) インスタンスタイプ (サーバのスペック) マイクロインスタンス (T1 Micro) インスタンスの数 (サーバの台数) 1つ AMI (サーバのベースイメージ/テンプレート ) Amazon Linux AMI 64bit インスタンスへのアクセス方法 新規作成するキーペア「demo-key」を使ってログイン セキュリティグループ (ファイアーウォール) 22 (SSH)と80 (HTTP)にのみ誰でもアクセス可能
  18. 18. インスタンスへのアクセス方法は 認証 EC2インスタンスはSSHでログインして操作する SSHでのログインにはキーペアによる 認証を用いる 認証はユーザ名・パスワードの認証よりも安全な認証方式 公開 ・秘密 のペアが合っている場合のみログイン可能 公開ProdKey DevKey LabKey コピー
  19. 19. 参考:キーペアとは? キーペアを作成すると、1組の公開 ・秘密 が作成される 公開 はAWS側で保管。LinuxのEC2では起動にインスタンスにコピー。 秘密 はローカル側で保管。Linuxではログイン時に必要。Windowsインスタンスの場合、パ スワードの復号化に利用。 キーペアの作成 公開 は、AWSに よってEC2起動時 に埋め込まれる 秘密 は、デスク トップにダウンロー ドされる EC2インスタンスは 2つの を用いる
  20. 20. セキュリティグループでアクセス制御 インスタンスへのトラフィックを制限するファイ アーウォール機能 デフォルトでは全トラフィックが閉じており、外 からアクセスできない 必要な受信アクセスに対してアクセスルールを定 義する プロトコル( TCP/UDP) 宛先ポート アクセス元IP / Security Group 設定したルール以外の受信トラフィックは破棄さ れる ルールをひとまとめにしたテンプレートを セキュ リティグループと呼ぶ EC2 
 インスタンス ポート22 (SSH) ポート80 (HTTP) EC2ファイアウォール セキュリティ グループ ポート25 (SMTP)
  21. 21. 参考: セキュリティグループの使い方 インスタンスの用途に応じたセキュリティグループを用意する Webサーバ用、DBサーバ用、メールサーバ用等 アクセス元を指定して限定 アクセス元にセキュリティグループも設定可能 Webサーバ Webサーバ DBサーバ sg-web sg-web sg-db Webサーバ sg-xxx 3306 3306 22,80 22,80 3306 OK OK OK OK NG sg-web 22: 0.0.0.0/0 80: 0.0.0.0/0 sg-db 22: 0.0.0.0/0 3306: sg-web
  22. 22. AWS Management Consoleにログインする AWSのホームページ(http://aws.amazon.com/)から、管理コンソール 「AWS Management Console」にログインします。 1. [アカウント/コンソール] をクリック 2. [AWS マネジメント コンソール] をクリック
  23. 23. AWS Management Consoleにログインする 作成したAWSアカウント情報を入力してサインインします。 1. メールアドレス入力 3. パスワード入力 4. クリックしてサインイン 2. クリック
  24. 24. AWS Management Consoleにログインする サインインするとAWS Management Consoleのホーム画面が表示されま す。 1. [ホームに戻る] ボタン AWS各サービスメニュー
  25. 25. Amazon EC2 管理メニューを開く EC2の管理ページに移動します。 1. [Services]をクリック 3. [EC2]をクリック 2. [All AWS Services]を選択
  26. 26. リージョンを変更する アジアパシフィック(東京)リージョンに変更します。 2. [Asia Pacific (Tokyo)] を選択 1. リージョン選択メニュー
  27. 27. インスタンスを起動する インスタンスを起動するために、起動ウィザードを立ちあげます。 1. [EC2 Dashboard] を選択 2. [Launch Instance] をクリック
  28. 28. AMI(マシンイメージ)を選択する サーバーのベースとするAMIと呼ぶテンプレートを選択します。
 ここでは、Amazon Linux AMI (PV) の64-bitを選択します。 1. [Select] をクリック
  29. 29. インスタンスタイプを選択する サーバーのスペックに当たるインスタンスタイプを選択します。
 今回はMicro Instance (t1.micro)を選択し、「Next: Configure Instance Details」をクリックし次に進みます。 1. [Select] をクリック 1. [Micro instances] をクリック 2. [Next: Configure Instance
 Details]をクリック
  30. 30. 台数とデータセンターの場所を選択する 起動するインスタンスの台数と立ち上げるデータセンターの場所を選択します。 1. [1] のままに 2. [vpc-xxxx (172.31.0.0/16)]を選択 3. [ap-northeast-1a]と
 なっているサブネットを選択 4. [Next: Add Storage] をクリック
  31. 31. ストレージの設定をする 初期設定で起動ドライブにあたるルートでバイスが設定されているので、特に 何も行わず、内容を確認し次に進みます。
 (ストレージは起動後いつでも追加可能です。) 1. [Next: Tag Instance]をクリック
  32. 32. インスタンスにタグを設定する 仮想サーバーひとつひとつにタグを付け、人間が識別しやすいようにすること ができます。Keyに「Name」、Valueに「WebServer」と入力してみます。 1. [Name]である事を確認 2. [WebServer]と入力 3. [Next: Configure Security Group]をクリック
  33. 33. セキュリティーグループを作成・設定する セキュリティーグループを設定します。「Create a new security group」を 選択します。 1. [Create a new security group]を選択
  34. 34. セキュリティーグループを作成・設定する 今回はsshとhttpのポートのみにどこからでもアクセスできるように設定し ます。sshは設定済みなので、httpを追加します。 1. [Add Rule]をクリック 2. 追加されたセレクトボックス
  で[HTTP]を選択 3. [Anywhere]を選択 4. [Review and Launch]をクリック
  35. 35. 設定内容を確認する 今まで設定した内容を確認できます。問題なければ「Launch」をクリック します。 1. [Launch]をクリック
  36. 36. キーペアーを作成する 「demo-key」と入力し、「Download Key Pair」をクリックすると、
 「demo-key.pem」というファイル名の秘密 がダウンロードされます。
 ファイルがダウンロードされた事を確認して、場所を覚えておいてください。 1. [demo-key]を入力 2. [Download Key Pair]をクリック
  37. 37. インスタンスを起動する キーペアーのダウンロードが完了すると「Launch Instances」ボタンが有効に なるので、クリックしインスタンスを起動します。 1. [Launch Instances]をクリック
  38. 38. 起動したインスタンスを確認する 「Launch」ボタンをクリックすると完了画面が表示されます。右下の「View Instances」ボタンをクリックして、起動したインスタンスを確認します。 1. [View Instances]をクリック
  39. 39. 起動したインスタンスを確認する インスタンス一覧ページに起動したインスタンスが表示されていることを確認します。 Instance Stateが「pending」から「running」に変わり、Status Checksが「2/2 check passed」に変わったら、起動完了です。 作成したインスタンス一覧が表示される。 インスタンスをクリックすると下に詳細情報が表示される。
  40. 40. 起動したインスタンスを確認する インスタンスタイプ、セキュリティグループ、キーペアを確認します。 1. Instance typeが[t1.micro]である事を確認 2. Security Groupsが [launch-wizard-1] であることを確認。 [view rules]を
 クリックすると設定 されたルールを
 確認可能 3. Key pair nameが
 [demo-key]である ことを確認
  41. 41. 起動したインスタンスを確認する インスタンスのDNS名、IPアドレスを確認します。 Public DNS
 (Elastic IPが有効な時は Elastic IPが表示される) Public DNS Elastic IP Private DNS
  42. 42. Amazon EC2の基本操作 EC2インスタンスを操作する
  43. 43. 実行中・停止・終了のステータスがある 起動したインスタンスは3つの状態を持つ Running : 実行中、課金される。Stop処理で Stoppedへ遷移。 Stopped : 停止中、課金されない。Start処理で再度Runningへ遷移。 Terminated: 終了。Terminate処理で遷移。もうStop/Startはできない。 AMI Running 実行中 Terminated 終了 Stopped 停止中 StartStop Terminatelaunch Terminate
  44. 44. EC2インスタンスを停止する インスタンスを使わない時は停止してコストを削減できます。 1. 停止したいインスタンスを右クリック 2. [Actions] –
 [Stop]をクリック
  45. 45. EC2インスタンスを停止する インスタンスを使わない時は停止してコストを削減できます。 Instance Stateが[running]から [stopped]に変われば停止状態
  46. 46. EC2インスタンスを再開する 停止状態のインスタンスは必要になったらすぐに再開できます。 1. 再開したいインスタンスを右クリック 2. [Actions] –
 [Start]をクリック
  47. 47. Amazon EC2の基本操作 固定IPアドレスを割り当てる
 “Elastic IP”
  48. 48. 2つのIPアドレスが割り当てられる デフォルトでは起動時に動的な2つのアドレスが割りあてられる Public DNS (*.amazonaws.com) と Public IP インターネットから接続可能 Private DNS (*.internal) と Private IP 同一リージョン内での通信に利用。インターネットから接続不可 Public DNS/IPはインスタンスを停止し、後起動し直すと、
 別のものが割りあてられる。 Publicな固定IPアドレスをオプションで付けられる Elastic IP Addresses (EIP)と呼ぶ 稼働しているEC2インスタンスに、瞬時に付け外しが可能 インスタンスにアサインしているときは料金はかからない
  49. 49. 固定IPアドレスを取得する 固定IPアドレスを取得するためにElastic IPのページへ移動します。 1. [NETWORK & SECURITY] – [Elastic IP]をクリック 2. [Allocate New Address]をクリック
  50. 50. 固定IPアドレスを取得する EC2用の固定IPアドレスを振り出します。 1. [Yes, Allocate] をクリック 2. [Close] をクリック →
  51. 51. 固定IPアドレスをインスタンスにひも付ける 振り出した固定IPアドレスを作成したインスタンスにひも付けます。 1. ひも付けたい固定IPアドレスをクリックしてチェック 2. [Associate Address]をクリック
  52. 52. 固定IPアドレスをインスタンスにひも付ける ひも付けたいインスタンスを選択します。 1. クリックして候補から
   [WebServer]を選択 2. [Associate] をクリック
  53. 53. 固定IPアドレスをインスタンスにひも付ける ひも付けが完了すると、Instance IDにひも付けられたインスタンスのIDと タグ名が表示されます。 1. インスタンスにIPアドレスがひも付けられた
  54. 54. インスタンスのIPアドレスを確認する Instancesのページでも確認できます。 1. [INSTANCES] – [Instances]をクリック 2. 確認したいインスタンスをクリック 3.固定IP (Elastic IP)が確認できる
  55. 55. Amazon EC2の基本操作 SSHでログインしApacheを
 インストールする
  56. 56. インスタンスへSSHログイン 必要なもの インスタンス起動時に作成したキーペア名に対応する秘密 ファイル
 (demo-key.pem) インスタンス起動後に確認したインスタンスのPublic DNS名 SSHログイン方法 接続先ホスト:インスタンスのPublic DNS名 ログインユーザ名: ec2-user 接続方法:公開 暗号方式(秘密 ファイルを指定)
  57. 57. インスタンスへSSHログイン (Windowsから) Windowsからログインする場合 TeraTerm (ttssh.exe) を起動 http://sourceforge.jp/projects/ttssh2/ 接続するインスタンスのElastic IPを入力 SSH2を指定 → 1 2 3 4
  58. 58. インスタンスへSSHログイン (Windowsから) → ユーザ名: ec2-user KeyPair作成時に取得した秘密 ファイルを選択して接続 → 1 2 3 5 6 7 4. すべてのファイル(*.*)を選択する (選択しないと が表示されない)
  59. 59. インスタンスへSSHログイン (Macから) Macからログインする場合 Terminalからコマンドラインでログイン (事前にパーミッションを600に!) $ chmod 600 ~/Downloads/demo-key.pem $ ssh -i ~/Downloads/demo-key.pem ec2-user@インスタンスの Public DNS名
  60. 60. インスタンスへSSHログイン (ブラウザJavaから) ブラウザからログインする場合 (事前にJavaのインストールが必要) 1 2 3 4 5 6
  61. 61. SSHログインがうまくいかない場合 インスタンスは完全に起動完了しているか? 起動時に指定した内容どおりに起動しているか? 指定したSecurity Groupは 22(SSH)を有効にしているか? 指定したKey Pairと対応する ファイルを指定しているか? 秘密 ファイルのパーミッションは600になっているか?(Macから)
  62. 62. Webサーバセットアップ 以下のコマンドを実行しWebサーバ(httpd) をインストールする 以下のコマンドを実行しWebサーバ (httpd) を起動する ブラウザのアドレスバーにPublic DNSを入力して起動を確認 http://インスタンスのPublic DNS名/ うまく見えない場合は? Security Groupで 80(HTTP)が有効になっているか? $ sudo yum -y install httpd $ sudo service httpd start
  63. 63. Next Step!
  64. 64. AWS クラウドサービス活用資料集 AWSを活用していくのに有用な資料がまとめられた宝の山 http://aws.amazon.com/jp/aws-jp-introduction/

×