プログラマブルクラウドの薦め

60
プログラマブル クラウド のススメ @shot6

description

 

Transcript of プログラマブルクラウドの薦め

Page 1: プログラマブルクラウドの薦め

プログラマブル   クラウド    のススメ

@shot6

Page 2: プログラマブルクラウドの薦め

プログラマ  

クラウド  

Page 3: プログラマブルクラウドの薦め

 といえば・・・

Page 4: プログラマブルクラウドの薦め

EC2

Page 5: プログラマブルクラウドの薦め

使ってるよね?

Page 6: プログラマブルクラウドの薦め

でも・・・

Page 7: プログラマブルクラウドの薦め

今日は  そこじゃない

Page 8: プログラマブルクラウドの薦め

クラウドの

API重要

Page 9: プログラマブルクラウドの薦め

というお話

Page 10: プログラマブルクラウドの薦め

AWSのあまり聞かないよいところ

Page 11: プログラマブルクラウドの薦め

プログラマブルなところ

Page 12: プログラマブルクラウドの薦め

何がうれしいか

Page 13: プログラマブルクラウドの薦め

EC2 CloudFront VPC

SQS

SNS SimpleDB

RDS EMR

S3

インフラ

ミドルウェア

どれも  API装備

Page 14: プログラマブルクラウドの薦め

どのレイヤもコードで操作可能。

Page 15: プログラマブルクラウドの薦め

EC2 CloudFront VPC

SQS

SNS SimpleDB

RDS EMR

S3

インフラ

ミドルウェア

さわって  みる。

Page 16: プログラマブルクラウドの薦め

最初に  する事

Page 17: プログラマブルクラウドの薦め

GET  AWS  SDK

Page 18: プログラマブルクラウドの薦め

http://aws.amazon.com/sdkforjava/

Java/.NET  Python/PHP  

Page 19: プログラマブルクラウドの薦め

accessKey  secretKey  メモ

Page 20: プログラマブルクラウドの薦め
Page 21: プログラマブルクラウドの薦め

Javaの場合。

Page 22: プログラマブルクラウドの薦め

ProperKesファイルに  記述する

Page 23: プログラマブルクラウドの薦め

サンプルを動かす

Page 24: プログラマブルクラウドの薦め

S3 //S3クライアントの作成、ここで先ほどのproper-esを読む  

 AmazonS3  s3  =  new  AmazonS3Client(…);  

//バケットの作成    s3.createBucket(bucketName);  

//オブジェクトのput    s3.putObject(new  PutObjectRequest(bname,  key,  file)));  

//オブジェクトのget    S3Object  object  =  s3.getObject(new  GetObjectRequest(bname,  key));

Page 25: プログラマブルクラウドの薦め

SQS //SQSクライアントの作成  

 AmazonSQS  sqs  =  new  AmazonSQSClient(…);  

//キューの作成  String  myQueueUrl  =  sqs.createQueue(createQueueReq).getQueueUrl();  

//メッセージの送信  sqs.sendMessage(new  SendMessageRequest(myQueueUrl,  message));  

//メッセージの受信  List<Message>  messages  =  sqs.receiveMessage(receiveMessageReq)                    .getMessages();

Page 26: プログラマブルクラウドの薦め

どれも簡単

Page 27: プログラマブルクラウドの薦め

セットアップ  してすぐに  使える

Page 28: プログラマブルクラウドの薦め

インストール  設定も不要

Page 29: プログラマブルクラウドの薦め

そこで、、、

Page 30: プログラマブルクラウドの薦め

もう少し  ギアを上げる

Page 31: プログラマブルクラウドの薦め

幾つかを  連携させる

Page 32: プログラマブルクラウドの薦め

Amazonas

Amazonas

ユースケース1:ファイルアップロード実行、通知、ジョブの実行などの連携機能

S3 ファイル

SNS

完了通知依頼

ジョブ 完了通知

ユースケース2:ファイルの高度な扱い

S3

ファイル

条件付きアップロード  一括アップロード

S3 ファイル

条件付きダウンロード  一括ダウンロード

S3 条件付き削除  論理削除

Page 33: プログラマブルクラウドの薦め

Amazonas

Amazonas

