2018-01-01から1年間の記事一覧

S3の使用状況を拡張子別に取得してみた~Step Functions編②~

今回はStep Functionsの並列処理を動的に定義する方法をご紹介致します。 Step Functionsの並列処理は、動的リソースへの対応が難しかったりして、利用を見送るケースなども見受けられますが、別のステートマシンやLambda関数を利用して、並列処理用のステー…

S3の使用状況を拡張子別に取得してみた~Step Functions編➀~

Step Functionsを利用することで、並列処理を実現することができます。しかしながら、並列実行する処理の数が変動するような場合には、ステートマシンの定義の管理が難しく、少し扱いづらいものとなってしまいます。そこで、今回は並列処理を行うStep Functi…

AWS Client VPNを使ってVPN接続してみよう

AWS Client VPN という新しいサービスが発表されました。AWS Client VPN の利用で、ソフトウェアVPNを利用する場合でもサーバを用意する必要がなくなりました!今回方法の紹介をしています!

S3の使用状況を拡張子別に取得してみた~Lambda編~

S3の使用状況を拡張子別に取得するLambda関数のご紹介を致します。分析ツールのように使用したり、煩雑になりがちなS3バケットを整理したりするのに役立つかと思います。

DynamoDBのTransactionを使った取得処理

DynamoDBのトランザクションを使った取得処理の方法を書きました。実行環境・Lambda(node.js)・AWS SDKはnpmで最新をダウンロードしてください。 Lambda内にデフォルトで入っている物は古いので下記を参考にAWS SDKを用意してください。

Step Functions~Call Amazon SNS and DynamoDB APIs~

今回は先日のre:Invent 2018にて発表された、Step FunctionsのSNSとDynamoDBとの連携の方法についてご紹介致します。今回はAWSサービスの中でも利用頻度の高い、Amazon SNSとDynamoDBをStep Functionsと連携して、簡単なシステムを構築していきたいと思いま…

DynamoDBのTransactionを使った更新処理

DynamoDBのトランザクション関係のメソッドは取得系と更新系の2メソッドがあります。今回は更新系のtransactWriteItemsメソッドについてお話していきます。DynamoDBでロールバックを狙うには、この機能を使うしか方法が無いため必然的に使用頻度は高くなる…

DynamoDBでTransactionの使い方(異常系)

DynamoDBに実装されたトランザクション機能について、 前回は主に正常系の動作、及び使い方を紹介しました。 今回は、異常系の挙動について整理してみたいと思います。

DynamoDBでTransactionの使い方(正常系)

MySQLやOracleでお馴染みのトランザクションがAWS DynamoDBでも実装されました。今回はDynamoDBのトランザクションの使い方のご紹介です。まだまだ実装されたばかりのトランザクション機能ですが、機会があれば掘り下げてお伝えしていきたいと思います。

Transfer for SFTPを使ってみよう~scope-down policyでのアクセス制限~WinSCPからS3

2018年11月、Amazon S3と連携したマネージドなSFTPサービスのAWS Transfer for SFTPが発表されました。今回はこちらのサービスを利用したWinSCPからS3へのアクセス、及びscope-down policyを利用してユーザーごとのアクセス制限の設定を試してみたいと思いま…

AWS WAFで特定のIP以外からのログイン制御-Wordpressログイン-

AWS WAFは、アプリケーションを様々な攻撃から守るAWSのウェブアプリケーションファイヤーウォールのサービスです。 SQLインジェクションやクロスサイトスクリプティング等からリソースを守るルールも作成出来ますが、今回はIP一致条件、及び文字列一致条件…

CloudFormation~テンプレートのネストとNACL~

AWS環境上のシステムをCloudFormationのテンプレートに落とし込んだ時、VPCやサブネット、NACLなどのネットワーク周りのリソースに関して詰まった個所の注意点をまとめました。

Amazon Connect ~障害内容の音声通知とRun Commandでの障害対応~

Zabbixで検知した障害内容をAmazon ConnectのOutboundCallを用いて音声通知。電話ボタンのプッシュで、検知された障害と紐づけてあるコマンドが実行されるというシステムです。 電話のみで障害の把握から対応まで行うことが可能になります。

Amazon Connect~コールバック機能の組み込み~

東京リージョンでのサービスリリースが予定されているAmazon Connectのインバウンドシステムに自動コールバックの機能を組み込んでいく手順です。通常の問い合わせフローにコールバックの設定を組み込むだけなので、スクリプトやAWSサービスの知識があまりな…

Amazon AppStream 2.0を使ってみよう

今回はAWSのアプリケーションストリーミングサービスである、Amazon AppStream 2.0を使ってみたいと思います。難しい設定の必要なくアプリケーションの配信環境を構築可能。Image Builderを用いることでオリジナルのイメージが作成できるので、様々なユース…

