初心者向けwebinar aws上でのファイルサーバ構築

86
【初心者向けWebinarAWS上でのファイルサーバ構築 2014/12/09 ※2015/11/12 アップデート アマゾン データ サービス ジャパン株式会社 技術本部 ソリューションアーキテクト 舟崎健治

Upload: amazon-web-services-japan

Post on 08-Jul-2015

4.800 views

Category:

Technology


3 download

DESCRIPTION

初心者向けWebinar AWS上でのファイルサーバ構築

TRANSCRIPT

Page 1: 初心者向けWebinar AWS上でのファイルサーバ構築

【初心者向けWebinar】AWS上でのファイルサーバ構築

2014/12/09※2015/11/12 アップデート

アマゾン データ サービス ジャパン株式会社技術本部 ソリューションアーキテクト舟崎健治

Page 2: 初心者向けWebinar AWS上でのファイルサーバ構築

初心者向けWebinar へようこそ!

• 参加者は、自動的にミュートになっています

• 質問を投げることができます!– GoToWebinarの仕組みを使って、書き込んでください

– ただし環境によっては、日本語の直接入力ができないので、お手数ですが、テキストエディタ等に打ち込んでから、コピペしてください

– 最後のQ&Aの時間で、できるだけ回答させて頂きます

– 書き込んだ質問は、主催者にしか見えません

• Twitterのハッシュタグは#jawsugでどうぞ

Page 3: 初心者向けWebinar AWS上でのファイルサーバ構築

初心者向けWebinarのご紹介

• 2014年10月より毎月開催しています。

• 過去のWebinar資料– AWSクラウドサービス活用資料集ページで公開しています。

http://aws.amazon.com/jp/aws-jp-introduction/

• イベントの告知– 国内のイベント・セミナースケジュールページにてご案内しています。

http://aws.amazon.com/jp/about-aws/events/

(オンラインセミナー枠)

Page 4: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 5: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 6: 初心者向けWebinar AWS上でのファイルサーバ構築

本Webinarでのファイルサーバの定義について

• 主に静的コンテンツを格納するサーバ、またはサービス

• NFS(CIFS)マウントする方法以外にも、オブジェクト単位でHTTP(S)で配信する方法も含む

Page 7: 初心者向けWebinar AWS上でのファイルサーバ構築

オンプレミスでファイルサーバを構築するときの悩み

• ディスク容量の不足

• バックアップ等のメンテナンスの手間がかかる

• 保守期限満了に伴うハードウェアのリプレイスの検討

Page 8: 初心者向けWebinar AWS上でのファイルサーバ構築

なぜAWS上でファイルサーバを構築するのか?

• 保存した分だけの従量課金

• 必要に応じてディスク拡張が可能– ディスク容量圧迫の心配からの解放

• セキュア

• サーバーハードウェアのメンテナンス不要

• データの耐久性の向上

• データを保存するだけでなく、データ分析等の用途で活用しやすい

Page 9: 初心者向けWebinar AWS上でのファイルサーバ構築

要件に応じて、AWS上でのいくつかの構成パターンが考えられます。それぞれのメリット・デメリットについて本Webinarでお伝えします。

Page 10: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 11: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon EC2(Elastic Compute Cloud)

1任意のゾーンに分散配置可能

リージョンアベイラビリティ

ゾーン A

EC2

アベイラビリティゾーン B

EC2

EC2

• 数分で起動可能な仮想サーバ

• 1時間ごとの従量課金で利用可能

• スケールアップ/ダウン、アウト/インが即座に可能

• Windows, Linuxなどx86-64アーキテクチャのOS利用可能

– Windowsライセンスも従量課金

• OS以上はお客様の自由

– お手持ちのソフトをそのまま利用

Page 12: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon EBS(Elastic Block Store)ボリューム

EC2インスタンスに仮想外付けされたブロックレベルのストレージ

サイズは1GB単位で~16TBまでサイズ/期間/IOで課金される

複数EBSを1 EC2インスタンスにアタッチ可能

1つのEBSを同時に複数のEC2インスタンスにattach不可

データは永続的に保存される

アベイラビリティゾーン(AZ) に存在

他のEC2インスタンスに付け替え可能

Region

Availability Zone - a

EBS EBS EBS

Availability Zone - b

EBS

EBS

Amazon Simple

Storage Service (S3)

EBS

Snapshot

EC2 EC2

