Google Kubernetes Engine์์ SQL Server์ฉ Cloud SQL์ ์ฐ๊ฒฐ
์ด ํ์ด์ง์์๋ Google Cloud ์ฝ์๊ณผ ํด๋ผ์ด์ธํธ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ฌ์ฉํ์ฌ SQL Server ์ธ์คํด์ค์ ์ฐ๊ฒฐ๋ Google Kubernetes Engine(GKE)์ ์ํ ์ฑ์ ๋ฐฐํฌํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํฉ๋๋ค. ์ด ๋น ๋ฅธ ์์์์ ๋ง๋ ๋ฆฌ์์ค๋ ์ ๋ฆฌ ๋จ๊ณ๊น์ง ๋ชจ๋ ๋จ๊ณ๋ฅผ ์ ์์ ์๋ฃํ๋ค๊ณ ๊ฐ์ ํ ๋ 1๋ฌ๋ฌ(USD) ๋ฏธ๋ง์ ๋น์ฉ์ด ์์๋ฉ๋๋ค.
์์ํ๊ธฐ ์ ์
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Verify that billing is enabled for your Google Cloud project.
-
GKE์์ Cloud SQL ์ํ ์ฑ์ ์คํํ๋ ๋ฐ ํ์ํ Google Cloud API๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
์ฝ์
API ์ฌ์ฉ ์ค์ ์ ํด๋ฆญํ์ฌ ๋น ๋ฅธ ์์์ ํ์ํ API๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
๊ทธ๋ฌ๋ฉด ๋ค์ API๊ฐ ์ฌ์ฉ ์ค์ ๋ฉ๋๋ค.
- Compute Engine API
- Cloud SQL Admin API
- Google Kubernetes Engine API
- Artifact Registry API
- Cloud Build API
gcloud
๋ค์ ๋ฒํผ์ ํด๋ฆญํ์ฌ ๋ธ๋ผ์ฐ์ ์์ ์ง์ Google Cloud ๋ฆฌ์์ค์ ๋ํด ๋ช ๋ น์ค ์ก์ธ์ค๋ฅผ ์ ๊ณตํ๋ Cloud Shell์ ์ฝ๋๋ค. Cloud Shell์ ์ฌ์ฉํ์ฌ ์ด ๋น ๋ฅธ ์์ ์ ์ฒด์ ํ์๋
gcloud
๋ช ๋ น์ด๋ฅผ ์คํํ ์ ์์ต๋๋ค.Cloud Shell์ ์ฌ์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ด
gcloud services enable
๋ช ๋ น์ด๋ฅผ ์คํํด ์ด ๋น ๋ฅธ ์์์ ํ์ํ API๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.gcloud services enable compute.googleapis.com sqladmin.googleapis.com \ container.googleapis.com artifactregistry.googleapis.com cloudbuild.googleapis.com
์ด ๋ช ๋ น์ด๋ ๋ค์ API๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
- Compute Engine API
- Cloud SQL Admin API
- GKE API
- Artifact Registry API
- Cloud Build API
Cloud SQL ์ค์
Cloud SQL ์ธ์คํด์ค ๋ง๋ค๊ธฐ
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง๋ค๊ธฐ
์ฝ์
-
Google Cloud ์ฝ์์์ Cloud SQL ์ธ์คํด์ค ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
quickstart-instance
๋ฅผ ์ ํํฉ๋๋ค.- SQL ํ์ ๋ฉ๋ด์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ ํํฉ๋๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ํ์์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด๋ฆ ํ๋์
quickstart-db
๋ฅผ ์ ๋ ฅํฉ๋๋ค. - ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
gcloud
gcloud
sql databases create
๋ช
๋ น์ด๋ฅผ ์คํํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋ญ๋๋ค.
gcloud sql databases create quickstart-db --instance=quickstart-instance
GKE ํด๋ฌ์คํฐ ๋ง๋ค๊ธฐ
์ฝ์
-
Google Cloud ์ฝ์์์ Google Kubernetes Engine ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
- ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
- GKE Autopilot์ ๊ตฌ์ฑ์ ํด๋ฆญํฉ๋๋ค.
- ์ด๋ฆ์ ํด๋ฌ์คํฐ ์ด๋ฆ์
gke-cloud-sql-quickstart
๋ก ์ง์ ํฉ๋๋ค. - ๋ง๋ค๊ธฐ๋ฅผ ํด๋ฆญํฉ๋๋ค.
gcloud
gcloud container clusters create-auto
๋ช
๋ น์ด๋ฅผ ์คํํ์ฌ ํด๋ฌ์คํฐ๋ฅผ ๋ง๋ญ๋๋ค.
gcloud container clusters create-auto gke-cloud-sql-quickstart \ --region us-central1
Cloud SQL ์ํ ์ฑ์ Cloud Shell ํธ์ง๊ธฐ์ ํด๋ก
์ด์ Cloud SQL ์ธ์คํด์ค, ๋ฐ์ดํฐ๋ฒ ์ด์ค, GKE ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉํ์ฌ Cloud SQL ์ธ์คํด์ค์ ์ฐ๊ฒฐํ๋๋ก ์ํ ์ ํ๋ฆฌ์ผ์ด์
์ ํด๋ก ํ๊ณ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. ์ด ๋น ๋ฅธ ์์์ ๋๋จธ์ง ๋จ๊ณ์์๋ gcloud
๋ฐ kubectl
๋ช
๋ น์ค ๋๊ตฌ๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ๋ ๋๊ตฌ ๋ชจ๋ Cloud Shell์ ์ฌ์ ์ค์น๋์ด ์์ต๋๋ค.
Go
-
Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ์ ์์ค ์ฝ๋๋ฅผ ์ฝ๋๋ค.
Cloud Shell ํธ์ง๊ธฐ ์ด๊ธฐ -
Open in Cloud Shell
๋ํ์์์์ ํ์ธ์ ํด๋ฆญํ์ฌ ์ํ ์ฑ ์ฝ๋๋ฅผ ๋ค์ด๋ก๋ํ๊ณ Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฝ๋๋ค.
Java
-
Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ์ ์์ค ์ฝ๋๋ฅผ ์ฝ๋๋ค.
Cloud Shell ํธ์ง๊ธฐ ์ด๊ธฐ -
Open in Cloud Shell
๋ํ์์์์ ํ์ธ์ ํด๋ฆญํ์ฌ ์ํ ์ฑ ์ฝ๋๋ฅผ ๋ค์ด๋ก๋ํ๊ณ Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฝ๋๋ค.
Node.js
-
Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ์ ์์ค ์ฝ๋๋ฅผ ์ฝ๋๋ค.
Cloud Shell ํธ์ง๊ธฐ ์ด๊ธฐ -
Open in Cloud Shell
๋ํ์์์์ ํ์ธ์ ํด๋ฆญํ์ฌ ์ํ ์ฑ ์ฝ๋๋ฅผ ๋ค์ด๋ก๋ํ๊ณ Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฝ๋๋ค.
Python
-
Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ์ ์์ค ์ฝ๋๋ฅผ ์ฝ๋๋ค.
Cloud Shell ํธ์ง๊ธฐ ์ด๊ธฐ -
Open in Cloud Shell
๋ํ์์์์ ํ์ธ์ ํด๋ฆญํ์ฌ ์ํ ์ฑ ์ฝ๋๋ฅผ ๋ค์ด๋ก๋ํ๊ณ Cloud Shell ํธ์ง๊ธฐ์์ ์ํ ์ฑ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฝ๋๋ค.
GKE ํด๋ฌ์คํฐ ์ฌ์ฉ ์ค์
์ด ๋น ๋ฅธ ์์์ ๋๋จธ์ง ๋ช ๋ น์ด์ ์ฌ์ฉํ ๊ธฐ๋ณธ ํด๋ฌ์คํฐ๋ก ๋ฐฉ๊ธ ๋ง๋ GKE ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
gcloud container clusters get-credentials
๋ช
๋ น์ด๋ฅผ ์คํํ์ฌ GKE ํด๋ฌ์คํฐ๋ฅผ ์ฌ์ฉ ์ค์ ํฉ๋๋ค.
gcloud container clusters get-credentials gke-cloud-sql-quickstart \ --region us-central1
์๋น์ค ๊ณ์ ์ค์
-
๋ค์๊ณผ ๊ฐ์ด
gcloud iam service-accounts create
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ์ ์๋น์ค ๊ณ์ ์ ๋ง๋ญ๋๋ค.gcloud iam service-accounts create gke-quickstart-service-account \ --display-name="GKE Quickstart Service Account"
- ๋ค์๊ณผ ๊ฐ์ด
gcloud projects add-iam-policy-binding
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ๋ฐฉ๊ธ ๋ง๋ Google Cloud ์๋น์ค ๊ณ์ ์ Cloud SQL ํด๋ผ์ด์ธํธ ์ญํ ์ ์ถ๊ฐํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:gke-quickstart-service-account@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/cloudsql.client"
- ์ํ ์ฑ์์๋ ๋ก๊น
์ ์ฌ์ฉํ๋ฏ๋ก ๋ค์๊ณผ ๊ฐ์ด
gcloud projects add-iam-policy-binding
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ๋ฐฉ๊ธ ๋ง๋ Google Cloud ์๋น์ค ๊ณ์ ์ ๋ก๊ทธ ์์ฑ์ ์ญํ ์ ์ถ๊ฐํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:gke-quickstart-service-account@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/logging.logWriter"
- ๋ค์๊ณผ ๊ฐ์ด
gcloud projects add-iam-policy-binding
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ Artifact Registry ๋ฆฌ๋ ์ญํ ์ ์๋น์ค ๊ณ์ ์ ์ถ๊ฐํ๋ฏ๋ก
์๋น์ค ๊ณ์ ์์ ์ํฐํฉํ ๋ฆฌ ์ ์ฅ์์์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ์ฌ ์ ์์ด์ผ ํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:gke-quickstart-service-account@YOUR_PROJECT_ID.iam.gserviceaccount.com" \ --role="roles/artifactregistry.reader"
- Kubernetes ์๋น์ค ๊ณ์ ์ ๋ง๋ญ๋๋ค.
- Cloud Shell ํธ์ง๊ธฐ์์
service-account.yaml
ํ์ผ์ ์ ๋ฐ์ดํธํฉ๋๋ค.<YOUR-KSA-NAME>
์ksa-cloud-sql
๋ก ๋ฐ๊ฟ๋๋ค. - Cloud Shell์์ ๋ค์๊ณผ ๊ฐ์ด
kubectl apply
๋ช ๋ น์ด๋ฅผ ์คํํฉ๋๋ค.kubectl apply -f service-account.yaml
- Cloud Shell ํธ์ง๊ธฐ์์
- ๋ค์๊ณผ ๊ฐ์ด
gcloud iam service-accounts add-iam-policy-binding
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ Google Cloud ์๋น์ค ๊ณ์ ๊ณผ Kubernetes ์๋น์ค ๊ณ์ ์ IAM ๋ฐ์ธ๋ฉ์ ์ฌ์ฉ ์ค์ ํฉ๋๋ค. ๋ค์์ ๋ฐ๊ฟ๋๋ค.- YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.
- YOUR_K8S_NAMESPACE๋ฅผ GKE์์ ์์ฑ๋ ํด๋ฌ์คํฐ์ ๊ธฐ๋ณธ ๋ค์์คํ์ด์ค์ธ
default
๋ก ๋ฐ๊ฟ๋๋ค. ksa-cloud-sql
์ YOUR_KSA_NAME์ผ๋ก ๋ฐ๊ฟ๋๋ค.
gcloud iam service-accounts add-iam-policy-binding \ --role="roles/iam.workloadIdentityUser" \ --member="serviceAccount:YOUR_PROJECT_ID.svc.id.goog[YOUR_K8S_NAMESPACE/YOUR_KSA_NAME]" \ gke-quickstart-service-account@YOUR_PROJECT_ID.iam.gserviceaccount.com
- ๋ค์๊ณผ ๊ฐ์ด
kubectl annotate
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ IAM binding์ผ๋ก Kubernetes ์๋น์ค ๊ณ์ ์ ์ฃผ์์ ์ถ๊ฐํฉ๋๋ค. ๋ค์์ ๋ฐ๊ฟ๋๋ค.ksa-cloud-sql
์ YOUR_KSA_NAME์ผ๋ก ๋ฐ๊ฟ๋๋ค.- YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.
kubectl annotate serviceaccount \ YOUR_KSA_NAME \ iam.gke.io/gcp-service-account=gke-quickstart-service-account@YOUR_PROJECT_ID.iam.gserviceaccount.com
๋ณด์ ๋น๋ฐ ๊ตฌ์ฑ
๋ค์๊ณผ ๊ฐ์ kubectl create secret generic
๋ช
๋ น์ด๋ฅผ ์คํํ์ฌ ์ํ ์ฑ์์ ์ฌ์ฉํ ๋ฐ์ดํฐ๋ฒ ์ด์ค, ์ฌ์ฉ์, ์ฌ์ฉ์ ๋น๋ฐ๋ฒํธ์ Kubernetes ๋ณด์ ๋น๋ฐ์ ๋ง๋ญ๋๋ค. ๊ฐ ๋ณด์ ๋น๋ฐ ๊ฐ์ ์ด ๋น ๋ฅธ ์์์ ์ด์ ๋จ๊ณ์์ ์ง์ ๋ ๊ฐ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.
DB_PASS๋ฅผ Cloud SQL ์ธ์คํด์ค ๋ง๋ค๊ธฐ ๋จ๊ณ์์ ๋ง๋ sqlserver
๋ฃจํธ ์ฌ์ฉ์์ ๋น๋ฐ๋ฒํธ๋ก ๋ฐ๊ฟ๋๋ค.
kubectl create secret generic gke-cloud-sql-secrets \ --from-literal=database=quickstart-db \ --from-literal=username=sqlserver \ --from-literal=password=DB_PASS
์ํ ์ฑ ๋น๋
Go
-
Cloud Shell์์ ๋ค์
gcloud artifacts repositories create
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ํด๋ฌ์คํฐ์ ๊ฐ์ ๋ฆฌ์ ์ gke-cloud-sql-repo๋ผ๋ Artifact Registry์ ์ ์ฅ์๋ฅผ ๋ง๋ญ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud artifacts repositories create gke-cloud-sql-repo \ --project=YOUR_PROJECT_ID \ --repository-format=docker \ --location=us-central1 \ --description="GKE Quickstart sample app"
-
Cloud Shell์์ ๋ค์๊ณผ ๊ฐ์ด
gcloud builds submit
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ Docker ์ปจํ ์ด๋๋ฅผ ๋น๋ํ๊ณ Artifact Registry์ ๊ฒ์ํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud builds submit \ --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/gke-cloud-sql-repo/gke-sql .
Java
-
Cloud Shell์์ ๋ค์
gcloud artifacts repositories create
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ํด๋ฌ์คํฐ์ ๊ฐ์ ๋ฆฌ์ ์ gke-cloud-sql-repo๋ผ๋ Artifact Registry์ ์ ์ฅ์๋ฅผ ๋ง๋ญ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud artifacts repositories create gke-cloud-sql-repo \ --project=YOUR_PROJECT_ID \ --repository-format=docker \ --location=us-central1 \ --description="GKE Quickstart sample app"
-
Cloud Shell์์ ๋ค์๊ณผ ๊ฐ์ด
mvn
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ Docker ์ปจํ ์ด๋๋ฅผ ๋น๋ํ๊ณ Artifact Registry์ ๊ฒ์ํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.mvn clean package com.google.cloud.tools:jib-maven-plugin:2.8.0:build \ -Dimage=us-central1-docker.pkg.dev/YOUR_PROJECT_ID/gke-cloud-sql-repo/gke-sql \ -DskipTests -Djib.to.credHelper=gcloud
Node.js
-
Cloud Shell์์ ๋ค์
gcloud artifacts repositories create
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ํด๋ฌ์คํฐ์ ๊ฐ์ ๋ฆฌ์ ์ gke-cloud-sql-repo๋ผ๋ Artifact Registry์ ์ ์ฅ์๋ฅผ ๋ง๋ญ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud artifacts repositories create gke-cloud-sql-repo \ --project=YOUR_PROJECT_ID \ --repository-format=docker \ --location=us-central1 \ --description="GKE Quickstart sample app"
-
Cloud Shell์์ ๋ค์๊ณผ ๊ฐ์ด
gcloud builds submit
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ Docker ์ปจํ ์ด๋๋ฅผ ๋น๋ํ๊ณ Artifact Registry์ ๊ฒ์ํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud builds submit \ --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/gke-cloud-sql-repo/gke-sql .
Python
-
Cloud Shell์์ ๋ค์
gcloud artifacts repositories create
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ ํด๋ฌ์คํฐ์ ๊ฐ์ ๋ฆฌ์ ์ gke-cloud-sql-repo๋ผ๋ Artifact Registry์ ์ ์ฅ์๋ฅผ ๋ง๋ญ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud artifacts repositories create gke-cloud-sql-repo \ --project=YOUR_PROJECT_ID \ --repository-format=docker \ --location=us-central1 \ --description="GKE Quickstart sample app"
-
Cloud Shell์์ ๋ค์๊ณผ ๊ฐ์ด
gcloud builds submit
๋ช ๋ น์ด๋ฅผ ์คํํ์ฌ Docker ์ปจํ ์ด๋๋ฅผ ๋น๋ํ๊ณ Artifact Registry์ ๊ฒ์ํฉ๋๋ค. YOUR_PROJECT_ID๋ฅผ ํ๋ก์ ํธ ID๋ก ๋ฐ๊ฟ๋๋ค.gcloud builds submit \ --tag us-central1-docker.pkg.dev/YOUR_PROJECT_ID/gke-cloud-sql-repo/gke-sql .
์ํ ์ฑ ๋ฐฐํฌ
์ญ์
์ด ํ์ด์ง์์ ์ฌ์ฉํ ๋ฆฌ์์ค ๋น์ฉ์ด Google Cloud ๊ณ์ ์ ์ฒญ๊ตฌ๋์ง ์๋๋ก ํ๋ ค๋ฉด ๋ค์ ๋จ๊ณ๋ฅผ ์ํํฉ๋๋ค.
-
Google Cloud ์ฝ์์์ Cloud SQL ์ธ์คํด์ค ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
quickstart-instance
์ธ์คํด์ค๋ฅผ ์ ํํ์ฌ ์ธ์คํด์ค ์ธ๋ถ์ ๋ณด ํ์ด์ง๋ฅผ ์ฝ๋๋ค.- ํ์ด์ง ์๋จ์ ์์ด์ฝ ํ์์ค์์ ์ญ์ ๋ฅผ ํด๋ฆญํฉ๋๋ค.
- ์ธ์คํด์ค ์ญ์ ๋ํ์์์์
quickstart-instance
๋ฅผ ์ ๋ ฅํ ํ ์ญ์ ๋ฅผ ํด๋ฆญํ์ฌ ์ธ์คํด์ค๋ฅผ ์ญ์ ํฉ๋๋ค. -
Google Cloud ์ฝ์์์ Google Kubernetes Engine ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
gke-cloud-sql-quickstart
์๋น์ค ์ด๋ฆ ์์ ์ฒดํฌ๋ฐ์ค๋ฅผ ํด๋ฆญํฉ๋๋ค.- Google Kubernetes Engine ํ์ด์ง ์๋จ์ ์๋ ์ญ์ ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
์ ํ์ ์ธ ์ญ์ ๋จ๊ณ
์ด ๋น ๋ฅธ ์์์์ ๋ง๋ Google Cloud ์๋น์ค ๊ณ์ ์ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ์๋ ์ด ๊ณ์ ์ ์ญ์ ํ ์ ์์ต๋๋ค.
-
Google Cloud ์ฝ์์์ IAM ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
gke-quickstart-service-account
๋ผ๋ IAM ๊ณ์ ์ ์ฒดํฌ๋ฐ์ค๋ฅผ ์ ํํฉ๋๋ค.- ์ญ์ ๋ฅผ ํด๋ฆญํ๊ณ ์ญ์ ๋ฅผ ํ์ธํฉ๋๋ค.
์ด ๋น ๋ฅธ ์์์ ์งํํ๋ ๋์ ์ฌ์ฉ ์ค์ ๋ API๋ฅผ ์ฌ์ฉํ์ง ์์ ๋๋ ์ด๋ฅผ ์ฌ์ฉ ์ค์งํ ์ ์์ต๋๋ค.
- ์ด ๋น ๋ฅธ ์์ ๋ด์์ ์ฌ์ฉ ์ค์ ๋ API:
- Compute Engine API
- Cloud SQL Admin API
- Google Kubernetes Engine API
- Artifact Registry API
- Cloud Build API
Google Cloud ์ฝ์์์ API ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
์ฌ์ฉ ์ค์งํ๋ ค๋ API๋ฅผ ์ ํํ ํ API ์ฌ์ฉ ์ค์ง ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค.
๋ค์ ๋จ๊ณ
Cloud SQL ์ธ์คํด์ค ๋ง๋ค๊ธฐ ์์ธํ ์์๋ณด๊ธฐ(ํ์ํ ๊ฒฝ์ฐ)Cloud SQL ์ธ์คํด์ค์ SQL Server ์ฌ์ฉ์ ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ๋ ์์๋ณผ ์ ์์ต๋๋ค.
Cloud SQL ๊ฐ๊ฒฉ ์ ๋ณด ์ฐธ์กฐํ๊ธฐ
๋ค์์ ๋ํด ์์ธํ ์์๋ณด๊ธฐ
- Cloud SQL์ ๋ชจ๋ ์ฐ๊ฒฐ ์ต์
- ๊ณต๊ฐ IP ์ฃผ์๋ก Cloud SQL ์ธ์คํด์ค ๊ตฌ์ฑํ๊ธฐ
- ๋น๊ณต๊ฐ IP ์ฃผ์๋ก Cloud SQL ์ธ์คํด์ค ๊ตฌ์ฑํ๊ธฐ
๋ํ ๋ค๋ฅธ Google Cloud ์ ํ๋ฆฌ์ผ์ด์ ์์ Cloud SQL ์ธ์คํด์ค์ ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์์๋ณด์ธ์.