type holyshared = Engineer<mixed>

技術的なことなど色々

Google Cloud Platform

アプリケーションをS3からGCSへ移行する

自分で運用しているアプリケーションのストレージサービスをS3に完全に移行しました。 S3を利用していたのはアプリケーションがもともとHerokuで運用していたからです。 アプリケーション自体は今はGoogle Cloud Platform上に構築していますが、もともとHero…

TypeORMでCloud SQLにIAMユーザーで接続する

Cloud SQLで組み込みの認証を利用せず、IAMベースの認証でDBに接続できるかやってみました。 IAMベースの認証にすると、パスワードが不要になり、SSL/TLSで接続できるようになります。 今回は下記の条件で試しました。 プリンシパルではなく、サービスアカウ…

CloudSQLのPostgreSQLのバージョンアップ

PostgreSQLのバージョンをv15からv18にアップグレードした。 仕事でAWSのDBバージョンを上げる作業を見ていて、そういえば今個人で動かしているCloudSQLのバージョンなんだけっけかと思ったらv15でした。 まだサポートされているバージョンですが、使えなく…

TerraformでArtifactRegistryの世代管理を行う

google_artifact_registry_repositoryリソースを定義する時に cleanup_policies を指定することで、どのバージョンまでストレージに残すかを設定できます。 設定してないと古いバージョンが溜まっていくので、コストが上がったりします。 アプリケーションの…

Could Buildを第2世代のリポジトリに対応させた

新しいアプリケーションに置き換える対応をしている時についでにCloud Buildのリポジトリを第2世代に置き換えた。 第2世代のリポジトリはTerraformで作成してあるので、Cloud Buildの設定を変えるだけで対応自体は済んだが制限があってビルド自体が失敗して…

運用しているアプリの変更

運用しているアプリの変更をちょっとずつ進めていて、半分ぐらい完了した。 単一のアプリケーションを複数の小さいアプリに分割をしていて、段階的に進めているので全ての完了が見えてきた。 アプリ自体をAPIサーバー、投稿管理アプリ、投稿の表示アプリに分…

BigQueryのテーブルに複数のログファイルをロードする

Google Cloud Storageに保存されている複数のファイルをBigQueryのテーブルに読み込もうとして、エラーが発生するので調査してみました。 エラーはテーブルにレコードが挿入できないエラーで、フォーマットが当初おかしいのかと思っていました。 Error while…

Cloud CDNでの署名付きCookie、署名付きURL

Cloud Storageに格納したファイルをCDNで配信する時にアクセスを限定したい場合があります その際に署名付きCookie、署名付きURLが使えます 設定自体はterraformなどで、自動で設定して置けるようにすると楽です resource "google_storage_bucket" "public-i…