Page 13: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon EBS スナップショット

Amazon S3に保存された EBSボリュームのポイントインタイムバックアップコピー

EBSスナップショットは増分バックアップ(最後に作成されてから、変更のあるブロックのみ保存される)

EBSスナップショットからEBSボリュームを同じリージョン内で作成可能

リージョン間でコピー可能

Region

Availability Zone - a

EBS EBS EBS

Availability Zone - b

EBS

EBS

Amazon Simple

Storage Service (S3)

EBS

Snapshot

EC2 EC2

Page 14: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon S3(Simple Storage Service)

低コスト アップロード無料

格納料金 1GB/月3.3円 (100円換算、2014/11/04時点)

耐久性 99.999999999%の耐久性

3か所以上への自動複製保存

インテグリティチェックおよび自動復旧

データを自動複製

リージョン

EC2

Availability Zone

セキュリティ

データ転送はすべてSSL通信

同一リージョン内のみでの保管

サーバサイド暗号化オプション(AES256)

柔軟性

格納容量無制限

多くの3rdベンダー製品がサポート

Page 15: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon CloudFront

• ユーザからのアクセスを、最も近いエッジサーバに誘導することで、ユーザへの配信を高速化

• エッジサーバでは、コンテンツのキャッシングを行い、オリジンに負荷をかけず効率的に配信

レスポンス向上 負荷軽減

キャッシュコンテンツ

4.エッジにコンテンツを送信

1.最適なエッジにリクエスト

3.エッジにキャッシュがなければオリジンにリクエスト

2.キャッシュを配信5.取得したコンテンツを配信しキャッシュ

AmazonCloudFront

(Edge Location)

オリジン配信サーバ

クライアント

Page 16: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon VPC(Virtual Private Cloud)

• クラウド内にプライベートネットワークを構築可能

• 企業イントラの延長/1拠点としてAWSを利用

リージョン

VPC

イントラプライベートサブネット

パブリックサブネット

インターネット

分離したNW領域を作成

ゲートウェイ

VPN接続専用線

Page 17: 初心者向けWebinar AWS上でのファイルサーバ構築

Elastic Network Interface(ENI)

• VPC上で実現する仮想ネットワークインタフェースを複数持てる機能

• 以下をENIに紐づけて維持可能– Private IP

– Elastic IP

– MACアドレス

– セキュリティグループ

• インスタンスタイプによって割り当て可能な数が異なる。

• 他のインスタンスに付け替え可能

EC2ENI

ENI

Page 18: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon Route 53

• 拡張性と可用性に優れたDNS権威サービス

• ヘルスチェック機能を持つ

Users DNS Resolver

Route 53

www.example.comはどこ?

知らないので権威サーバに尋ねます

1.2.3.4 1.2.3.4

53

Page 19: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS SDK/CLI

EC2起動、停止

S3アップロードダウンロード

ManagementConsole (Web)

ユーザ名・パスワード

AWS管理者・オペレータ

各言語ごとのSDK アクセスキー・

シークレットキー

AWS CLI

>

REST API

Route 53登録、変更、削除

Page 20: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon WorkDocs

• フルマネージド型の企業向け文書保存・共有サービス– マルチデバイス対応

– ファイルの共有が可能

– ファイルに対するフィードバックの共有が可能

– サーバの構築不要

共有されたドキュメントにはここからアクセス

ドラッグアンドドロップでファイルのアップロードが可能

Page 21: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 22: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS上でのファイルサーバ活用パターン

• Amazon S3を静的コンテンツ格納ストレージとして活用– ※Amazon S3をマウントする形ではありません。(後述)

• NFSサーバをEC2インスタンス上で構築

Amazon S3 Amazon EC2

Page 23: 初心者向けWebinar AWS上でのファイルサーバ構築

なぜオンプレミスではNFSサーバを多く活用していたかについて考える

• コンテンツを集中管理可能

• リモートからマウントするだけ

• RAIDでミラーリングすることで、データ喪失を防ぐ– ディスク単位でミラーリング

– NFSサーバ自体の冗長化は必要に応じて実施

Page 24: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS上でも勿論NFSサーバを構築可能です。オンプレミスで構築していたNFSベースのシステムをそのままAWS上で稼働させることが出来るパターンが多いので、NFSサーバをAWS上に構築されるケースは多くあります。

Page 25: 初心者向けWebinar AWS上でのファイルサーバ構築

