Finish setting up network infrastructure

내 진행 상황 확인하기

/ 50

Configure the internal load balancer

내 진행 상황 확인하기

/ 50

이 실습에는 학습을 지원하는 AI 도구가 통합되어 있을 수 있습니다.

개요

Google Cloud 부하 분산기는 트래픽 관리 기능을 제공하며, 이러한 기능은 부하 분산기마다 다릅니다.

이 실습에서는 백엔드 두 개로 리전 내부 애플리케이션 부하 분산기를 만듭니다. 각 백엔드는 인스턴스 그룹이 됩니다. 블루-그린 배포를 만들기 위해 부하 분산기를 구성합니다.

블루 배포는 현재 애플리케이션 버전을, 그린 배포는 새로운 애플리케이션 버전을 나타냅니다. 트래픽의 70%를 블루 배포로, 30%를 그린 배포로 전송하도록 부하 분산기를 구성합니다. 완료되면 환경은 다음과 같은 형태가 됩니다.

이미지는 각각 관리형 인스턴스 그룹이 있는 두 개의 서브넷이 있는 VPC 네트워크를 보여줍니다. 서브넷 하나는 블루 배포에 사용되고 다른 하나는 그린 배포에 사용됩니다. 서브넷으로 향하는 클라이언트 트래픽은 부하 분산기가 처리합니다.

목표

이번 실습에서는 다음 작업을 수행합니다.

  • 부하 분산기가 사용할 Google Cloud 인프라를 확인합니다.
  • 백엔드 두 개로 리전 내부 애플리케이션 부하 분산기를 만듭니다.
  • 부하 분산기에 트래픽 관리를 구현합니다.
  • 부하 분산기를 테스트합니다.

설정

각 실습에서는 정해진 기간 동안 새 Google Cloud 프로젝트와 리소스 집합이 무료로 제공됩니다.

  1. 실습 시작 버튼을 클릭합니다. 실습 비용을 결제해야 하는 경우 결제 수단을 선택할 수 있는 팝업이 열립니다. 왼쪽에는 다음과 같은 항목이 포함된 실습 세부정보 패널이 있습니다.

    • Google Cloud 콘솔 열기 버튼
    • 남은 시간
    • 이 실습에 사용해야 하는 임시 사용자 인증 정보
    • 필요한 경우 실습 진행을 위한 기타 정보
  2. Google Cloud 콘솔 열기를 클릭합니다(Chrome 브라우저를 실행 중인 경우 마우스 오른쪽 버튼으로 클릭하고 시크릿 창에서 링크 열기를 선택합니다).

    실습에서 리소스가 가동되면 다른 탭이 열리고 로그인 페이지가 표시됩니다.

    팁: 두 개의 탭을 각각 별도의 창으로 나란히 정렬하세요.

    참고: 계정 선택 대화상자가 표시되면 다른 계정 사용을 클릭합니다.
  3. 필요한 경우 아래의 사용자 이름을 복사하여 로그인 대화상자에 붙여넣습니다.

    {{{user_0.username | "Username"}}}

    실습 세부정보 패널에서도 사용자 이름을 확인할 수 있습니다.

  4. 다음을 클릭합니다.

  5. 아래의 비밀번호를 복사하여 시작하기 대화상자에 붙여넣습니다.

    {{{user_0.password | "Password"}}}

    실습 세부정보 패널에서도 비밀번호를 확인할 수 있습니다.

  6. 다음을 클릭합니다.

    중요: 실습에서 제공하는 사용자 인증 정보를 사용해야 합니다. Google Cloud 계정 사용자 인증 정보를 사용하지 마세요. 참고: 이 실습에 자신의 Google Cloud 계정을 사용하면 추가 요금이 발생할 수 있습니다.
  7. 이후에 표시되는 페이지를 클릭하여 넘깁니다.

    • 이용약관에 동의합니다.
    • 임시 계정이므로 복구 옵션이나 2단계 인증을 추가하지 않습니다.
    • 무료 체험판을 신청하지 않습니다.

잠시 후 Google Cloud 콘솔이 이 탭에서 열립니다.

참고: Google Cloud 제품 및 서비스 목록이 있는 메뉴를 보려면 왼쪽 상단의 탐색 메뉴를 클릭하거나 검색창에 제품 또는 서비스 이름을 입력합니다. 탐색 메뉴 아이콘

작업 1. 부하 분산기가 사용할 Google Cloud 인프라를 확인합니다.

