AWS
docs.aws.amazon.com AmazonLinux2 もちゃんとメンテされてたし、という感じなのでこれも AWS にお金をぶっこむ限りメンテされていくでしょう! AmazonLinux2 と AmazonLinux2023 の比較は以下。 docs.aws.amazon.com 「Fedrora から fork したけど独自実装…
バケットポリシーを書かないといけない、以上! dev.classmethod.jp いつもバケットポリシー書き忘れて「オアッ AccessDenied!」となってしまっている。
RFC というか CNAME の仕様を言われると「それはそう!」となるやつ。 ホストゾーンをサブドメインで分割する サブドメインをたくさん運用する環境があって、ネイキッドドメイン example.com のホストゾーンに全部いれちゃうと見通しが悪い! という事で、サ…
CloudFront + S3 でフロントエンドをやってるんだけど、毎回デプロイ毎にキャッシュ削除で /* 対象にして投げていたら、今回始めて遭遇した。 詳細は出力されないし Try again で later じゃないらしいので何度か挑戦するもだめ。 なので、一度キャッシュ削…
だいぶ悩んでしまったのと、ググると出てくる例が 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 公式のリソース解説と反復横跳びして確認した。 cha-shu00.hatenablog.com 以下、作業していてつまづいた、注意しておくところ。 SPF 周り mail_from_domain は必ずサブドメイン指定が必要 (以下 domain に指定しているのは…
RDS をメンテしようと思い立つも、 ECS exec でポートフォワードできない。 ❯ aws ssm start-session \ --target ecs:stg-tf-example-ecs-cluster_00001111222233334444555566667777_00001111222233334444555566667777-99998888 \ --document-name AWS-Start…
aws ssm start-session ... --document-name AWS-StartPortForwardingSessionToRemoteHost ... などして、 ECS exec 経由で fargate コンテナを踏み台に RDS 接続などしていると、作業によってはタイムアウトによって中断されることがままある。 めっちゃ辛…
大正義クラスメソッドくんの記事通りにやればとりあえず作れる。 dev.classmethod.jp んだけど、 IAM まわりがどうしてもうまくいかなく、ログイン後にディレクトリ一覧などが取れず「ンガガガ」となっていた。 List を許可したのにダメなんか? と思ってい…
タイトルがすべてシリーズ。 とりあえず 僕の用途では、aws_iam_role_policy_attachment に全部そろえよう、となった。
いつもざっくり AWS で計算していたのだけど、 vCPU 8, 16 が選択できず 「まあ Linux だけサポートしてるし、ざっくりの範疇を超えてるかー。 手動で計算すっか」 と思っていたら、公式のコストシミュレータがちゃんと使えるものになっていた。 とはいえ相…
なんか申請しないといけない、という記憶だったんだけど、だいぶ昔にほぼ申請不要になっていた。 aws.amazon.com 気をつけないといけないのはフラッディングくらいですかね、負荷テストすると意図せず引き起こされそうな可能性ある。 基本的にテストする業者…
タイトルがすべてシリーズ。 Terraform で管理している ECS (fargate) の 1.4.0 で特定の RAILS_ENV だけ問題が起きる、という現象の調査をしていて、それはほぼ解決したんだけど、なぜか ECS Cluster をデプロイしなおしたら以下のエラーが出るようになった…
fargate 用に雑に書いたコンフィグを /etc/nginx/conf.d/ 以下に放り込んでいたんだけど、「これデフォルトのファイルどうなってんだ?」 という疑問がシュッと出てきたので確認してみた (DockerHub のリポジトリページ見てたけど、それっぽい記述が見当たら…
マネジメントコンソールで OAC を選択するとヘッダに「バケットポリシー変更しろよ!」ってお知らせ出してくれるし、そのまま使えるバケットポリシーをコピペさせてくれるんだけど、 「オリジンになる S3 を、複数の異なるドメイン付与したディストリビュー…
ロケ地 Terraform 1.3.6 hashicorp/aws 4.45.0 Error loading state state がローカルやんけ! と気づいて、 backend "s3" を書いて、リモートに手動でバケットを作成 (設定は名前以外、全部変更なしのアクセスきつきつでオッケー)。 後に terraform init -m…
作成したリソースが Terraform 由来であること 複数の企業が単一アカウント ID に AdministratorAccess 持っている という状態のインフラを管理しているので、それぞれ AWS のリソース作成時のタグに Build: Terrafrom Company: 会社名 を付与する運用にして…
アカウント ID が異なる環境で、動いているアプリケーションを環境ごとクローンする、というタスクがあって、規模的に手動で作業しなおしても大丈夫だなと思って着手したらひどい目にあった、という話。 ページデザインが崩れる デプロイして動作確認を行っ…
いつも忘れて調べるんだけど、正解がシュッと出てこないのでインターネットの敗北。 我の勝利〜。 --local-infile=1 を利用する デフォルトで用意されるパラメータグループか、それに準拠するパラメータを利用していれば、 --local-infile=1 を付けて mysql コ…
RDS で LOAD DATA LOCAL INFILE って素直に使えるんだっけ? と思って調べていたら以下のような記述を見つけてしまった。 バイナリログ作成を有効にすると、トランザクションが大きい場合、IOPS とディスク消費量が 3 倍になります。これは、ディスクに書き…
キャッシュ無効化、という手法があります。 soypocket.com ただこれ運用戦略的に正しいのか? みたいな疑問符はあるんで、今回は「開発中だったり本番向け環境じゃない」という前提のもと、キャッシュの時間を調整します。 キャッシュポリシー 前回の記事で…
React とか Vue あたりで作って、 npm run build で出力したやつをフロントエンドと呼んでいます、雑ゥ! とにかくこれを S3 にぶっこみつつ、CloudFront で配信します。 最近のウェブ系はだいたいこんな感じですよねというヤツのふりかえり。
自前運用の SMTP サーバから AWS SES に切り替える作業があったんだけど、表題のエラーが出て「!?」となっていた。 Must issue a STARTTLS command first 答えは全部ここに書いてあるんですが、ちゃんと暗号化して送信しろ、という話です。 エラー時の該当…
dev.classmethod.jp Lambda@Edge に function 配置してたおじさんだった (node v6 とか v8 の時代マン) ので、えらいお手軽に出来るようになったなー、という感じだった。 いやまあ Basic 認証くらい CloudFront 標準機能で用意しとけよ、という感じはある。
普通「A レコード!」っていうと、 IP アドレスと関連付くアレを想像する。 ただ AWS だと A は A でも A(LIAS) ということらしい。 よくよく Route53 で A レコード選択時の項目を見ると、 IPv4 アドレスと一部の AWS リソースにトラフィックをルーティング…
以下の状態でローカルに存在する IMAGE ID 000000000000 を、 REPOSITORY TAG IMAGE ID CREATED SIZE example1 0.0.1 000000000000 1weeks ago 100MB ECR (例として example1.dkr.ecr.ap-northeast-1.amazonaws.com/integration) へタグ latest を付与して p…
Terraform や CloudFormation で Destroy などで一括リソース破棄を行う場合、BucketNotEmpty: The bucket you tried to delete is not empty. You must delete all versions in the bucket. と言われてエラーで処理が中断される場合がある。 これ、ずっと S…
見たら php-fpm が標準で有効になっとっる、これかあという感じだった。 とりあえず動かしたいので、以下のようにする。 [ec2-user@localhost ~]$ sudo vi /etc/httpd/conf.modules.d/00-mpm.conf [ec2-user@localhost ~]$ sudo systemctl restart httpd /et…
自前で用意する Redis redis.conf へ以下のように requirepass を設定します。 この場合は、 foobared というパスワードが設定されており、TLS などの暗号化通信は必要ない状態です。 # snip # requirepass foobared # snip # blog.shimar.me ちなみに、公式…
作成した ElastiCache クラスターのエンドポイントと接続確認をしたい。 epel とか remi 使えって書いてあって「いや嘘だろ」って顔になった。 20211221 追記 AWS 公式のヘルプに、 redis-cli だけコンパイルする手順の記載が存在した。 当時は急いでいて見…