一方でNFSサーバを活用するときには、気を付けなければいけない点もあります。

Page 26: 初心者向けWebinar AWS上でのファイルサーバ構築

NFSサーバのデメリット

• スケーラブルなシステムにおいては、NFSサーバがボトルネックになりやすい。

• NFSサーバ自体を冗長化しないと、SPOFになってしまう。

NFSサーバ

Web Web Web WebWeb Web Web Web

NFSサーバ

レプリケーション

・・・・・・・

Page 27: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS上での最適な静的コンテンツファイル格納先について

• 要件に応じて、選択されるストレージは異なる

• ですが、Amazon S3を活用できるのであれば、Amazon S3を使う形を推奨

Amazon S3

Page 28: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 29: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon S3のメリット

• 耐久性– 保存すると自動で複数の施設に冗長化される

• アクセス増加時にも高負荷に耐えられる設計– 秒間数千リクエストを常に送っているケースもあり。

• 拡張性– 保存できる合計容量に制限なし。ディスク容量圧迫の心配不要

• 安全性– SSLでのデータ転送と、アップロード後のデータの自動暗号化をサポート

• 低コスト– データ保存量1カ月あたり$0.033/月– 静的コンテンツ格納用に仮想サーバを立てる必要なし。

• お客様側でサーバの冗長化・フェイルオーバー等の管理不要

Page 30: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon S3にデータを配置すると、他のサービスと連携が容易

Page 31: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon S3にファイルをアップロードする方法

Step 1: バケットの作成

Step 2: 作成したバケットにファイルをアップロード

Amazon S3

バケット

Internet

• S3へのメディアファイル保存の動画http://aws.amazon.com/jp/getting-started/

Page 32: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 1: Amazon S3上にバケットを作成する

バケット名、リージョン(今回は東京)を指定

Page 33: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 2: 作成したバケットにファイルをアップロードする

Page 34: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon S3からのファイルのダウンロード方法

バケット名、ファイル名、リンクを確認

• 1つ1つのファイルにURIが割り当てられる。• URIにアクセスすると、デフォルトでは

Access Deniedになる。(認証されたユーザのみアクセスが可能)

• Permissionsで、Anonymousユーザにアクセス権を与えることで、URIからダウンロードが可能

マネージメントコンソールからダウンロード

Page 35: 初心者向けWebinar AWS上でのファイルサーバ構築

サードパーティが提供するAmazon S3へのファイル転送GUIツール

• CloudBerry Explorer PRO

S3のバケットやその中身が表示される

ローカルのフォルダ、ファイルを表示

ファイルをドラッグ&ドロップ

Page 36: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS CLIによるコマンド実行例

• S3にファイルをアップロード

• S3からファイルをダウンロード

※事前にAWS CLI実行に必要な認証情報を設定する必要あり

aws s3 cp ./test.txt s3://BucketName/

aws s3 cp s3://BucketName/test.txt ./

Page 37: 初心者向けWebinar AWS上でのファイルサーバ構築

大きなサイズのファイルをS3に転送するには

• S3マルチパートアップロードを活用する– 単一のファイルを、複数のパーツに自動分割して、マルチスレッドで並列アップロード

– HTTPSで暗号化された形でセキュアに転送される

• AWS CLIを使えば、ファイルサイズが大きい場合は自動で分割、マルチパートアップロード・ダウンロードされる

ファイル

パーツ1

パーツ2

パーツN

S3

AWS CLIまたはAWS SDK

Page 38: 初心者向けWebinar AWS上でのファイルサーバ構築

S3のWebサイトホスティング機能

• 静的WebサイトをAmazon S3でホスティングする機能• デフォルトのリンクの例

– https://s3-ap-northeast-1.amazonaws.com/examplebucket/photo.jpg

• Webサイトホスティング有効後のリンクの例– http://examplebucket.s3-website-ap-northeast-

1.amazonaws.com/photo.jpgWebサイトホスティングのリンクへのhttpsでの直接アクセスは不可

• カスタムドメイン(例:example.com)を使ったアクセスも可能。詳細は以下– http://docs.aws.amazon.com/ja_jp/AmazonS3/latest/dev/website-hosting-

custom-domain-walkthrough.html

Page 39: 初心者向けWebinar AWS上でのファイルサーバ構築

Webサイトホスティングを有効時に、HTTPSベースでユーザからアクセスさせる方法

• S3の前にAmazon CloudFrontを配置

• Amazon CloudFrontに対してHTTPSでアクセス、CloudFrontからS3へはHTTPでアクセスする。

jpg

Users

https://image.example.com/photo.jpg

(DNSに登録する必要あり)

http://examplebucket.s3-ap-northeast-

1.amazonaws.com/photo.jpg

Page 40: 初心者向けWebinar AWS上でのファイルサーバ構築

S3上で動的コンテンツ生成用のサーバ側スクリプトを実行可能か?

• S3上ではPHP, JSP, ASP.NET等のサーバ側スクリプトは実行不可

• 画像や静的なHTML、JavaScriptは、クライアントのWebブラウザ側で実行・表示させるので、S3配信に利用可能

Page 41: 初心者向けWebinar AWS上でのファイルサーバ構築

S3をマウント可能か?

• S3はHTTP(S)でアクセス可能なインターネットストレージ– NFSやCIFSでマウントはできない。

• 擬似的にマウントさせるように見せるサードパーティのツールもあるが、実際はHTTP(S)ベースのアクセスのため、S3上の1つのファイルに同時書き込みするときに排他処理が出来ないため要注意

Page 42: 初心者向けWebinar AWS上でのファイルサーバ構築

既存のNFSマウントベースのアプリケーションをS3から直接ユーザに配信する形に変更するには?

• 変更前 • 変更後

Users

Webサーバ

<img src=“/img/product.jpg” /> <img src=“http://static.example.com/img/product.jpg” />

NFSサーバ

Webサーバ

jpg

jpg

S3

http://example.com/index.php http://example.com/index.php

動的コンテンツ用

http://static.example.com/img/product.jpg

静的コンテンツ用

静的コンテンツのリンクを変更する。それに伴うアプリ側の修正が難しい場合は、Apache mod_rewrite等を使って書き換える方法もあり。

Page 43: 初心者向けWebinar AWS上でのファイルサーバ構築

特定のユーザのみにS3からコンテンツファイルを配信する方法

• 署名付きURLを使って、そのURLを知っているユーザのみファイルのダウンロードを可能にする(S3上のバケットやファイルはデフォルトでは公開されていない。)– 署名付きURLで有効期限を設定可能。有効期限を過ぎたら無効なURL

• 署名付きURLの例:https://bucket-name.s3.amazonaws.com/test.txt?Expires=1353386085&AWSAccessKeyId=XXXXXXXXXXXXXXXXXXXX&Signature=9Vvu49EtywfHkvPWgcuI%2FabdUAc%3D

• 利用例– Webアプリ側でログイン認証済みのユーザのみに署名付きURLを渡し、S3上のコンテンツを配信する

②署名付きURL生成リクエスト(S3のAPIを実行)

③署名付きURLを返す④署名付きURLを渡す

⑤署名付きURLを使ってファイルをダウンロード

①WebサイトへアクセスWeb

Page 44: 初心者向けWebinar AWS上でのファイルサーバ構築

S3を使う構成への変更がすぐに難しい場合は、最初はNFSサーバをマウントする形で構築して、後々S3を活用するパターンに変更されるケースもあります。

Page 45: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 46: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS上でNFSサーバを構築するには?

• EC2インスタンス(=仮想サーバ)を起動

LinuxベースのAMI

WindowsベースのAMI

または

AMIを選択して起動

EBSVolume

NFSサーバ(EC2)

AMIとは(Amazon Machine Image)オペレーティングシステムのマシンイメージ

Page 47: 初心者向けWebinar AWS上でのファイルサーバ構築

EC2インスタンス(=仮想サーバ)の起動手順

• EC2インスタンス起動の動画http://aws.amazon.com/jp/getting-started/

Step 1: AMI(Amazon Machine Image)の選択

Step 2: インスタンスタイプの選択

Step 3: 起動台数、ネットワークの選択

Step 4: ストレージの選択(重要)

Step 5: インスタンスへのタグ付け

Step 6: セキュリティグループの設定

Step 7: 起動設定の確認

Step 8: 使用するキーペアを作成または選択して起動

Page 48: 初心者向けWebinar AWS上でのファイルサーバ構築

セキュリティグループとは

• インスタンスへのトラフィックを制限するSemi-statefulなファイアーウォール機能

• デフォルトでは全トラフィックが閉じており、外からアクセスできない

