メメメモモ

プログラミング、筋トレ、ゲーム、etc

AWS

CloudFormationでKMSを設定する際は、CloudFormation実行ユーザーがキー管理者として登録される必要がある

概要 タイトルのとおりです。そうでなければ、CloudFormationは以下の実行エラーを出します。 The new key policy will not allow you to update the key policy in the future (新しいキーポリシーは将来のキーポリシーの更新を許可していません) aws.amazo…

アクセスキーとシークレットキーを含んだCSVファイルをパースして、credentialsとconfigの設定を出力するスクリプトを書いた

概要 以下のような形式のCSVファイルを想定しています。 User name,Password,Access key ID,Secret access key,Console login link {user_name},{password},{access_key},{secret_access_key},https://{account_name}.signin.aws.amazon.com/console スクリ…

AWS CLIでクロスアカウント用のロールを作成

概要 いくつかのAWSアカウント内で、クロスアカウント用のロールを作成する必要があったので、スクリプトを作成しました。 以下、作成したスクリプト。 PROFILE= ROLE_NAME= ACCOUNT_ID= Principal=$(cat<< EOS { "Version": "2012-10-17", "Statement": { "…

「Blue/Green Deployments on AWS」を読んで、Blue/Greenデプロイメントのやり方を学んだ

AWS

概要 ブルーグリーンデプロイメントのAWSホワイトペーパー https://d1.awsstatic.com/whitepapers/AWS_Blue_Green_Deployments.pdf AWSのサービスやツールを使った Blue/Green デプロイメントを実装する方法が学べます。 以下、読書メモです。 Blue/green de…

「Overview of Deployment Options on AWS」を読んだ

AWS

概要 Overview of Deployment Options on AWS https://d1.awsstatic.com/whitepapers/overview-of-deployment-options-on-aws.pdf AWSへのプロビジョニングやデプロイの方法が紹介されている資料です。 以下のようなことを知ることができます。 デプロイに関…

LocalStack の DynamoDB と DynamoDBLocal のベンチマークを取ってみた

結論 この記事では、以下の結論となっています。 DynamoDBLocal が LocalStack の DynamoDB よりパフォーマンスが良い 自動テストでは、DynamoDBLocal を使うほうが良い 概要 手元のPCで動く開発用 DynamoDB は以下の2つがあります。 LocalStack · GitHub Dy…

CQRSとDynamoDBのデータ構造設計

概要 最近DynamoDBで設計を行っています。DynamoDBはNoSQLであり様々な制約があるので、RDBの設計とは異なる考え方をしなければなりません。 四苦八苦しながら、設計をしていて何とか形になってきています。そんな中、CQRSという考え方があることを知りまし…

Go言語でAWS ElasticSearchを操作する

package main import ( "bytes" "context" "encoding/json" "fmt" "io" "log" "net/http" "time" ) type User struct { Name string `json:"name"` Age int `json:"age"` Note string `json:"note"` CreatedAt time.Time `json:"created_at"` UpdatedAt time…

DynamoDBlocalでDynamoDBをひとまず触れるようにする

概要 DynamoDBLocalを手元のPCに入れる aws-cliで操作する テーブルを作成する テーブル一覧を表示する テーブルにデータを挿入する データを取得する データをスキャンする Go言語で操作する ダミーのCredentialsを用意しておく SDKの導入 ひとまず参照する…