More Related Content Similar to 20120319 aws meister-reloaded-s3 Similar to 20120319 aws meister-reloaded-s3 (20) More from Amazon Web Services Japan More from Amazon Web Services Japan (20) 20120319 aws meister-reloaded-s33. AWSサービス一覧
お客様のアプリケーション
ライブラリ & SDKs IDE プラグイン デプロイと自動化
Web インターフェース
Java, PHP, .NET, Eclipse AWS Elastic Beanstalk
Python, Ruby Management Console AWS CloudFormation
Visual Studio
ネットワーク&ルーティング
認証 & 請求 Amazon VPC
AWS IAM モニタリング スケーリング
Amazon Elastic LB
Identity Federation Amazon CloudWatch Auto Scale
Amazon Route 53
Consolidated Billing AWS Direct Connect
コンテンツ配信
メッセージ通知 キューイング 分散処理 メール配信
Amazon
Amazon SNS Amazon SQS Elastic MapReduce Amazon SES
CloudFront
ストレージ データベース
コンピュータ処理 Amazon S3
Amazon RDS
Amazon DynamoDB
Amazon EC2 Amazon EBS Amazon SimpleDB
AWS Storage Gateway Amazon Elasticache
AWS のグローバルなインフラ
6. Amazon S3は、データ保存の基盤
S3 世界中の7拠点から選択
東京リージョン
データ置くだけ。
インフラ、電源、 保存するデータは、
気にしない。 自動で暗号化する
容量無制限。 ことも可能
データセンターA
データセンターB
バケット
3か所以上で
自動複製
データセンターC
高い耐久性で
安価な従量課金 データ失わない:
99.999999999%
ファイル(バイナリ、 例:1GB/月 – 約10円
テキスト、画像、動画)
7. S3の用語
バケット
オブジェクト置場。最大100/アカウント。名前がユニークな必
要あり
オブジェクト
S3に置くファイルでURLによるアドレスが付与。バケット内に
は無制限にオブジェクトを置くことが可能。1オブジェクトのサ
イズは5TBまで
キー
オブジェクト毎に付与される一意なキー
ACL
アクセスコントロールリスト
8. S3のネームスペース
Amazon S3
バケット バケット
オブジェクト オブジェクト オブジェクト オブジェクト
バケット
オブジェクト オブジェクト
9. S3 –実例にあてはめてみる -
Amazon S3
mculver-images media.mydomain.com
Beach.jpg 2009/maui/sun.jpg img1.jpg img2.jpg
public.blueorigin.com
Installer.msi img/pic1.jpg
17. Cost Effective(低コストなこと)
従量課金で使った分だけお支払い
初期費用もいらない
コストは下げ続けている
2012年2月に13%値下げ
ストレージ 旧 (GB / 月) 新 (GB / 月)
最初の1TB $0.150 $0.130
次の49TB $0.135
$0.115
$0.120
次の450TB $0.100
次の500TB $0.105 $0.095
次の4000TB $0.090 $0.085
5000TB以上 $0.065 $0.060
25. AWS IAM
アカウント内で複数ユーザを作成し、セキュリティクレデン
シャルや権限を付与する事が可能
S3のバケットにオブジェクトのPUT/LIST/GETなど
詳細は第4回セミナーにて!
IAMで出来る事:
ユーザレベルでのコントロール
• S3に対してのお客様要件にあわせた操作の制御
アクセスポリシー言語を記述する
JSON format
27. バケットポリシーの一例
例:
ユーザ(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/*",
}
]
}
28. S3 Access Control List
バケットからオブジェクトへのコントロール
バケットのACLをオブジェクトは継承しない
作成と適用はいつでも可能
100個ACLは作成可能:
Owner
Email
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
30. サーバサイド暗号化
• マネージメントコンソールから実施する
• GUIツールで実施する
• コードで実施する
AmazonS3Client client = new AmazonS3Client(credentials);
client.setEndpoint("s3-ap-northeast-1.amazonaws.com");
PutObjectRequest putRequest = new PutObjectRequest(
"shot6jp", “S3に置くファイル名", new File(“実際のファイル"));
ObjectMetadata objectMetadata = new ObjectMetadata();
objectMetadata.setServerSideEncryption(
ObjectMetadata.AES_256_SERVER_SIDE_ENCRYPTION);
putRequest.setMetadata(objectMetadata);
PutObjectResult result = client.putObject(putRequest);
31. クライアントサイド暗号化
• マネージメントコンソールから実施する
• GUIツールで実施する
• コードで実施する
KeyPairGenerator generator =
KeyPairGenerator.getInstance("RSA");
generator.initialize(512);
KeyPair keyPair = generator.generateKeyPair();
EncryptionMaterials encryptionMaterials =
new EncryptionMaterials(keyPair);
AmazonS3EncryptionClient client =
new AmazonS3EncryptionClient(credentials, encryptionMaterials);
client.setEndpoint("s3-ap-northeast-1.amazonaws.com");
PutObjectResult ret = client.putObject(
“バケット名”, “S3上のファイル名”, new File(“現状ファイル"));
47. 参考文献
Amazon S3
http://aws.amazon.com/jp/s3/
Amazon S3 Getting Started Guide
http://docs.amazonwebservices.com/AmazonS3/latest/gs
g/
Amazon S3 Developer Guide
http://docs.amazonwebservices.com/AmazonS3/latest/de
v/
Amazon Web Services Japan blog
http://aws.typepad.com/aws_japan/