• 必要な受信アクセスに対してアクセスルールを定義する• プロトコル( TCP/UDP)• 宛先ポート• アクセス元IP / Security Group

• 設定したルール以外の受信トラフィックは破棄される

• ルールをひとまとめにしたテンプレートを Security Groupと呼ぶ

ポート22(SSH)

ポート2049(TCP)

EC2ファイアウォール

Security Groupポート25(SMTP)

(例)2049番ポートはNFSクライアントのみに制限

EC2

インスタンス

Page 49: 初心者向けWebinar AWS上でのファイルサーバ構築

キーペアとは

• キーペアを作成すると、1組の公開鍵・秘密鍵が作成される

• 公開鍵はAWS側で保管。EC2起動時にインスタンスにコピー

• 秘密鍵はユーザー側で保管。ログイン時に必要

• リージョンごとに独立

キーペアの作成

公開鍵は、AWSによってEC2起動時に埋め込まれる

秘密鍵は、デスクトップにダウンロード

される

EC2インスタンスは2つの鍵を用いる

Page 50: 初心者向けWebinar AWS上でのファイルサーバ構築

EC2インスタンスへのログインに必要な鍵認証について

• ユーザ名・パスワードの認証よりも安全な認証方式

• 公開鍵・秘密鍵のペアが合っている場合のみログイン可能– Linuxの場合はSSHログイン時に認証

– Windowsの場合は公開鍵によって暗号化されたAdministratorパスワードを秘密鍵で復号化することで、Administratorログインが可能

Page 51: 初心者向けWebinar AWS上でのファイルサーバ構築

EC2インスタンスを起動する(EC2マネージメントコンソール)

①リージョンの選択Tokyoが選択されていることを確認

②Launch Instanceを選択

Page 52: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 1:AMIの選択

今回はAmazon Linux、またはMicrosoft Windows Serverを選択する

Page 53: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 2:インスタンスタイプの選択インスタンスタイプは、さまざまなCPU、メモリ、スト

レージ、ネットワークキャパシティの組み合わせによって構成されている(例)・t2.micro(無料利用枠): 1vCPU, 1GiBメモリ・r3.8xlarge : 32vCPU, 244GiBメモリ※スペックの高いインスタンスタイプほど、1時間あたりの起動料金が高くなる

t2.microを選択

Page 54: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 3:起動台数およびネットワークの選択

インスタンスの起動台数を指定

どのVPCのどのサブネットに起動するかを選択今回はデフォルトのまま変更不要

Page 55: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 4:ストレージの選択

ストレージの容量およびボリュームタイプを選択起動時にボリュームの容量を増やすことが可能。(減らすことは不可)

デバイス名

3パターンのボリュームから選択(詳細は後述)

ボリュームのサイズ

元となるスナップショット

IOPS指定(後述)

Terminate時に削除するかどうか

Page 56: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 5:インスタンスへのタグ付け

Valueにインスタンスを判別するための名前を入力する。

Page 57: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 6: セキュリティグループの設定

今回は新しいセキュリティグループを作成する

LinuxであればSSH(22番)WindowsであればRDP(3389番)、およびNFSマウント用のTCPポート2049番等を許可する

アクセス元の制限用にIPアドレスを指定可能だが、セキュリティグループIDを指定することで、そのセキュリティグループが割り当てられているEC2インスタンスがアクセス可能となる。

Page 58: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 7:起動設定の確認

インスタンスタイプがt2.microが選択されていること、セキュリティグループがHTTP、SSH(Linux用)、RDP(Windows用)が許可されていることを確認

東京リージョンが選択されていることを確認

Page 59: 初心者向けWebinar AWS上でのファイルサーバ構築

Step 8:使用するキーペアの作成または選択をして起動

①Create a new key pairを選択(作成済みであればChoose an existing key pairを選択してLaunch Instancesを選択)

②キーペア名を入力③秘密鍵ファイルをダウンロードする ④Launch Instances

を選択

Page 60: 初心者向けWebinar AWS上でのファイルサーバ構築

インスタンスの起動開始

起動したインスタンスにインスタンスIDが割り当てられる。インスタンスIDを選択すると、起動ステータスを確認可能

Page 61: 初心者向けWebinar AWS上でのファイルサーバ構築

インスタンスの起動確認およびインターネットから接続可能なPublic DNSを確認する Instance Stateがrunningになっ

