クライアントツールからCloud SQLのDBに接続したい

Cloud SQLにデータベースを作成したのでクライアントツールで確認したくなった。 今回はHeidiSQLで接続していく。 Cloud SQL Admin APIを有効にする 1.2 接続設定を確認し、外部からの接続が許可されていることを確認します。これには、Cloud SQL Admin APIを有効にし、インスタンスのファイアウォール設定で必要なIPアドレスからの接続を許可する必要があります 参照元が不明だけど、Cloud SQL Admin APIを有効にする必要がある。 有効にする方法はCloud SQL API を使用するにある通り。 Google Cloud Platform Console で、プロジェクトを選択します。 API Manager コンポーネントで、[Google Cloud SQL API] をクリックします。 Google Cloud SQL API コンポーネントで、[API を有効にする] を選択します。 Google Cloud SQL API コンポーネントと Google Cloud SQL コンポーネントは違うことに注意してください。後者のコンポーネントは、Google Cloud Platform Console と Cloud SDK でインスタンスを管理するために有効にする必要があります。 Cloud SQLインスタンスへの接続を許可する Google Cloud Consoleにログイン。 ナビゲーションメニュー(左上の三本線)をクリックし、「SQL」を選択。 接続したいCloud SQLインスタンスを選択。 「接続」タブを選択。 「公開IP」を設定。この設定がない場合は「公開IPの追加」ボタンをクリック。 「ネットワーク」のセクションにある「承認済みネットワーク」までスクロール。 「ネットワークの追加」ボタンをクリック。 ネットワーク:接続を許可したいIPアドレスまたはIPレンジを入力。例えば、自分のPCのIPアドレスを許可する場合は、「203.0.113.0/32」のように入力(/32は単一のIPアドレスを意味する)。 説明:任意の説明を入力(例:「自宅PC」)。 「完了」ボタンをクリック。 「保存」ボタンをクリックして設定を保存。 これで、指定したIPアドレスからCloud SQLインスタンスへの接続が許可された。...

投稿日 · 2024-06-13 · 更新日 · 2024-07-07 · 1 分 · nove-b

Go & Cloud Run & Cloud SQLでWebAPIを作成したけど、公開する前に諦めた

Cloud RunとCloud SQLの料金が予想を上回った Goの勉強をしたく、WebAPIを作成することにした。特別難しいこともないただのREST API。 せっかくなのでアプリを作成しようということで、側はreact nativeで作成した。 で、結合しているうちに料金が結構請求されていることに気が付いた。 Cloud SQLが大体20日で4000円くらい。 しかもここら辺はよくわからないのだが、インスタンスを停止しているにもかかわらず、料金が発生している気がする。 調査して理解する必要がありそうなので、いつかまとめる。 今は幸い無料期間でクレジットを消費しているだけだが、無料期間終了後は確実に払うことができない。 つまり、現実できじゃない。 ここは仕様検討で気が付くべきだった。 ここまでやったこと Cloud Run & Cloud SQLでどうこうするのはいったん諦める。 でもいつか使うかもしれなので、やったことをまとめておく。 Cloud RunでGoを動かしたい GormでCloud SQLに接続する クライアントツールからCloud SQLのDBに接続したい これしかなかった。 基本的にドキュメントが整備されているので、その通り実行すれば結果を得ることができた。 ただ、料金体系が理解できていなので、そこらへんは整理したい。 AWSも理解できていなので、こちらも理解したい。 fly.io 個人開発だとよく聞くし、ここを使ってみようと思っている。 そのためには料金体系とかしっかり調べる必要がありそうだけど。 Plan Pricing· Fly 料金表見る限り月額5ドルとのこと。 無料プランはなくなったぽい、まあこのご時世だしこんなものか。 本当はGoでの実績を作りたかったけど、firebaseで作成するか。

投稿日 · 2024-06-12 · 更新日 · 2024-07-07 · 1 分 · nove-b

Cloud RunでGoを動かしたい

Gormを使用し、APIを作成した。 前回はAWSとNestJsだったので、今回はGCPを使用してみることにした。 Cloud Run 今回はCloud Runを使用することにした。 そもそもCloud Runとは、 フロントエンド サービスやバックエンド サービス、バッチジョブの実行、ウェブサイトやアプリケーションのデプロイ、処理ワークロードのキューへの追加を行います。インフラストラクチャを管理する必要はありません。 毎月 200 万リクエストは無料です。 Amazon ECSとAWS App Runnerと比較されることが多いらしい。 Amazon ECSとApp RunnerとCloud runの比較 特筆すべきは無料枠があることな気がする。 デプロイ そんなCloud Runにデプロイしていく。 クイックスタート: Cloud Run に Go サービスをデプロイする 公式が丁寧なのでこれに沿っていく。 ちなみに前提は下記の通りになる。 Goで既にAPIを作成している フレームワークは未使用 Goのバージョンはgo 1.21.4 ローカルでサーバーを立ち上げる時はnet/httpを使用した。 アカウント作成 まずはアカウントを作成する必要がある。 アカウントを作成する 作成後、 プロジェクト セレクタ ページで、Google Cloud プロジェクトを作成する。 プロジェクト名を作成するだけで作成が完了する。 次に課金が有効になっていることを確認する必要がある。 課金が有効になっているか確認する 課金が有効になっていない場合は、 「このプロジェクトには請求先アカウントがありません」 というポップアップが表示されるらしい。 Google Cloud CLI をインストール ここで問題がないようであれば、Google Cloud CLI をインストールする。 以下、Windowsでの方法になる。 参考;インストール手順 Google Cloud CLI インストーラをダウンロード。 インストール後は画面の指示に従い、進めていく。 全部、Next☞でやったけど問題なさそうだった。...

投稿日 · 2024-05-31 · 更新日 · 2024-07-07 · 1 分 · nove-b

GormでCloud SQLに接続する

Cloud RunにGoで作成したAPIをデプロイしようと思ったところ、うまくいかなかった。 調査してみたところ、データーベースに接続できずに落ちているっぽいとのこと。 ちょっとなんでかわからないけど(今思い返せば、Docker起動していた? という不安がある)、ローカルのDBに接続できないので、いずれ接続する予定だったので、Cloud SQLに接続し、それでCloud Runにデプロイしてみようという風に思い立った。 Cloud SQLに登録する Cloud Run から Cloud SQL for MySQL に接続するがある。 公式があるので、こちらを参考にする。 なお、今回サーバーはローカル(net/http)で起動することにする。 インスタンスを作成する Google Cloud コンソールで Cloud SQL の [インスタンス] (https://console.cloud.google.com/sql?hl=ja&_ga=2.145632700.968950133.1716041931-758618644.1700836939)ページに移動する。 インスタンスを作成 をクリック。 [MySQL を選択] をクリック。 インスタンスを作成するには、まず Compute Engine API を有効にする必要があります。 という警告が出るので、APIを有効にする。 インスタンスID、パスワード、を登録。 My SQLのバージョンを8にし、Cloud SQL のエディションはEnterpriseにする。 プリセットをいったん開発環境にして、リレージョンを東京、ゾーンをシングルに設定する。 構成オプションを開き、とりあえず一番小さい1 vCPU、3.75 GBを選択してみる。 で、インスタンスを作成する。 構成オプションはとりあえず、最小で不満があればあげていく方法で問題ないらしい。 DBの作成 インスタンスのデータベースにいき、データーベースの作成をクリックする。 今回インスタンスの作成をし、データーベースの作成をしていなかったので、エラーが出続け、悩まされた。 接続を試みる まず接続をしてみたところ、 $ go run main.go 2024/05/26 00:41:05 cloudsqlconn.NewDialer: failed to create default credentials: google: could not find default credentials....

投稿日 · 2024-05-31 · 更新日 · 2024-07-07 · 2 分 · nove-b