Redis 인스턴스와 동일한 승인 네트워크를 사용하는 Compute Engine VM 인스턴스에서 Redis 인스턴스에 연결할 수 있습니다.
설정
Google Cloud CLI를 설치하고, Redis 인스턴스와 Cloud Storage 버킷을 만들었다면 아래 단계를 건너뛸 수 있습니다.
gcloud CLI를 설치하고 초기화합니다.
gcloud init
빠른 시작 가이드에 따라 Redis 인스턴스를 만듭니다. Redis 인스턴스의 영역, IP 주소, 포트를 기록합니다.
이 샘플 애플리케이션의 애플리케이션 아티팩트가 업로드되는 Cloud Storage 버킷을 만듭니다. 자세한 내용은 버킷 만들기를 참조하세요.
샘플 애플리케이션의 gcloud 설정 구성
gcloud
기본 프로젝트를 샘플 앱 프로젝트로 설정합니다.gcloud config set project [PROJECT_ID]
샘플 애플리케이션
이 샘플 HTTP 서버 애플리케이션은 Compute Engine VM 인스턴스에서 Redis 인스턴스로 연결을 설정합니다.
원하는 프로그래밍 언어의 저장소를 클론하고 샘플 코드가 포함된 폴더로 이동합니다.
Go
git clone https://github.com/GoogleCloudPlatform/golang-samples
cd golang-samples/memorystore/redis
자바
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
cd java-docs-samples/memorystore/redis
Node.js
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples
cd nodejs-docs-samples/memorystore/redis
Python
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/memorystore/redis
이 샘플 애플리케이션은 /
엔드포인트에 액세스할 때마다 Redis 카운터를 증가시킵니다.
Go
이 애플리케이션은 github.com/gomodule/redigo/redis
클라이언트를 사용합니다. 다음 명령어를 실행하여 설치합니다.
go get github.com/gomodule/redigo/redis
자바
이 애플리케이션은 Jetty 3.1 서블릿 기반입니다.
Jedis 라이브러리를 사용합니다.
AppServletContextListener
클래스는 장기 Redis 연결 풀을 만드는 데 사용됩니다.
VisitCounterServlet
클래스는 Redis 카운터를 증가시키는 웹 서블릿입니다.
Node.js
이 애플리케이션은 redis
모듈을 사용합니다.
Python
이 애플리케이션은 웹 서빙에 Flask를 사용하고 Redis 인스턴스와 통신하기 위해 redis-py
패키지를 사용합니다.
Compute Engine VM에 애플리케이션 배포
gce_deployment
디렉터리로 이동합니다.
cd gce_deployment
배포 스크립트는 아티팩트를 Cloud Storage 경로에 업로드합니다. 그런 다음 Compute Engine 인스턴스를 시작하여 방화벽을 만들어 포트 8080을 노출합니다. 그러면 시작 스크립트에서 인스턴스를 준비합니다.
REDISHOST
및 REDISPORT
환경 변수를 설정합니다.
export REDISHOST=[REDISHOST] export REDISPORT=[REDISPORT]
각 항목의 의미는 다음과 같습니다.
REDISHOST
는 관리형 Redis 인스턴스 IP입니다.REDISPORT
는 관리형 Redis 인스턴스 포트(기본적으로 6379)입니다.
GCS_BUCKET_NAME
환경 변수를 설정합니다.
export GCS_BUCKET_NAME=[BUCKET_NAME]/[PATH]
각 항목의 의미는 다음과 같습니다.
BUCKET_NAME
은 Cloud Storage 버킷의 이름입니다.PATH
는 애플리케이션 아티팩트를 저장하려는 디렉터리의 경로(선택사항)입니다.
다음은 이 애플리케이션을 새로운 Compute Engine VM 인스턴스에 배포하는 샘플 배포 스크립트입니다.
Go
자바
Node.js
Python
배포 스크립트를 실행합니다.
chmod +x deploy.sh
./deploy.sh
애플리케이션 시작 스크립트
이 시작 스크립트는 샘플 배포 스크립트에서 인스턴스를 준비하는 데 사용됩니다. 시작 스크립트 및 시작 스크립트 실행 로그 보기에 대한 자세한 내용은 시작 스크립트 실행을 참조하세요.
Go
자바
Node.js
Python
샘플 애플리케이션이 새로 만들어진 Compute Engine 인스턴스에 배포되는 데 몇 분 정도 걸릴 수 있습니다.
인스턴스가 준비되고 시작 스크립트 실행이 완료되었으면 Compute Engine 인스턴스 페이지로 이동하여 외부 IP 주소를 복사합니다.
배포한 샘플 앱을 보려면 http://[EXTERNAL-IP]:8080을 방문하세요.
teardown.sh
스크립트를 사용하여 배포 스크립트로 만든 인스턴스와 방화벽을 삭제할 수 있습니다.