S3 -ほぼ週刊AWSマイスターシリーズ第2回-
-
Upload
-ken-tamagawa-amazon-web-services -
Category
Documents
-
view
28.536 -
download
4
description
Transcript of S3 -ほぼ週刊AWSマイスターシリーズ第2回-
AWSマイスターシリーズ第2回- Amazon Simple Storage Service (S3) -
Shinpei Ohtani, Solutions Architect
Amazon Data Service Japan
Webセミナーほぼ週刊AWSマイスターシリーズ(全10回)
ほぼ週刊AWSマイスターシリーズ(全10回)
9/20 EC2 & EBS
9/28 S3
10/5 CloudFront & Route53
10/19 IAM & Consolidated Billing
http://aws.amazon.com/jp/event_schedule/申し込みサイト
自己紹介
大谷 晋平(おおたに しんぺい)
アマゾンデータサービスジャパン株式会社所属
ソリューションアーキテクト
ソーシャルネットワーク Twitter: @shot6
Facebook: facebook.com/shot6
Mail: [email protected]
この世で最も愛しているサービス:S3
Amazon Simple Storage Service とは?
S3はWeb時代のストレージ
AWSのコアサービスの1つ。2006年から開始
開発者が“Webスケール”なコンピューティングを可能にするよう設計された 高スケーラビリティ
高い信頼性・堅牢性
セキュア
高速
低価格
スケーラビリティのメリットを最大限に活用
S3のスケール=クラウドのスケール
Q4 2006 Q4 2007 Q4 2008 Q4 2009 Q4 2010 Q2 2011
Peak Requests:290,000+per second
Total Number of Objects Stored in Amazon S3
2.9 Billion14 Billion
40 Billion
102 Billion
449 Billion
262 Billion
S3の用語
バケット オブジェクト置場。最大100/アカウント。名前がユニークな必要あり
オブジェクト S3に置くファイルでURLによるアドレスが付与。バケット内には無制限にオブジェクトを置くことが可能。1オブジェクトのサイズは5TBまで
キー オブジェクト毎に付与される一意なキー
ACL
アクセスコントロールリスト
S3 –実例にあてはめてみる -
Amazon S3
mculver-images media.mydomain.com
Beach.jpg img1.jpg img2.jpg2009/maui/sun.jpg
public.blueorigin.com
Installer.msi img/pic1.jpg
S3の基本的な機能
オブジェクトの書き込み、読み込み、削除。1バイトから5TBまで、http/httpsで可能 基本機能は至ってシンプル
オブジェクトの数は無制限
複数のリージョンでストレージを展開 US Standard (Northern Virginia or the Pacific Northwest)
EU (Ireland)
US West (Northern California)
Asia Pacific (Singapore)
Asia Pacific (Tokyo)
高いセキュリティを保つための認証の仕組み
S3の堅牢性
S3は非常に高い堅牢性を持つ
複数のファシリティにまたがった複数デバイスに冗長にストア
• スタンダードオプションであれば3箇所以上
PUT/COPY はSUCCESSを返す前に複数のデータセンターに保存
S3はデータロストに対して自動発見と修復
S3 Standard Option
スタンダードオプション
S3のデフォルト設定
99.999999999%の堅牢性
99.99%の可用性
2つのDCで同時のデータのロストが発生したとしても耐えられる設計
S3 RRS Option(低冗長化)
S3’s RRS Optionは:
99.99%の堅牢性
99.99%の可用性
年間で0.01%のデータロストの可能性
単一のDCでのデータロストには耐えられる設計
コストがStandardよりも安い
S3マルチパートアップロード
巨大なオブジェクトを複数のチャンクに分割してアップロード 各チャンク < 5GB
チャンクがアップロードされたら、単一オブジェクトに結合
• 自動で結合する場合
• 自分でsplitして、自分でコール
S3バージョニング
全てのオブジェクトのバージョン管理下におき保存、検索、リストアが可能。バージョニング中はオブジェクトは削除されない。
ユーザアクションやアプリケーションエラーから重要なデータを保護する機能。ただし課金はバージョニングの分、かかる
S3サーバアクセスロギング
S3バケットへS3のアクセスログを保存 デフォルトでは出力しない
API/SDKで設定可能
アクセスログのデリバリではチャージしていない
ログの保存ではチャージ。ただしいつでも削除可能
アクセスログへのアクセスについては若干のチャージ
S3の認証機構
S3をはじめとする全AWSサービスでセキュリティは最優先事項
認証のないアクセスからはデータは確実に保護
オブジェクトは全てフルコントロール可能
特定ユーザに対して権限を与えることも勿論可能
How?
AWS Identity and Access Management(IAM) ポリシー
バケットポリシー
ACL
AWS IAM
アカウント内で複数ユーザを作成し、セキュリティクレデンシャルや権限を付与する事が可能
S3のバケットにオブジェクトのPUT/LIST/GETなど
詳細は第4回セミナーにて!
IAMで出来る事:
ユーザレベルでのコントロール
• S3に対してのお客様要件にあわせた操作の制御
アクセスポリシー言語を記述する
JSON format
S3バケットポリシー
S3バケットレベルのポリシーベースの大枠のコントロール
バケットオーナーだけが適用可能 バケットレベルでのAllow/Deny
バケット内のオブジェクトの権限のDeny
バケットオーナーがオブジェクトオーナーだった場合のみオブジェクトに適切な権限を与える
アクセスポリシー言語を記述する
JSON format
バケットポリシーの一例
例:
ユーザ(1-22-333-4444, 3-55-678-9100)に“mybucket” (arn:aws:s3:::mybucket/*“,)というバケットに対してGETリクエストの発行を許可
{ "Version":"2008-10-17",
"Id":"aaaa-bbbb-cccc-dddd",
"Statement" : [
{ "Effect":"Allow",
"Sid":"1",
"Principal" : {
"AWS":["1-22-333-4444","3-55-678-9100"]
},
"Action":["s3:GetObject*"],
"Resource":"arn:aws:s3:::mybucket/*",
}
]
}
S3 Access Control List
バケットからオブジェクトへのコントロール
バケットのACLをオブジェクトは継承しない
作成と適用はいつでも可能
100個ACLは作成可能: Owner
Any AWS account
Anyone
パーミッション: READ – Object or bucket
WRITE – Create, overwrite, delete objects in bucket
READ_ACP – Read ACL for bucket or object
WRITE_ACP – Overwrite ACL for bucket or object
FULL_CONTROL – All of the above
AWS SDK and S3
AWS SDK(Software Development Kit) for S3
Java
.NET
Ruby
PHP
出来る事:
Create/Delete bucket
Put/Get/List/Delete object
ACL/Bucket Policy
バージョニング
Webサイトホスティング機能
マルチアップロード
AWS Import/Export
AWSへのデータお急ぎ便。デバイスをそのままAWSへ郵送
US Standard, US West (Northern California), EU (Ireland), and Asia Pacific (Singapore) Regions
インターネット経由ではなく、Amazonの物理的な物流網を利用
デバイスへのデータは暗号化して送付いただく
大規模データであればコスト効果は高い
クラウドへのデータマイグレーションの一つの手段
DirectConnectによる専用線(Coming soon!)
コンテンツの大量配布やディザスタリカバリには最適
S3サードパーティツール
非常に多くのS3サードパーティツールが利用可能: Commercial products
• CloudBerry
• Zmanda
• StorSimple
• Riverbed Whitewater
Opensource products
• CyberDuck
• s3cmd
• s3fs
S3の価格
東京リージョンでの価格
Storage Data Transfer Requests
Tier Normal RRS Tier Price Type Price
Frist 1 TB/mo $0.15/GB $0.100/GB All transfer in $0.00/GB PUT, COPY,
POST, or LIST
$0.01 per
1,000req
Next 49 TB $0.135/GB $0.090/GB First 1 GB out $0.00/GB GET and all
other requests
$0.01 per
10,000req
Next 450 TB $0.120/GB $0.080/GB <= 10 TB out $0.201/GB
Next 500 TB $0.105/GB $0.070/GB Next 40 TB out $0.158/GB
Next 4000 TB $0.090/GB $0.060/GB Next 100 TB
out
$0.137/GB
> 5000 TB $0.065/GB $0.044/GB > 350 TB out $0.127/GB
S3のよくある利用例
コンテンツの保存と配信 メディア・エンターテイメントのコンテンツ
ソフトウェアの配信
大規模データ分析のためのストレージ・データオリジナル オンラインストレージ
アプリケーションそのもののストレージ
バックアップやディザスタリカバリ。低価格かつ安心のテープの代替 サーバのバックアップ
個人的なバックアップ
• 複数端末での共有
Amazon
EMR
European Space Agency
データ配信用の衛星写真およびデータをS3に保存
ESRIN: center of the European Space Agency for the Earth Observation Programs (*)
地球の衛星写真を生成し保存
EUの政府団体やNGOなどのデータ配信の元
(*) Source : http://www.esa.int/esaMI/ESRIN_SITE/index.html
まとめ
S3は高いスケーラビリティと信頼性、セキュリティをもつ低価格なWebストレージ
2011 Q2の段階で約4500億オブジェクトの保存。かつこれまで1つも無くしていない
誰でも簡単に使える非常にシンプルなインタフェースを持つサービス HTTPS経由でデータを書いて、読み、削除するだけ
セキュリティ機能は万全
お客様のデータはお客様のものなので、全てコントロール可能
ストア出来るオブジェクト数は無制限
顧客はどのリージョンにデータを保存するかを指定可能
参考文献
Amazon S3
http://aws.amazon.com/jp/s3/
Amazon S3 Getting Started Guide
http://docs.amazonwebservices.com/AmazonS3/latest/gsg/
Amazon S3 Developer Guide
http://docs.amazonwebservices.com/AmazonS3/latest/dev/
Amazon Web Services Japan blog
http://aws.typepad.com/aws_japan/