** Amazon Web Servicesとはなにか? [#maad7a8b]

- 概要
-- クラウドサービス
- 公式サイト
-- http://aws.amazon.com
- 知識
-- Unix
- 準備
-- AWSアカウント
- 用語
-- EC2(Elastic Compute Cloud):仮想サーバー
-- RDS(Relational Database Service):データベース
-- S3(Simple Storage Service):ストレージ

** 仮想サーバーを立ちあげてみよう [#l438cb45]

+ アカウントコンソールからログインしEC2を選択
+ Asia Pasific (Tokyo)リージョンにてLaunch Enstanceを選択
+ Amazon Linux AMI(64bit)を選択
+ Next: Configure Instance Detailsを選択
+ Instance Type: t1.micro、Availability Zone: ap-northeast-1aを選択
+ Termination Protectionにチェック:停止時オプション
+ Next: Add Storageを選択:デフォルト設定でOK
+ Next: Tag Instanceを選択
+ Valueにインスタンス名「MyWeb1」を入力
+ Next: Configure Security Groupを選択
+ SSH、HTTPをAnywareで設定
+ Launchを選択
+ Create a new key pairを選択しKey pair nameを入力・ダウンロード
+ EC2 Management ConsoleよりInstancesを選択しInstance Stateがrunningになっていることを確認

** 仮想サーバーの詳細を確認しよう [#ded35de1]

- EC2 Management ConsoleよりPublic DNS(URL)、Security groupsを確認
- Stop: EC2の電源停止
- Terminate: EC2の削除(データも削除) 
- Connect: SSH接続コマンドが表示される
- Elastic Block Store: インスタンス作成時に自動的にVolumeが作成 

** 仮想サーバーに接続してみよう [#ze3fe73f]

- ダウンロードした秘密鍵のパーミッションを変更
 $ chmod 600 [秘密鍵]
- Cygwin(Windows7)を使用してログイン
 $ ssh -i [秘密鍵] [Public DNS]
 $ sudo yum update

** 仮想サーバーを設定しよう [#sb5220b5]

- httpd、php、mysqlをインストール
 $ sudo yum -y install httpd php mysql
- Webサーバーの起動、chkconfig設定
 $ sudo service httpd start
 $ sudo chkconfig httpd on
- Webページ作成テスト
 $ sudo vim /var/www/html/index.html
 <html>
 Hello!
 </html>
- PHP、MySQLバージョン確認
 $ php -v
 $ mysql --version

** イメージを作成してみよう [#l25f2f09]

- EC2 Management Consoleよりインスタンスを右クリックしCreate Imageを選択
- Image Name: MyWeb1image
- Create Imageを選択
-- 内部的にはインスタンスを一度ShutdownしSnapshotからAMIが作成される

** IPアドレスを設定してみよう [#td8108e9]

- ShutdownするとPublic DNSが変更される
+ EC2 Management ConsoleのElastic IPsよりAllocate New Addressを選択
+ Addressを右クリックしAssociate Adressを選択
+ インスタンスを選択しAssociateを選択
+ Elastic IPを使ってブラウザ経由でアクセスできるか確認
+ Addressを右クリックしDisassociate AddressでIPアドレスを切り離すことが可能
+ EC2に紐付いていないIPアドレスは課金されるためRelease Addressを選択しアドレスを解放

** バックアップとスペック変更 [#ye982162]

- バックアップの取得
+ VolumesよりCreate Snapshotを選択
+ Name: MySnap
+ Snapshotsにて作成されていることを確認~
- Snapshotからインスタンス作成
+ Snapshotを右クリックしCreate Imageを選択~
- インスタンスのスペック変更
+ インスタンスを右クリックしStopを選択
+ Stateがstoppedになったらインスタンスを右クリックしChange Instance Typeを選択+ 変更後はインスタンスのStartを実施

** データベースを立ち上げてみよう [#x40924c6]

+ RDSを選択
+ TokyoリージョンにてLaunch a DB Instanceを選択
+ Engine: MySQL
+ DB Instance Class: db.t1.micro
+ Multi-AZ Deployment: No
+ Allocated Storage: 5GB -> ミニマム5GB
+ DB Instance Identifier: MyDBInstance
+ Username/Passwordを設定
+ Database Name: MyDB1 -> データベース名(オプション)
+ Availability Zone: ap-northeast-1a ※EC2と同じ
+ Enabled Automatic Backups: yes -> バックアップの有無
+ Backup Retention Period: 1 days -> バックアップの周期
+ Backup Window: No Reference -> バックアップの希望時間 ※デフォルトはUTC
+ Maintenance Window: No Reference -> メンテナンスの希望時間 ※デフォルトはUTC
** スペック変更とEC2からの接続 [#d6347136]

- Endpointを確認 -> EC2接続時に必要
- インスタンス右クリックしModifyよりスペック変更が可能
- EC2からの接続
+ Security Groupsよりdefaultを選択
+ Connection Type: EC2 Security Group
+ EC2 Security Group Name: 接続元EC2のSecurity Group
+ EC2のSecurity GroupのInboundに3306(MySQL)を追加
+ EC2へSSH接続
+ MySQLログイン
 $ mysql -h [Endpoint] -p 3306 -u [Username] -p
 Enter password:
 $ show databases;
 mysql> show databases;

** サーバーを増設してみよう [#g1dd6057]

- サーバー増設手順
+ MyWeb1のAMI(MyWeb2Image)を作成
+ AMIからMyWeb2(AZ:ap-northeast-1c)を作成
+ MyWeb1とMyWeb2にアクセスを負荷分散するためMyLoadBalancerを作成

** ロードバランサーを設置しよう [#m1db598e]

+ Load BlancersよりCreate Load Balancerを選択
+ Load Balancer Name: MyLoadBalancer
+ StatusがOut of serviceからIn Serviceになったことを確認
+ DescriptionよりDNS Nameを確認可能

** ストレージサービスを使ってみよう [#y1f3fac3]

+ S3 Management ConsoleよりCreate Bucketを選択
+ Bucket Nameを記入、Regionを選択 ※Bucket Nameはグローバルで一意
+ Bucketを選択しCreate Folderでフォルダ作成可能
+ PropertiesのLinkが外部からアクセスする際のURL
+ ファイルを右クリックしMake Publicを選択
+ ブラウザ経由で画像が閲覧できることを確認
- SDK(SDK for PHP等)を利用することでAPIでS3を操作可能

** S3でウェブサイトを運用する [#g6f52403]

+ PropertiesよりAdd bucket policyを選択
+ Simple Bucket Policiesより2番目のソースを転記
+ Bucketにバケット名に変更 -> Make Publicの自動化
+ Static Web HostingをEnableに変更
+ Index DocumentとError Docuementを指定
+ EndpointにブラウザからアクセスしIndex Documentが表示されることを確認

** 料金を確認してみよう [#i4641f3b]

+ AWS Management Consoleよりアカウント名のBilling & Cost Managementを選択

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS