クラウドインフラ構築記

現在AWSの構築支援に携わっております。今注視しているのは、GKE、BigQuery、Google Dataflowなどサービスを展開しているGoolge Cloud Platformです。

CloudSQL Proxyを使用してCloudSQL SEに接続してみた。 #gcpja


CloudSQL インスタンスに接続するのに、通常の3306/tcpを行う方法とは別に、CloudSQL Proxyを使う方法があります。

CloudSQL Proxyを使わない場合、Authorized networksに、GCEインスタンスの外部向けIPアドレス(グローバルIP)を追加する必要があります。追加する必要がないのが、CloudSQL Proxyを使用した接続方法になります。

GCEインスタンスとCloudSQLのネットワーク間をセキュア接続(トンネル接続)するようになります。

CloudSQL Proxy用のClientプログラムのダウンロード

wget -O /usr/local/bin/cloud_sql_proxy wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 
ダウンロードしたプログラムの実行権限を付与
chmod +x /usr/local/bin/cloud_sql_proxy 
mysql sock用の領域を作成
mkdir /cloudsql; chmod 777 /cloudsql 

CloudSQL Proxy Clientを実行。デーモン実行方法がないようで、標準出力を捨てるようにしています。しないと、
接続ログを標準出力に出力してしまいます。デーモンとして動かす方法を提供してほしい。

cloud_sql_proxy -dir=/cloudsql -instances=project_id:asia-east1:db-name 1> /dev/null 2> /dev/null & 

WordPressのwp-config.phpのDB_HOSTを以下のようにmysql sock接続方法に変更することで、CloudSQL Proxy経由で
接続することが可能になります。

 define('DB_HOST', 'localhost:/cloudsql/project_id:asia-east1:db-name');

GKEからもCloudSQL Proxyを接続する方法がありますが、後日。

コメントは受け付けていません。