AWSの話題を中心に、日々の業務やプログラミングの徒然を綴るエンジニアブログです。

HANDS LAB

HANDS LAB ENGINEERS BLOG

ハンズラボエンジニアブログ

カテゴリー: Kinesis

Amazon Kinesis FirehoseのS3連携をAWSCLIから使ってみた


こんにちは、今井です。

ありがたいことに、今年もre:Inventに参加しています。
今日のキーノートでたくさんの新サービスが発表されました。
その中で、Amazon Kinesis FirehoseのS3連携を、公式を参考にしてAWS CLIを使って試してみました。

手順

まずは、AWS CLIを最新化します。

AWS CLIのリージョンとプロファイルを指定します。
現状、us-east-1、us-west-2、eu-west-1のみ対応していますので、us-west-2を使ってみます。

ストリームを作成するコマンドのヘルプは以下のとおり

ストリームを作成するのに必要なパラメータを表示してみます。
S3とRedshiftの設定がありますので、Redshiftのほうは削除します。

IAM Roleが必要なようなので、こちらはマネジメントコンソールから作成します。

IAMのRoleの画面からCreate New Roleボタンを押して、Role名を入力します。

TryFirehose-1

Role TypeとしてAmazon Kinesis Firehoseが用意されているので、その行のSelectボタンを押します。

TryFirehose-2

PolicyとしてAmazonKinesisFirehoseS3DeliveryRoleを選択します。

TryFirehose-3

Create Roleボタンを押して完了です。

TryFirehose-4

また、S3バケットが必要なので作成します。

最終的なパラメータは以下のとおりです。create_delivery_stream.jsonという名前で保存します。
バケット名はARN表記なので、バケット名の前にarn:aws:s3:::をつけます。
S3オブジェクトのプリフィックスとして、Firehose/を指定しています。

それでは、ストリームを作成してみましょう。

作成されたストリームの情報を表示してみます。
DeliveryStreamStatusがACTIVEになるまで2、3分程度待ちました。

レコードを追加してみましょう。

S3に保存されたか確認します。

中身を見てみます。

日本語も入れてみます。

日本語も問題なく入力できました。

利用料はデータを入れた分に対してかかるようですが、忘れずにストリームの削除をしておきます。

最後に

後日Redshiftとの連携も試してみたいと思います!