Compute Engine에서 PostgreSQL용 Cloud SQL에 연결
Google Cloud 콘솔 및 클라이언트 애플리케이션을 사용하여 PostgreSQL에 연결된 Linux 또는 Windows 기반 Compute Engine VM 인스턴스에 샘플 앱을 배포하는 방법을 알아봅니다.
모든 단계를 적시에 완료한다면 이 빠른 시작에서 만든 리소스의 비용은 일반적으로 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.
-
Make sure that billing is enabled for your Google Cloud project.
-
Compute Engine VM 인스턴스에서 Cloud SQL 샘플 앱을 실행하는 데 필요한 Cloud API를 사용 설정합니다.
API 사용 설정 버튼을 클릭하여 이 빠른 시작에 필요한 API를 사용 설정합니다.
다음 API가 사용 설정됩니다.
- Cloud SQL Admin API
Google Cloud 리소스에 대한 명령줄 액세스를 제공하는 gcloud CLI를 설치합니다. gcloud CLI는 이 빠른 시작에 나온
gcloud CLI
명령어를 실행하는 데 사용됩니다. 모든 명령어는 터미널 또는 Powershell 창에서 실행되도록 형식이 지정됩니다.다음
gcloud
명령어를 실행합니다.gcloud services enable sqladmin.googleapis.com
이 명령어는 다음 API를 사용 설정합니다.
- Cloud SQL Admin API
Cloud SQL 설정
Cloud SQL 인스턴스 만들기
공개 IP
공개 IP 주소로 인스턴스 만들기
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
- 인스턴스 만들기를 클릭합니다.
- PostgreSQL을 클릭합니다.
- 인스턴스 ID 필드에
quickstart-instance
를 입력합니다. - 비밀번호 필드에 postgres 사용자의 비밀번호를 입력합니다. 나중에 사용할 수 있도록 이 비밀번호를 기록해 둡니다.
- 리전 및 영역 가용성 선택 섹션에서 단일 영역을 선택합니다.
- 구성 표시 섹션을 확장합니다.
- 머신 유형 드롭다운 목록에서 경량형을 선택합니다.
- 인스턴스 만들기를 클릭한 후 인스턴스가 초기화되고 시작될 때까지 기다립니다.
공개 IP 주소로 인스턴스 만들기
다음과 같이 gcloud sql instances create
명령어를 실행하기 전에 DB_ROOT_PASSWORD를 데이터베이스 사용자의 비밀번호로 바꿉니다.
선택적으로 다음 매개변수에 대해 값을 수정합니다.
- --database_version: 데이터베이스 엔진 유형 및 버전입니다. 지정하지 않으면 API 기본값이 사용됩니다. 현재 사용 가능한 버전을 보려면 gcloud 데이터베이스 버전 문서를 참조하세요.
- --cpu: 머신에 사용하려는 코어 수입니다.
- --memory: 머신에 사용하려는 메모리 양을 나타내는 정수 숫자 값입니다. 크기 단위를 제공해야 합니다(예: 3072MB 또는 9GB). 단위를 지정하지 않으면 GB로 간주됩니다.
- --region: 인스턴스의 리전 위치입니다(예: asia-east1, us-east1). 지정하지 않으면 기본값
us-central
이 사용됩니다. 리전의 전체 목록을 참조하세요.
gcloud
sql instances create
명령어를 사용하여 Cloud SQL 인스턴스를 만듭니다.
gcloud sql instances createquickstart-instance --database-version=POSTGRES_13 --cpu=1 --memory=4GB --region=us-central --root-password=DB_ROOT_PASSWORD
비공개 IP
IP 주소 범위를 할당하고 비공개 연결을 만들어 Cloud SQL의 비공개 서비스 액세스 구성
-
Google Cloud 콘솔에서 VPC 네트워크 페이지로 이동합니다.
default
VPC 네트워크를 선택합니다.- 비공개 서비스 연결 탭을 선택합니다.
- 서비스에 할당된 IP 범위 탭을 선택합니다.
- IP 범위 할당을 클릭합니다.
- 할당된 범위의 이름에
google-managed-services-default
를 지정합니다. - IP 범위에 자동 옵션을 선택하고 프리픽스 길이를
16
으로 지정합니다. - 할당을 클릭하여 할당된 범위를 만듭니다.
default
VPC 네트워크의 서비스에 대한 비공개 연결 탭을 선택합니다.- 연결 만들기를 클릭하여 네트워크와 서비스 프로듀서 간에 비공개 연결을 만듭니다.
- 지정된 할당으로
google-managed-services-default
를 선택합니다. - 연결을 클릭하여 연결을 만듭니다.
비공개 IP 주소 및 SSL을 사용 설정하여 인스턴스 만들기
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
- 인스턴스 만들기를 클릭합니다.
- PostgreSQL을 클릭합니다.
- 인스턴스 ID에
quickstart-instance
를 입력합니다. - postgres 사용자의 비밀번호를 입력합니다. 나중에 사용할 수 있도록 이 비밀번호를 기록해 둡니다.
- 리전 및 영역 가용성 선택에 대해 단일 영역 옵션을 클릭합니다.
- 구성 옵션 표시를 클릭하여 펼칩니다.
- 머신 유형으로 경량을 선택합니다.
- 연결에서 비공개 IP를 선택합니다.
- 네트워크 드롭다운 메뉴에서 기본값을 선택합니다.
- 비공개 IP만 있는 인스턴스를 만들려면 공개 IP 체크박스를 선택 해제합니다.
- 인스턴스 만들기를 클릭한 후 인스턴스가 초기화 및 시작될 때까지 기다립니다.
- 연결을 클릭합니다.
- 보안 섹션에서 SSL 연결만 허용을 선택하여 SSL 연결을 사용 설정합니다.
- SSL 연결만 허용 대화상자에서 저장을 클릭하고 인스턴스가 다시 시작될 때까지 기다립니다.
IP 주소 범위를 할당하고 비공개 연결을 만들어 Cloud SQL의 비공개 서비스 액세스 구성
-
gcloud compute addresses create
명령어를 실행하여 IP 주소 범위를 할당합니다.gcloud compute addresses create
google-managed-services-default --global --purpose=VPC_PEERING --prefix-length=16 --description="peering range for Google" --network=default -
gcloud services vpc-peerings connect
명령어를 실행하여 할당된 IP 주소 범위에 대한 비공개 연결을 만듭니다. YOUR_PROJECT_ID를 프로젝트의 프로젝트 ID로 바꿉니다.gcloud services vpc-peerings connect --service=servicenetworking.googleapis.com --ranges=
google-managed-services-default --network=default --project=YOUR_PROJECT_ID
비공개 IP 주소 및 SSL을 사용 설정하여 인스턴스 만들기
-
다음과 같이 명령어를 실행하기 전에 DB_ROOT_PASSWORD를 데이터베이스 사용자의 비밀번호로 바꿉니다.
- --database_version: 데이터베이스 엔진 유형 및 버전입니다. 지정하지 않으면 API 기본값이 사용됩니다. 현재 사용 가능한 버전을 보려면 gcloud 데이터베이스 버전 문서를 참조하세요.
- --cpu: 머신의 코어 수입니다.
- --memory: 머신에 포함하려는 메모리 양을 나타내는 정수 숫자 값입니다. 크기 단위를 제공할 수 있습니다(예: 3072MB 또는 9GB). 단위를 지정하지 않으면 GB로 간주됩니다.
- --region: 인스턴스의 리전 위치입니다(예: asia-east1, us-east1). 지정하지 않으면 기본값
us-central1
이 사용됩니다. 리전의 전체 목록을 참조하세요. gcloud sql instances patch
명령어를 실행하여 인스턴스에 대해 SSL 연결만 허용합니다.
선택적으로 다음 매개변수에 대해 값을 수정합니다.
gcloud
sql instances create
명령어를 실행하여 비공개 IP 주소로 Cloud SQL 인스턴스를 만듭니다.
gcloud beta sql instances createquickstart-instance --database-version=POSTGRES_13 --cpu=1 --memory=4GB --region=us-central --root-password=DB_ROOT_PASSWORD --no-assign-ip --network=default
gcloud sql instances patchquickstart-instance --require-ssl
데이터베이스 만들기
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
quickstart-instance
을 선택합니다.- 데이터베이스 탭을 엽니다.
- 데이터베이스 만들기를 클릭합니다.
- 새 데이터베이스 대화상자에서 데이터베이스 이름으로
quickstart_db
를 입력합니다.
- 만들기를 클릭합니다.
gcloud
sql databases create
명령어를 실행하여 데이터베이스를 만듭니다.
gcloud sql databases createquickstart_db --instance=quickstart-instance
사용자 만들기
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
- 인스턴스의 개요 페이지를 열려면 인스턴스 이름을 클릭합니다.
- SQL 탐색 메뉴에서 사용자를 선택합니다.
- 사용자 계정 추가를 클릭합니다.
- instance_name 페이지에 새로운 사용자 계정 추가 페이지에서 다음 정보를 추가합니다.
- 사용자 이름 필드에
quickstart-user
를 입력합니다. - 비밀번호 필드에 데이터베이스 사용자의 비밀번호를 지정합니다. 이 빠른 시작의 이후 단계에서 사용할 수 있도록 기록해 둡니다.
- 사용자 이름 필드에
- 추가를 클릭합니다.
다음 명령어를 실행하기 전에 다음을 바꿉니다.
- PASSWORD를 데이터베이스 사용자의 비밀번호로 바꿉니다. 이 빠른 시작의 이후 단계에서 사용할 수 있도록 기록해 둡니다.
gcloud sql users create
명령어를 실행하여 사용자를 만듭니다.
gcloud sql users createquickstart-user --instance=quickstart-instance --password=PASSWORD
Cloud SQL와 온프레미스 PostgreSQL의 사용자 이름 길이 한도는 동일합니다.
Compute Engine 서비스 계정 구성
서비스 계정 만들기
- Google Cloud 콘솔에서 서비스 계정 만들기 페이지로 이동합니다.
- Google Cloud 프로젝트를 선택합니다.
- 서비스 계정 이름으로
quickstart-service-account
를 입력합니다. - 선택사항: 서비스 계정에 대한 설명을 입력합니다.
- 만들고 계속하기를 클릭하고 다음 단계로 진행합니다.
- 프로젝트의 서비스 계정에 부여할 Cloud SQL 클라이언트 역할을 선택합니다.
- 다른 역할 추가를 클릭하고 스토리지 객체 뷰어 역할을 선택하여 프로젝트의 서비스 계정에 부여합니다.
- 계속을 클릭합니다.
- 완료를 클릭하여 서비스 계정 만들기를 마칩니다.
서비스 계정 만들기
- 서비스 계정을 만들려면
gcloud iam service-accounts create
명령어를 실행합니다. DESCRIPTION
: 서비스 계정에 대한 선택적인 설명입니다- 서비스 계정에 프로젝트에 대한 Cloud SQL 클라이언트 역할 및 스토리지 객체 뷰어 역할을 부여하려면
gcloud projects add-iam-policy-binding
명령어를 실행합니다. PROJECT_ID를 Google Cloud 프로젝트 ID로 바꿉니다.gcloud projects add-iam-policy-binding
PROJECT_ID --member="serviceAccount:quickstart-service-account@PROJECT_ID .iam.gserviceaccount.com" --role="roles/cloudsql.client" --role="roles/storage.objectViewer"
gcloud iam service-accounts create quickstart-service-account --description="DESCRIPTION " --display-name="quickstart-service-account "
다음 값을 바꿉니다.
Compute Engine VM 인스턴스 만들기
Cloud SQL에 연결되는 샘플 웹 앱을 호스팅할 Compute Engine VM 인스턴스를 만듭니다.
Linux VM 인스턴스 만들기
-
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
- 인스턴스 만들기 버튼을 클릭합니다.
- VM 인스턴스 이름에
quickstart-vm-instance
를 입력합니다. - 서비스 계정에 대해
quickstart-service-account
를 선택합니다. - 방화벽에 대해 HTTP 트래픽 허용 옵션을 선택합니다.
- 만들기를 클릭하여 VM 인스턴스를 만듭니다.
다음 명령어를 실행하기 전에 YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다.
다음 gcloud compute instances create
명령어를 실행합니다.
gcloud compute instances createquickstart-vm-instance --image-family=debian-10 --image-project=debian-cloud --machine-type=e2-medium --service-account=quickstart-service-account@YOUR_PROJECT_ID .iam.gserviceaccount.com --scopes=https://www.googleapis.com/auth/cloud-platform --tags=http-server --zone=us-central1-a
Windows VM 인스턴스 만들기
-
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
- 인스턴스 만들기 버튼을 클릭합니다.
- VM 인스턴스 이름에
quickstart-vm-instance
를 입력합니다. - 부팅 디스크에서 변경 버튼을 클릭합니다.
- 운영체제에 대해 Windows Server를 선택합니다.
- 버전에 대해 Windows Server 2022 Datacenter를 선택합니다.
- 선택 버튼을 클릭합니다.
- 서비스 계정에 대해
quickstart-service-account
를 선택합니다. - 방화벽에 대해 HTTP 트래픽 허용 옵션을 선택합니다.
- 만들기를 클릭하여 VM 인스턴스를 만듭니다.
- VM 인스턴스가 시작되고 2~3분 후 VM 인스턴스 세부정보 페이지에서 Windows 비밀번호 설정 버튼을 클릭합니다.
- 이 빠른 시작의 다음 단계에서 VM 인스턴스에 액세스하는 데 사용되므로 이 비밀번호를 복사하여 안전한 위치에 저장합니다.
다음 명령어를 실행하기 전에 YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다.
터미널 창에서 다음 gcloud compute instances create
명령어를 실행합니다.
gcloud compute instances createquickstart-vm-instance --image-project=windows-cloud --image-family=windows-2022 --machine-type=e2-medium --service-account=quickstart-service-account@YOUR_PROJECT_ID .iam.gserviceaccount.com --scopes=https://www.googleapis.com/auth/cloud-platform --tags=http-server --zone=us-central1-a
VM 인스턴스가 시작되고 2~3분 후 다음 명령어를 실행하여 VM 인스턴스에서 Windows 비밀번호를 설정합니다.
gcloud compute reset-windows-passwordquickstart-vm-instance
이 빠른 시작의 다음 단계에서 VM 인스턴스에 액세스하는 데 사용되므로 이 비밀번호를 복사하여 안전한 위치에 저장합니다.
Compute Engine VM 인스턴스 액세스
Linux VM 인스턴스 액세스
참고: Google Cloud 콘솔을 사용하여 VM에 연결할 때 Compute Engine은 일시적인 SSH 키를 자동으로 만듭니다. SSH 키에 대한 자세한 내용은 Linux VM에 대한 SSH 연결을 참조하세요.
gcloud compute ssh
명령어를 사용하여 Linux VM 인스턴스에 연결합니다. YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다.
gcloud compute ssh --project=YOUR_PROJECT_ID --zone=us-central1-a quickstart-vm-instance
Windows VM 인스턴스 액세스
Google Cloud용 Chrome RDP는 Chrome 브라우저를 사용하여 Windows 인스턴스에 연결할 수 있는 타사 플러그인입니다. 플러그인은 Google Cloud 콘솔과 통합됩니다. 플러그인을 설치한 후 Google Cloud 콘솔의 RDP 버튼을 사용하여 모든 Windows Server 인스턴스에 연결합니다.
Chrome RDP 플러그인을 사용하여 연결하려면 다음을 수행하세요.
- Google Cloud용 Chrome RDP 확장 프로그램을 설치합니다.
- Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동하여 연결할 Windows 인스턴스를 찾습니다.
- 연결하려는 인스턴스의 RDP 버튼을 클릭합니다. Chrome RDP 확장 프로그램이 열립니다.
- VM 인스턴스에 구성된 도메인이 없으므로 도메인 필드를 비워 둘 수 있습니다.
- 사용자 이름과 비밀번호를 입력하고 확인을 클릭하여 연결합니다.
- 메시지가 표시되면 계속을 눌러서 인증서를 수락합니다.