ユースケース1:ファイルアップロード実行、通知、ジョブの実行などの連携機能

S3 ファイル

SNS

完了通知依頼

ジョブ 完了通知

ユースケース2:ファイルの高度な扱い

S3

ファイル

条件付きアップロード  一括アップロード

S3 ファイル

条件付きダウンロード  一括ダウンロード

S3 条件付き削除  論理削除

Page 34: プログラマブルクラウドの薦め

こっから自前ライブラリで書いてある

Page 35: プログラマブルクラウドの薦め

S3  s3  =  new  S3();  

//通知先を指定  s3.setupNo-fica-on("test_receive2");  

//オブジェクトput成功すると、SNSで通知  String  ret  =  s3.putObject(”sns_it_test",  "mogemoge.txt",  new  File(”hoge.txt"));  

Page 36: プログラマブルクラウドの薦め

Amazonas

Amazonas

ユースケース1:ファイルアップロード実行、通知、ジョブの実行などの連携機能

S3 ファイル

SNS

完了通知依頼

ジョブ 完了通知

ユースケース2:ファイルの高度な扱い

S3

ファイル

条件付きアップロード  一括アップロード

S3 ファイル

条件付きダウンロード  一括ダウンロード

S3 条件付き削除  論理削除

Page 37: プログラマブルクラウドの薦め

S3  s3  =  new  S3();  

//一括アップロード  List<String>  result  =  s3.putAllObjects(BUCKET_NAME,  ”your_directory”);  

Page 38: プログラマブルクラウドの薦め

S3  s3  =  new  S3();  

//論理削除(ゴミ箱バケットに移動)  s3.soXDeleteObjects(BUCKET_NAME,  "cccc/c2dm.pdf");  

//条件付き削除  s3.checkAndDelete(BUCKET_NAME,  "moge/events2.txt”,  Time.expired("2010/07/21"));  

Page 39: プログラマブルクラウドの薦め

Amazonas

Amazonas ユースケース3:操作の記録

S3

SNS

ユースケース4:暗号化、圧縮などの便利機能

S3

SimpleDB

SQS

操作記録

SimpleDB

SQS

暗号化、圧縮

暗号化

JSONにして、  暗号化

Page 40: プログラマブルクラウドの薦め

作ったのは  こんなんです

Page 41: プログラマブルクラウドの薦め

Amazon  SDK  for  Java

SimpleDB SQS SNS S3

Amazonas(今回作ったプロト)

データ暗号化 クレデンシャル

管理

操作記録の  収集

通知・連携  機能

簡易利用機能

レプリケー  ション

アプリケーションレイヤ

フレームワークレイヤ

Amazonインフラレイヤ

AWSを使ったアプリケーション

複数のAWSサービスを  連携して使う

Page 42: プログラマブルクラウドの薦め

しゃべり足りないw

Page 43: プログラマブルクラウドの薦め

時間があったら話したい

Page 44: プログラマブルクラウドの薦め

忘れないように共有。

Page 45: プログラマブルクラウドの薦め

Deep  dive  into  SDK

Page 46: プログラマブルクラウドの薦め

その1

Page 47: プログラマブルクラウドの薦め

ポリシの  記述の仕方

Page 48: プログラマブルクラウドの薦め

ポリシAPIを使う方法

Page 49: プログラマブルクラウドの薦め

その2

Page 50: プログラマブルクラウドの薦め

連携の仕方

Page 51: プログラマブルクラウドの薦め

SNS-­‐SQS  SNS-­‐HTTP

Page 52: プログラマブルクラウドの薦め

URL-­‐ARN  変換

Page 53: プログラマブルクラウドの薦め

その3

Page 54: プログラマブルクラウドの薦め

何故か無い  CloudFront  API

Page 55: プログラマブルクラウドの薦め

をみんなで  考える  (実はjets3tにはある)

Page 56: プログラマブルクラウドの薦め

とかやれたらいいな。

Page 57: プログラマブルクラウドの薦め

プログラマ  

クラウド  

Page 58: プログラマブルクラウドの薦め

叩いて試してみてください

Page 59: プログラマブルクラウドの薦め

プログラマブル   クラウド    のススメ

おしまい

Page 60: プログラマブルクラウドの薦め

Thanks!