ており、Status Checksが2/2 checks passedになっていれば、アクセス可能

インターネットからアクセス可能なPublic DNS(ホスト名)をコピーして、SSHログインやRDPログイン時の接続先に利用

Page 62: 初心者向けWebinar AWS上でのファイルサーバ構築

LinuxインスタンスへSSHログインする

• Windowsからログインする場合– TeraTerm (ttssh.exe) を起動

http://sourceforge.jp/projects/ttssh2/

– 接続するインスタンスのホスト名を入力

– SSH2を指定

– ユーザ名: ec2-user

– KeyPair作成時に取得した秘密鍵ファイルを選択して接続

Page 63: 初心者向けWebinar AWS上でのファイルサーバ構築

WindowsインスタンスへRDPでログインする

①Windowsインスタンスを選択→Actions→Get Windows Passwordを選択

②起動時に指定したキーペアに相当する秘密鍵ファイルをローカルから選択

③Decrypt Password実行

④Public IP、ユーザー名およびPasswordを取得。こちらを元にリモートデスクトップを実行

以下ログイン後のWindowsデスクトップ画面

Page 64: 初心者向けWebinar AWS上でのファイルサーバ構築

EBSボリュームを使用できるようにする(Linuxの場合の例)

• 空のEBSボリュームをアタッチ後、以下を実行して、EBSボリュームのデバイス名を確認する

• EBSボリュームでmkfsを実行

• ディレクトリを作成して、マウントする

$ lsblkNAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvdf 202:80 0 100G 0 disk xvda1 202:1 0 8G 0 disk /

$ sudo mkfs -t ext4 /dev/xvdf

$ sudo mkdir /mnt/data$ sudo mount /dev/xvdf /mnt/data NFSサーバ用のパッケージインストール等の

手順は、オンプレミスと同じのため割愛

Page 65: 初心者向けWebinar AWS上でのファイルサーバ構築

Amazon EBSボリュームの種類

General Purpose

(SSD)

Provisioned IOPS (SSD) Magnetic

ボリュームサイズ 1GiB~16TiB 4Gib~16TiB 1GiB~1TiB

IOPS

パフォーマンス

1,000 GiB 未満のボリュームで 3,000 IOPS にバーストできる 3 IOPS/GiB(最大 10,000

IOPS)のベースラインパフォーマンス

最大20,000 IOPS 平均100 IOPS, 数百IOPSまでバースト可能

ユースケース システムブートボリューム、中小規模のデータベース、開発・テスト環境

持続的な IOPS パフォーマンス、またはボリュームあたり 10,000 IOPS または 160

MiB/秒以上のスループットを必要とする重要なビジネスアプリケーション、

MongoDB、 Microsoft SQL Server、MySQL、PostgreSQL 、Oracleなど

頻繁にアクセスしないデータ領域、低いストレージコストが重視される場合

※IOPSとは、ディスクが1秒あたりに処理できるI/Oアクセス数EBSでは、256KB以下のI/O操作を1 IOPSとみなす。1024KBのI/O操作は4 IOPSとなる。

Page 66: 初心者向けWebinar AWS上でのファイルサーバ構築

EBSボリュームサイズを拡張する方法

EBSVolume

EC2

EBSVolume

①EBSスナップショット作成

②スナップショットをベースに、サイズの大きな新規EBSボリュームを作成する

③EC2インスタンスにattachする(必要に応じて古いボリュームをdetachする)

EBSボリューム1個あたり最大16TBまで。

④OS側でファイルシステムのサイズを拡張(Linuxの場合はresize2fsなど)

Page 67: 初心者向けWebinar AWS上でのファイルサーバ構築

EBSボリューム単体の最大容量で足りない場合は、複数のEBSボリュームをアタッチする

EBSVolume

EC2

EBSVolume

EBSVolume

・・・

Linux上でのマウント先のディレクトリの例

Windows上でのドライブ文字の例

/ (root) Cドライブ

/mnt/vol1 Dドライブ

Page 68: 初心者向けWebinar AWS上でのファイルサーバ構築

複数のEBSボリュームを1つのボリュームに見せるには

• ソフトウェアRAIDでRAID 0アレイ(ストライピング構成)を作る– EBSボリュームは、内部的に複数ノードで複製しているので

EBSボリューム間でさらに複製する必要はない。