Compute Engine Windows VM 인스턴스에 액세스하기 위한 추가 옵션은 RDP를 사용하여 Windows VM에 연결을 참조하세요.
프로그래밍 언어를 위한 개발 환경 설정
Compute Engine VM 인스턴스의 개발 환경을 원하는 프로그래밍 언어로 설정합니다.
Linux VM 인스턴스 개발 환경 설정
다음 단계에 따라 Go 샘플 앱을 실행하도록 Compute Engine VM 인스턴스의 개발 환경을 설정합니다.
- Go 개발 환경 설정 가이드로 이동합니다.
- Go 설치 섹션의 안내를 완료합니다.
다음 단계에 따라 자바 샘플 앱을 실행하도록 Compute Engine VM 인스턴스의 개발 환경을 설정합니다.
- 자바 개발 환경 설정 가이드로 이동합니다.
- JDK(자바 개발 키트) 설치 섹션의 안내를 완료합니다.
- 빌드 자동화 도구 설치의 안내에 따라 Apache Maven을 설정하세요.
다음 단계에 따라 Node.js 샘플 앱을 실행하도록 Compute Engine VM 인스턴스 개발 환경을 설정합니다.
- Node.js 개발 환경 설정 가이드로 이동합니다.
- Node.js 및 npm 설치 섹션의 안내를 완료합니다.
다음 단계에 따라 Python 샘플 앱을 실행하도록 Compute Engine VM 인스턴스의 개발 환경을 설정합니다.
- Python 개발 환경 설정 가이드로 이동합니다.
- Python 설치 섹션의 안내를 완료합니다.
Windows VM 인스턴스 개발 환경 설정
다음 단계에 따라 Go 샘플 앱을 실행하도록 Compute Engine VM 인스턴스의 개발 환경을 설정합니다.
- Go 개발 환경 설정 가이드로 이동합니다.
- Go 설치 섹션의 안내를 완료합니다.
다음 단계에 따라 자바 샘플 앱을 실행하도록 Compute Engine VM 인스턴스의 개발 환경을 설정합니다.
- 자바 개발 환경 설정 가이드로 이동합니다.
- JDK(자바 개발 키트) 설치 섹션의 안내를 완료합니다.
- 빌드 자동화 도구 설치 섹션의 안내에 따라 Apache Maven을 설정합니다.
다음 단계에 따라 Node.js 샘플 앱을 실행하도록 Compute Engine VM 인스턴스 개발 환경을 설정합니다.
- Node.js 개발 환경 설정 가이드로 이동합니다.
- Node.js 및 npm 설치 섹션의 안내를 완료합니다.
다음 단계에 따라 Python 샘플 앱을 실행하도록 Compute Engine VM 인스턴스의 개발 환경을 설정합니다.
- Python과 Python용 PIP 패키지 관리자를 설치합니다.
- Python 개발 환경 설정 가이드로 이동합니다.
- Python 설치 섹션의 안내를 완료합니다.
- 위 안내에 따라 Windows용 Python 출시 다운로드 페이지로 이동합니다. 이 페이지에서 최신 Python 3 출시 버전 링크를 클릭합니다.
- Python 3.X.X페이지에서 Windows 64비트 설치 프로그램 링크를 클릭하여 Windows Compute Engine VM 인스턴스에 설치 프로그램 파일을 다운로드합니다.
- Python 설치 프로그램을 VM 인스턴스에 다운로드한 후 다운로드한 파일이 포함된 폴더를 엽니다. 그런 후 설치 프로그램 파일을 오른쪽 버튼으로 클릭하고 관리자로 실행을 선택합니다.
- Python 설치 대화상자가 나타나면 Python 3.X.X를 경로에 추가 옵션을 선택하고 → 지금 설치를 클릭합니다.
- PIP를 사용해서 virtualenv를 설치합니다.
- Windows Compute Engine VM 인스턴스에서 Powershell을 열고 다음
pip install
명령어를 실행합니다.
pip install virtualenv
Git 설치
오픈소스 버전 제어 시스템인 Git을 Compute Engine VM 인스턴스에 설치합니다.
Compute Engine Linux VM 인스턴스
Compute Engine Linux VM 인스턴스에서 공식 Linux용 Git 설치 문서를 따르세요.
sudo
명령어 프리픽스로 제안된 Debian/Ubuntuinstall git
명령어를 실행하여 명령어를 관리자로 실행합니다. 터미널에서 실행할 전체 설치 명령어는 다음과 같은 형식이어야 합니다.
sudo apt-get install git
Compute Engine Windows VM 인스턴스
Compute Engine Windows VM 인스턴스에서 공식 Windows용 Git 설치 문서에 따라 64비트 독립형 설치 프로그램을 다운로드하고 실행하여 Git을 설치합니다.
샘플 앱 클론
git clone
명령어를 사용하여 샘플 앱을 Compute Engine VM 인스턴스에 클론합니다.
Compute Engine VM 인스턴스에서 새 터미널 또는 Powershell 창을 엽니다. 다음 명령어를 실행하여 Go 샘플 앱을 클론하고 디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
-
샘플 앱을 클론합니다.
git clone https://github.com/GoogleCloudPlatform/golang-samples
-
디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
cd golang-samples/cloudsql/postgres/database-sql
Compute Engine VM 인스턴스에서 새 터미널 또는 Powershell 창을 엽니다. 다음 명령어를 실행하여 Java 샘플 앱을 클론하고 디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
-
샘플 앱을 클론합니다.
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
-
디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
cd java-docs-samples/cloud-sql/postgres/servlet
Compute Engine VM 인스턴스에서 새 터미널 또는 Powershell 창을 엽니다. 다음 명령어를 실행하여 Node.js 샘플 앱을 클론하고 디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
-
샘플 앱을 클론합니다.
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
-
디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
cd nodejs-docs-samples/cloud-sql/postgres/knex
Compute Engine VM 인스턴스에서 새 터미널 또는 Powershell 창을 엽니다. 다음 명령어를 실행하여 Python 샘플 앱을 클론하고 디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
-
샘플 앱을 클론합니다.
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
-
디렉터리를 샘플 앱이 있는 디렉터리로 변경합니다.
cd python-docs-samples/cloud-sql/postgres/sqlalchemy
Cloud SQL 샘플 앱 구성 및 실행
Cloud SQL 인스턴스, 데이터베이스, 클라이언트 권한이 있는 서비스 계정이 준비되었으므로 이제 Compute Engine VM 인스턴스에서 실행되는 샘플 애플리케이션이 Cloud SQL 인스턴스에 연결되도록 구성할 수 있습니다.
공개 IP Cloud SQL 인스턴스 및 Linux 기반 Compute Engine VM
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_CONNECTION_NAME='INSTANCE_CONNECTION_NAME ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD '
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 Go 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
샘플 앱을 실행하는 데 필요한 종속 항목을 가져옵니다.
go get ./...
-
샘플 앱을 실행합니다.
go run cmd/app/main.go
로컬 컴퓨터에서 샘플 앱이 실행되는 Compute Engine VM 인스턴스의 외부 IP 주소를 가져오고 이를 브라우저에서 확인합니다.
- 로컬 컴퓨터의 터미널 또는 Powershell에서 다음
gcloud compute instances describe
명령어를 실행하여 Compute Engine VM 인스턴스의 외부 IP 주소를 가져옵니다. -
실행 중인 샘플 앱을 확인합니다. 로컬 컴퓨터에서 브라우저를 열고 Compute Engine VM 인스턴스의 외부 IP 주소 및 포트 8080으로 이동합니다.
http://
COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
gcloud compute instances describequickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_CONNECTION_NAME='INSTANCE_CONNECTION_NAME ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD '
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 자바 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
mvn jetty:run
로컬 컴퓨터에서 샘플 앱이 실행되는 Compute Engine VM 인스턴스의 외부 IP 주소를 가져오고 이를 브라우저에서 확인합니다.
- 로컬 컴퓨터의 터미널 또는 Powershell에서 다음
gcloud compute instances describe
명령어를 실행하여 Compute Engine VM 인스턴스의 외부 IP 주소를 가져옵니다. -
실행 중인 샘플 앱을 확인합니다. 로컬 컴퓨터에서 브라우저를 열고 Compute Engine VM 인스턴스의 외부 IP 주소 및 포트 8080으로 이동합니다.
http://
COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
gcloud compute instances describequickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
-
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_HOST='127.0.0.1' export DB_PORT='5432' export DB_NAME='
quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD ' - YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
- Cloud SQL 인증 프록시를 다운로드합니다.
curl -o cloud-sql-proxy \ https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.0.0/cloud-sql-proxy.linux.amd64
- Cloud SQL 인증 프록시 파일을 실행 가능하게 만드는 권한을 설정합니다.
chmod +x cloud-sql-proxy
- Cloud SQL 인증 프록시를 백그라운드 프로세스로 실행합니다. INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
./cloud-sql-proxy
INSTANCE_CONNECTION_NAME &
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 필요한 Node.js 패키지를 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
앱을 로컬에서 실행하는 데 필요한 Node.js 패키지를 설치합니다.
npm install
-
샘플 앱을 실행합니다.
npm start
로컬 컴퓨터에서 샘플 앱이 실행되는 Compute Engine VM 인스턴스의 외부 IP 주소를 가져오고 이를 브라우저에서 확인합니다.
- 로컬 컴퓨터의 터미널 또는 Powershell에서 다음
gcloud compute instances describe
명령어를 실행하여 Compute Engine VM 인스턴스의 외부 IP 주소를 가져옵니다. -
실행 중인 샘플 앱을 확인합니다. 로컬 컴퓨터에서 브라우저를 열고 Compute Engine VM 인스턴스의 외부 IP 주소 및 포트 8080으로 이동합니다.
http://
COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
gcloud compute instances describequickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_CONNECTION_NAME='INSTANCE_CONNECTION_NAME ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD '
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 Python 샘플 앱의 요구 사항을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
가상 환경을 초기화하고 샘플 앱을 실행하기 위한 요구사항을 설치하세요.
python3 -m venv env source env/bin/activate pip install -r requirements.txt
-
샘플 앱을 실행합니다.
python app.py
로컬 컴퓨터에서 다음 빠른 시작 단계의 안내에 따라 SSH를 통한 포트 전달을 설정합니다. 이렇게 하면 로컬 컴퓨터의 브라우저를 사용하여 Compute Engine VM 인스턴스에서 실행 중인 앱을 볼 수 있습니다.
- 터미널 또는 로컬 컴퓨터의 Powershell에서 다음
gcloud compute ssh
명령어를 실행하여 SSH를 통한 포트 전달을 설정합니다. 명령어를 실행하기 전에 YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다. -
실행 중인 샘플 앱을 봅니다. 포트 전달이 실행 중인 경우 로컬 컴퓨터에서 브라우저를 열고 브라우저의 주소 표시줄에
http://127.0.0.1:8000
을 입력합니다.
gcloud compute ssh quickstart-vm-instance --project=YOUR_PROJECT_ID --zone=us-central1-a --ssh-flag='-L 8000:127.0.0.1:8080'
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
공개 IP Cloud SQL 인스턴스 및 Windows 기반 Compute Engine VM
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_CONNECTION_NAME="INSTANCE_CONNECTION_NAME " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD "
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 Go 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
샘플 앱을 실행하는 데 필요한 종속 항목을 가져옵니다.
go get ./...
-
샘플 앱을 실행합니다.
go run cmd\app\main.go
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_CONNECTION_NAME="INSTANCE_CONNECTION_NAME " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD "
-
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 자바 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
mvn jetty:run
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
-
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_HOST="127.0.0.1" $env:DB_PORT="5432" $env:DB_NAME="
quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD " - YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
- Cloud SQL 인증 프록시를 다운로드합니다.
wget https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.0.0/cloud-sql-proxy.x64.exe ` -O cloud-sql-proxy.exe
- Cloud SQL 인증 프록시를 백그라운드 프로세스로 실행합니다. INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
Start-Process -filepath ".\cloud-sql-proxy.exe" -ArgumentList ` "
INSTANCE_CONNECTION_NAME "
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 필요한 Node.js 패키지를 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
앱을 로컬에서 실행하는 데 필요한 Node.js 패키지를 설치합니다.
npm install
-
샘플 앱을 실행합니다.
npm start
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- INSTANCE_CONNECTION_NAME을 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시되는 인스턴스의 연결 이름으로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_CONNECTION_NAME="INSTANCE_CONNECTION_NAME " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD "
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 Python 샘플 앱의 요구 사항을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
가상 환경을 초기화하고 샘플 앱을 실행하기 위한 요구사항을 설치하세요.
virtualenv --python python3 env .\env\Scripts\activate pip install -r requirements.txt
-
샘플 앱을 실행합니다.
python app.py
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
비공개 IP Cloud SQL 인스턴스 및 Linux 기반 Compute Engine VM
SSL 서버 및 클라이언트 인증서를 만들어 로컬 컴퓨터에 다운로드
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
quickstart-instance
를 클릭하여 해당 개요 페이지를 참조하세요.- 연결 탭을 클릭합니다.
- 보안 섹션에서 클라이언트 인증서 만들기를 클릭합니다.
- 클라이언트 인증서 만들기 대화상자에서
quickstart-key
를 이름으로 입력하고 만들기를 클릭합니다. 새 SSL 인증서가 생성됨 대화상자에서 각 다운로드 링크를 클릭하여 인증서를 다운로드합니다. 그런 후 닫기를 클릭합니다.
Cloud Storage 버킷에 SSL 인증서 업로드
로컬 컴퓨터의 브라우저에서 Cloud Storage 버킷을 만들고 Compute Engine VM 인스턴스에서 액세스할 수 있는 버킷에 SSL 인증서를 업로드합니다.
- Cloud Storage 버킷 생성
- 버킷 이름에 다음 이름을 입력합니다. 여기서 YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다.
YOUR_PROJECT_ID -quickstart-certs - 만들기 버튼을 클릭하여 버킷을 만듭니다.
- 파일 업로드 버튼을 클릭하여 새로 만든 Cloud Storage 버킷에 파일을 업로드합니다.
- 로컬 컴퓨터에서 Cloud Storage로 업로드할 다음 파일을 선택합니다.
server-ca.pem
client-cert.pem
client-key.pem
SSL 인증서를 다운로드한 디렉터리로 열려 있는 로컬 컴퓨터의 터미널 또는 Powershell 창에서 Cloud Storage 버킷을 만들고 Compute Engine VM 인스턴스에서 액세스할 수 있는 버킷에 SSL 인증서를 업로드합니다. gcloud CLI가 파일을 업로드하는 데 사용됩니다.
- 다음
gcloud storage buckets create
명령어를 실행하여 새 Cloud Storage 버킷을 만듭니다. - 로컬 컴퓨터에 인증서를 다운로드한 디렉터리에서 다음
gcloud storage cp
명령어를 실행하여 SSL 인증서를 새로 만든 Cloud Storage 버킷에 복사합니다.
gcloud storage buckets create gs://YOUR_PROJECT_ID -quickstart-certs --location=us-central1
gcloud storage cp server-ca.pem gs://YOUR_PROJECT_ID -quickstart-certs/ gcloud storage cp client-cert.pem gs://YOUR_PROJECT_ID -quickstart-certs/ gcloud storage cp client-key.pem gs://YOUR_PROJECT_ID -quickstart-certs/
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
golang-samples/cloudsql/postgres/database-sql
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 터미널에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 certs
디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_HOST='INSTANCE_HOST ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD ' export DB_ROOT_CERT='certs/server-ca.pem' export DB_CERT='certs/client-cert.pem' export DB_KEY='certs/client-key.pem' export PRIVATE_IP='TRUE'
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 Go 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
샘플 앱을 실행하는 데 필요한 종속 항목을 가져옵니다.
go get ./...
-
샘플 앱을 실행합니다.
go run cmd/app/main.go
로컬 컴퓨터에서 샘플 앱이 실행되는 Compute Engine VM 인스턴스의 외부 IP 주소를 가져오고 이를 브라우저에서 확인합니다.
- 로컬 컴퓨터의 터미널 또는 Powershell에서 다음
gcloud compute instances describe
명령어를 실행하여 Compute Engine VM 인스턴스의 외부 IP 주소를 가져옵니다. -
실행 중인 샘플 앱을 확인합니다. 로컬 컴퓨터에서 브라우저를 열고 Compute Engine VM 인스턴스의 외부 IP 주소 및 포트 8080으로 이동합니다.
http://
COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
gcloud compute instances describequickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
java-docs-samples/cloud-sql/postgres/servlet
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 터미널에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 현재 디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem . gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem . gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem .
Compute Engine VM 인스턴스에서 자바에 사용할 SSL 인증서 구성
- Compute Engine VM 인스턴스의 터미널에서
openssl
을 사용해서 다음 명령어를 실행하여 다운로드한 PEM 인증서와 키를 PKCS12 보관 파일로 변환합니다. 다음 명령어를 실행하기 전에 SSL_CLIENT_KEY_PASSWD를 자바 클라이언트 키 저장소를 만드는 데 사용할 자체 커스텀 키 저장소 비밀번호로 바꿉니다.
openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem \ -name "postgresclient" -passout pass:SSL_CLIENT_KEY_PASSWD \ -out client-keystore.p12
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- SSL_CLIENT_KEY_PASSWD를 이전 빠른 시작 단계에서
openssl
로 자바 클라이언트 키 저장소를 만들기 위해 지정한 비밀번호로 바꿉니다. - YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_HOST='INSTANCE_HOST ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD ' export SSL_CLIENT_KEY_PATH='client-keystore.p12 ' export SSL_CLIENT_KEY_PASSWD='SSL_CLIENT_KEY_PASSWD ' export SSL_SERVER_CA_PATH='server-ca.pem' export PRIVATE_IP='TRUE'
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 자바 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
mvn jetty:run
로컬 컴퓨터에서 샘플 앱이 실행되는 Compute Engine VM 인스턴스의 외부 IP 주소를 가져오고 이를 브라우저에서 확인합니다.
- 로컬 컴퓨터의 터미널 또는 Powershell에서 다음
gcloud compute instances describe
명령어를 실행하여 Compute Engine VM 인스턴스의 외부 IP 주소를 가져옵니다. -
실행 중인 샘플 앱을 확인합니다. 로컬 컴퓨터에서 브라우저를 열고 Compute Engine VM 인스턴스의 외부 IP 주소 및 포트 8080으로 이동합니다.
http://
COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
gcloud compute instances describequickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
nodejs-docs-samples/cloud-sql/postgres/knex
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 터미널에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 certs
디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_HOST='INSTANCE_HOST ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD ' export DB_ROOT_CERT='certs/server-ca.pem' export DB_CERT='certs/client-cert.pem' export DB_KEY='certs/client-key.pem' export PRIVATE_IP='TRUE'
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 필요한 Node.js 패키지를 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
앱을 로컬에서 실행하는 데 필요한 Node.js 패키지를 설치합니다.
npm install
-
샘플 앱을 실행합니다.
npm start
로컬 컴퓨터에서 샘플 앱이 실행되는 Compute Engine VM 인스턴스의 외부 IP 주소를 가져오고 이를 브라우저에서 확인합니다.
- 로컬 컴퓨터의 터미널 또는 Powershell에서 다음
gcloud compute instances describe
명령어를 실행하여 Compute Engine VM 인스턴스의 외부 IP 주소를 가져옵니다. -
실행 중인 샘플 앱을 확인합니다. 로컬 컴퓨터에서 브라우저를 열고 Compute Engine VM 인스턴스의 외부 IP 주소 및 포트 8080으로 이동합니다.
http://
COMPUTE_ENGINE_VM_EXTERNAL_IP_ADDRESS :8080
gcloud compute instances describequickstart-vm-instance --format="value(networkInterfaces[0].accessConfigs[].natIP)"
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
python-docs-samples/cloud-sql/postgres/sqlalchemy
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 터미널에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 certs
디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
export INSTANCE_HOST='INSTANCE_HOST ' export DB_PORT='5432' export DB_NAME='quickstart_db ' export DB_USER='quickstart-user ' export DB_PASS='YOUR_DB_PASSWORD ' export DB_ROOT_CERT='certs/server-ca.pem' export DB_CERT='certs/client-cert.pem' export DB_KEY='certs/client-key.pem' export PRIVATE_IP='TRUE'
Compute Engine VM 인스턴스의 열린 터미널에서 다음 명령어를 실행하여 Python 샘플 앱의 요구 사항을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
가상 환경을 초기화하고 샘플 앱을 실행하기 위한 요구사항을 설치하세요.
python3 -m venv env source env/bin/activate pip install -r requirements.txt
-
샘플 앱을 실행합니다.
python app.py
로컬 컴퓨터에서 다음 빠른 시작 단계의 안내에 따라 SSH를 통한 포트 전달을 설정합니다. 이렇게 하면 로컬 컴퓨터의 브라우저를 사용하여 Compute Engine VM 인스턴스에서 실행 중인 앱을 볼 수 있습니다.
- 터미널 또는 로컬 컴퓨터의 Powershell에서 다음
gcloud compute ssh
명령어를 실행하여 SSH를 통한 포트 전달을 설정합니다. 명령어를 실행하기 전에 YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다. -
실행 중인 샘플 앱을 봅니다. 포트 전달이 실행 중인 경우 로컬 컴퓨터에서 브라우저를 열고 브라우저의 주소 표시줄에
http://127.0.0.1:8000
을 입력합니다.
gcloud compute ssh quickstart-vm-instance --project=YOUR_PROJECT_ID --zone=us-central1-a --ssh-flag='-L 8000:127.0.0.1:8080'
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 터미널에서 Control+C를 누릅니다.
비공개 IP Cloud SQL 인스턴스 및 Windows 기반 Compute Engine VM
SSL 서버 및 클라이언트 인증서를 만들어 로컬 컴퓨터에 다운로드
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
quickstart-instance
를 클릭하여 해당 개요 페이지를 참조하세요.- 연결 탭을 클릭합니다.
- 보안 섹션에서 클라이언트 인증서 만들기를 클릭합니다.
- 클라이언트 인증서 만들기 대화상자에서
quickstart-key
를 이름으로 입력하고 만들기를 클릭합니다. 새 SSL 인증서가 생성됨 대화상자에서 각 다운로드 링크를 클릭하여 인증서를 다운로드합니다. 그런 후 닫기를 클릭합니다.
Cloud Storage 버킷에 SSL 인증서 업로드
로컬 컴퓨터의 브라우저에서 Cloud Storage 버킷을 만들고 Compute Engine VM 인스턴스에서 액세스할 수 있는 버킷에 SSL 인증서를 업로드합니다.
- Cloud Storage 버킷 생성
- 버킷 이름에 다음 이름을 입력합니다. 여기서 YOUR_PROJECT_ID를 프로젝트 ID로 바꿉니다.
YOUR_PROJECT_ID -quickstart-certs - 만들기 버튼을 클릭하여 버킷을 만듭니다.
- 파일 업로드 버튼을 클릭하여 새로 만든 Cloud Storage 버킷에 파일을 업로드합니다.
- 로컬 컴퓨터에서 Cloud Storage로 업로드할 다음 파일을 선택합니다.
server-ca.pem
client-cert.pem
client-key.pem
SSL 인증서를 다운로드한 디렉터리로 열려 있는 로컬 컴퓨터의 터미널 또는 Powershell 창에서 Cloud Storage 버킷을 만들고 Compute Engine VM 인스턴스에서 액세스할 수 있는 버킷에 SSL 인증서를 업로드합니다. gcloud CLI가 파일을 업로드하는 데 사용됩니다.
- 다음
gcloud storage buckets create
명령어를 실행하여 새 Cloud Storage 버킷을 만듭니다. - 로컬 컴퓨터에 인증서를 다운로드한 디렉터리에서 다음
gcloud storage cp
명령어를 실행하여 SSL 인증서를 새로 만든 Cloud Storage 버킷에 복사합니다.
gcloud storage buckets create gs://YOUR_PROJECT_ID -quickstart-certs --location=us-central1
gcloud storage cp server-ca.pem gs://YOUR_PROJECT_ID -quickstart-certs/ gcloud storage cp client-cert.pem gs://YOUR_PROJECT_ID -quickstart-certs/ gcloud storage cp client-key.pem gs://YOUR_PROJECT_ID -quickstart-certs/
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
golang-samples/cloudsql/postgres/database-sql
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 Powershell 창에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 certs
디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_HOST="INSTANCE_HOST " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD " $env:DB_ROOT_CERT="certs/server-ca.pem" $env:DB_CERT="certs/client-cert.pem" $env:DB_KEY="certs/client-key.pem" $env:PRIVATE_IP="TRUE"
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 Go 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
샘플 앱을 실행하는 데 필요한 종속 항목을 가져옵니다.
go get ./...
-
샘플 앱을 실행합니다.
go run cmd\app\main.go
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
java-docs-samples/cloud-sql/postgres/servlet
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 Powershell 창에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 현재 디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem . gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem . gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem .
Compute Engine VM 인스턴스에서 자바에 사용할 SSL 인증서 구성
- Compute Engine VM 인스턴스의 터미널에서
openssl
을 사용해서 다음 명령어를 실행하여 다운로드한 PEM 인증서와 키를 PKCS12 보관 파일로 변환합니다. 다음 명령어를 실행하기 전에 SSL_CLIENT_KEY_PASSWD를 자바 클라이언트 키 저장소를 만드는 데 사용할 자체 커스텀 키 저장소 비밀번호로 바꿉니다.
openssl pkcs12 -export -in client-cert.pem -inkey client-key.pem ` -name "postgresclient" -passout pass:SSL_CLIENT_KEY_PASSWD ` -out client-keystore.p12
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다. - SSL_CLIENT_KEY_PASSWD를 SSL_CLIENT_KEY_PASSWD에 지정한 비밀번호로 바꿉니다.
$env:INSTANCE_HOST="INSTANCE_HOST " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD " $env:SSL_CLIENT_KEY_PATH="client-keystore.p12 " $env:SSL_CLIENT_KEY_PASSWD="SSL_CLIENT_KEY_PASSWD " $env:SSL_SERVER_CA_PATH="server-ca.pem" $env:PRIVATE_IP="TRUE"
-
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 자바 샘플 앱의 종속 항목을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
mvn jetty:run
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
nodejs-docs-samples/cloud-sql/postgres/knex
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 Powershell 창에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 certs
디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_HOST="INSTANCE_HOST " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD " $env:DB_ROOT_CERT="certs/server-ca.pem" $env:DB_CERT="certs/client-cert.pem" $env:DB_KEY="certs/client-key.pem" $env:PRIVATE_IP="TRUE"
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 필요한 Node.js 패키지를 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
앱을 로컬에서 실행하는 데 필요한 Node.js 패키지를 설치합니다.
npm install
-
샘플 앱을 실행합니다.
npm start
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
Compute Engine VM 인스턴스에서 gcloud CLI를 사용하여 SSL 인증서 다운로드
python-docs-samples/cloud-sql/postgres/sqlalchemy
디렉터리로 열려 있는 Compute Engine VM 인스턴스의 Powershell 창에서 다음 gcloud storage cp
명령어를 실행하여 Cloud Storage에서 certs
디렉터리로 SSL 인증서를 다운로드합니다.
gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/server-ca.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-cert.pem certs/. gcloud storage cp gs://YOUR_PROJECT_ID -quickstart-certs/client-key.pem certs/.
Compute Engine VM 인스턴스에서 환경 변수 설정
Compute Engine VM 인스턴스의 Powershell 창에서 다음 명령어를 실행하여 샘플 앱을 실행하는 데 필요한 환경 변수를 초기화합니다. 명령어를 실행하기 전 다음을 바꿉니다.
- 설정된 INSTANCE_HOST를 Google Cloud 콘솔의 Cloud SQL 인스턴스 페이지에 표시된 인스턴스의 비공개 IP 주소로 바꿉니다.
- YOUR_DB_PASSWORD를 이전 사용자 만들기 빠른 시작 단계에서 만든
quickstart-user
의 비밀번호로 바꿉니다.
$env:INSTANCE_HOST="INSTANCE_HOST " $env:DB_PORT="5432" $env:DB_NAME="quickstart_db " $env:DB_USER="quickstart-user " $env:DB_PASS="YOUR_DB_PASSWORD " $env:DB_ROOT_CERT="certs/server-ca.pem" $env:DB_CERT="certs/client-cert.pem" $env:DB_KEY="certs/client-key.pem" $env:PRIVATE_IP="TRUE"
Compute Engine VM 인스턴스의 열린 Powershell 창에서 다음 명령어를 실행하여 Python 샘플 앱의 요구 사항을 Compute Engine VM 인스턴스로 가져오고 샘플 앱을 실행합니다.
-
가상 환경을 초기화하고 샘플 앱을 실행하기 위한 요구사항을 설치하세요.
virtualenv --python python3 env .\env\Scripts\activate pip install -r requirements.txt
-
샘플 앱을 실행합니다.
python app.py
-
실행 중인 샘플 앱을 봅니다. Compute Engine VM 인스턴스에서 브라우저를 열고
http://127.0.0.1:8080
으로 이동합니다.
샘플 앱을 중지하려면 샘플 앱을 시작한 Compute Engine VM 인스턴스 Powershell 창에서 Control+C를 누릅니다.
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.
Cloud SQL 인스턴스 삭제
-
Google Cloud 콘솔에서 Cloud SQL 인스턴스 페이지로 이동합니다.
quickstart-instance
인스턴스를 선택하여 인스턴스 세부정보 페이지를 엽니다.- 페이지 상단의 아이콘 표시줄에서 삭제를 클릭합니다.
- 인스턴스 삭제 대화상자에서
quickstart-instance
를 입력한 후 삭제를 클릭하여 인스턴스를 삭제합니다.
Compute Engine VM 인스턴스 삭제
-
Google Cloud 콘솔에서 VM 인스턴스 페이지로 이동합니다.
quickstart-vm-instance
인스턴스를 선택하여 인스턴스 세부정보 페이지를 엽니다.- 페이지 상단의 아이콘 표시줄에서 삭제를 클릭합니다.
- 삭제를 클릭하여 인스턴스를 삭제합니다.
선택적인 삭제 단계
Compute Engine default
서비스 계정에 할당한 Cloud SQL 클라이언트 역할을 사용하지 않을 때는 이를 삭제할 수 있습니다.
-
Google Cloud 콘솔에서 IAM 페이지로 이동합니다.
- Compute Engine 기본 서비스 계정이라는 IAM 계정에 대해 수정 아이콘(연필 모양)을 클릭합니다.
- Cloud SQL 클라이언트 역할을 삭제합니다.
- 저장을 클릭합니다.
이 빠른 시작 중 사용 설정된 API를 사용하지 않는 경우 이를 사용 중지할 수 있습니다.
- 이 빠른 시작에서 사용 설정된 API:
- Cloud SQL Admin API
Google Cloud 콘솔에서 API 페이지로 이동합니다.
사용 중지하려는 API를 선택한 후 API 사용 중지 버튼을 클릭합니다.
다음 단계
Cloud SQL 인스턴스 만들기 자세히 알아보기(필요한 경우)Cloud SQL 인스턴스의 PostgreSQL 사용자 및 데이터베이스를 만드는 방법 알아보기
가격 책정에 대한 자세한 내용은 PostgreSQL용 Cloud SQL 가격 책정을 참조하세요.
다음에 대해 자세히 알아보기
또한 다른 Google Cloud 애플리케이션에서 Cloud SQL 인스턴스에 연결하는 방법을 알아보세요.