이 작업에서는 부하 분산기가 활용할 네트워크, 방화벽 규칙, 인스턴스 그룹을 포함하여 사전 구성된 Google Cloud 인프라를 살펴봅니다. 그런 다음 테스트 VM을 만들고 백엔드 인스턴스를 확인합니다.

  1. Google Cloud 콘솔의 탐색 메뉴(탐색 메뉴)에서 VPC 네트워크 > VPC 네트워크를 클릭합니다.

    각 Google Cloud 프로젝트는 기본 네트워크로 시작합니다. 또한 my-internal-app 네트워크가 네트워크 다이어그램의 일부로 생성되어 있습니다.

    my-internal-app 네트워크에는 subnet-asubnet-b라는 서브넷이 있습니다. 두 서브넷 모두 리전에 있습니다.

    subnet-asubnet-b에는 관리형 인스턴스 그룹도 생성되었습니다.

  2. (선택사항) subnet-a를 클릭하고 구성을 살펴봅니다.

  3. (선택사항) subnet-b를 클릭하고 구성을 살펴봅니다.

  4. 탐색 메뉴(탐색 메뉴)에서 VPC 네트워크 > 방화벽을 클릭합니다.
    생성된 방화벽 규칙은 다음과 같습니다.

    방화벽 규칙 목적
    app-allow-icmp ICMP 통신 허용
    app-allow-ssh-rdp TCP 포트 22 및 3389를 통한 SSH 및 RDP 허용
    fw-allow-health-checks TCP 포트 80을 통한 상태 점검 허용
    fw-allow-lb-access 10.10.0.0/16 서브넷의 트래픽 허용
  5. (선택사항) 각 방화벽 규칙의 내용을 확인합니다.

  6. Google Cloud 콘솔의 탐색 메뉴(탐색 메뉴)에서 모든 제품 보기를 클릭합니다. 왼쪽 창에서 네트워킹 > 네트워크 연결 > Cloud Router를 선택합니다.

인스턴스 그룹 보기

인스턴스 그룹은 이미 생성되어 있습니다. 다음으로 구성 세부정보를 살펴봅니다.

  1. 탐색 메뉴에서 Compute Engine > VM 인스턴스를 클릭합니다.
    instance-group-1instance-group-2로 시작하는 두 개의 VM 인스턴스를 확인합니다.

  2. instance-group-1을 클릭합니다.

  3. 네트워크 인터페이스로 스크롤합니다.
    인스턴스 그룹은 subnet-a에 있으며 내부 IP 주소는 10.10.20.2입니다.

  4. VM 인스턴스 페이지로 돌아가서 instance-group-2에 대해 2단계와 3단계를 반복합니다.
    이 인스턴스 그룹은 subnet-b에 있으며 내부 IP 주소는 10.10.30.2입니다.

테스트용 VM 만들기

my-internal-app 네트워크의 subnet-a에서 utility-vm이라는 VM을 만들고 이를 사용하여 부하 분산기를 테스트합니다.

  1. VM 인스턴스 페이지로 돌아가서 인스턴스 만들기를 클릭합니다.

  2. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    이름 utility-vm
    리전
    영역
    시리즈 E2
    머신 유형 e2-medium(vCPU 2개, 메모리 4GB)
  3. OS 및 스토리지를 클릭합니다.

    변경을 클릭하여 부팅 디스크 구성을 시작하고 다음 값을 선택합니다.

    • 운영체제: Debian
    • 버전: Debian GNU/Linux 12(bookworm) x86/64, amd64
  4. 네트워킹을 클릭합니다.

  5. 네트워크 인터페이스에서 기본값을 클릭합니다.

  6. 다음 표에 표시된 대로 네트워크 인터페이스 속성과 값을 설정하고, 나머지 속성은 기본값을 그대로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    네트워크 my-internal-app
    서브네트워크 subnet-a
    기본 내부 IPv4 주소 임시(커스텀)
    커스텀 임시 IP 주소 10.10.20.50
    외부 IPv4 주소 없음
  7. 완료를 클릭합니다.

  8. 만들기를 클릭합니다.
    새 VM이 생성될 때까지 기다립니다.

백엔드 확인

  1. utility-vm에서 SSH를 클릭해 터미널을 실행하고 연결합니다.
    브라우저에서 SSH를 통해 VM에 연결하도록 허용 팝업이 표시되면 승인을 클릭합니다.

  2. instance-group-1-xxxx 시작 페이지를 확인하려면 다음 명령어를 실행합니다.

curl 10.10.20.2