• LinuxのRAID Array構成方法– http://docs.aws.amazon.com/ja_jp/AWSEC2/latest/User

Guide/raid-config.html

EBSVolume

EC2

EBSVolume

EBSVolume

・・・

RAID 0アレイ

Page 69: 初心者向けWebinar AWS上でのファイルサーバ構築

EC2インスタンスへのファイルアップロード方法

• 標準的な方法– scp / sftp / rsync / ftp など

• 高速転送ソリューション– TsunamiUDP

– Aspera

– Skeed

– Riverbed

• S3へファイル転送して、S3からEC2インスタンス側にダウンロード– AWS CLIを使って、ローカルとS3間のファイルコピー

• S3のマルチパートアップロード、マルチパートダウンロード機能を使えば、大きなサイズのファイルを分割して、それらをマルチスレッドで高速転送が可能

• 参考:AWS Direct Connect– 1Gbps/10GbpsでAWSへ専用線接続

ファイル数が多い場合は、zipで圧縮してS3へアップロード後、S3からEC2にダウンロードして展開する、など。

Page 70: 初心者向けWebinar AWS上でのファイルサーバ構築

NFSサーバの可用性を高める方法

• 冗長化– マスター・スレーブ間でレプリケーション

• ダウンしたらすぐに起動し直す(常時1台起動)– 新規EC2インスタンスに、データが格納されているEBSボリュームをアタッチ

する

Page 71: 初心者向けWebinar AWS上でのファイルサーバ構築

冗長化の例

• DRBDを活用するパターン

• 他にもCLUSTERPROやDataKeeperを活用するパターンもあり

Page 72: 初心者向けWebinar AWS上でのファイルサーバ構築

マスター障害時のスレーブへのエンドポイント切り替え(フェイルオーバー)の例

• Route Based HAパターン– http://aws.clouddesignpattern.org/index.php/CDP:Routing-

Based_HA%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3• マスター障害時にVPC内のサブネットのルーティングを切り替えるパターン

• Floating IPパターン– http://aws.clouddesignpattern.org/index.php/CDP:Floating_IP%E3%83%91%E3%82%BF

%E3%83%BC%E3%83%B3• マスター障害時にElastic IPを付け替えるパターン

• 他にもAmazon Route 53でファイルサーバ用のDNSレコードをマスターからスレーブに動的に書き換える方法もあり。– APIやCLIを使って動的に変更可能

※いずれもアベイラビリティゾーンを跨ってフェイルオーバー可能

Page 73: 初心者向けWebinar AWS上でのファイルサーバ構築

ダウンしたら起動し直す構成の例(常時1台起動)

• ファイルサーバー用のEC2インスタンスがダウンしたら、新規EC2インスタンスを起動して、こちらに既存のEBSボリュームをアタッチする– 監視しておいて、ダウンを検知したら立ち上げ直す

旧EC2インスタンス

新EC2インスタンス

Elastic IPまたはENIの付け替え

EBSボリュームの付け替え

Page 74: 初心者向けWebinar AWS上でのファイルサーバ構築

ファイルサーバのバックアップ用にEBSスナップショットを活用する• 最後にスナップショットを作成された時点から、ボリューム上で変更

のあるブロック(差分)のみが新しいスナップショットに保存される。

• 差分ベースで保存されるものの、最新のスナップショットのみ保持していれば、最新のボリュームを復元可能– 古い世代のスナップショットを削除しても、最新のボリュームを復元可能

1日目のスナップショット

2日目のスナップショット

3日目のスナップショット(最新)

増分バックアップ 増分バックアップ

1日目のスナップショットを削除した場合でも、最新のスナップショットからボリュームを復元可能

EBSボリューム

リストア

Page 75: 初心者向けWebinar AWS上でのファイルサーバ構築

EBSスナップショットを実行するときの注意事項

• スナップショットはボリュームがアタッチされ、稼働中の状態でも実行可能

• ただし、EBSボリュームに書き込まれたデータのみ捕捉– OSによって、ローカルにキャッシュされたデータは含まれない可能性あり

• 安定したスナップショットを取得するには、以下の手順を推奨1. EBSボリュームのアンマウント → デタッチ2. EBSスナップショットコマンド実行3. EBSボリュームのアタッチ → マウント

• ルートデバイス用のEBSボリュームは、一旦シャットダウン(停止)してから、スナップショット実行を推奨

