AWS

AWS(クラウド)超入門 第1回

はじめに

この記事は【eLV】AWS(クラウド)超入門 第1回のハンズオン資料です。
他の勉強会などで参照頂いたり、そのまま流用(直リン歓迎)して頂いて構いません。
問題点や間違いがあればお手数ですがコメント頂ければ幸いです。

AWSを知ろう

AWSって?

  • アマゾンウェブサービス(AWS)は、2006年に登場したシェア約34%1を誇るクラウドサービス。 
  • 起源はアマゾン(ショッピングサイト)のビジネス課題を解決するために生まれたITインフラ。
  • 自社で培った膨大なサービスを一般に提供。
  • 初期費用なし、最低利用期間なし、無料枠あり。
    • 無料枠だけ利用して即解約も可能。
  • 個人利用からエンタープライズまで様々な規模で利用可。

利用料について

学習方法を知ろう

公式サービス

おすすめ書籍

各種イベントの活用

  • ユーザグループJAWS-UGが熱い!
    • アスキーに専用ページが設けられている JAWS-UG on ASCII
    • 特に毎年3月ごろ開催のJAWSDAYSは超おすすめ!
  • AWS公式カンファレンスAWS Summit Tokyoではハンズオン、活用事例が盛り沢山。
  • doorkeeperやConnpassで検索しても多くの勉強会がヒットします。

おすすめサイト

  • Developers.IO
    • AWSプレミアパートナーであるクラスメソッドさんのブログ
    • AWSの技術情報についてググると大体ヒットする
    • イベントも多数開催

おさえておきたい用語

この記事で登場する用語

用語 読み方 意味
EC2 イーシーツー Amazon Elastic Compute Cloud。スケーラブルな仮想サーバーサービス。
IAM アイアム AWS Identity and Access Management。ユーザーに対してAWSへのアクセスを安全に制御するための仕組み。
CloudWatch クラウドウォッチ Amazon CloudWatch。さまざまなメトリクスを監視、および管理して、それらのメトリクスのデータに基づいてアラームのアクションを設定できるウェブサービス。
VPC ブイピーシー Virtual Private Cloud。インフラストラクチャ、プラットフォーム、および共通のセキュリティと相互接続を共有するアプリケーションサービスによって追加される伸縮性のあるネットワーク。
Region リージョン AWSのサービスを展開している地域を表す。リージョンは最小2個のAZで構成される。
AZ エーゼット、アベイラビリティゾーン availability zone。アベイラビリティーゾーンは1つ以上の独立したデータセンターで構成される。
CloudTrail クラウドトレイル AWS API呼び出しを記録し、ログファイルをユーザーに送信するサービス。

この記事で登場しない用語

用語 読み方 意味
S3 エススリー Amazon Simple Storage Service。容量、ファイル数無制限のオンラインストレージサービス。
RDS アールディーエス Amazon Relational Database Service。クラウド内でリレーショナルデータベースを簡単に設定、運用、およびスケールできるサービス。
ELB イーエルビー Elastic Load Balancing。アプリケーションへのトラフィックを複数のターゲット(EC2インスタンス、コンテナ、IP アドレスなど)に自動的に分散できるサービス。
Lambda ラムダ AWS Lambda。サーバーをプロビジョニングしたり管理しなくてもコードを実行できるサーバレスなコンピューティングサービス。
ElasticBeanstalk エラスティックビーンストーク(スターク) AWS Elastic Beanstalk。コードをアップロードするだけで、キャパシティのプロビジョニング、ロードバランシング、Auto Scaling からアプリケーションの状態モニタリングまで、デプロイを自動的に行ってくれるサービス。
豆の木の意であり、豆の話(ビーンズトーク)ではない。

実践編

AWSアカウントを作ろう

手順は公式サイトを参考にしましょう
AWS アカウント作成の流れ

ポイント

  • クレジットカードが必須(VISAデビットなども利用可)。
  • 登録時に本人確認のための、電話による音声認証があります。 その際、非通知着信を拒否していると電話が受けられず、サポートへの問い合わせ(日本時間平日9:00-18:00)が必要になる場合があるので、事前にスマホなどの非通知着信拒否設定を解除しておきましょう。
  • 個人情報は英語表記で入力します。
    • 英語が苦手な人は住所変換サービスなどを活用しましょう。
  • 1年間の無料枠があるのでアカウントを作っただけではお金は掛からない。
  • AWSの契約アカウントは、後述のIAMアカウントと区別するためルートアカウントと表現する。
  • 管理が不適切だと思わぬトラブルに繋がることもあるので、後始末を忘れずに。
    • EC2インスタンスを削除し、EBSやEIP(固定IP)を削除し忘れた場合など。
    • 後述の料金関連アラームを設定しましょう。
  • 登録時のメールアドレスにはgmailのエイリアスアドレスを利用すると便利。

最初にやること(ルートアカウント)

トラブルを防止するための以下の設定をおすすめします。

セキュリティ関連設定

  1. AWSマネジメントコンソールにログインする。
  2. ルートアカウントのMFAを設定する。
  3. パスワードポリシーを設定する。
  4. IAMユーザ、IAMグループを作成する。

  5. 必要に応じてCloudTrailを有効化する。

    • 過去7日分の記録は事前設定なしで確認可能。
    • S3に保存する場合は課金あり。
    • 仕事で使用するときは全リージョン有効化推奨。

料金関連設定

  1. 請求設定を変更する。
    • 請求設定より下記2点を有効にする。
      • 電子メールで PDF 版請求書を受け取る
      • 請求アラートを受け取る
  2. アカウント情報の設定を変更する。
    • アカウント情報より下記2点を変更にする。
      • お支払通貨の設定をJPYにする
      • IAM ユーザー/ロールによる請求情報へのアクセスを有効にする
    • ※ちなみにアカウント解約もこのページからできます。
  3. 予算を設定する(請求アラーム設定でも良い)。
    • AWS Budgetsにて予算を設定する。
      • 予算の詳細
        • コストまたは使用量を選択:コスト
        • 名前:任意(AWS予算など)
        • 開始日:今日の日付
      • 予算の絞り込み
        • チェックなし
      • 通知
        • 通知のタイミング:現行>1%
        • 連絡電子メール:任意のメールアドレス

IAMユーザでのログイン

  1. マネジメントコンソールにIAMユーザでログインする。
  2. IAMユーザのMFAを設定する。

EC2に触ってみる

  1. リージョンを選択する。
    • 今回はオレゴン(us-west-2)を選択。
  2. EC2インスタンスを作成する。

    • インスタンスの作成を参照。
    • セキュリティグループでhttp(80)を許可する。
    • ユーザデータ2として以下を入力する。
    #!/bin/bash
    yum update -y
    yum install -y httpd24 php56 mysql55-server php56-mysqlnd
    service httpd start
    chkconfig httpd on
    groupadd www
    usermod -a -G www ec2-user
    chown -R root:www /var/www
    chmod 2775 /var/www
    find /var/www -type d -exec chmod 2775 {} +
    find /var/www -type f -exec chmod 0664 {} +
    echo "<?php phpinfo(); ?>" > /var/www/html/phpinfo.php
    
  3. ブラウザでWebページにアクセスしてみる。

  4. インスタンスを削除する。


引用