【初⼼心者向けWebinar】 AWS上でのファイルサーバ構築 2014/12/09 アマゾン データ サービス ジャパン株式会社 技術本部 エマージングソリューション部 ソリューションアーキテクト ⾈舟崎健治 アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ 本Webinarでのファイルサーバの定義について • 主に静的コンテンツを格納するサーバ、またはサービス • NFS(CIFS)マウントする⽅方法以外にも、オブジェクト単 位でHTTP(S)で配信する⽅方法も含む オンプレミスでファイルサーバを構築するときの悩み • ディスク容量量の不不⾜足 • バックアップ等のメンテナンスの⼿手間がかかる • 保守期限満了了に伴うハードウェアのリプレイスの検討 なぜAWS上でファイルサーバを構築するのか? • 保存した分だけの従量量課⾦金金 • 必要に応じてディスク拡張が可能 – ディスク容量量圧迫の⼼心配からの解放 • • • • セキュア サーバーハードウェアのメンテナンス不不要 データの耐久性の向上 データを保存するだけでなく、データ分析等の⽤用途で活 ⽤用しやすい 要件に応じて、AWS上でのいくつかの構成パターンが 考えられます。それぞれのメリット・デメリットについ て本Webinarでお伝えします。 アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ AWSアカウント登録について • Webフォーム上で数分程度度の登録作業をするだけで、すぐさまAWS を利利⽤用可能 • AWSアカウント作成の流流れ http://aws.amazon.com/jp/register-‐‑‒flow/ • AWSアカウント作成⽅方法についての動画(⽇日本語字幕付き) http://aws.amazon.com/jp/getting-‐‑‒started/ AWSマネージメントコンソールにログイン • アカウント登録後にAWSのTopページへアクセス http://aws.amazon.com/jp/ • 登録したメールアドレス、パスワードでログインする ログインが成功すると以下のサービスの⼀一覧画⾯面が表⽰示 される 今回紹介する サービス EC2 Amazon EC2(Elastic Compute Cloud) リージョン アベイラビリティ ゾーン A EC2 任意のゾーンに 1 分散配置可能 アベイラビリティ ゾーン B EC2 • Windows, Linuxなどx86-‐‑‒64アーキ • 数分で起動可能な仮想サーバ テクチャのOS利利⽤用可能 • 1時間ごとの従量量課⾦金金で利利⽤用可能 – Windowsライセンスも従量量課⾦金金 • スケールアップ/ダウン、アウト/イ ンが即座に可能 • OS以上はお客様の⾃自由 – お⼿手持ちのソフトをそのまま利利⽤用 Amazon EBS(Elastic Block Store)ボリューム Region Availability Zone - a Availability Zone - b EC2 EC2 EBS EBS EBS EBS EBS EBS Snapshot Amazon Simple Storage Service (S3) EC2インスタンスに仮想外付けされた ブロックレベルのストレージ " サイズは1GB単位で〜~1TBまで (近い将来16TBまで利利⽤用可能になる予定) " サイズ/期間/IOで課⾦金金される " 複数EBSを1 EC2インスタンスにアタッチ可能 " 1つのEBSを同時に複数のEC2インスタンスにattach 不不可 " データは永続的に保存される " アベイラビリティゾーン(AZ) に存在 " 他のEC2インスタンスに付け替え可能 Amazon EBS スナップショット Region Availability Zone - a Availability Zone - b EC2 EC2 EBS EBS Amazon S3に保存された EBSボリュームの ポイントインタイムバックアップコピー EBS EBS EBS EBS Snapshot Amazon Simple Storage Service (S3) " EBSスナップショットは増分バックアップ (最後に作成されてから、変更更のあるブ ロックのみ保存される) " EBSスナップショットからEBSボリューム を同じリージョン内で作成可能 " リージョン間でコピー可能 Amazon S3(Simple Storage Service) リージョン EC2 データを ⾃自動複製 Availability Zone v 低コスト v アップロード無料料 v セキュリティ v 格納料料⾦金金 1GB/⽉月3.3円 (100円換算、2014/11/04時点) v 耐久性 v 99.999999999%の耐久性 v 3か所以上への⾃自動複製保存 v インテグリティチェックおよび⾃自動復復旧 v データ転送はすべてSSL通信 v 同⼀一リージョン内のみでの保管 v サーバサイド暗号化オプション(AES256) v 柔軟性 v 格納容量量無制限 v 多くの3rdベンダー製品がサポート Amazon CloudFront • ユーザからのアクセスを、最も近いエッジサーバに誘導するこ とで、ユーザへの配信を⾼高速化 • エッジサーバでは、コンテンツのキャッシングを⾏行行い、オリジ ンに負荷をかけず効率率率的に配信 1.最適なエッジに リクエスト Amazon CloudFront 3.エッジにキャッシュがなければ オリジンにリクエスト (Edge Location) レスポンス向上 負荷軽減 クライアント 2.キャッシュを配信 キャッシュ 5.取得したコンテンツを配信しキャッシュ コンテンツ オリジン配信 サーバ 4.エッジにコンテンツ を送信 Amazon VPC(Virtual Private Cloud) • クラウド内にプライベートネットワークを構築可能 • 企業イントラの延⻑⾧長/1拠点としてAWSを利利⽤用 VPN接続 専⽤用線 イントラ リージョン VPC プライベート サブネット 分離離したNW 領領域を作成 パブリック サブネット ゲートウェイ インターネット Elastic Network Interface(ENI) • VPC上で実現する仮想ネットワークインタフェースを複数持てる 機能 • 以下をENIに紐紐づけて維持可能 – – – – Private IP Elastic IP MACアドレス セキュリティグループ ENI EC2 ENI • インスタンスタイプによって割り当て可能な数が異異なる。 • 他のインスタンスに付け替え可能 Amazon Route 53 • 拡張性と可⽤用性に優れたDNS権威サービス • ヘルスチェック機能を持つ www.example.com はどこ? Users 1.2.3.4 知らないので権威 サーバに尋ねます 53 DNS Resolver Route 53 1.2.3.4 AWS Storage Gateway • オンプレミス環境と連携可能なデータバックアップおよ びクラウドストレージを提供するゲートウェイサービス オンプレミス環境 クラウド環境 ゲートウェイ データ連携 サーバ オンライン ストレージ アーカイブ ストレージ Internet データ格納 AWS Storage Gateway バックアップ (Gateway-‐‑‒Stored Volumes / Gateway-‐‑‒VTL) 容量量拡張 (Gateway-‐‑‒Cached Volumes) Amazon S3 Amazon Glacier AWS SDK/CLI AWS管理者・ オペレータ Management Console (Web) ユーザ名・ パスワード S3 アップロード ダウンロード > AWS CLI 各⾔言語ごとの SDK EC2 起動、停⽌止 REST API アクセスキー・ シークレットキー Route 53 登録、変更更、 削除 Amazon Zocalo • フルマネージド型の企業向け⽂文書保存・共有サービス – – – – マルチデバイス対応 ファイルの共有が可能 ファイルに対するフィードバックの共有が可能 サーバの構築不不要 共有されたドキュメント にはここからアクセス ドラッグアンドドロップでファ イルのアップロードが可能 アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ AWS上でのファイルサーバ活⽤用パターン • Amazon S3を静的コンテンツ格納ストレージとして活⽤用 – ※Amazon S3をマウントする形ではありません。(後述) • NFSサーバをEC2インスタンス上で構築 • AWS Storage Gatewayを活⽤用 Amazon S3 Amazon EC2 AWS Storage Gateway なぜオンプレミスではNFSサーバを多く活⽤用していたか について考える • コンテンツを集中管理理可能 • リモートからマウントするだけ • RAIDでミラーリングすることで、データ喪失を防ぐ – ディスク単位でミラーリング – NFSサーバ⾃自体の冗⻑⾧長化は必要に応じて実施 AWS上でも勿論論NFSサーバを構築可能です。オンプレ ミスで構築していたNFSベースのシステムをそのまま AWS上で稼働させることが出来るパターンが多いので、 NFSサーバをAWS上に構築されるケースは多くありま す。 ⼀一⽅方でNFSサーバを活⽤用するときには、気を付けなけれ ばいけない点もあります。 NFSサーバのデメリット • スケーラブルなシステムにおいては、NFSサーバがボト ルネックになりやすい。 • NFSサーバ⾃自体を冗⻑⾧長化しないと、SPOFになってしま う。 Web Web Web Web Web NFS サーバ Web レプリケーション Web NFS サーバ Web ・・・・・・・ AWS上での最適な静的コンテンツファイル格納先につ いて • 要件に応じて、選択されるストレージは異異なる • ですが、Amazon S3を活⽤用できるのであれば、 Amazon S3を使う形を推奨 Amazon S3 アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ Amazon S3のメリット • 耐久性 – 保存すると⾃自動で複数の施設に冗⻑⾧長化される • アクセス増加時にも⾼高負荷に耐えられる設計 – 秒間数千リクエストを常に送っているケースもあり。 • 拡張性 – 保存できる合計容量量に制限なし。ディスク容量量圧迫の⼼心配不不要 • 安全性 – SSLでのデータ転送と、アップロード後のデータの⾃自動暗号化をサポート • 低コスト – データ保存量量1カ⽉月あたり$0.033/⽉月 – 静的コンテンツ格納⽤用に仮想サーバを⽴立立てる必要なし。 • お客様側でサーバの冗⻑⾧長化・フェイルオーバー等の管理理不不要 Amazon S3にデータを配置すると、他のサービスと連携 が容易易 Amazon S3にファイルをアップロードする⽅方法 Step 1: バケットの作成 Step 2: 作成したバケットにファイルを アップロード Amazon S3 バケット Internet • S3へのメディアファイル保存の動画 http://aws.amazon.com/jp/getting-‐‑‒started/ Step 1: Amazon S3上にバケットを作成する バケット名、リージョン(今回は 東京)を指定 Step 2: 作成したバケットにファイルをアップロードする Amazon S3からのファイルのダウンロード⽅方法 マネージメントコンソールからダウンロード バケット名、ファイル名、リンクを確認 • • • 1つ1つのファイルにURIが割り当てられる。 URIにアクセスすると、デフォルトでは Access Deniedになる。(認証されたユーザ のみアクセスが可能) Permissionsで、Anonymousユーザにアクセ ス権を与えることで、URIからダウンロード が可能 サードパーティが提供するAmazon S3への ファイル転送GUIツール • CloudBerry Explorer PRO ファイルをドラッグ&ドロップ ローカルのフォルダ、 ファイルを表示 S3のバケットやその 中身が表示される AWS CLIによるコマンド実⾏行行例例 • S3にファイルをアップロード aws s3 cp ./test.txt s3://BucketName/ • S3からファイルをダウンロード aws s3 cp s3://BucketName/test.txt ./ ※事前にAWS CLI実⾏行行に必要な認証情報を設定する必 要あり ⼤大きなサイズのファイルをS3に転送するには • S3マルチパートアップロードを活⽤用する – 単⼀一のファイルを、複数のパーツに⾃自動分割して、マルチスレッドで並列列アップロード – HTTPSで暗号化された形でセキュアに転送される パーツ1 ファイル パーツ2 S3 パーツN AWS CLIまたはAWS SDK • AWS CLIを使えば、ファイルサイズが⼤大きい場合は⾃自動で分割、 マルチパートアップロード・ダウンロードされる 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.jpg Webサイトホスティングのリンクへのhttpsでの直接アクセスは不不可 • カスタムドメイン(例例:example.com)を使ったアクセス も可能。詳細は以下 – http://docs.aws.amazon.com/ja_̲jp/AmazonS3/latest/dev/website-‐‑‒hosting-‐‑‒ custom-‐‑‒domain-‐‑‒walkthrough.html Webサイトホスティングを有効時に、HTTPSベースで ユーザからアクセスさせる⽅方法 • S3の前にAmazon CloudFrontを配置 • Amazon CloudFrontに対してHTTPSでアクセス、 CloudFrontからS3へはHTTPでアクセスする。 https://image.example.com/photo.jpg (DNSに登録する必要あり) http://examplebucket.s3-apnortheast-1.amazonaws.com/photo.jpg jpg Users S3上で動的コンテンツ⽣生成⽤用のサーバ側スクリプトを 実⾏行行可能か? • S3上ではPHP, JSP, ASP.NET等のサーバ側スクリプトは 実⾏行行不不可 • 画像や静的なHTML、JavaScriptは、クライアントの Webブラウザ側で実⾏行行・表⽰示させるので、S3配信に利利 ⽤用可能 S3をマウント可能か? • S3はHTTP(S)でアクセス可能なインターネットスト レージ – NFSやCIFSでマウントはできない。 • 擬似的にマウントさせるように⾒見見せるサードパーティの ツールもあるが、実際はHTTP(S)ベースのアクセスのた め、S3上の1つのファイルに同時書き込みするときに 排他処理理が出来ないため要注意 既存のNFSマウントベースのアプリケーションをS3か ら直接ユーザに配信する形に変更更するには? • 変更更前 http://example.com/index.php Web サーバ NFS サーバ • 変更更後 http://example.com/index.php Web サーバ 動的コンテンツ⽤用 jpg Users http://static.example.com/img/product.jpg S3 <img src=“/img/product.jpg” /> 静的コンテンツ⽤用 jpg <img src= “http://static.example.com/img/product.jpg” /> 静的コンテンツのリンクを変更更する。 それに伴うアプリ側の修正が難しい場合は、Apache mod_̲rewrite等を使って書き換える⽅方法もあり。 特定のユーザのみにS3からコンテンツファイルを配信 する⽅方法 • 署名付きURLを使って、そのURLを知っているユーザのみファイルのダウ ンロードを可能にする(S3上のバケットやファイルはデフォルトでは公開 されていない。) – 署名付きURLで有効期限を設定可能。有効期限を過ぎたら無効なURL • 署名付きURLの例例:https://bucket-‐‑‒name.s3.amazonaws.com/test.txt? Expires=1353386085&AWSAccessKeyId=XXXXXXXXXXXXXXXXXXXX&Signature=9Vvu4 9EtywfHkvPWgcuI%2FabdUAc%3D • 利利⽤用例例 – Webアプリ側でログイン認証済みのユーザのみに署名付きURLを渡し、S3上のコンテンツを配信する ①Webサイトへアクセス ②署名付きURL⽣生成 Web リクエスト (S3のAPIを実⾏行行) ④署名付きURLを渡す ③署名付きURLを返す ⑤署名付きURLを使ってファイルをダウンロード S3を使う構成への変更更がすぐに難しい場合は、最初は NFSサーバをマウントする形で構築して、後々S3を活 ⽤用するパターンに変更更されるケースもあります。 アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ AWS上でNFSサーバを構築するには? • EC2インスタンス(=仮想サーバ)を起動 AMIとは Linuxベースの AMI または AMIを選択 して起動 (Amazon Machine Image) オペレーティングシステムのマ シンイメージ NFS サーバ (EC2) EBS Volume Windowsベースの AMI EC2インスタンス(=仮想サーバ)の起動⼿手順 Step 1: AMI(Amazon Machine Image) の選択 Step 2: インスタンスタイプの選択 Step 3: 起動台数、ネットワークの選択 Step 5: インスタンスへのタグ付け Step 6: セキュリティグループの設定 Step 7: 起動設定の確認 Step 4: ストレージの選択(重要) Step 8: 使⽤用するキーペアを作成または 選択して起動 • EC2インスタンス起動の動画 http://aws.amazon.com/jp/getting-‐‑‒started/ セキュリティグループとは • インスタンスへのトラフィックを制限 するSemi-‐‑‒statefulなファイアーウォー ル機能 • デフォルトでは全トラフィックが閉じ ており、外からアクセスできない • 必要な受信アクセスに対してアクセス ルールを定義する • • • プロトコル( TCP/UDP) 宛先ポート アクセス元IP / Security Group • 設定したルール以外の受信トラフィッ クは破棄される • ルールをひとまとめにしたテンプレー トを Security Groupと呼ぶ ポート25 (SMTP) Security Group ポート2049 (TCP) ポート22 (SSH) EC2 インスタンス (例) 2049番ポートは NFSクライアントの みに制限 EC2ファイアウォール キーペアとは • • • • キーペアを作成すると、1組の公開鍵・秘密鍵が作成される 公開鍵はAWS側で保管。EC2起動時にインスタンスにコピー 秘密鍵はユーザー側で保管。ログイン時に必要 リージョンごとに独⽴立立 公開鍵は、AWSに よってEC2起動時に 埋め込まれる キーペアの作成 秘密鍵は、デスク トップにダウンロード される EC2インスタンスは 2つの鍵を用いる EC2インスタンスへのログインに必要な鍵認証について • ユーザ名・パスワードの認証よりも安全な認証⽅方式 • 公開鍵・秘密鍵のペアが合っている場合のみログイン可能 – Linuxの場合はSSHログイン時に認証 – Windowsの場合は公開鍵によって暗号化されたAdministratorパスワードを秘 密鍵で復復号化することで、Administratorログインが可能 EC2インスタンスを起動する(EC2マネージメントコン ソール) ①リージョンの選択 Tokyoが選択されてい ることを確認 ②Launch Instanceを選択 Step 1:AMIの選択 今回はAmazon Linux、または Microsoft Windows Serverを 選択する Step 2:インスタンスタイプの選択 インスタンスタイプは、さまざまなCPU、メモリ、スト レージ、ネットワークキャパシティの組み合わせに よって構成されている (例) ・t2.micro(無料利用枠): 1vCPU, 1GiBメモリ ・r3.8xlarge : 32vCPU, 244GiBメモリ ※スペックの高いインスタンスタイプほど、1時間あた りの起動料金が高くなる t2.microを選択 Step 3:起動台数およびネットワークの選択 インスタンスの起動台数を指定 どのVPCのどのサブネットに起動 するかを選択 今回はデフォルトのまま変更不要 Step 4:ストレージの選択 元となる スナップ ショット ボリューム のサイズ 3パターンのボリューム から選択(詳細は後述) デバイス名 ストレージの容量量およびボリュームタイプを選択 起動時にボリュームの容量量を増やすことが可能。 (減らすことは不不可) IOPS指定 (後述) Terminate時 に削除するか どうか Step 5:インスタンスへのタグ付け Valueにインスタンスを判別するための名前を⼊入 ⼒力力する。 Step 6: セキュリティグループの設定 今回は新しいセキュリティグループを作成 する アクセス元の制限⽤用にIPアドレスを指定可能だが、セ キュリティグループIDを指定することで、そのセ キュリティグループが割り当てられているEC2インス タンスがアクセス可能となる。 LinuxであればSSH(22番) WindowsであればRDP(3389番)、およびNFS マウント⽤用のTCPポート2049番等を許可する Step 7:起動設定の確認 東京リージョンが選択されていることを確認 インスタンスタイプがt2.microが選択さ れていること、セキュリティグループが HTTP、SSH(Linux⽤用)、 RDP(Windows⽤用)が許可されているこ とを確認 Step 8:使⽤用するキーペアの作成または選択をして起動 ①Create a new key pairを選択 (作成済みであればChoose an existing key pairを選択してLaunch Instancesを選択) ②キーペア名を⼊入⼒力力 ③秘密鍵ファイルを ダウンロードする ④Launch Instances を選択 インスタンスの起動開始 起動したインスタンスにインスタ ンスIDが割り当てられる。 インスタンスIDを選択すると、起 動ステータスを確認可能 インスタンスの起動確認およびインターネットから接続 Instance Stateがrunningになっ 可能なPublic DNSを確認する ており、Status Checksが2/2 checks passedになっていれば、 アクセス可能 インターネットからアクセス可能 なPublic DNS(ホスト名)をコ ピーして、SSHログインやRDPロ グイン時の接続先に利利⽤用 LinuxインスタンスへSSHログインする • Windowsからログインする場合 – TeraTerm (ttssh.exe) を起動 http://sourceforge.jp/projects/ttssh2/ – – – – 接続するインスタンスのホスト名を⼊入⼒力力 SSH2を指定 ユーザ名: ec2-‐‑‒user KeyPair作成時に取得した秘密鍵ファイルを選択して接続 WindowsインスタンスへRDPでログインする ④Public IP、ユーザー名および Passwordを取得。こちらを元にリ モートデスクトップを実⾏行行 ①Windowsインスタンスを選 択→Actions→Get Windows Passwordを選択 以下ログイン後のWindowsデスク トップ画⾯面 ②起動時に指定したキーペアに 相当する秘密鍵ファイルをロー カルから選択 ③Decrypt Password実⾏行行 EBSボリュームを使⽤用できるようにする (Linuxの場合の例例) • 空のEBSボリュームをアタッチ後、以下を実⾏行行して、EBSボ リュームのデバイス名を確認する $ lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT xvdf 202:80 0 100G 0 disk xvda1 202:1 0 8G 0 disk / • EBSボリュームでmkfsを実⾏行行 $ sudo mkfs -‐‑‒t ext4 /dev/xvdf • ディレクトリを作成して、マウントする $ sudo mkdir /mnt/data $ sudo mount /dev/xvdf /mnt/data NFSサーバ用のパッケージインストール等の 手順は、オンプレミスと同じのため割愛 Amazon EBSボリュームの種類 General Purpose (SSD) Provisioned IOPS (SSD) Magnetic ボリュームサイズ 1GiB~1TiB 10Gib~1TiB 1GiB~1TiB IOPS パフォーマンス 最大3,000 IOPSまでバー スト可能、 1GiBあたり3 IOPSのベースパフォーマ ンス 最大4,000 IOPS 平均100 IOPS, 数百 IOPSまでバースト可 能 ユースケース システムブートボリューム、 持続的に3,000を越えるIOPSを必要と 中小規模のデータベース、 する重要なビジネスアプリケーション、 MongoDB、 Microsoft SQL Server、 開発・テスト環境 MySQL、PostgreSQL 、Oracleなど 頻繁にアクセスしない データ領域、 低いストレージコストが重 視される場合 ※IOPSとは、ディスクが1秒あたりに処理理できるI/Oアクセス数 EBSでは、256KB以下のI/O操作を1 IOPSとみなす。 1024KBのI/O操作は4 IOPSとなる。 ※近い将来、1個あたりのEBSボリュームサイズは16TiBまで拡張可能となる予定 EBSボリュームサイズを拡張する⽅方法 EC2 ④OS側でファイルシステ ムのサイズを拡張 (Linuxの場合は resize2fsなど) ③EC2インスタンスに attachする(必要に応じて 古いボリュームをdetachす る) ①EBSスナップショット作成 EBS Volume EBS Volume ②スナップショットをベースに、サイズ の⼤大きな新規EBSボリュームを作成する ※2014年年12⽉月9⽇日時点でEBSボリューム1個あたり最⼤大1TBまで。 ※近い将来、EBSボリューム1個あたり最⼤大16TiBまで利利⽤用可能になる予定 EBSボリューム単体の最⼤大容量量で⾜足りない場合は、複数 のEBSボリュームをアタッチする Linux上でのマウント先 のディレクトリの例例 EC2 EBS Volume EBS Volume ・ ・ ・ EBS Volume Windows上でのドライ ブ⽂文字の例例 / (root) Cドライブ /mnt/vol1 Dドライブ 複数のEBSボリュームを1つのボリュームに⾒見見せるには • ソフトウェアRAIDでRAID 0アレイ(ストラ イピング構成)を作る – EBSボリュームは、内部的に複数ノードで複製しているので EBSボリューム間でさらに複製する必要はない。 • LinuxのRAID Array構成⽅方法 – http://docs.aws.amazon.com/ja_̲jp/AWSEC2/latest/ UserGuide/raid-‐‑‒config.html EC2 EBS Volume EBS RAID 0 Volume アレイ ・ ・ ・ EBS Volume EC2インスタンスへのファイルアップロード⽅方法 • 標準的な⽅方法 – scp / sftp / rsync / ftp など • ⾼高速転送ソリューション – – – – TsunamiUDP Aspera Skeed Riverbed ファイル数が多い場合は、zipで圧縮してS3へアップロー ド後、S3からEC2にダウンロードして展開する、など。 • S3へファイル転送して、S3からEC2インスタンス側にダウンロード – AWS CLIを使って、ローカルとS3間のファイルコピー • S3のマルチパートアップロード、マルチパートダウンロード機能を使えば、⼤大きなサイズ のファイルを分割して、それらをマルチスレッドで⾼高速転送が可能 • 参考:AWS Direct Connect – 1Gbps/10GbpsでAWSへ専⽤用線接続 NFSサーバの可⽤用性を⾼高める⽅方法 • 冗⻑⾧長化 – マスター・スレーブ間でレプリケーション • ダウンしたらすぐに起動し直す(常時1台起動) – 新規EC2インスタンスに、データが格納されているEBSボリュームをアタッチす る 冗⻑⾧長化の例例 • DRBDを活⽤用するパターン • 他にもCLUSTERPROやDataKeeperを活⽤用するパターンも あり マスター障害時のスレーブへのエンドポイント切切り 替え(フェイルオーバー)の例例 • 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を使って動的に変更更可能 ※いずれもアベイラビリティゾーンを跨ってフェイルオーバー可能 ダウンしたら起動し直す構成の例例 (常時1台起動) • ファイルサーバー⽤用のEC2インスタンスがダウンしたら、 新規EC2インスタンスを起動して、こちらに既存のEBS ボリュームをアタッチする – 監視しておいて、ダウンを検知したら⽴立立ち上げ直す 旧EC2 インスタンス Elastic IPまたは ENIの付け替え 新EC2 インスタンス EBSボリュームの 付け替え ファイルサーバのバックアップ⽤用に EBSスナップショットを活⽤用する • 最後にスナップショットを作成された時点から、ボリューム上で変更更 のあるブロック(差分)のみが新しいスナップショットに保存される。 • 差分ベースで保存されるものの、最新のスナップショットのみ保持し ていれば、最新のボリュームを復復元可能 – 古い世代のスナップショットを削除しても、最新のボリュームを復復元可能 1⽇日⽬目の スナップショット 2⽇日⽬目の スナップショット 増分バックアップ 3⽇日⽬目の スナップショット(最新) 増分バックアップ 1⽇日⽬目のスナップショットを削除した場合でも、最新 のスナップショットからボリュームを復復元可能 リストア EBSボリューム EBSスナップショットを実⾏行行するときの注意事項 • スナップショットはボリュームがアタッチされ、稼働中の状態 でも実⾏行行可能 • ただし、EBSボリュームに書き込まれたデータのみ捕捉 – OSによって、ローカルにキャッシュされたデータは含まれない可能性あり • 安定したスナップショットを取得するには、以下の⼿手順を推奨 1. EBSボリュームのアンマウント → デタッチ EBSスナップショット⽤用コマンドを実⾏行行してか ら、そのレスポンスが返ってくるまでの間の 2. EBSスナップショットコマンド実⾏行行 み静⽌止点を確保すればよい。 3. EBSボリュームのアタッチ → マウント • ルートデバイス⽤用のEBSボリュームは、⼀一旦シャットダウン(停 ⽌止)してから、スナップショット実⾏行行を推奨 アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ AWS Storage Gatewayを使うメリット • お客様側でバックアップの実装不不要 • ⾃自動的に⾮非同期でS3にバックアップを保存 – バックアップのためのサービス停⽌止は不不要 • Gateway-‐‑‒Cached Volumeを使えば、頻繁にアクセスさ れるデータのみGatewayホストに保持可能 • Cached Volumeは1個最⼤大32TiBまで。 • Gatewayホストあたり合計Cached Volumeは最⼤大 150TiBまで AWS Storage Gateway Cached Volumeの 活⽤用イメージ(AWS上で活⽤用する場合) AWS Storage Gateway (Gateway-‐‑‒Cached Volumes) NFS サーバ NFS サーバ Amazon S3 データ転送 EBS EBS Cache Storage Upload Buffer (ローカルキャッシュ⽤用) (転送⼀一時格納⽤用) データアクセス Volume Storage ⼤大容量量ストレージ AWS Storage Gateway Cached Volumesのご利利⽤用 の流流れ Step 1: Storage Gateway AMIの起動 Step 2: Gateway⽤用のEC2インスタンスに Upload Buffer/Cache Storage⽤用のEBSボ リュームをアタッチして、Public IPを登録 する Step 3: Gatewayをアクティベートする Step 4: Cache Storage/Upload Buffer⽤用 のボリュームを指定する Step 5: アラームの設定 Step 6: S3上にボリュームを作成する Step 7: 作成したボリュームのiSCSI ターゲットを確認して、iSCSI接続する AWS Storage Gatewayの画⾯面に移動 Step 1: Storage Gateway AMIを選択する AWS MarketplaceでAWS Storage Gateway⽤用の AMIを選択して起動する Step 2: AWS Storage Gateway⽤用のEC2インスタン ス起動後にEBSをアタッチして、Public IPを登録する EC2 EBS Volume Upload Buffer⽤用 EBSボリューム EBS Volume Cache Storage⽤用 EBSボリューム Gateway⽤用のEC2インス タンスのPublic IPを登録 Step 3: Gatewayの名前とタイムゾーンを設定して、 アクティベートする アクティベートされたGatewayの情報を確認する Step 4: Create Volumesを選択して Cache Storage/Upload Buffer⽤用のボリュームを指定する Step 5: Upload Bufferの利利⽤用率率率が閾値を越えたら、 アラームを⾶飛ばす設定 同様にCache Storageの利利⽤用 率率率も閾値を越えたらメール通 知を⾶飛ばす設定を⾏行行う。 Step 6: Amazon S3に保持されるストレージ領領域を指 定して、Create Volumeを選択する 1ボリュームあたり最⼤大32TB Step 7: AWS Storage Gatewayのストレージボ リューム作成後にiSCSIターゲットを確認する AWS Storage Gatewayのストレージボリュームへの iSCSI接続⽅方法 • Windowsクライアントからの接続⽅方法 – http://docs.aws.amazon.com/ja_̲jp/storagegateway/latest/userguide/ ConfiguringiSCSIClientInitiatorWindowsClient.html • Red Hatクライアントからの接続⽅方法 – http://docs.aws.amazon.com/ja_̲jp/storagegateway/latest/userguide/ ConfiguringiSCSIClientInitiatorRedHatClient.html AWS Storage Gatewayのストレージボリュームに格 納されるデータについて • サーバーサイド暗号化(SSE)により暗号化された状態 でAmazon S3に保存 • 保存されたデータには、Amazon S3 APIやAmazon S3 コンソールからはアクセス不不可 AWS Storage Gatewayについての詳細 • AWS Black Belt Tech Webinar 2014 AWS Storage Gateway – http://adsj-‐‑‒contents.s3.amazonaws.com/meister-‐‑‒blackbelt/ 20140820_̲AWS-‐‑‒BlackBelt-‐‑‒StorageGateway.pdf アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • お⾒見見積り例例 • まとめ お⾒見見積り例例:Amazon S3活⽤用パターンの例例 S3 バケット ご利利⽤用項⽬目 ご利利⽤用量量 1カ⽉月あたりの料料⾦金金 S3に格納されるデータの合計サイズ 500GB $16.5 S3からのダウンロード転送量量 100GB $14 PUT/COPY/POST/LISTリクエスト 数 5,000 $0.03 GETおよびその他のリクエスト数 10,000 $0.01 合計 $30.54 ※2014年年12⽉月9⽇日時点 お⾒見見積り例例:NFSサーバをAmazon EC2で構築するパ ターンの例例 EC2 EBS Volume バックアップ EBS Snapshot ご利利⽤用項⽬目 ご利利⽤用量量 1カ⽉月あたりの料料 ⾦金金 EC2インスタンス (m3.large) 1台720時 間 $44.66 EBSボリューム 500GB $60 EBSスナップショット 500GB $47.5 データ転送量量 100GB $14 合計 $166.16 (リザーブドインスタ ンスにより値引きされ た価格) ※2014年年12⽉月9⽇日時点 ※m3.largeのリザーブドインスタンス⽤用の初期費⽤用$487を 含まない お⾒見見積り例例:AWS Storage Gateway Cached Volumes を活⽤用するパターンの例例(EC2で構築する場合) AWS Storage Gateway (Gateway-‐‑‒Cached Volumes) EC2 EBS Cache Storage EBS Upload Buffer Amazon S3 Volume Storage ご利利⽤用項⽬目 ご利利⽤用量量 1カ⽉月あたりの料料⾦金金 EC2インスタンス (m3.large) 1台720時間 $44.66 (リザーブドインスタン スにより値引きされた価 格) EBSボリューム(Cache Storage⽤用) 250GB $30 EBSボリューム(Upload Buffer⽤用) 50GB $6 Storage Gatewayアプライアンス利利⽤用/⽉月 1台 $119 ボリュームストレージ(S3内) 500GB $16.15 スナップショットストレージ 500GB $47.5 データ転送量量 100GB $14 合計 $277.25 ※2014年年12⽉月9⽇日時点 ※m3.largeのリザーブドインスタンス⽤用の初期費⽤用$487を 含まない AWSクラウド対応サードパーティソリューション ストレージ・NAS レプリケーション Red Hat Storage CloudNAS ClusterPRO StorSimple NetApp Private Storage for AWS ArcServe Replication Storage Box QNAP DR Box Cloud Back セキュアSAMBA DataKeeper / LifeKeeper CloudDR vFLEX • AWSクラウド対応製品⼀一覧 (2014 年年9⽉月26⽇日時点) – http://media.amazonwebservices.com/jp/ AWS_̲Correspondence_̲list_̲for_̲JP_̲Applications_̲20140926.pdf アジェンダ • Introduction • AWSの関連サービスのご紹介 • AWS上でのファイルサーバ活⽤用パターン • Amazon S3を活⽤用して静的コンテンツを配信するパターン • Amazon EC2でNFSサーバを構築するパターン • AWS Storage Gatewayを使ってNFSサーバを構築するパターン • 事例例紹介 • まとめ まとめ • オンプレミス同様にAWS上でもNFSサーバなどのファイルサーバの 構築が可能 • ⼀一⽅方で、スケーラブルなシステムにおいてはNFSサーバはボトル ネックになる可能性がある • Amazon S3であれば耐久性が⾼高く、セキュアで、⾼高負荷に耐えら れる設計のため、静的コンテンツ格納先はAmazon S3を活⽤用する 形が推奨 • AWS Storage Gateway Cached Volumeを使えば、頻繁にアクセ スするデータをGatewayホスト上でキャッシュし、⾃自動でS3にあ るボリュームに⾮非同期転送が可能 Q&A 参照リンク • AWSアカウント作成の流流れ http://aws.amazon.com/jp/register-‐‑‒flow/ • Using Amazon Web Services for Disaster Recovery https://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/ AWSをより深く理理解したい⽅方向けに クラスルームトレーニングを提供しています。 詳細: aws.amazon.com/training 認定資格試験 AWSの導⼊入、お問い合わせのご相談 • AWSクラウド導⼊入に関するご質問、お⾒見見積り、資料料請 求をご希望のお客様は、以下のリンクよりお気軽にご相 談ください。 https://aws.amazon.com/jp/contact-‐‑‒us/aws-‐‑‒sales/
© Copyright 2025 ExpyDoc