AWS

AWS Lambda(Python3.6)からDynamoDBのデータをバッチ登録する

AWS Lambda(Python3.6)からDynamoDBのデータをバッチ登録する
AWS

AWS Lambda(Python3.6)からDynamoDBのデータを削除する

AWS Lambda(Python3.6)からDynamoDBのデータを削除する AWS Lambda(Python3.6)からDynamoDBのデータを削除してみます。 削除するにはdelete_itemメソッドを使用します。 impor...
AWS

AWS Lambda(Python3.6)からDynamoDBのデータを更新する

AWS Lambda(Python3.6)からDynamoDBのデータを更新する AWS Lambda(Python3.6)からDynamoDBのデータを更新してみます。 import boto3; def lambda_handler(e...
DynamoDB

AWS Lambda(Python3.6)からDynamoDBにデータ取得する

AWS Lambda(Python3.6)からDynamoDBにデータ取得する
DynamoDB

AWS Lambda(Python3.6)からDynamoDBにテーブルを作成する

AWS Lambda(Python3.6)からDynamoDBにテーブルを作成する AWS Lambda(Python3.6)からDynamoDBにテーブルを作成してみます。 create_tableメソッドを使用します。 import b...
Slack

SlackをRSSリーダーにする。

RSSリーダーを使うのだるかったので、SlackをRSSリーダーにしました。 やり方を記載します。 RSSアプリのインストール SlackにRSSアプリをインストールします。 以下にアクセスして、インストールをクリックするだけ。 RSSアプ...
AWS

AWS Lambda(Python3.6)からDynamoDBにデータ登録する

AWS Lambda(Python3.6)からDynamoDBにデータ登録する AWS Lambda(Python3.6)からDynamoDBのテーブルにデータ登録をしてみます。 import boto3; def lambda_handl...
AWS

AWS LambdaをPython3.6で書いてみる入門編です

AWS LambdaをPython3.6で書いてみる入門編です 最近node.jsも飽きたのでPython3.6でLambdaを勉強しようと思いました。 node.jsだとindex.jsがデフォルトで作成されますが、Python3.6だと...
node.js

npmモジュールでJSONをYAMLに変換(CLI)

npmモジュールでJSONをYAMLに変換(CLI)
AWS

AWS CLIをインストーラからインストールする – Windows10

AWS CLIをインストーラからインストールする - Windows10 前提 クレデンシャル情報取得済 インストール AWC CLIをウィンドウズ環境でインストールします。 インストーラダウンロード 特別な設定はないのでインストール画面の...
AWS

AWS Lambdaがデフォルトで持っている環境変数一覧

AWS Lambdaがデフォルトで持っている環境変数一覧 Lambdaはデフォルトで環境変数を持っているので一覧を表示します。 exports.handler = (event, context, callback) => { consol...
AWS

AWS CognitoとLambdaを連携する

AWS CognitoとLambdaを連携する AWS Cognitoでは、以下のタイミングでLambda関数を呼び出すことができます。 サインアップ前 認証前 カスタムメッセージ 認証後 確認後 認証チャレンジの定義 認証チャレンジの作成...
AWS

AWS IAMポリシーを徹底的に調べる

AWS IAMポリシーを徹底的に調べる IAMポリシーは何となくとっつきにくい感じがあります。 ということで徹底的に調べてビジュアルエディターではなくJSONで書いてみます。 AWSはいつからかビジュアルエディターも用意してくれていますが、...
AWS

AWS RDSをプライベートサブネットに配置する

AWS RDSをプライベートサブネットに配置する AWS RDSはプライベートサブネットに配置するのが一般的な構成だそうです。 パブリックサブネット上にRDSが配置されてあっても、AWSの仕様としてRDSのOSにはログインできません。踏み台...
AWS

AWS SQSのawscliコマンド纏め

AWS SQSのawscliコマンド纏め SQSのコマンド纏めです。 キューを作成します。 $ aws sqs create-queue --queue-name testQueue { "QueueUrl": "" } キューのARNを確...
composer

phpのcomposerを使ってパッケージインストールする

phpのcomposerを使ってパッケージインストールする
AWS

AWS IoTにクライアント機器から画像(バイナリデータ)を送信する

AWS IoTにクライアント機器から画像(バイナリデータ)を送信する クライアント機器から画像などのバイナリデータを送信してS3にPUTしたい、ということはよくあると思います。 が、現状ではクライアント機器から画像をそのままAWS IoTに...
AWS

AWS IoT CoreとPUB/SUBする為のツールを試しました

AWS IoT CoreとPUB/SUBする為のツールを試しました 色々調べて、私が勝手に評価しました。 Web版 MQTT over WebSockets http通信なので使えないです。 MQTT Websocket Client ht...
AWS

VPC LambdaからVPC上のリソースにアクセスすると初回実行時が遅いのはENIを作成するからです

VPC LambdaからVPC上のリソースにアクセスすると初回実行時が遅いのはENIを作成するからです VPC Lambdaを実行すると、なんか最初の1回目が凄く処理が遅い、と思いました。 2回目以降は早いのです。ググってみると、どうもVP...
Phalcon3

Phalcon3のマイクロアプリケーションでDBインサートできるAPIを作成する

Phalcon3のマイクロアプリケーションでDBインサートできるAPIを作成する Select文の発行は完了しましたので、Insert文をHTTPのPOSTメソッドで発行するAPIを作成してみます。 InsertやUpdate操作の際はモデ...
AWS

AWSのVPC Lambdaと非VPC Lambdaの違い

AWSのVPC Lambdaと非VPC Lambdaの違い 非VPCのLambdaとVPC対応のLambdaの違いです。 なぜ非VPC LambdaがRDSにアクセスできたのか 以前書いた記事で「AWS LambdaからRDS(MySQL)...
AWS

AWS RDSに固定IPアドレスを割り当てる方法

AWS RDSに固定IPアドレスを割り当てる方法 AWS RDSに固定IPアドレスを割り当てるにはENI(Elastic Network Interface)にEIPを割り当てる必要があったようです。 参考サイト 現時点では「AWSのRDS...
node.js

npxでローカルパッケージを実行できるんです!

gulpとか使用するとき、install方法として、npm install -g gulpとか書いてますよね。 これグローバルにinstallしてるので、グローバルが汚染されて嫌だなと思ってました。 ローカルインストールすると、gulpコマ...
JavaScript

util.promisifyでコールバックスタイルからPromiseに変換

node.jsが提供するutil.promisifyの使い方を記載します。 ※async/awaitの使い方で既に利用しています。 util.promisify? コールバックを必要とする関数をPromiseに変換するutilです。 制約 ...
AWS

AWS CLIからS3バケットを作成したり削除したりするコマンド纏め

AWS CLIからS3バケットを作成したり削除したりするコマンド纏め AWS CLIからS3を操作するには aws cli <コマンド> という形式で行います。 バケットの作成 aws cli mb バケット名 これでバケットが作成されます...
AWS

AWSアカウントIDをawscliで確認する方法

AWSアカウントIDをawscliで確認する方法 aws cliコマンドで aws sts get-caller-identity と実行すると表示されます。
lambda(Python)

AWS Lambda(Python3.6)からDynamoDBのデータを登録する

AWS Lambda(Python3.6)からDynamoDBのデータを登録する AWS Lambda(Python3.6)からDynamoDBのデータを登録(挿入)してみます。 usersテーブルが存在しているものとします。「AWS La...
AWS

AWS IoTからクライアント機器にパブリッシュする

AWS IoTからクライアント機器にパブリッシュする AWS IoTはクライアント機器と双方向の通信が可能です。 なので、AWS IoTからクライアント機器にパブリッシュすることもできます。 MQTT.fxのインストールやAWS IoTの設...
AWS

AWS IoTでクライアント機器からAWS IoTにパブリッシュする

証明書にモノとポリシーをアタッチするAWS IoTでクライアント機器からAWS IoTにパブリッシュする pub/subはラズパイとかでちゃんと確認したかったのですが、当社の組込エンジニアのT君がラズパイ買ったのに、、設定してくれず。仕方な...
Lambda(node.js)

AWS LambdaでJSONからCSVに変換するJSON2CSVを使う

AWS LambdaでJSONからCSVに変換するJSON2CSVを使う JSON形式の配列をCSVに変換するのに便利なJSON2CSVというパーサがあったので使ってみました。 使い方は以下のようにrequire('json2csv').P...
AWS

AWS Lambdaで作成した/tmp/ディレクトリのファイルをS3にファイルを保存する

AWS Lambdaで作成した/tmp/ディレクトリのファイルをS3にファイルを保存する Lambdaで/tmp配下に保存したファイルをS3にputしてみます。Lambda処理内であれば/tmp配下が使えます。 const aws = re...
Lambda(node.js)

AWS Lambdaでは一時的に/tmp/ディレクトリが使用できる

AWS Lambdaでは一時的に/tmp/ディレクトリが使用できる LambdaではS3とのやり取りなどのために?一時的なディレクトリとして、/tmp/ディレクトリを使用することができます。 fsモジュールを使用して一時的なファイルを作成し...
Lambda(node.js)

AWS LambdaからRDS(MySQL)にSQLを発行する

AWS LambdaからRDS(MySQL)にSQLを発行する RDS(MySQL)はVPCのパブリックサブネットに配置されている前提とします。 LambdaからRDSにアクセスするには同一VPC上にLambdaを置く必要があるかもしれませ...
AWS

AWSのCloudWatchのイベントルールを利用してcronでEC2の停止や開始を行う

AWSのCloudWatchのイベントルールを利用してcronでEC2の停止や開始を行う CloudWatchのルールで「EC2 StopInstances呼び出し」というターゲットが用意されているので、これを選択し、EC2のインスタンスI...
AWS

AWSのCloudWatchのイベントルールを利用してcronで定期実行する

AWSのCloudWatchのイベントルールを利用してcronで定期実行する CloudWatchのイベント機能を利用して、「一定速度」か「cron式」でLambdaやKinesis,SNSなどを定期実行することができます。ここでは1分ごと...
AWS

ローカルマシン(Mac)からAWS RDSへ接続を試みる

ローカルマシン(Mac)からAWS RDSへ接続を試みる パブリックサブネットに配置されているRDSは、EC2からではなくてもローカルマシンから接続をすることができます。 RDS以外の設定で、前提として以下設定が必要になります。 VPCのホ...
Git Bash

Git Bashでmysqlコマンドを実行できるようにする

Git Bashでmysqlコマンドを実行できるようにする Git Bashでsshとか使えるのでWindowsでAWS使う時にすごく便利です。 ただyumとかsudoとかaptコマンドが使えません。 ということでmysqlコマンドを使える...
AWS

AWS EC2で踏み台サーバを作成して80ポートと22ポートを分ける

AWS EC2で踏み台サーバを作成して80ポートと22ポートを分ける EC2にWebサーバを立ち上げると80ポート(要件によっては443ポートも)や22ポートを開けると思います。が、22ポートを問答無用で開放しておくのはセキュリティ上好まし...
API Gateway

AWSのCloudFrontでS3,EC2,API GatewayをPath Patternで分けて一つの独自ドメイン(HTTPS)に纏める

AWSのCloudFrontでS3,EC2,API GatewayをPath Patternで分けて一つの独自ドメイン(HTTPS)に纏める CloudFrontのマルチオリジンを使用してPath Patternを分けることによって一つのド...
AWS

AWSのELBをSSL化してEC2と接続する

AWSのELBをSSL化してEC2と接続する
AWS

AWSのEC2にELB(ALB)経由で接続する

AWSのEC2にELB(ALB)経由で接続する
AWS

AWS EC2のAmazon LinuxでApache2.2からApache2.4にアップデートする方法

AWS EC2のAmazon LinuxでApache2.2からApache2.4にアップデートする方法 httpdをインストールするとApache2.2がインストールされます。Apache2.4にアップデートしたい場合は一旦削除しないとい...
AWS

AWS WAF and AWS ShieldでWAFの設定をしてみる

AWS WAF and AWS ShieldでWAFの設定をしてみる AWSはWAFとかFirewallなども設定できるようです。ここではAWS WAFを設定してみたいと思います。 「Go to AWS WAF」をクリックします。 rule...
AWS

AWS S3のライフサイクルで特定フォルダを削除してみる

AWS S3のライフサイクルで特定フォルダを削除してみる AWS S3のライフサイクルルール機能を使えばバケットにあるオブジェクトを1日単位で削除することができます。 適用対象を「images/」などにすることにより、そのディレクトリ以下に...
ACM

AWS Cognitoで認証画面を作成してサインイン後にAPI GatewayをCognitoで認可する

AWS Cognitoで認証画面を作成してサインイン後にAPI GatewayをCognitoで認可する AWS Cognitoでは認証画面は提供していません。(でも提供していたらどなたか教えてください) 認証画面を自作します。ちょっと凝っ...
ACM

AWS Route53で取得した独自ドメインをSSL化する

AWS Route53で取得した独自ドメインをSSL化する ACMは、独自ドメインに対してhttpsアクセスするために証明書を作成してくれます。 ※リージョンはバージニア北部に変更します。2018/10/22現在ではどのリージョンでも可能の...
AWS

AWS Cognitoでユーザー作成時に「An error occurred (NotAuthorizedException) when calling the SignUp operation」エラー

AWS Cognitoでユーザー作成時に「An error occurred (NotAuthorizedException) when calling the SignUp operation」エラー
AWS

AWS Route53で取得した独自ドメインをCloudFrontに紐づける

AWS Route53で取得した独自ドメインをCloudFrontに紐づける
AWS

AWS CloudFrontのInvalidationでS3のコンテンツキャッシュを削除する

AWS CloudFrontのInvalidationでS3のコンテンツキャッシュを削除する
AWS

CloudFront + S3 + Cognitoでサインイン画面を作成する

CloudFront + S3 + Cognitoでサインイン画面を作成する