출력이 아래와 같이 표시됩니다. 서버 위치가 로 설정되어 있습니다.

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-1-1zn8<h2>Server Location</h2>Region and Zone: {{{project_0.default_zone | Zone 1}}}
  1. instance-group-2-xxxx 시작 페이지를 확인하려면 다음 명령어를 실행합니다.
curl 10.10.30.2

출력이 아래와 같이 표시됩니다. 서버 위치가 로 설정되어 있습니다.

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-2-q5wp<h2>Server Location</h2>Region and Zone: {{{project_0.default_zone_2 | Zone 2}}}

참고: 이는 부하 분산기가 트래픽을 두 백엔드 모두로 전송하는지 확인할 때 도움이 됩니다.
  1. utility-vm의 SSH 터미널을 종료합니다.
exit

내 진행 상황 확인하기를 클릭하여 목표를 확인합니다. 네트워크 인프라 설정을 완료합니다.

작업 2. 부하 분산기 구성

이 작업에서는 두 백엔드(instance-group-1instance-group-2) 간에 트래픽을 분산하도록 리전 내부 애플리케이션 부하 분산기를 구성합니다(리전 및 영역은 실습 요구사항에 따라 다를 수 있음).

이미지는 각각 관리형 인스턴스 그룹이 있는 두 개의 서브넷이 있는 VPC 네트워크를 보여줍니다. 서브넷 하나는 블루 배포에 사용되고 다른 하나는 그린 배포에 사용됩니다. 서브넷으로 향하는 클라이언트 트래픽은 부하 분산기가 처리합니다.

구성 시작

  1. Google Cloud 콘솔의 탐색 메뉴(탐색 메뉴)에서 모든 제품 보기를 클릭합니다. 왼쪽 창에서 네트워킹 > 네트워크 서비스 > 부하 분산을 선택합니다.

  2. 부하 분산기 만들기를 클릭합니다.

  3. 애플리케이션 부하 분산기(HTTP/HTTPS)에서 다음을 클릭합니다.

  4. 공개 또는 내부에서 내부를 선택하고 다음을 클릭합니다. 이 옵션을 선택하면 리전 내부 애플리케이션 부하 분산기가 생성됩니다. 이 옵션을 선택하려면 백엔드가 단일 리전 에 위치해야 합니다.

  5. 리전 간 또는 단일 리전 배포리전 워크로드에 적합을 선택하고 다음을 클릭합니다.

  6. 구성을 클릭합니다.

  7. 이름my-ilb라고 입력합니다.

  8. 리전에서 리전을 선택합니다.

  9. 네트워크에서 my-internal-app을 선택합니다.

리전 내부 애플리케이션 부하 분산기를 구현하는 프록시 서버에는 IP 주소가 필요합니다. 이러한 IP 주소는 사용자가 지정한 서브넷에서 자동으로 할당됩니다.

  1. 프록시 전용 서브넷 필요에서 서브넷 예약을 클릭합니다.

  2. 이름my-proxy-subnet을 입력합니다.

  3. IP 주소 범위10.10.40.0/24를 입력합니다.

  4. 추가를 클릭합니다.
    프록시 전용 서브넷이 생성될 때까지 기다립니다. 성공적으로 생성되면 콘솔에 프록시 전용 서브넷의 이름과 함께 사용자가 지정한 IP 주소 범위가 표시됩니다.

blue-service 백엔드 구성

이 백엔드 서비스는 애플리케이션의 현재('블루') 버전을 가리킵니다.

  1. 백엔드 구성을 클릭합니다.

  2. 백엔드 구성백엔드 서비스 만들기 또는 선택에서 백엔드 서비스 만들기를 선택합니다.

  3. 이름blue-service를 입력합니다.

  4. 백엔드에서 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    인스턴스 그룹 instance-group-1
    포트 번호 80
  5. 완료를 클릭합니다.

  6. 상태 점검에서 상태 점검 만들기를 선택합니다.

  7. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

    속성 값(지정된 대로 옵션 선택)
    이름 blue-health-check
    프로토콜 TCP
    포트 80
    점검 간격 10초
    시간 초과 5초
    정상 기준 2
    비정상 기준 3
참고: 상태 점검은 새 연결을 수신할 수 있는 인스턴스를 판별합니다. 이 HTTP 상태 점검은 10초마다 인스턴스를 폴링하고 최대 5초 동안 응답을 기다립니다. 프로브 시도가 두 번 성공하면 백엔드가 정상으로 간주됩니다. 3번 실패하면 백엔드가 비정상으로 간주됩니다.
  1. 저장을 클릭합니다.

  2. 만들기를 클릭합니다.

  3. Google Cloud 콘솔의 백엔드 구성 옆에 파란색 체크표시가 있는지 확인합니다. 체크표시가 없다면 위의 단계를 모두 완료했는지 다시 확인합니다.

