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

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

【AWS】古いAMI-IDでEC2を起動する

今回は古いAMI IDを利用してEC2を起動する方法について調べる機会がありましたので、備忘も兼ね記事にしております。 やりたかったこと 背景 結論 古いAMI-IDでEC2を起動する(AWS CLI利用) 注意点 やりたかったこと AWSマネージメントコンソールから、最新…

メール送信に関するSPF、DKIM、DMARCの説明と利点

メール送信する際のSPF、DKIM、DMARCについて調べる機会があったので、備忘を兼ね記載しております。 SPF(Sender Policy Framework) DKIM(DomainKeys Identified Mail) SPFとDKIMの関連性 DMARC(Domain-based Message Authentication, Reporting, and C…

【git/Github】/etc/gitconfigや~/.gitconfigの設定について

今回はgit導入時の初期設定や設定ファイル(/etc/gitconfig や ~/.gitconfig )について記載しております。 はじめに gitの設定箇所と役割について 各レベルの比較 /etc/gitconfig の具体的な設定について [http] と [https] セクション: [http "https://pro…

【Github】GitHub Enterprise Server と GitHub Enterprise Cloud の違いについて

GitHub Enterprise Server(以降、GHES) と GitHub Enterprise Cloud(以降、GHEC) の違いについて備忘を兼ねまとめたものです。 GitHub Enterpriseとは? GitHub Enterprise の種類について GHESとGHECの比較 GHESとGHECのメリット/デメリット ドキュメント…

【Docker】Dockerfileで記述するARGとENVの違いについて

DockerfileにおけるARGとENVの違いについてです。 概要 ARG ENV まとめ 具体例1 具体例2 さいごに 概要 ARG ARGはビルド時の変数です。 Dockerイメージをビルドする際に、docker buildコマンドの--build-argオプションを使って値を渡すことができます。 例え…

【Github】プルリクエストのマージ戦略(merge commit/squash/rebase)について

GitHubでのプルリクエストをマージする際のマージ戦略について纏めた記事です。 マージ戦略の種類 まとめ Merge Commit(マージコミット) Rebase and Merge(リベースマージ) Squash and Merge(スカッシュマージ) 結論 マージ戦略の種類 Merge Commit(…

【Docker】Dockerfileで記述するRUNとCMDとENTRYPOINTの違いについて_補足

以下記事を見返して、少しわかりにくいと感じたので補足扱いの記事です。 (自分で書いておきながらって感じではありますが。。。) www.guri2o1667.work RUN CMD ENTRYPOINT ここまでのまとめ CMD と ENTRYPOINT の詳細解説 CMD ENTRYPOINT CMD と ENTRYPOI…

【Terraform】(初心者向け)よく使う関数とメタ引数_その2

以下記事の続きとなり、その2です。 www.guri2o1667.work よく使うfunction/MetaArguments 1.endswith 2.startswith 3.format 4.merge 5.lower / uppper 6.regex / regexall 7. replace 8.substr 9. trim / trimprefix / trimsuffix / trimspace 10. can 11.…

【Terraform】(初心者向け)よく使う関数とメタ引数_その1

Terraformを使う上で利用頻度が多い関数(function)とメタ引数(MetaArguments)を独断と偏見でピックアップしたものです。 チートシート的な役割で自分の備忘になればという内容です。 整理すると思いの外たくさん使っていたみたいなので、本記事は1回目で…

【Github】JWT(JSON Web Token)について

Github Appを利用する際に、JWTについて調べる機会があったため、備忘を兼ねてになります。 JWTについて ステップ1: JWTの構造 ステップ2: ヘッダー ステップ3: ペイロード ステップ4: 署名 ステップ5: JWTの完成 ステップ6: JWTの使用 ステップ7: セキュリ…

【AWS】SESで宛先メールドメインを制限する

今回はSESにてメール送信する際の宛先メールドメインを制限する方法についてです。 はじめに 「② 送信先(宛先)制限」方法について1 「② 送信先(宛先)制限」方法について2 補足 はじめに SESを利用する際、 ① 送信元制限 ② 送信先(宛先)制限 の2つが…

【AWS】RDS/Auroraの認証機関/サーバー証明書の更新について

社内でAurora(PostgreSQL14)を利用しているのですが、証明機関の更新対応が必要だったので備忘です。 はじめに 対応 調査1:CA認証機関の変更にどの認証機関が利用できるか 調査2:CA認証機関の変更時にDBインスタンスの再起動が必要かどうか CA認証機関…

【AWS】S3のパブリックアクセスと静的Webホスティングの違いについて

今回は、S3の「パブリックアクセス」と「静的Webホスティング」の違いについてです。 S3バケットのパブリックアクセス メリット デメリット S3バケットの静的Webホスティング メリット デメリット まとめ S3バケットのパブリックアクセス S3バケットのパブリ…

【Terraform】(初心者向け)countで作成したリソースをoutputする

今回は、countで生成したresourceをoutputする際の方法を2つ記載しております。 はじめに コードの説明 outputについて パターン1: oneを使う パターン2: tryを使う はじめに 今回の記事内で利用するTerraformコードを記載いたします。 variable "vpc_id…

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

すごい時間が経ってしまいましたが、以下記事の続きです。 www.guri2o1667.work forとfor_eachの記事というよりは、タプルとオブジェクトの記事になっています。。。 tuple(タプル)とは? object(オブジェクト)とは? タプルとオブジェクトの違い タプルを利…

【Terraform】(初心者向け) values関数を使って値だけを取り出す

今回は、values式についてです。 values式について values関数とfor式の組み合わせについて 1. EC2の作成 2. Amazon S3バケットの作成 3. Amazon RDSデータベースの作成 4. サブネットの作成 注意点 values式について https://developer.hashicorp.com/terra…

【Terraform】(初心者向け) countを使って繰り返す

この記事では、Terraformの count の使い方をサンプルコードを交え記載しております。 尚、AWSリソースの作成を繰り返す方法を紹介しています。 countとは 基本的な使い方1 基本的な使い方2 count.indexの利用 条件付きでリソースを作成する countの注意点 c…

【Terraform】(初心者向け)別リージョンにAWSリソースを作成したい

AWSリソースを作成する際、「デフォルトリージョンは東京リージョンにしておいて、DR対策とかで大阪リージョン使おう」みたいな話がよくあります。 そんなとき、「あれ?大阪リージョンへのAWSリソースの作成どうやるんだっけ?」ってことが私は何回もあった…

【Terraform】(初心者向け)jsonencode関数について

今回はjsonencode関数についてです。 ■ はじめに ■ サンプルコード(簡易) ■ サンプルコード(詳細) ■ はじめに jsonencode関数はTerraformのリストとマップをそれぞれJSONの配列とオブジェクトに変換します。また、Terraformの文字列はJSONの文字列に、数…

【AWS】RDSパラメータグループのあれこれ

今回は、RDSやAuroraのパラメータグループについて、忘れがちなところを備忘を兼ね記載致します。 ■ パラメータグループの「値」列が空白のものについて ■ パラメータグループの「送信元」列について ■ パラメータグループの「適用タイプ」列について ■ パラ…

【AWS】StepFunctionsでAutoScalingGroupのdesired_capacityとmax_sizeとmin_sizeを変更

今回は、StepFunctionsを利用したAutoScalingGroupの設定値を変更する方法についてです。 ■ はじめに ■ ゴール ■ 用途 ■ ステートマシンにアタッチするIAMロール/ポリシーについて ■ ステートマシン定義1 ■ ステートマシン定義2 ■ 補足 ■ はじめに すでにAut…

【AWS】Auroraで利用する拡張モニタリングとPerformance Insightsの違いについて

今回は、Auroraで利用する拡張モニタリングとPerformance Insightsについてです。 ■ 設定箇所について(AWSマネコン) 【拡張モニタリング】 【Performance Insights】 ■ 拡張モニタリングについて ■ Performance Insightsについて ■ 補足:拡張モニタリング…

【Terraform】(初心者向け)path.moduleとpath.rootについて

今回はpath.module と path.rootについてです。 ■ はじめに ■ path.module について ■ path.root について ■ はじめに terraformコード内で何かしらのファイルを参照したり独自作成のテンプレートを参照するときに利用するのがpath.module , path.root です…

【AWS】S3バケット内のデータをダウンロードしたい(パブリックアクセスを行いたい)

今回は、S3バケット内に保存したオブジェクトをダウンロードしたい時の記事になります。 ■ はじめに ■ 設定箇所(概要) ■ 設定箇所(詳細) S3バケットの「ブロックパブリックアクセス」を「オフ」 S3バケットの「バケットポリシー」を設定 ■ はじめに 社内…

【Terraform】(初心者向け)null の使い方について

今回はnullについてです。 ■ はじめに ■ null とは ■ null の利用パターン ■ はじめに 「null」・・・。 なんとなく、意味はわかるけどきちんと調べたことがなかった(もしかしたら調べるほどのものでもないのかもしれないけど)、私は調べたので、、、ここ…

【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…