2026-02-01から1ヶ月間の記事一覧
この記事は EC2 user_data シリーズ(全3回) の3本目です。 aws_instance の user_data に lifecycle { ignore_changes } を入れると意図しない stop/start は止まります。でも「いざ新しい user_data を適用したくなったらどうするのか」が次の問題になる…
この記事は EC2 user_data シリーズ(全3回) の2本目です。 Terraform の aws_instance に user_data_replace_on_change という属性があります。これは Provider v4 のメジャーアップデートで user_data 変更時の挙動が変わり、困ったユーザーのために後か…
この記事は EC2 user_data シリーズ(全3回) の1本目です。 Terraform で aws_instance の user_data を変更して terraform apply したら、インスタンスが stop/start してしまうので、サービス断発生してしまいます。 しかも新しい user_data のスクリプト…
Talos LinuxはKubernetesノード専用のイミュータブルOS。SSHやシェルを持たず、talosctl経由のAPI操作でノードを管理します。 壊れたノードを手で直すのではなく、宣言的なconfigから再生成する運用に寄せた設計です。 何を調べたか ホームラボでk3sクラスタ…
ChatGPTに相談しながらOAuthクライアントの設定をしていて、GCPのOAuthクライアントで「承認済みのリダイレクトURI」の設定欄を探していたのですが、が見つかりませんでした。 なぜかというと、「デスクトップアプリ」型を使っていたからです。単純にちゃん…
SSH先のリモートサーバーで gcloud auth login しようとしたら「ブラウザが開けません」で詰まった(--no-browser オプションもあるが手順が複雑)。Google OAuth Playgroundを使えば、ローカルのブラウザでリフレッシュトークンを取得して、リモートの設定…
リモートサーバーでgcloud auth application-default loginが使えないときの対処法 ADCの実体はただのJSONファイルなので、gcloud CLIなしでも手動で作成・配置すれば認証が通ります。 何が起きたか SSHでしかアクセスできないリモートサーバーで、GCP APIを…
strace -c で起動時のsyscallを集計すると、遅延の原因がランタイム初期化なのか、ファイルI/Oなのか、アプリケーションロジックなのかを数字で切り分けられます。CloudWatch → top の次の「もう一段潜る」ツールとして使えます。 何を調べたか 「なんか遅い…
gh auth login で認証したはずなのに HTTP 401: Bad credentials で弾かれる。 犯人は .envrc に残っていた古い GITHUB_TOKEN でした。 gh CLIは環境変数のトークンを最優先で使うので、gh auth login で保存した認証情報は無視されます。 何が起きたか gh i…
GitHub Issueをprivateリポジトリからpublicリポジトリに gh issue transfer で移そうとすると、仕様で拒否されました。 回避策としては中継リポジトリを経由すれば回避できるのですが、そういう仕様だったのかと初めて知ったので記事にしておきます。 エラ…
eval "$(ssh-agent -s)" して ssh-add で鍵を登録したのに、別のターミナルタブでTerraformを叩いたら認証エラー。犯人は SSH_AUTH_SOCK 環境変数が別ターミナルに伝わっていないことでした。 Proxmox上のVMにTerraformでSSH接続しようとしたとき、こういう…
ある日の朝。S3の中身を見てみると 「ファイルが更新されていない・・・・・」 普段EC2にS3をマウントして使っているんだけど、どうもS3のマウントが外れたっぽいアラートがSlackに流れていた。 「はぁ。またか。」 と思ってマウントが外れた原因を調べない…