AR ホームベーカリー

オイラのアウトプット用ホームベーカリー!

AWS

RDS の role 名を変える

RDS のモニタリングロール Terraform で RDS のモニタリングロールを設定する際、なるべく名前をデフォルトに寄せたくて以下のようにしている。 resource "aws_iam_role" "rds_monitoring_role" { name = "rds-monitoring-role" assume_role_policy = data.a…

EBS サイズをオンラインで拡張する

AWS 的にはオンライン拡張をサポートしている、というか仕組み的に基本そうなっているので。 そんな感じ! 作業手順 以外だと思われるが、公式にわりとマトモなナレッジベースがある。 docs.aws.amazon.com なので以下では注意する点のみ書いておく。 Nitro …

ECR とやり取りさせるための AWS の OIDC (WebIdentifer) に付与するロールの中身

AWS

ポリシーだったかもしれねえ……! { "Version": "2012-10-17", "Statement": [ { "Sid": "GetAuthorizationToken", "Effect": "Allow", "Action": "ecr:GetAuthorizationToken", "Resource": "*" }, { "Sid": "PushImageOnly", "Effect": "Allow", "Action": …

Mailbox providers announce new requirements for bulk email senders と Upcoming changes to AWS CloudTrail events published by AWS Secrets Manager

AWS のお知らせきてたので個人的なメモかわりに。 Mailbox providers announce new requirements for bulk email senders Gmail と Yahoo がメール受信時の制限つよくするよ! って言ってるやつ。 SPF, DKIM, DMARC の設定をしておこう! 詳しくはこのへん。…

AmazonLinux2023 では dnf や snap 経由で certbot をやれない(ハズ

AWS

この記事を書いている時点ではできないはず。 2024/03/01 追記: certbot が追加されたっぽい certbot has now been added to the just released AL2023.3 github.com とのことで、アップデートすればおそらく certbot を素朴に利用できるはず。 いやーよか…

Aurora のストレージは意外と手厚いらしい

ishiiiiii.hatenablog.com 知らなかったー、 RDS のストレージ部分ぜんぶおなじ実装かとばかり。 コスト優先で Aurora に移行する、いやアーキテクチャが MySQL 互換でも異なるからやらない、みたいなのがプロジェクト内外から圧力あったりして揺れているの…

AWS SES で DMARC を指定する

デフォルトの設定だと、検証済み ID (SES に持ち込むドメイン) は amazonses.com のエイリアスとして認証されているので、 SPF,DKIM は有効だけど、 DMARC は有効にならない? いやそんなことはないのか? よくわからん。 ちなみに突然 DMARC が飛び出してき…

AWS SES を postfix 経由で利用する (mail コマンドで雑に送信できるようにする)

AWS

dev.classmethod.jp これ。 雰囲気 雰囲気としては以下のような感じ。 mail コマンド -> 同じ環境内の postfix(sendmail) -> AWS SES -> 宛先メールボックス。 /etc/postfix/main.cf # readme_directory: The location of the Postfix README files. # readm…

AWS Backup

AWS

なんか前に記事書いた気がしたんだけど、設定しようとして見返したら見当たらなかったので。 www.sunnycloud.jp だいたいこの通りにやったらいけます、ありがてえ。 タグではなく ID で指定する 検索上位に出てくる内容、概ね「タグでやったほうがいい!」と…

certbot で route53 を利用する際のありがちなエラー

AWS

いわゆる --dns-route53 的なオプションつけた時のヤツ。 クレデンシャルがない Unable to locate credentials To use certbot-dns-route53, configure credentials as described at https://boto3.readthedocs.io/en/latest/guide/configuration.html#best-…

AWS Fargate Task Maintenance Process Update

AWS

なんか物々しいお知らせがきてりゅ! と思ったら、単純に「AWS が責務を負う Fargate (ECS タスク) インフラ側のセキュリティアップデートが発生したら、0, 7, 14 日の範囲で適用するためのタスクリタイアの期間を選べるよ!」という話だった。 今すぐなにか…

ECS(fargate) のタスク ID を取得する

AWS

タスク ID が欲しい ECS_AGENT_URI ECS_CONTAINER_METADATA_URI_V4 ECS_CONTAINER_METADATA_URI と起動時に自動付与される環境変数 (ECS_) から取れそうなんだけど、メタデータのエンドポイント URL (http://169.254.170.2) も含まれた絶対パス形式だったな…

awslogs (CLI の方) は UTC で時間指定する

いやまあ、バックエンドは aws cli そのものなので分かってしまえば当然なんだけど。 github.com 例えば CloudWatch Logs で、下記のようにローカル (JST) で時間を指定できているので、「実態は aws cli だし似たようなことができるのかな」と思っていたけ…

CloudWatch Events (EventBridge) で月末日をトリガーにするスケジュールは日付に L を指定する

AWS

タイトルで終了してしまったシリーズ。 月末に処理を実行する BtoB・BtoC 問わずで、月末日・月末締め毎月1日、みたいなタイミングでバッチ処理したいというシチュエーションは結構発生すると思います。 で、今回は開発の人から提供してもらった以下のコマン…

AmazonLinux2023 で EPEL は現時点ではやれない

特に記述ないけど、公式の比較表だと fedora の fork みたいなこと書いてあるし行けるやろ! と思って試した所。 [ec2-user@wireguard-vpn ~]$ sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm Last metadata exp…

Terraform で db.T. 系インスタンスを扱う時はパフォーマンスインサイトを無効化する

タイトルがすべてのシリーズ。 performance_insights_ 系の記述がエラーになる db.m5.large から db.t4g.medium などにインスタンスサイズをスケールダウンした際に、 Terraform から「パフォーマンスインサイトは使えないよ!」と怒られるなどした。 エラー…

ECS Scheduled Task に cron のかわりをさせる

www.ritolab.com dev.classmethod.jp このあたりを参考にしてシュッと導入した。 感謝感謝。 しかしこれめんどくさいなー、という印象。 コンテナ化するなら cron も外出しするし ecs 系リソースかと思ったら CloudWatch Events だしでもう何がなんだか。 と…

GithubActions で Error message: Failed to get ID Token. が出たらリトライすれば大体イケる

タイトルがすべてシリーズ。 GithubActions でビルド ビルドして OIDC 経由で ECR に送る、という Workflow でコケていた。 詳細は隠すけど以下のようなエラーが出力される。 Run aws-actions/configure-aws-credentials@v1 Error: Error message: Failed to…

AmazonLinux2023 が生まれていた

docs.aws.amazon.com AmazonLinux2 もちゃんとメンテされてたし、という感じなのでこれも AWS にお金をぶっこむ限りメンテされていくでしょう! AmazonLinux2 と AmazonLinux2023 の比較は以下。 docs.aws.amazon.com 「Fedrora から fork したけど独自実装…

S3 静的ウェブホスティングをやるときに 403 出しがちで気をつけること

AWS

バケットポリシーを書かないといけない、以上! dev.classmethod.jp いつもバケットポリシー書き忘れて「オアッ AccessDenied!」となってしまっている。

サブドメインごとにホストゾーンを分割すると、分割先のネイキッドドメインで CNAME できない

AWS

RFC というか CNAME の仕様を言われると「それはそう!」となるやつ。 ホストゾーンをサブドメインで分割する サブドメインをたくさん運用する環境があって、ネイキッドドメイン example.com のホストゾーンに全部いれちゃうと見通しが悪い! という事で、サ…

CloudFront encountered an internal error. Please try again.

CloudFront + S3 でフロントエンドをやってるんだけど、毎回デプロイ毎にキャッシュ削除で /* 対象にして投げていたら、今回始めて遭遇した。 詳細は出力されないし Try again で later じゃないらしいので何度か挑戦するもだめ。 なので、一度キャッシュ削…

Rails の delivery_method で AWS SES を指定してメール送信する

だいぶ悩んでしまったのと、ググると出てくる例が delivery_method をオーバーライドしてるものが多いのでという気持ち。 ロケ地 Ruby 3.1.0 Rails 6.1.6 aws-sdk-rails 3.7 aws-sdk-ses は v1 系利用 TLDR aws-sdk-rails gem を追加して、 config.action_ma…

Terraform で AWS SES する

AWS

以下を参考にしながら Terraform 公式のリソース解説と反復横跳びして確認した。 cha-shu00.hatenablog.com 以下、作業していてつまづいた、注意しておくところ。 SPF 周り mail_from_domain は必ずサブドメイン指定が必要 (以下 domain に指定しているのは…

ECS exec が動くかチェックする

RDS をメンテしようと思い立つも、 ECS exec でポートフォワードできない。 ❯ aws ssm start-session \ --target ecs:stg-tf-example-ecs-cluster_00001111222233334444555566667777_00001111222233334444555566667777-99998888 \ --document-name AWS-Start…

ECS exec 実行時のタイムアウトを防ぎたい

aws ssm start-session ... --document-name AWS-StartPortForwardingSessionToRemoteHost ... などして、 ECS exec 経由で fargate コンテナを踏み台に RDS 接続などしていると、作業によってはタイムアウトによって中断されることがままある。 めっちゃ辛…

AWS Transfer for SFTP で S3 バケットに SFTP する

AWS

大正義クラスメソッドくんの記事通りにやればとりあえず作れる。 dev.classmethod.jp んだけど、 IAM まわりがどうしてもうまくいかなく、ログイン後にディレクトリ一覧などが取れず「ンガガガ」となっていた。 List を許可したのにダメなんか? と思ってい…

managed_policy_arns と aws_iam_role_policy_attachment を利用すると apply 毎にアタッチとデタッチを繰り返す

タイトルがすべてシリーズ。 とりあえず 僕の用途では、aws_iam_role_policy_attachment に全部そろえよう、となった。

Fargate の料金を計算する

AWS

いつもざっくり AWS で計算していたのだけど、 vCPU 8, 16 が選択できず 「まあ Linux だけサポートしてるし、ざっくりの範疇を超えてるかー。 手動で計算すっか」 と思っていたら、公式のコストシミュレータがちゃんと使えるものになっていた。 とはいえ相…

AWS でホストしている Web アプリケーションに脆弱性診断をする時の事前申請

AWS

なんか申請しないといけない、という記憶だったんだけど、だいぶ昔にほぼ申請不要になっていた。 aws.amazon.com 気をつけないといけないのはフラッディングくらいですかね、負荷テストすると意図せず引き起こされそうな可能性ある。 基本的にテストする業者…