green-service 백엔드 구성

이 백엔드 서비스는 애플리케이션의 새('그린') 버전을 가리킵니다.

  1. 백엔드 구성백엔드 서비스 만들기 또는 선택에서 백엔드 서비스 만들기를 선택합니다.

  2. 이름green-service를 입력합니다.

  3. 백엔드에서 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    인스턴스 그룹 instance-group-2
    포트 번호 80
  4. 완료를 클릭합니다.

  5. 상태 점검에서 상태 점검 만들기를 선택합니다.

  6. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

    속성 값(지정된 대로 옵션 선택)
    이름 green-health-check
    프로토콜 TCP
    포트 80
    점검 간격 10초
    시간 초과 5초
    정상 기준 2
    비정상 기준 3
  7. 저장을 클릭합니다.

  8. 만들기를 클릭합니다.

이제 백엔드 서비스 아래에 DLWP blue-service와 green-service 각각에 대해 하나씩, 두 개의 항목이 표시됩니다. green-service가 표시되지 않으면 green-service 백엔드 구성 작업을 다시 수행해야 합니다.

  1. 확인을 클릭합니다.

'블루-그린' 라우팅 규칙 구성

트래픽의 70%를 blue-service로, 30%를 green-service로 라우팅하는 라우팅 규칙을 만듭니다.

  1. 라우팅 규칙을 클릭합니다.

  2. 라우팅 규칙 패널의 모드에서 고급 호스트 및 경로 규칙을 선택합니다.

  3. 호스트 및 경로 규칙 추가를 클릭합니다.

  4. 호스트*를 입력합니다. *(별표)는 모든 호스트와 일치합니다.

  5. 트래픽 관리는 YAML 형식을 사용하여 구성됩니다. 다음 YAML 코드를 검토한 다음 여러 줄로 된 경로 일치자(일치, 작업, 서비스)의 필드 첫 번째 줄에 복사하여 붙여넣습니다.

defaultService: regions/{{{project_0.default_region | Region}}}/backendServices/blue-service name: matcher1 routeRules: - matchRules: - prefixMatch: / priority: 0 routeAction: weightedBackendServices: - backendService: regions/{{{project_0.default_region | Region}}}/backendServices/blue-service weight: 70 - backendService: regions/{{{project_0.default_region | Region}}}/backendServices/green-service weight: 30
  1. 완료를 클릭합니다.

기본 라우팅 규칙 구성

트래픽이 다른 어떠한 라우팅 규칙과도 일치하지 않을 경우 부하 분산기는 기본 라우팅 규칙을 사용합니다. 구성한 규칙이 모든 트래픽과 일치하도록 설계되었더라도 기본 라우팅 규칙은 필수입니다. 기본 라우팅 규칙이 blue-service 백엔드를 사용하도록 구성합니다.

  1. (기본값) 일치하지 않는 호스트의 경우 트래픽을 '' 백엔드로 라우팅을 클릭합니다.

  2. 호스트 및 경로 규칙 수정 패널에서 서비스에 대해 blue-service를 선택한 다음 완료를 클릭합니다.

프런트엔드 구성

프런트엔드는 트래픽을 백엔드로 전달합니다.

  1. 프런트엔드 구성을 클릭합니다.

  2. 다음을 지정하고 나머지 설정은 기본값으로 둡니다.

    속성 값(지정된 대로 값 입력 또는 옵션 선택)
    서브네트워크 subnet-b
    IP 주소 임시(커스텀)
    커스텀 임시 IP 주소 10.10.30.5
  3. 완료를 클릭합니다.

부하 분산기 검토 및 만들기

  1. (선택사항) 검토 및 완료를 클릭합니다. 백엔드프런트엔드를 검토합니다.

  2. 만들기를 클릭합니다.
    부하 분산기가 생성될 때까지 기다렸다가 다음 작업을 시작합니다.

내 진행 상황 확인하기를 클릭하여 목표를 확인합니다. 부하 분산기를 구성합니다.

작업 3. 부하 분산기 테스트

이 작업에서는 my-ilb IP 주소가 대부분의 트래픽을 instance-group-1에서 실행 중인 blue-service로 전달하는지 확인합니다.