デフォルトCMKで暗号化したスナップショットを別アカウントに共有

AWSデフォルトCMK(カスタマーキー)で暗号化したスナップショットを別アカウントに共有する方法は?わかりやすく手順を説明しています。

Amazon Connect ~GetCurrentMetricData APIを利用したエージェントステータスの取得~

GetCurrentMetricData APIはリアルタイムキューメトリクスを取得可能。 GetCurrentMetricData APIを利用したアウトバウンドコールシステムを構築する手順の紹介です。Amazon Connectを利用したコールセンターのシステムを構築する際、お試しになってみてはい…

IoT Enterprise Button ~クリックタイプに応じた処理の分岐~

AWS IoT Enterprise ButtonとLambda連携を行うことで、クリックタイプに応じた処理の分岐を行うことが可能に。 このブログでは、SNSと連携し、送信するメッセージを変更する仕組みをご紹介。

IoT Enterprise Button + Amazon Connect ~定型メッセージの音声発信~

IoT Enterprise ButtonとAmazon ConnectのOutboundCallの機能を連携していく方法をまとめました。これにより、メッセージを自動音声として電話発信することが可能となります。IoT Enterprise Buttonさえあれば簡単に導入できる仕組みとなっています。

ALB Fixed Response ~動的コンテンツのサーバレス配信~

ALBに「redirect」と「fixed-response」という2つの新しい機能が追加されました。今回はfixed-responseの機能を利用して、ALBから動的コンテンツ(javascript)を配信してみたいと思います。

Amazon Translate ~Slackを利用した異言語コミュニケーション~

日本語対応が発表されたAmazon Translateを試します。Amazon TranslateとSlackを連携した異言語コミュニケーションシステムの構築です。SlackのSlash CommandsからAPI Gateway経由でLambdaを呼び出し、Amazon Translateでの翻訳結果をSlackに返すといった流…

Amazon Connect ~顧客入力の保存とLambda連携~

Amazon Connectで顧客入力をLambdaに連携する方法をご紹介します。複数の顧客入力を利用する方法やLambda連携時の注意点にフォーカスして、Amazon Connectの振る舞いをご説明。Amazon Connectでは顧客入力を利用して、問合せフローの分岐や自動アンケートシ…

Lambda + API Gateway入門。Rest API作成

API Gatewayの設定を最小限にして、LambdaのREST APIを作成してみます。制御をLambdaで行うことで、ヘッダーを動的にしたり、クロスサイトスクリプト(XSS/CORS)への対応も容易にでき、特にAPI Gatewayの知識が深くなくても扱えるようになると思います。

Lambda + API Gateway入門。CSVやCORS

前回はほぼLambdaだけでREST APIを作成してみました。 その応用でCSVファイルのダウンロードとクロスサイトスクリプトの対応例を紹介します。

Lambda + API Gateway入門。画像のDL

前回、前々回でLambda + API GatewayでREST API、CSVのダウンロード、CORSの対応を紹介してきました。 今回は画像や動画、ZIPファイル等のバイナリファイルをダウンロードする方法を紹介します。今回はAPI Gatewayを少し変更します。

AWS IoT エンタープライズボタン Raspberry Piで写真を撮ろう

AWS IoT エンタープライズボタンをポチっと押すとラズパイに繋げたWebカメラが写真を撮り、S3にアップロードしたりSlackに投稿したりするのを試します。今回はfswebcamを使って写真を撮ります。ラズパイへsshし、apt-get install fswebcamでfswebcamをインス…

AWS IoT Enterprise Buttonを使ってみよう

AWS IoT Enterprise Buttonが日本でも販売開始され話題になりました。ボタンをクリックするだけでLambda関数を実行することができる面白いサービスです。今回はアプリを使って簡単に初期設定をし、ワンクリックでEメールを送信してくれるように設定したいと…

Serverless Architectures on AWS ~CloudFront + Lambda@Edge + API Gateway~

今回はAWS環境におけるサーバレスアーキテクチャの構築をご紹介します。単純なアプリケーションなどであれば利用コストを削減することも可能で、運用やバックアップなどのタスクも削減できます。

Amazon Connect + Kinesis Firehose + Lambda(Python 3.6) + Amazon Elasticsearch

今回は、前回作成したAmazon Connect + Kinesis Firehose + Amazon Elasticsearchの仕組みに、Lambdaを組み込んでいきます。なお、Amazon Connectのデータストリーミング機能をまだ有効化されていない方は、前回の記事をご参照ください。

Amazon Connect + Kinesis Firehose + Amazon Elasticsearch

Amazon Connectのデータストリーミング機能を利用して、通話イベントの情報をAmazon Elasticsearchに連携します。Amazon Connectのデータストリーミング機能は、エージェントイベントなどの情報をKinesisを経由してS3やAmazon Elasticsearchに連携できます。