1. 소개
고급 트래픽 관리 (Envoy)를 사용한 외부 HTTPs LB Codelab에 오신 것을 환영합니다.
고급 트래픽 관리가 포함된 최신 버전의 HTTP(S) 외부 부하 분산기에는 기존 기본 전역 외부 HTTP(S) 부하 분산기의 모든 기능이 포함되어 있지만 고급 트래픽 관리 기능도 계속 증가하고 있습니다. 이러한 기능 중 일부는 부하 분산기에 처음 도입된 기능이며, 일부는 기존 기능에 향상된 기능을 제공합니다. 이러한 기능을 부분적으로 나열하면 다음과 같습니다.
- 가중치가 적용된 트래픽 분할
- 미러링 요청
- 이상점 감지
- 요청 재시도
- 결함 주입
- 추가 백엔드 세션 어피니티 옵션
- 추가 헤더 변환 옵션
- 교차 출처 리소스 공유 (CORS)
- 새로운 부하 분산 알고리즘
학습할 내용
- 관리형 인스턴스 그룹과 연결된 VPC, 방화벽 규칙을 설정하는 방법
- 새 부하 분산기의 고급 트래픽 관리 기능을 사용하는 방법
- 고급 트래픽 관리 기능이 의도한 대로 작동하는지 검증하는 방법
필요한 항목
- 기본 네트워킹 및 HTTP 지식
- 기본 Unix/Linux 명령줄 지식
Codelab 토폴로지 및 사용 사례
그림 1 - HTTP 부하 분산기 라우팅 토폴로지
이 Codelab에서는 동부, 서부, 중부에 하나씩 관리형 인스턴스 그룹 3개를 설정합니다. 전역 외부 https 부하 분산기를 만듭니다. 부하 분산기는 Envoy 기반 부하 분산기가 지원하는 고급 기능 목록의 여러 기능을 활용합니다. 배포 후에는 시뮬레이션 부하를 생성하고 설정한 구성이 적절하게 작동하는지 확인합니다.
2. 설정 및 요구사항
자습형 환경 설정
- Google Cloud Console에 로그인하여 새 프로젝트를 만들거나 기존 프로젝트를 재사용합니다. 아직 Gmail이나 Google Workspace 계정이 없는 경우 계정을 만들어야 합니다.
- 프로젝트 이름은 이 프로젝트 참가자의 표시 이름입니다. 이는 Google API에서 사용하지 않는 문자열이며 언제든지 업데이트할 수 있습니다.
- 프로젝트 ID는 모든 Google Cloud 프로젝트에서 고유해야 하며, 변경할 수 없습니다(설정된 후에는 변경할 수 없음). Cloud Console은 고유한 문자열을 자동으로 생성합니다. 일반적으로 신경 쓰지 않아도 됩니다. 대부분의 Codelab에서는 프로젝트 ID를 참조해야 하며(일반적으로
PROJECT_ID
로 식별됨), 마음에 들지 않는 경우 임의로 다시 생성하거나 직접 지정해서 사용할 수 있는지 확인하세요. 프로젝트가 생성되면 프로젝트 ID가 '고정'됩니다. - 세 번째 값은 일부 API에서 사용하는 프로젝트 번호입니다. 이 세 가지 값에 대한 자세한 내용은 문서를 참조하세요.
- 다음으로 Cloud 리소스/API를 사용하려면 Cloud Console에서 결제를 사용 설정해야 합니다. 이 Codelab 실행에는 많은 비용이 들지 않습니다. 이 튜토리얼을 마친 후 비용이 결제되지 않도록 리소스를 종료하려면 Codelab의 끝에 있는 '삭제' 안내를 따르세요. Google Cloud 새 사용자에게는 미화 $300 상당의 무료 체험판 프로그램에 참여할 수 있는 자격이 부여됩니다.
Cloud Shell 시작
Google Cloud를 노트북에서 원격으로 실행할 수 있지만, 이 Codelab에서는 Cloud에서 실행되는 명령줄 환경인 Google Cloud Shell을 사용합니다.
GCP 콘솔에서 오른쪽 상단 툴바의 Cloud Shell 아이콘을 클릭합니다.
환경을 프로비저닝하고 연결하는 데 몇 분 정도 소요됩니다. 완료되면 다음과 같이 표시됩니다.
가상 머신에는 필요한 개발 도구가 모두 들어있습니다. 영구적인 5GB 홈 디렉토리를 제공하고 Google Cloud에서 실행되므로 네트워크 성능과 인증이 크게 개선됩니다. 이 실습의 모든 작업은 브라우저만으로 수행할 수 있습니다.
시작하기 전에
Cloud Shell 내에서 프로젝트 ID가 설정되어 있는지 확인합니다.
gcloud config list project
gcloud config set 프로젝트 [YOUR-PROJECT-NAME]
PROJECT_ID=[YOUR-PROJECT-NAME]
echo $PROJECT_ID
API 사용 설정
필요한 모든 서비스 사용 설정
gcloud services enable compute.googleapis.com gcloud services enable logging.googleapis.com gcloud services enable monitoring.googleapis.com
3. VPC 네트워크 만들기
VPC 네트워크 만들기
Cloud Shell 사용
gcloud compute networks create httplbs --subnet-mode=auto
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/httplbs]. NAME: httplbs SUBNET_MODE: AUTO BGP_ROUTING_MODE: REGIONAL IPV4_RANGE: GATEWAY_IPV4:
VPC 방화벽 규칙 만들기
VPC를 만들었으면 이제 방화벽 규칙을 만듭니다. 방화벽 규칙은 모든 IP가 http 트래픽에 대해 포트 80에서 테스트 애플리케이션 웹사이트의 외부 IP에 액세스하도록 허용하는 데 사용됩니다.
Cloud Shell 사용
gcloud compute firewall-rules create httplb-allow-http-rule \ --allow tcp:80 \ --network httplbs \ --source-ranges 0.0.0.0/0 \ --priority 700
출력
Creating firewall...working..Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/firewalls/httplb-allow-http-rule]. Creating firewall...done. NAME: httplb-allow-http-rule NETWORK: httplbs DIRECTION: INGRESS PRIORITY: 700 ALLOW: tcp:80 DENY: DISABLED: False
4. 관리형 인스턴스 그룹 설정
HTTP 부하 분산기에서 사용하는 백엔드 리소스의 패턴이 포함된 관리형 인스턴스 그룹을 설정해야 합니다. 먼저 각 리전에 생성할 VM의 구성을 정의하는 인스턴스 템플릿을 만듭니다. 다음으로 각 리전의 백엔드에 대해 인스턴스 템플릿을 참조하는 관리형 인스턴스 그룹을 만듭니다.
관리형 인스턴스 그룹은 범위가 영역 또는 리전일 수 있습니다. 이 실습에서는 us-east1, us-west1, us-central1에 하나씩, 총 3개의 리전 관리형 인스턴스 그룹을 만듭니다.
이 섹션에서는 인스턴스 생성 시 참조할 미리 만들어진 시작 스크립트를 확인할 수 있습니다. 이 시작 스크립트는 웹 애플리케이션을 시뮬레이션하는 데 사용할 웹 서버 기능을 설치하고 사용 설정합니다. 이 스크립트를 자유롭게 살펴보세요.
동, 서, 중앙 인스턴스 템플릿 만들기
첫 번째 단계는 us-east-1 인스턴스 템플릿을 만드는 것입니다.
Cloud Shell 사용
gcloud compute instance-templates create us-east1-template \ --region=us-east1 \ --network=httplbs \ --tags=http-server, \ --image-family=debian-9 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html systemctl restart apache2'
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates/us-east1-template]. NAME: us-east1-template MACHINE_TYPE: n1-standard-1 PREEMPTIBLE: CREATION_TIMESTAMP: 2021-11-11T11:02:37.511-08:00
다음 단계는 us-west-1 인스턴스 템플릿을 만드는 것입니다.
Cloud Shell 사용
gcloud compute instance-templates create us-west1-template \ --region=us-west1 \ --network=httplbs \ --tags=http-server, \ --image-family=debian-9 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html systemctl restart apache2'
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates/us-west1-template]. NAME: us-west1-template MACHINE_TYPE: n1-standard-1 PREEMPTIBLE: CREATION_TIMESTAMP: 2021-11-11T11:03:08.577-08:00
다음 단계는 us-central-1 인스턴스 템플릿을 만드는 것입니다.
Cloud Shell 사용
gcloud compute instance-templates create us-central1-template \ --region=us-central1 \ --network=httplbs \ --tags=http-server, \ --image-family=debian-9 \ --image-project=debian-cloud \ --metadata=startup-script='#! /bin/bash apt-get update apt-get install apache2 -y a2ensite default-ssl a2enmod ssl vm_hostname="$(curl -H "Metadata-Flavor:Google" \ http://169.254.169.254/computeMetadata/v1/instance/name)" echo "Page served from: $vm_hostname" | \ tee /var/www/html/index.html systemctl restart apache2'
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/instanceTemplates/us-central1-template]. NAME: us-central1-template MACHINE_TYPE: n1-standard-1 PREEMPTIBLE: CREATION_TIMESTAMP: 2021-11-11T11:03:44.179-08:00
이제 다음 gcloud 명령어를 사용해 인스턴스 템플릿이 성공적으로 생성되었는지 확인할 수 있습니다.
Cloud Shell 사용
gcloud compute instance-templates list
출력
NAME MACHINE_TYPE PREEMPTIBLE CREATION_TIMESTAMP us-central1-template n1-standard-1 2021-11-09T09:25:37.263-08:00 us-east1-template n1-standard-1 2021-11-09T09:24:35.275-08:00 us-west1-template n1-standard-1 2021-11-09T09:25:08.016-08:00
동부, 서부, 중앙 관리형 인스턴스 그룹 만들기
이제 앞서 만든 인스턴스 템플릿에서 관리형 인스턴스 그룹을 만들어야 합니다.
Cloud Shell 사용
gcloud compute instance-groups managed create us-east1-mig \ --base-instance-name=us-east1-mig \ --size=1 \ --template=us-east1-template \ --zone=us-east1-b
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-east1-b/instanceGroupManagers/us-east1-mig]. NAME: us-east1-mig LOCATION: us-east1-b SCOPE: zone BASE_INSTANCE_NAME: us-east1-mig SIZE: 0 TARGET_SIZE: 1 INSTANCE_TEMPLATE: us-east1-template AUTOSCALED: no
Cloud Shell 사용
gcloud compute instance-groups managed create us-west1-mig \ --base-instance-name=us-west1-mig \ --size=1 \ --template=us-west1-template \ --zone=us-west1-a
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-west1-a/instanceGroupManagers/us-west1-mig]. NAME: us-west1-mig LOCATION: us-west1-a SCOPE: zone BASE_INSTANCE_NAME: us-west1-mig SIZE: 0 TARGET_SIZE: 1 INSTANCE_TEMPLATE: us-west1-template AUTOSCALED: no
Cloud Shell 사용
gcloud compute instance-groups managed create us-central1-mig \ --base-instance-name=us-central1-mig \ --size=1 \ --template=us-central1-template \ --zone=us-central1-a
출력
Created [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/zones/us-central1-a/instanceGroupManagers/us-central1-mig]. NAME: us-central1-mig LOCATION: us-central1-a SCOPE: zone BASE_INSTANCE_NAME: us-central1-mig SIZE: 0 TARGET_SIZE: 1 INSTANCE_TEMPLATE: us-central1-template AUTOSCALED: no
다음 gcloud 명령어를 사용하면 인스턴스 그룹이 성공적으로 생성되었는지 확인할 수 있습니다.
Cloud Shell 사용
gcloud compute instance-groups list
출력
NAME LOCATION SCOPE NETWORK MANAGED INSTANCES us-central1-mig us-central1 zone httplbs Yes 1 us-west1-mig us-west1 zone httplbs Yes 1 us-east1-mig us-east1 zone httplbs Yes 1
웹 서버 기능 확인
각 인스턴스는 다음을 렌더링하는 간단한 PHP 스크립트를 사용하여 Apache 웹 서버를 실행하도록 구성됩니다.
웹 서버가 올바르게 작동하는지 확인하려면 Compute Engine으로 이동합니다. kube-APIserver로 전송합니다 새 인스턴스 (예: us-east1-mig-xxx)가 인스턴스 그룹 정의에 따라 생성되었는지 확인합니다.
이제 브라우저에서 웹 요청을 실행하여 웹 서버가 실행 중인지 확인합니다 (시작하는 데 1분 정도 걸릴 수 있음). Compute Engine의 VM 인스턴스 페이지에서 인스턴스 그룹이 만든 인스턴스를 선택하고 외부 (공개) IP를 클릭합니다.
또는 브라우저에서 http://<IP_Address>로 이동합니다.
5. 부하 분산기 설정
상태 점검 만들기
먼저 서비스가 제대로 작동되는지 확인하기 위해 기본 상태 점검을 만들어야 합니다. 기본 상태 점검을 만들 것입니다. 더 많은 고급 사용자 지정을 사용할 수 있습니다.
Cloud Shell 사용
gcloud compute health-checks create http http-basic-check \ --port 80
외부 IP 주소 예약
이 단계에서는 나중에 부하 분산기에 연결할 전역적으로 사용 가능한 고정 IP 주소를 예약해야 합니다.
Cloud Shell 사용
gcloud compute addresses create lb-ipv4-2 \ --ip-version=IPV4 \ --global
예약된 IP 주소를 기록해 둡니다.
gcloud compute addresses describe lb-ipv4-2 \ --format="get(address)" \ --global
백엔드 서비스 만들기
이제 앞서 만든 각 관리형 인스턴스 그룹에 대한 백엔드 서비스를 만들어야 합니다. 하나는 동, 서, 중부에 해당합니다.
동부 관리형 인스턴스 그룹에 대한 백엔드 서비스 만들기
Cloud Shell 사용
gcloud beta compute backend-services create east-backend-service \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTP \ --port-name=http \ --health-checks=http-basic-check \ --global
서부 관리형 인스턴스 그룹의 백엔드 서비스 만들기
Cloud Shell 사용
gcloud beta compute backend-services create west-backend-service \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTP \ --port-name=http \ --health-checks=http-basic-check \ --global
중앙 관리형 인스턴스 그룹의 백엔드 서비스 만들기
Cloud Shell 사용
gcloud beta compute backend-services create central-backend-service \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTP \ --port-name=http \ --health-checks=http-basic-check \ --global
백엔드 서비스에 MIG 추가
이제 각 애플리케이션 클러스터에 해당하는 백엔드 서비스를 만들었으므로 이제 앞서 만든 관리형 인스턴스 그룹을 각 백엔드 서비스에 추가해야 합니다.
백엔드 서비스에 East MIG를 추가합니다.
Cloud Shell 사용
gcloud beta compute backend-services add-backend east-backend-service \ --balancing-mode='UTILIZATION' \ --instance-group=us-east1-mig \ --instance-group-zone=us-east1-b \ --global
백엔드 서비스에 West MIG를 추가합니다.
Cloud Shell 사용
gcloud beta compute backend-services add-backend west-backend-service \ --balancing-mode='UTILIZATION' \ --instance-group=us-west1-mig \ --instance-group-zone=us-west1-a \ --global
백엔드 서비스에 West MIG를 추가합니다.
Cloud Shell 사용
gcloud beta compute backend-services add-backend central-backend-service \ --balancing-mode='UTILIZATION' \ --instance-group=us-central1-mig \ --instance-group-zone=us-central1-a \ --global
URL 맵 만들기
URL 맵에는 이 실습의 고급 트래픽 관리 기능이 포함됩니다. 구성을 포함할 .yaml 파일을 만들어야 합니다. .yaml 파일 내에서 /roundrobbin에 일치하는 프리픽스를 생성했으므로 /roundrobbin과 일치하는 트래픽만 이러한 구성의 영향을 받습니다. 트래픽의 50% 는 east-backend-service로, 트래픽의 50% 는 west-backend-service로 가도록 지정했습니다. 응답 헤더 값({test})이 추가되었으며 모든 응답에 표시됩니다. 마지막으로 모든 트래픽을 중앙 백엔드 서비스에 미러링해야 한다고 추가했습니다. 트래픽이 복제되어 테스트 목적으로만 여기로 전송됩니다.
예시를 머신에 .yaml 파일로 저장합니다.
defaultService: https://www.googleapis.com/compute/v1/projects/[project_id]/global/backendServices/east-backend-service kind: compute #urlMap name: web-map-http hostRules: - hosts: - '*' pathMatcher: matcher1 pathMatchers: - defaultService: https://www.googleapis.com/compute/v1/projects/[project_id]/global/backendServices/east-backend-service name: matcher1 routeRules: - matchRules: - prefixMatch: /roundrobbin priority: 2 headerAction: responseHeadersToAdd: - headerName: test headerValue: value replace: True routeAction: weightedBackendServices: - backendService: https://www.googleapis.com/compute/v1/projects/[project_id]/global/backendServices/east-backend-service weight: 50 - backendService: https://www.googleapis.com/compute/v1/projects/[project_id]/global/backendServices/west-backend-service weight: 50 retryPolicy: retryConditions: ['502', '504'] numRetries: 3 perTryTimeout: seconds: 1 nanos: 50 requestMirrorPolicy: backendService: https://www.googleapis.com/compute/v1/projects/[project_id]/global/backendServices/central-backend-service
컴퓨터에서 문서를 가져오는 URL 맵을 만듭니다. 소스 경로는 .yaml 파일을 저장하는 위치에 따라 다릅니다.
Cloud Shell 사용
gcloud beta compute url-maps import web-map-http \ --source /Users/[USERNAME]/Documents/Codelab/lbconfig.yaml \ --global
HTTP 프런트엔드 만들기
부하 분산기를 만드는 마지막 단계는 프런트엔드를 만드는 것입니다. 이렇게 하면 이전에 예약한 IP 주소가 생성된 부하 분산기 URL 맵에 매핑됩니다.
Cloud Shell 사용
gcloud beta compute target-http-proxies create http-lb-proxy-adv \ --url-map=web-map-http
다음으로 이전에 예약된 IP 주소를 HTTP 프록시에 매핑하는 전역 전달 규칙을 만들어야 합니다.
Cloud Shell 사용
gcloud beta compute forwarding-rules create http-content-rule \ --load-balancing-scheme EXTERNAL_MANAGED \ --address=lb-ipv4-2 \ --global \ --target-http-proxy=http-lb-proxy-adv \ --ports=80
6. 고급 트래픽 기능이 작동하는지 확인
구현된 트래픽 분할 기능이 작동하는지 확인하려면 약간의 부하를 생성해야 합니다. 이를 위해 부하를 시뮬레이션할 새 VM을 만듭니다.
SSH 방화벽 허용 규칙 만들기
트래픽을 생성할 VM에 SSH로 연결하려면 먼저 VM에 대한 SSH 트래픽을 허용하는 방화벽 규칙을 만들어야 합니다.
Cloud Shell 사용
gcloud compute firewall-rules create fw-allow-ssh \ --network=httplbs \ --action=allow \ --direction=ingress \ --target-tags=allow-ssh \ --rules=tcp:22
출력
NAME NETWORK DIRECTION PRIORITY ALLOW DENY DISABLED fw-allow-ssh httplbs INGRESS 1000 tcp:22 False
Siege-vm 만들기
이제 부하를 생성하는 데 사용할 siege-vm을 만듭니다.
Cloud Shell 사용
gcloud compute instances create siege-vm \ --network=httplbs \ --zone=us-east4-c \ --machine-type=e2-medium \ --tags=allow-ssh,http-server \ --metadata=startup-script='sudo apt-get -y install siege'
출력
NAME ZONE MACHINE_TYPE INTERNAL_IP EXTERNAL_IP STATUS siege-vm us-east4-c e2-medium 10.150.0.3 34.85.218.119 RUNNING
이제 만든 VM에 SSH로 연결할 수 있습니다. 생성되면 SSH를 클릭하여 터미널을 실행하고 연결합니다.
연결되면 다음 명령어를 실행하여 부하를 생성합니다. 외부 http 부하 분산기에 이전에 예약한 IP 주소를 사용합니다.
Cloud Shell 사용
siege -c 250 http://$lb-ipv4-2/roundrobbin
출력
New configuration template added to /home/cloudcurriculumdeveloper/.siege Run siege -C to view the current settings in that file [alert] Zip encoding disabled; siege requires zlib support to enable it: No such file or directory ** SIEGE 4.0.2 ** Preparing 250 concurrent users for battle. The server is now under siege...
부하 분산 확인
이제 Siege를 실행했으므로 트래픽이 동부 관리형 인스턴스 그룹과 서부 관리형 인스턴스 그룹에 균등하게 분산되고 있는지 확인할 차례입니다. 또한 트래픽 미러링이 작동하고 트래픽이 중앙 관리형 인스턴스 그룹으로 전송되고 있는지 확인할 수 있습니다.
Cloud 콘솔의 탐색 메뉴에서 네트워크 서비스 > 부하 분산. '백엔드'를 클릭합니다. 아래 스크린샷에 표시된 대로 고급 메뉴를 클릭합니다.
백엔드 서비스 탭으로 이동하여 east-backend-service를 선택합니다.
이 MIG에 대한 트래픽 분할을 실시간으로 확인할 수 있습니다. 잠시 후에 west-backend-service와 비교할 수 있습니다.
마찬가지로 west-backend-service로 이동합니다. 이 서비스로 이동하는 트래픽도 확인할 수 있습니다. 트래픽의 50/50 라운드 로빈 분할을 구성했기 때문에 비율은 east-backend-service에서 본 것과 비슷해야 합니다.
만든 트래픽 미러링 정책이 작동하는지 확인하려면 중앙 백엔드 서비스 관리형 인스턴스 그룹의 사용률을 확인해야 합니다. 이렇게 하려면 Compute, Compute Engine, 인스턴스 그룹으로 이동하여 us-central1-mig를 선택합니다. 다음으로 모니터링 탭으로 이동합니다.
트래픽이 이 관리형 인스턴스 그룹에 미러링되었음을 보여주는 차트가 채워집니다.
Siege를 중지합니다.
고급 트래픽 분할이 작동하고 있는 것을 확인했으므로 이제 포위를 중단할 차례입니다. 이를 위해 siege-vm의 SSH 터미널로 돌아가고 Ctrl+C를 눌러 siege 실행을 중지합니다.
전송되는 응답 헤더 확인
정리하기 전에 http 부하 분산기에서 적절한 응답 헤더를 전송하고 있는지 빠르게 확인할 수 있습니다. 콘텐츠 값과 함께 헤더 테스트를 전송하도록 구성했습니다. Cloud Shell에서 curl 명령어를 실행하면 예상한 응답이 표시됩니다.
Cloud Shell 사용
curl -svo /dev/null http://lb-ipv4-2/roundrobbin
출력
* Trying lb-ipv4-2.. * TCP_NODELAY set * Connected to lb-ipv4-2 ( lb-ipv4-2) port 80 (#0) > GET /roundrobbin HTTP/1.1 > Host: lb-ipv4-2 > User-Agent: curl/7.64.1 > Accept: */* > < HTTP/1.1 404 Not Found < date: Wed, 10 Nov 2021 17:05:27 GMT < server: envoy < Content-Length: 273 < content-type: text/html; charset=iso-8859-1 < via: 1.1 google < test: value < { [273 bytes data] * Connection #0 to host 34.149.2.26 left intact * Closing connection 0
7. 실습 정리
실습 환경이 끝났으므로 이제 해체할 차례입니다. 다음 명령어를 실행하여 테스트 환경을 삭제하세요.
Cloud Shell 사용
gcloud compute instances delete siege-vm gcloud alpha compute forwarding-rules delete http-content-rule --global gcloud alpha compute target-http-proxies delete http-lb-proxy-adv gcloud alpha compute url-maps delete web-map-http gcloud alpha compute backend-services delete east-backend-service --global gcloud alpha compute backend-services delete west-backend-service --global gcloud alpha compute backend-services delete central-backend-service --global gcloud compute addresses delete lb-ipv4-2 --global gcloud compute health-checks delete http-basic-check gcloud compute instance-groups managed delete us-east1-mig --zone us-east1-b gcloud compute instance-groups managed delete us-west1-mig --zone us-west1-a gcloud compute instance-groups managed delete us-central1-mig --zone us-central1-a gcloud compute instance-templates delete "us-east1-template" gcloud compute instance-templates delete "us-west1-template" gcloud compute instance-templates delete "us-central1-template" gcloud compute firewall-rules delete httplb-allow-http-rule gcloud compute firewall-rules delete fw-allow-ssh gcloud compute networks delete httplbs
8. 축하합니다.
고급 트래픽 관리 (Envoy)를 사용한 외부 HTTPs LB Codelab을 완료했습니다.
학습한 내용
- 관리형 인스턴스 그룹과 연결된 VPC, 방화벽 규칙을 설정하는 방법
- 새 부하 분산기의 고급 트래픽 관리 기능을 사용하는 방법
- 고급 트래픽 관리 기능이 의도한 대로 작동하는지 검증하는 방법
다음 단계
- URL 재작성, CORS 헤더 추가 등 기타 고급 라우팅 기능을 사용해 보세요 ( 링크).