부하 분산기에 액세스

  1. 탐색 메뉴에서 Compute Engine > VM 인스턴스를 클릭합니다.

  2. utility-vm에서 SSH를 클릭해 터미널을 실행하고 연결합니다.

  3. 부하 분산기가 트래픽을 전달하는지 확인하려면 다음 명령어를 실행하세요.

curl 10.10.30.5

출력은 다음과 같습니다.

<h1>Internal Load Balancing Lab</h1><h2>Client IP</h2>Your IP address : 10.10.20.50<h2>Hostname</h2>Server Hostname: instance-group-2-1zn8<h2>Server Location</h2>Region and Zone: YOUR_LAB_ZONE 예상대로 트래픽이 부하 분산기(10.10.30.5)에서 blue-service 백엔드 또는 green-service 백엔드로 전달됩니다.
  1. 동일한 명령어를 몇 차례 실행합니다.
curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5 curl 10.10.30.5

대부분의 응답은 blue-service인 instance-group-1에서 와야 합니다. green-service인 instance-group-2에서 오는 응답은 소수입니다. (트래픽의 70% 를 blue-service로 라우팅하도록 부하 분산기를 구성했음을 기억하세요.) 대부분의 응답이 instance-group-1에서 오지 않으면 명령어를 다시 실행합니다.

작업 4. 검토

이 실습에서는 리전에 관리형 인스턴스 그룹 두 개를 만들었습니다. 또한 몇 가지 방화벽 규칙도 만들었습니다. 방화벽 규칙은 클라이언트와 상태 점검기에서 관리형 인스턴스 그룹으로 전송되는 트래픽을 허용합니다. 관리형 인스턴스 그룹을 백엔드로 사용하여 리전 내부 애플리케이션 부하 분산기를 구성했습니다. 마지막으로 부하 분산기를 테스트하여 예상대로 작동하는지 확인했습니다.

실습 종료하기

실습을 완료하면 실습 종료를 클릭합니다. Google Skills에서 사용된 리소스를 자동으로 삭제하고 계정을 지웁니다.

실습 경험을 평가할 수 있습니다. 해당하는 별표 수를 선택하고 의견을 입력한 후 제출을 클릭합니다.

별점의 의미는 다음과 같습니다.

  • 별표 1개 = 매우 불만족
  • 별표 2개 = 불만족
  • 별표 3개 = 중간
  • 별표 4개 = 만족
  • 별표 5개 = 매우 만족

의견을 제공하고 싶지 않다면 대화상자를 닫으면 됩니다.

의견이나 제안 또는 수정할 사항이 있다면 지원 탭을 사용하세요.

Copyright 2026 Google LLC All rights reserved. Google 및 Google 로고는 Google LLC의 상표입니다. 기타 모든 회사명 및 제품명은 해당 업체의 상표일 수 있습니다.

시작하기 전에

  1. 실습에서는 정해진 기간 동안 Google Cloud 프로젝트와 리소스를 만듭니다.
  2. 실습에는 시간 제한이 있으며 일시중지 기능이 없습니다. 실습을 종료하면 처음부터 다시 시작해야 합니다.
  3. 화면 왼쪽 상단에서 실습 시작을 클릭하여 시작합니다.

시크릿 브라우징 사용

  1. 실습에 입력한 사용자 이름비밀번호를 복사합니다.
  2. 비공개 모드에서 콘솔 열기를 클릭합니다.

콘솔에 로그인

    실습 사용자 인증 정보를 사용하여
  1. 로그인합니다. 다른 사용자 인증 정보를 사용하면 오류가 발생하거나 요금이 부과될 수 있습니다.
  2. 약관에 동의하고 리소스 복구 페이지를 건너뜁니다.
  3. 실습을 완료했거나 다시 시작하려고 하는 경우가 아니면 실습 종료를 클릭하지 마세요. 이 버튼을 클릭하면 작업 내용이 지워지고 프로젝트가 삭제됩니다.

현재 이 콘텐츠를 이용할 수 없습니다

이용할 수 있게 되면 이메일로 알려드리겠습니다.

감사합니다

이용할 수 있게 되면 이메일로 알려드리겠습니다.

한 번에 실습 1개만 가능

모든 기존 실습을 종료하고 이 실습을 시작할지 확인하세요.

시크릿 브라우징을 사용하여 실습 실행하기

이 실습을 실행하는 가장 좋은 방법은 시크릿 모드 또는 시크릿 브라우저 창을 사용하는 것입니다. 개인 계정과 학생 계정 간의 충돌로 개인 계정에 추가 요금이 발생하는 일을 방지해 줍니다.

실습을 시작하려면 이 간단한 단계를 완료하세요.