Membangun Server LAMP dengan Amazon EC2 _ CloudIndonesiA.pdf
Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
-
Upload
masaru-tomonaga -
Category
Technology
-
view
5.942 -
download
3
description
Transcript of Amazon Web Service 基本の「き」 ~Amazon EC2でWebサーバを公開してみよう!~
Amazon Web Service基本の「き」
~Amazon EC2でWebサーバを公開してみよう!~
2013年8月17日朝永 将
tomonaga (at) birdsong.jp
自己紹介• LAMP一筋13年
• 2010年~ 株式会社NEO COSMIC
- ビジュアルノベルアプリ『牡丹の庭』他、11タイトルの開発
• 2013年~ フリーランス- ソーシャルアプリ開発
- 講師・ITアドバイザー
• 小鳥好き- Facebook: masaru.tomonaga
Agenda
• AWSログイン
• 秘密鍵(Key Pair) と Security Groupの設定
• Amazon EC2 インスタンス起動
• SSHログイン
• Webサーバ(Apache)のインストール
• メールアドレス/パスワードの入力
• MFA(多要素認証)※設定した方のみ
• Management Console ホーム画面
• EC2 Dashboard 画面
AWSログイン
Management Consoleホーム画面
• AWS各サービスの一覧(EC2, RDS etc)
• ヘッダーメニュー “Services”からも…
• アナウンスとサービスの状態
• 氏名をマウスオーバーするとアカウント情報が見られる
EC2 Dashboard
• Amazon EC2の管理画面
• リソースの使用状況
• サービス稼働状態
- Region
- Availability Zone
Region
• US - バージニア, オレゴン, カルフォルニア
• EU − アイルランド
• Asia - シンガポール, 東京, シドニー
• South America - サンパウロ
秘密鍵の設定• Key Pairを作成する。 (.pemファイル)
• Key Pair Nameは任意の名前でOK
• 絶対に紛失したり平文でネットに流さない!
• ダウンロード後、.sshフォルダに移動する
$ mv ~/Downloads/aws_tokyo.pem ~/.ssh
$ chmod 400 ~/.ssh/aws_tokyo.pem
秘密鍵の設定
• PCで公開鍵を作成して Key Pair をインポートすると、パスフレーズ付きのSSH
ログインとなり、より安全。
➡ssh-keygenコマンドの使用
秘密鍵の設定 注意点
• (Mac)パーミッションの設定
- .pemファイルは400に変更する!
- .sshフォルダは700になっていますか?
秘密鍵の設定 注意点
• (Windows) PuTTyで接続する場合は、PuTTygenでppk形式へ変換する!
- PuTTyごった煮版のインストール
• Tera Term, Cygwinでは変換不要
Security Groupの設定• ファイアウォール機能
• デフォルトでは全ての通信を拒否
• ruleを指定(今回は SSH と HTTP)
• Source IPを指定 (今回は 0.0.0.0/0)
- 1個に限定する場合は vvv.xxx.yyy.zzz/32
Security Groupの設定
• 全てのRuleを追加したら・・・
✓Apply Rule Changes を必ず押す!
✓押さないと変更が適用されない
EC2 インスタンス起動
• AMI = Amazon Machine Image
• サーバのイメージ- OSや同梱されているソフトにより、さまざまなAMIがある。
EC2 インスタンス起動
• ☆印のAMIは、microタイプ1台に限ってインスタンス利用料金が無料。(※アカウント作成から1年間)
• Amazon Linux AMI 64bitを選択
EC2 インスタンス起動
• Instance details
• Number of Instances - 作成する台数
• Instance Type - スペック
• Availability Zone - 今回は”a”を選択
- 設計によっては、事前に決めた方が良い場合も・・・
EC2 インスタンス起動
• Key Pairの選択
• Security Groupの選択
• 確認画面
• Launch - State=running(緑色)で起動完了!
EC2 インスタンス管理
• インスタンスを右クリック
• Reboot - 再起動
• Stop - 停止
• Start - 起動
• Terminate - 削除!
EC2 インスタンス管理
• 誤って Terminate しないように Protect
を掛ける!
• Change Termination Protectionで切り替える!
Amazon EBS
• Elastic Block Strage
• EC2のストレージとして利用
• 1個のEC2インスタンスに複数のEBSをアタッチできる。
• スナップショットが取れる
Elastic IP (EIP)
• 固定IPアドレス
• EIPを使わない場合は、EC2を停止→起動でIPアドレスが変わる。
• 払い出し→取り付け / 取り外し→解放
• 払い出したまま取り付けないと課金対象
snapshot
• 任意のタイミングでEBSのバックアップが取れる。
• 基本的にEC2を止めなくても取れるが、プロダクトの場合は影響を考える。
• 取得したsnapshotからEBS作成可能。
SSHログイン(Mac)
• ターミナルを使用
• ssh -i ~/.ssh/aws_tokyo.pem ec2-user@インスタンスのIPアドレス
• IPアドレスは、インスタンス一覧から!
• 初回のみfinger printの確認
SSHログイン(Win)
• PuTTy, TeraTerm, Cygwinを使用
• PuTTy - PuTTygenでppkファイル作成
• TeraTerm - pemファイルを設定
• Cygwin - Macと同じ手順でOK
• 初回のみfinger printの確認
SSHログイン• ログインできない場合(1)
✓Security GroupでSSH(port22)は許可済み?
✓秘密鍵ファイルへのpathは通っているか?
✓秘密鍵ファイルのパーミッションは400?
✓ユーザ名はec2-user?(rootで直接ログイン不可)
SSHログイン• ログインできない場合(2)
✓入力したIPアドレスorホスト名の確認
‣ digコマンドで正引きor逆引きしてみる
$ dig ホスト名
$ dig -x IPアドレス
SSHログイン• rootのパスワードを設定する
$ sudo passwd root
• パスワードを2回入力
$ su
# exit
Apacheインストール
• yumを使用
$ sudo yum install httpd
Apacheインストール• 起動
$ sudo service httpd start
$ ps aux | grep httpd
• ブラウザから確認
• http://インスタンスのIPアドレス
Apacheインストール• 自動起動の設定
$ sudo chkconfig httpd --list
$ sudo chkconfig httpd on
• 設定されているか確認$ sudo chkconfig httpd --list
オペミスを防止するために!
• miss operation
• 内容によっては大きな障害になる
• クラウドは操作が簡単
• 対策は・・・?
オペミスを防止するために!
• バックアップを取る(EBS,Spapshotの活用)
• 定期的なリカバリの訓練‣ 本当にバックアップが取れているか確認も含めて…
• 作業計画を立てる。作業計画書を作る‣ 他の人にレビューしてもらう
最後に
• exitでインスタンスからログアウト
• インスタンスを停止しましょう
次回予告
• 基本の~ほ~
• Amazon RDS
• MySQL!
• 開催日時は改めてお知らせします。
ほぼ毎週日曜います(9月8日除く)
復習したい方!
質疑応答
今日はありがとうございました!