EBSスナップショット用コマンドを実行してから、そのレスポンスが返ってくるまでの間のみ静止点を確保すればよい。

Page 76: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• お見積り例

• まとめ

Page 77: 初心者向けWebinar AWS上でのファイルサーバ構築

お見積り例:Amazon S3活用パターンの例

ご利用項目 ご利用量 1カ月あたりの料金

S3に格納されるデータの合計サイズ 500GB $16.5

S3からのダウンロード転送量 100GB $14

PUT/COPY/POST/LISTリクエスト数

5,000 $0.03

GETおよびその他のリクエスト数 10,000 $0.01

合計 $30.54

S3バケット

※2014年12月9日時点

Page 78: 初心者向けWebinar AWS上でのファイルサーバ構築

お見積り例:NFSサーバをAmazon EC2で構築するパターンの例

ご利用項目 ご利用量 1カ月あたりの料金

EC2インスタンス(m3.large)

1台720時間

$44.66(リザーブドインスタンスにより値引きされた価格)

EBSボリューム 500GB $60

EBSスナップショット 500GB $47.5

データ転送量 100GB $14

合計 $166.16

EBSVolume

EC2

EBSSnapshot

バックアップ

※2014年12月9日時点※m3.largeのリザーブドインスタンス用の初期費用$487を含まない

Page 79: 初心者向けWebinar AWS上でのファイルサーバ構築

AWSクラウド対応サードパーティソリューション

• AWSクラウド対応製品一覧 (2014 年9月26日時点)– http://media.amazonwebservices.com/jp/AWS_Correspondence_list_for

_JP_Applications_20140926.pdf

レプリケーション

ClusterPRO

ArcServe Replication

DataKeeper / LifeKeeper

ストレージ・NAS

Red Hat Storage CloudNAS

StorSimple NetApp Private Storage for AWS

Storage Box QNAP

DR Box Cloud Back セキュアSAMBA

CloudDR vFLEX

Page 80: 初心者向けWebinar AWS上でのファイルサーバ構築

アジェンダ

• Introduction

• AWSの関連サービスのご紹介

• AWS上でのファイルサーバ活用パターン

• Amazon S3を活用して静的コンテンツを配信するパターン

• Amazon EC2でNFSサーバを構築するパターン

• 事例紹介

• まとめ

Page 81: 初心者向けWebinar AWS上でのファイルサーバ構築

まとめ

• オンプレミス同様にAWS上でもNFSサーバなどのファイルサーバの構築が可能

• 一方で、スケーラブルなシステムにおいてはNFSサーバはボトルネックになる可能性がある

• Amazon S3であれば耐久性が高く、セキュアで、高負荷に耐えられる設計のため、静的コンテンツ格納先はAmazon S3を活用する形が推奨

Page 82: 初心者向けWebinar AWS上でのファイルサーバ構築

Q&A

Page 83: 初心者向けWebinar AWS上でのファイルサーバ構築

参照リンク

• AWSアカウント作成の流れhttp://aws.amazon.com/jp/register-flow/

• Using Amazon Web Services for Disaster Recoveryhttps://media.amazonwebservices.com/AWS_Disaster_Recovery.pdf

• AWSアカウント作成やEC2インスタンス起動方法についての動画(日本語字幕付き)http://aws.amazon.com/jp/getting-started/

• AWSクラウド活用資料集http://aws.amazon.com/jp/aws-jp-introduction/

• 国内のお客様のAWS活用事例http://aws.amazon.com/jp/solutions/case-studies-jp/

Page 84: 初心者向けWebinar AWS上でのファイルサーバ構築

AWSをより深く理解したい方向けにクラスルームトレーニングを提供しています。

詳細: aws.amazon.com/training 認定資格試験

Page 85: 初心者向けWebinar AWS上でのファイルサーバ構築

AWS Black Belt Tech Webinar 2014

• 今後の配信予定

– 12/10(水) AWS CloudTrail & CloudWatch Logs

– 12/17(水) Amazon CloudFront

• 申し込みサイト

– http://aws.amazon.com/jp/event_schedule/

Page 86: 初心者向けWebinar AWS上でのファイルサーバ構築

AWSの導入、お問い合わせのご相談

• AWSクラウド導入に関するご質問、お見積り、資料請求をご希望のお客様は、以下のリンクよりお気軽にご相談ください。https://aws.amazon.com/jp/contact-us/aws-sales/