自由気ままに書いちゃおう

好きなことをつらつらと・・・

【AWS】セッションマネージャで利用するポリシーの最小権限について

セッションマネージャでEC2に接続する際に利用するIAMポリシーについて纏めた 記事になります。 ■ 背景 ■ 2023/3時点でのAmazonSSMManagedInstanceCore ■ 本題: 最小権限 ■ 余談 ■ 背景 私がセッションマネージャを利用するときにインスタンスプロファイル…

【Terraform】(初心者向け)forとfor_eachの違いについて_1

今回はterraform の for と for_each の違いについてです。 ■ はじめに ■ for_each について ■ for について ■ for について(タプル生成) ■ for について(オブジェクト生成) ■ はじめに for と for_each は全くの別物です。 ただ、for_each にfor〜がつ…

【AWS】AuroraのS3エクスポートの種類について

今回は、Aurora(PostgreSQL)にてS3エクスポート挙動を確認した際の内容をまとめたものになります。 ■ S3へデータをエクスポートする際のパターン ■ ① Auroraクラスターから直接S3バケットへエクスポート ■ ② Auroraクラスターのスナップショットを指定して…

【AWS】ECSの各エンドポイントの説明

今回は、ECSサービスで利用する VPCエンドポイントについてです。 ■はじめに ■com.amazonaws.region.ecs-agent について ■com.amazonaws.region.ecs-telemetry について ■com.amazonaws.region.ecs について ■はじめに Amazon ECS とインターフェイス VPC エ…

【Terraform】(初心者向け)MapとObjectの違いについて

今回は、MapとObjectの違いについてです。 ■ はじめに Map: Type Constraints - Configuration Language | Terraform | HashiCorp Developer Object: Type Constraints - Configuration Language | Terraform | HashiCorp Developer ■ わかりにくいところ Ma…

【AWS】CloudFront経由でのアクセス時に「SignatureDoesNotMatch」によりアクセスが拒否される

今回は、CloudFrontのカスタムオリジンにS3バケットを指定した際に、S3オブジェクトにアクセスすると以下のように「SignatureDoesNotMatch」が出力された際の対応方法についてです。 ■ 結論 先に結論です。 冒頭の通り、「SignatureDoesNotMatch」が出た際は…

【AWS】CloudFrontのプレフィックスリストについて

今回はCloudFront利用時に使っておきたいプレフィックスリストについてです。 ■ CloudFrontのプレフィックスリストとは? ■ CloudFrontのプレフィックスリストの使いどころ ■ CloudFrontのプレフィックスリストはどこにある? ■ セキュリティグループでCloud…

【Terraform】(初心者向け)dynamic ブロックについて

今回はdynamicブロックについてです。 ■はじめに dynamicブロックの公式ページは以下です。 Dynamic Blocks - Configuration Language | Terraform | HashiCorp Developer ■dynamicブロックで何ができるのか? 私がdynamicブロックについて調べている際、「…

【Terraform】(初心者向け)ヒアドキュメントの<<と<<-の違いについて

今回は、terraformでヒアドキュメントを利用する際の<<と<<-の違いについてです。 ■背景 ■結論 ■何故? ■背景 IAMポリシーを作成する際、<<を利用してterraform planを行うと以下の通りエラーが出力される。 【コード】 【terraform plan結果】 "policy "に…

【Terraform】(初心者向け)リストで使うlength関数とelement関数とindex関数について

今回はリストを処理する際に利用するlength関数とelement関数とindex関数についてです。 ■はじめに length - Functions - Configuration Language | Terraform | HashiCorp Developer element - Functions - Configuration Language | Terraform | HashiCorp…

【Terraform】(初心者向け)MapのKeyとValueをそれぞれ取得する

今回は、keys関数とvalues関数についてです。 ■はじめに terraformでMapを利用していると、「Mapの中のKeyだけ取得したい」「Mapの中のValueだけ取得したい」という場面があります。 そんな時に利用するのが、 keys - Functions - Configuration Language | …

【Terraform】(初心者向け)lookupの使い方

今回はlookup関数についてです。 ■ lookup 関数とは map のキーを指定してバリューを取り出すことができます。 lookup - Functions - Configuration Language | Terraform | HashiCorp Developer ■ 実例 locals { vpcs2_map = { "dev1" = "10.20" "dev2" = "…

【Terraform】(初心者向け)for_eachの使い方(実例つき)

terraformのfor_eachについてです。 ■ for_eachとは(公式サイト) ■ for_eachとは(toset利用時) ■ toset 、 each.key について ■ toset について ■ each.key について ■ for_eachとは(map利用時) ■ for_eachとは(公式サイト) The for_each Meta-Argum…

【Github】GitHubActionsで利用するupload-artifactとdownload-artifact

今回は、GitHubActionsで利用するupload-artifactとdownload-artifactについてです。 どちらのアクションも便利で使い勝手もいいですが、少し注意が必要なこともあるので、備忘も兼ね記載しております。 ■はじめに ■artiafct とは ■upload-artiafct について…

【AWS】S3バケットのイベント発生を検知しSQSに通知する

今回は、「S3バケットのイベント発生を検知しSQSに通知する」です。 ■ はじめに ■ 用語説明 【イベント】 【イベント通知】 ■ 手順(概要) ■ 手順(1.S3バケットの作成) ■ 手順(2.SQSでキューの作成) ■ 手順(3.上記2で作成したキューのアクセス…