Skip to content

Instantly share code, notes, and snippets.

@nakatanakatana
Last active July 5, 2021 15:42
Show Gist options
  • Save nakatanakatana/36aa54c68572b5ab38fe567577f1595e to your computer and use it in GitHub Desktop.
Save nakatanakatana/36aa54c68572b5ab38fe567577f1595e to your computer and use it in GitHub Desktop.
Cloud Run上でGrafanaを動かしてみるやつ

Cloud SQL の設定

  • 画面からぽちぽち (MySQL, 5.7互換)
  • DB, userの作成

GCRにimageをデプロイ

  • 現状Cloud Runにデプロイできる対象がGCRにあるものだけため
  • grafana/grafana:6.6.1 を自前のプロジェクトのgcr.ioにアップロード
    • marketplace.gcr.io で公開されている grafanaのイメージをつかう

Cloud Run の設定

gcloud config set run/region us-central1

export GCP_PROJECT=gcpProjectID  # `プロジェクトID`
export CLOUDSQL_DATABASE_NAME=grafana
export CLOUDSQL_DATABASE_USER=root
export CLOUDSQL_DATABASE_PASSWORD=password
export CLOUDSQL_INSTANCE_NAME=$GCP_PROJECT:us-central1:mdb # Cloud SQLの `インスタンス接続名`
export CLOUDSQL_SERVICE_ACCOUNT=sa_name # CloudSQL Client の権限を持った SA 

gcloud beta run deploy grafana --image marketplace.gcr.io/google/grafana7 \
--add-cloudsql-instances $CLOUDSQL_INSTANCE_NAME \
--platform managed \
--allow-unauthenticated \
--service-account $CLOUDSQL_SERVICE_ACCOUNT \
--port 3000 \
--set-env-vars "\
INSTANCE-CONNECTION-NAME=$CLOUDSQL_INSTANCE_NAME,\
GF_DATABASE_NAME=$CLOUDSQL_DATABASE_NAME,\
GF_DATABASE_USER=$CLOUDSQL_DATABASE_USER,\
GF_DATABASE_PASSWORD=$CLOUDSQL_DATABASE_PASSWORD,\
GF_DATABASE_TYPE=mysql,\
GF_DATABASE_HOST=/cloudsql/$CLOUDSQL_INSTANCE_NAME,\
GF_DATABASE_MAX_OPEN_CONN=30,\
GF_SESSION_PROVIDER=mysql,\
GF_SESSION_PROVIDER_CONFIG=$CLOUDSQL_DATABASE_NAME:$CLOUDSQL_DATABASE_PASSWORD@tcp($CLOUDSQL_INSTANCE_NAME:3306)/grafana?allowNativePasswords=true,\
GF_LOG_CONSOLE_FORMAT=json"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment