콘솔을 사용하여 노드 배포 및 어플라이언스 네트워킹 구성

이 페이지에서는 Google Cloud 콘솔을 사용하여 베어메탈 ESXi 노드를 배포하고 Google Cloud 네트워킹 구성을 구성하여 Google Cloud의 VMware 솔루션에 VMware Cloud Foundation (VCF)을 배포하는 방법을 설명합니다.

이 페이지의 단계를 완료하면 VCF 브링업을 위한 Google Cloud 인프라가 준비되지만 VCF 또는 VCF 관리 어플라이언스 자체는 배포되지 않습니다.

  • 이 워크플로의 역할: 베어메탈 ESXi 컴퓨팅 인스턴스를 프로비저닝하고, 기본 및 동적 네트워크 인터페이스 (NIC)를 구성하고, VPC 서브넷과 영역 네트워크 엔드포인트 그룹 (NEG)을 설정하고, 향후 VCF 관리 어플라이언스 및 NSX 데이터 경로를 위한 Google Cloud 부하 분산 구성과 IP 주소 예약을 사전 구성합니다.
  • 이 워크플로에서 수행하지 않는 작업: 초기 ESXi root 비밀번호를 재설정하거나, ESXi 호스트 네트워킹 (vSwitch0 및 vSAN)을 초기화하거나, VCF 설치 프로그램을 배포하거나, VCF 관리 어플라이언스 (예: vCenter Server, SDDC Manager, NSX Manager)를 배포하지 않습니다. 초기 ESXi root 비밀번호를 재설정하고, 호스트를 초기화하고, 이 단계를 완료한 후 VCF를 배포하려면 VMware 솔루션 도구 키트를 실행하고 VCF 설치 프로그램에서 브링업을 완료해야 합니다. 자세한 내용은 도구 키트를 사용하여 노드 준비 및 VCF 배포를 참조하세요.

시작하기 전에

시작하기 전에 다음 요구사항을 완료했는지 확인하세요.

  1. 프로젝트의 대상 리전 및 영역에 베어메탈 노드 할당량이 충분한지 확인합니다. 필수 할당량과 할당량 상향을 보거나 요청하는 방법에 대한 안내는 할당량 및 한도를 참조하세요.
  2. Compute Admin (roles/compute.admin) 및 Cloud DNS를 사용하는 경우 DNS Administrator (roles/dns.admin)를 포함하여 필요한 Identity and Access Management (IAM) 권한이 있는지 확인합니다.
  3. Virtual Private Cloud (VPC) 네트워크를 설정하고 관리, vSAN, vMotion, NSX 터널 엔드포인트 (TEP)의 서브넷 IP 주소 범위를 계획합니다. 노드를 배포하기 전에 VPC 네트워크 MTU를 8896바이트로 설정하고 노드를 만드는 동안 VMware 솔루션에서 새 서브넷을 만듭니다.

    VMware 솔루션에서는 VLAN 기반 네트워킹을 지원하기 위해 VPC 네트워크의 서브넷에 서브넷 마스크 확인 속성이 학습을 통해 기본 범위만 브로드캐스트로 설정되어 있어야 합니다. Google Cloud 콘솔 지원 센터에서 다음 정보를 입력하여 지원 티켓을 엽니다.

    • 제품: Google Cloud VMware Engine
    • 우선순위: P2
    • 카테고리: 네트워크 연결
    • 비즈니스 영향: 일반적인 기술 관련 질문
    • 자세한 정보 제공: Allowlist L2 network connectivity for my project, 프로젝트 ID, 프로젝트 번호, 배포의 대상 리전 및 영역

    VLAN 기반 네트워킹 지원에 대한 자세한 내용은 레이어 2 에뮬레이션: ARP 브로드캐스팅 및 커스텀 MAC 학습을 참조하세요.

  4. 계획된 모든 ESXi 노드 호스트 이름 및 VCF 어플라이언스 엔드포인트에 대한 정방향 및 역방향 조회를 지원하도록 DNS (도메인 이름 시스템) 인프라를 계획합니다.

  5. 노드 호스트 이름: 배포 중에 각 노드의 정규화된 도메인 이름 (FQDN)을 제공합니다. 이렇게 하면 ESXi가 호스트 이름을 사용하여 인증서를 생성합니다.

  6. 신뢰할 수 있는 이미지 정책: 조직에서 constraints/compute.trustedImageProjects 조직 정책을 시행하지 않는 경우 별도의 조치가 필요하지 않습니다. 조직에서 이 정책을 적용하는 경우 Compute Engine에서 베어메탈 부팅 디스크를 만들 수 있도록 projects/smve-prod-public-images를 허용합니다. 자세한 내용은 이미지 액세스 제약조건 설정을 참조하세요.

  7. VPC 서비스 제어: 대상 프로젝트가 서비스 경계에 있지 않으면 별도의 조치가 필요하지 않습니다. 프로젝트가 서비스 경계에 있는 경우 smve-prod-public-images 프로젝트(projects/999037279871)에 대한 compute.googleapis.com 작업을 허용하는 이그레스 규칙을 추가합니다.

    - egressFrom:
        identityType: ANY_IDENTITY
      egressTo:
        operations:
        - serviceName: compute.googleapis.com
          methodSelectors:
          - method: "*"
        resources:
        - projects/999037279871
    

    자세한 내용은 이그레스 규칙 참조를 확인하세요.

리전 할당량 확인

베어메탈 노드를 프로비저닝하거나 클러스터를 만들기 전에 프로젝트에 리전 및 전역 Compute Engine 할당량이 충분한지 확인합니다. 리전의 모든 기존 클러스터 리소스를 프로젝트 할당량과 비교하기 전에 다음 증분 값에 추가합니다.

할당량 측정항목 베어메탈 노드당 필요한 리소스 노드 3개 클러스터에 필요한 리소스
Z3의 compute.googleapis.com/cpus_per_vm_family vCPU 192개 3 × 192 = 576 vCPU
Z3의 compute.googleapis.com/local_ssd_total_storage_per_vm_family 72 TB 3 × 72 TB = 216 TB
compute.googleapis.com/hyperdisk_balanced_total_storage 128GB 3 × 128 GB = 384 GB
compute.googleapis.com/resource_policies 기존 클러스터에 노드를 추가할 때 0 클러스터당 분산 배치 정책 1개
compute.googleapis.com/regional_backend_services_protocol_forwarding_fast_ha 새 어플라이언스 없이 노드 또는 클러스터를 추가하는 경우 0 새 VCF 관리 어플라이언스 VIP 또는 NSX Edge 엔드포인트당 1개

필수 할당량의 전체 목록과 할당량 상향을 보거나 요청하는 방법에 대한 안내는 할당량 및 한도를 참조하세요.

베어메탈 노드 배포 및 노드 네트워킹 구성

베어메탈 ESXi 노드를 프로비저닝하고 네트워크 인터페이스를 구성하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 VMware Engine > 자체 관리형 > 개요로 이동합니다.

    개요로 이동

  2. 배포 시작을 클릭하여 인프라 프로비저닝 및 구성 워크플로를 실행합니다.

  3. 노드 구성 섹션에서 노드를 배포할 리전 및 영역을 선택합니다.

  4. 배치 정책을 선택하거나 새 배치 정책 만들기를 클릭합니다.

    • 배치 정책을 만드는 경우 이름을 입력하고 가용성 도메인 수 (최대 8개)를 선택합니다.
  5. 노드에 배포할 VCF 버전을 선택합니다.

  6. 머신 유형을 선택하고 만들 노드 수를 지정합니다. 고가용성 (HA) VCF 배포에는 노드가 4개 이상 필요합니다.

  7. Quickname 마법사 섹션에서 리소스 이름 프리픽스 및 도메인 이름 서픽스를 입력합니다.

    • 리소스 이름 프리픽스: VMware 솔루션이 생성된 모든 리소스 이름 앞에 추가하는 프리픽스입니다.
    • 도메인 이름 서픽스: VMware 솔루션이 각 노드의 정규화된 도메인 이름 (FQDN)을 생성하는 데 사용하는 DNS 도메인 서픽스입니다.
  8. 각 노드의 노드 이름, 호스트 이름, 가용성 도메인을 검토합니다. 호스트 이름 필드에 정규화된 도메인 이름 (FQDN)을 입력합니다. 기본값을 수정하려면 수정을 클릭합니다.

    • 가용성 도메인: 각 노드의 가용성 도메인을 선택합니다. vSAN 장애 도메인 요구사항에 맞게 배치 정책의 구성된 가용성 도메인에 노드를 균등하게 분산합니다. 자세한 내용은 배치 정책 및 가용성 도메인을 참조하세요.
    • 내부 IPv4 주소: 임시 (자동), 임시 (커스텀) 또는 예약됨을 선택합니다.
      • 임시 (커스텀)를 선택하는 경우 IP 주소를 입력합니다.
      • 예약됨을 선택하는 경우 기존의 예약된 고정 IP를 선택하거나 구성 세부정보를 지정합니다.
  9. 실수로 노드가 삭제되지 않도록 하려면 삭제 방지 사용 설정을 선택합니다. 이 옵션은 기본적으로 사용 설정됩니다.

  10. 원하는 경우 라벨 관리를 클릭하여 노드에 메타데이터 라벨을 추가합니다.

  11. 계속을 클릭하여 노드 네트워크 구성으로 진행합니다.

  12. 네트워킹 섹션에서 노드의 VPC 네트워크를 선택합니다.

  13. 네트워크 인터페이스 섹션에서 기본 인터페이스를 구성합니다.

    • 기존 서브넷을 선택하거나 서브넷 만들기를 클릭하여 이름, 설명, IPv4 범위로 새 서브넷을 정의합니다.
    • 기존 네트워크 엔드포인트 그룹을 선택하거나 네트워크 엔드포인트 그룹 만들기를 클릭하여 새 그룹을 만듭니다. 워크플로는 프로비저닝된 모든 노드를 이 그룹에 자동으로 추가합니다.
  14. VMware 트래픽에 대한 동적 네트워크 인터페이스를 구성합니다.

    • Dynamic NIC (vSAN): vSAN 클러스터링 트래픽의 서브넷을 선택하거나 만듭니다. 원하는 경우 네트워크 엔드포인트 그룹을 할당합니다.
    • Dynamic NIC (vMotion): 라이브 VM 마이그레이션 트래픽의 서브넷을 선택하거나 만듭니다. 원하는 경우 네트워크 엔드포인트 그룹을 할당합니다.
    • 동적 NIC (NSX 터널 엔드포인트): NSX TEP 오버레이 트래픽의 서브넷 및 네트워크 엔드포인트 그룹을 선택하거나 만듭니다.
  15. 선택사항: 아키텍처에 커스텀 워크로드 트래픽을 위한 전용 인터페이스가 필요한 경우 Dynamic NIC를 추가합니다.

  16. 계속을 클릭하여 어플라이언스 네트워킹 설정을 진행합니다.

어플라이언스 네트워킹 구성

VCF 시작 중에 배포할 VCF 관리 어플라이언스 및 NSX 데이터 경로에 대한 Google Cloud 부하 분산 리소스 및 IP 예약을 사전 구성하려면 다음을 수행합니다.

  1. 어플라이언스 네트워킹 구성 페이지에서 VCF 배포 모델을 선택합니다. 고가용성 배포의 경우 고가용성 배포를 선택합니다 (노드 4개 이상 필요).
  2. 관리 어플라이언스 및 NSX 데이터 경로 테이블에서 사전 구성된 Google Cloud 네트워킹 리소스 이름과 엔드포인트를 검토합니다.
  3. 이름 또는 내부 IP 할당을 맞춤설정하려면 해당 테이블에서 수정을 클릭합니다.
    • 각 어플라이언스 엔드포인트에 대해 임시 (자동), 임시 (커스텀) 또는 예약됨을 선택합니다.
    • 예약된 주소를 사용하는 경우 예약된 IP 주소를 제공하거나 고정 예약 세부정보를 지정합니다.
  4. 계속을 클릭하여 구성 요약을 검토합니다.
  5. 구성 세부정보를 확인하고 배포를 클릭하여 베어메탈 노드를 프로비저닝하고 어플라이언스 네트워킹 리소스를 구성합니다.

Cloud DNS 영역 및 레코드 구성

Google Cloud 콘솔을 사용하여 베어메탈 인스턴스를 배포하고 어플라이언스 네트워킹을 구성할 때 DNS 영역과 정방향 (A) 및 역방향 (PTR) 레코드가 아직 없으면 이를 만들어야 합니다.

VMware 솔루션 툴킷 저장소에서 독립형 scripts/cloud_dns/vcf_cloud_dns_sync.py 스크립트를 실행하여 Cloud DNS 및 네트워크 시간 프로토콜 (NTP) DNS 설정을 자동화할 수 있습니다. 스크립트는 다음 작업을 수행합니다.

  • Cloud DNS API (dns.googleapis.com)를 사용 설정합니다.
  • Cloud DNS 서버 정책 (기본 설정)이 VPC 네트워크에 연결되어 있는지 확인합니다.
  • 비공개 정방향 및 역방향 조회 영역이 존재하고 VPC 네트워크에 바인딩되어 있는지 확인합니다.
  • Z3 베어메탈 노드 및 관리 서브넷 내부 부하 분산기 프런트엔드의 정방향 (A) 및 역방향 (PTR) DNS 레코드를 동기화합니다 (-fr 서픽스 삭제 및 IP 전용 NSX TEP 및 업링크 서브넷 부하 분산기 건너뛰기).
  • 비공개 정방향 조회 영역에서 NTP DNS 레코드 (ntp.DOMAIN_NAME)를 관리합니다 (예: 169.254.169.254에서 Compute Engine 메타데이터 서버를 가리킴).

스크립트를 가져오려면 도구 모음 저장소를 클론하고 scripts/cloud_dns 디렉터리로 이동합니다.

git clone https://github.com/GoogleCloudPlatform/self-managed-vmware-solution-toolkit
cd self-managed-vmware-solution-toolkit/scripts/cloud_dns

테스트 실행 모드에서 변경사항 미리보기

변경사항을 적용하지 않고 모든 Cloud DNS API, 정책, 영역, 노드, 내부 부하 분산기 레코드, NTP 작업을 미리 보려면 --dry-run 플래그를 사용하여 스크립트를 실행합니다.

python3 vcf_cloud_dns_sync.py \
    --project-id PROJECT_ID \
    --vpc-network VPC_NETWORK_NAME \
    --domain DOMAIN_NAME \
    --sync-all \
    --set-ntp-ip 169.254.169.254 \
    --dry-run

초기 Day-0 DNS 설정 실행

Google Cloud 콘솔에서 VPC 네트워크, 서브넷, Z3 베어메탈 인스턴스, NEG, 내부 부하 분산기 전달 규칙을 프로비저닝한 후 VCF 설치 프로그램 검증을 실행하기 전에 다음 명령어를 실행합니다. 이 명령어는 Cloud DNS API를 사용 설정하고, VPC DNS 정책을 만들고, NSX가 아닌 서브넷에서 비공개 전달 및 /16 (또는 /8) 역방향 영역을 만들고, 모든 노드 및 관리 프런트엔드 A 및 PTR 레코드를 등록하고 (NSX 서브넷 부하 분산기 건너뛰기), Compute Engine 메타데이터 서버 (169.254.169.254)를 가리키도록 ntp.DOMAIN_NAME를 구성합니다.

python3 vcf_cloud_dns_sync.py \
    --project-id PROJECT_ID \
    --vpc-network VPC_NETWORK_NAME \
    --domain DOMAIN_NAME \
    --sync-all \
    --set-ntp-ip 169.254.169.254

2일 차 수평 확장을 위한 레코드 동기화

Google Cloud 콘솔에서 새 Z3 베어메탈 호스트 또는 워크로드 도메인 내부 부하 분산기 전달 규칙을 추가한 후 --sync-all 플래그를 사용하여 스크립트를 다시 실행하여 새로 추가된 레코드만 등록합니다 (변경되지 않은 기존 레코드는 자동으로 건너뜀).

python3 vcf_cloud_dns_sync.py \
    --project-id PROJECT_ID \
    --vpc-network VPC_NETWORK_NAME \
    --domain DOMAIN_NAME \
    --sync-all

컴퓨팅 리소스를 프로비저닝하기 전에 DNS 영역 및 VPC 정책 부트스트랩

베어메탈 노드 또는 부하 분산기 프런트엔드를 프로비저닝하기 전에 Cloud DNS API를 사용 설정하고, VPC DNS 정책을 만들고, 정방향 및 역방향 영역을 만들려면 다음 명령어를 실행합니다.

python3 vcf_cloud_dns_sync.py \
    --project-id PROJECT_ID \
    --vpc-network VPC_NETWORK_NAME \
    --domain DOMAIN_NAME \
    --reverse-zones REVERSE_ZONE_NAME=REVERSE_SUBNET_CIDR \
    --setup-zones

커스텀 리소스 이름 또는 사전 생성된 관리자 리소스 사용

기본 리소스 이름을 재정의하거나 관리자가 미리 프로비저닝한 경우 VPC DNS 정책 또는 관리형 영역 만들기를 건너뛰려면 다음 옵션 중 하나를 사용합니다.

  • 커스텀 영역 및 정책 이름 지정 (여러 --reverse-zones 항목을 지정할 수 있음):

    python3 vcf_cloud_dns_sync.py \
        --project-id PROJECT_ID \
        --vpc-network VPC_NETWORK_NAME \
        --domain DOMAIN_NAME \
        --dns-policy CUSTOM_DNS_POLICY_NAME \
        --forward-zone CUSTOM_FORWARD_ZONE_NAME \
        --reverse-zones REVERSE_ZONE_1=CIDR_1 REVERSE_ZONE_2=CIDR_2 \
        --sync-all
    
  • VPC DNS 정책 만들기 건너뛰기 (정책이 이미 있는 경우):

    python3 vcf_cloud_dns_sync.py \
        --project-id PROJECT_ID \
        --vpc-network VPC_NETWORK_NAME \
        --domain DOMAIN_NAME \
        --no-create-dns-policy \
        --sync-all
    
  • 정방향 및 역방향 영역 만들기 건너뛰기 (관리자가 영역을 미리 만든 경우, --reverse-zones를 전달해야 함):

    python3 vcf_cloud_dns_sync.py \
        --project-id PROJECT_ID \
        --vpc-network VPC_NETWORK_NAME \
        --domain DOMAIN_NAME \
        --reverse-zones REVERSE_ZONE_1=CIDR_1 REVERSE_ZONE_2=CIDR_2 \
        --no-create-zones \
        --sync-all
    

위 명령어를 실행하기 전에 다음을 바꿉니다.

  • PROJECT_ID: Google Cloud프로젝트의 ID
  • VPC_NETWORK_NAME: VPC 네트워크의 이름입니다.
  • DOMAIN_NAME: VCF 환경의 DNS 도메인 서픽스 (예: vcf.example.com)
  • REVERSE_ZONE_NAME=REVERSE_SUBNET_CIDR: 역방향 조회 영역의 관리형 영역 이름 및 CIDR 블록 (예: smve-rev-10-10=10.10.0.0/16)
  • CUSTOM_DNS_POLICY_NAME: Cloud DNS 서버 정책의 커스텀 이름입니다.
  • CUSTOM_FORWARD_ZONE_NAME: 비공개 전달 관리형 영역의 커스텀 이름입니다.
  • REVERSE_ZONE_1=CIDR_1 및 REVERSE_ZONE_2=CIDR_2: 하나 이상의 역방향 관리형 영역 이름 및 CIDR 쌍 (예: my-rev-zone-1=10.10.1.0/24 my-rev-zone-2=10.10.2.0/24)

다음 단계

베어메탈 노드, Google Cloud 네트워킹 리소스, DNS 레코드가 구성되면 다음 단계를 완료하여 호스트를 준비하고 VCF를 배포합니다.

  1. vcf_cloud_dns_sync.py를 사용하여 Cloud DNS를 구성하는 대신 외부 DNS 서버를 사용하는 경우 다음 항목에 대한 정방향 (A) 및 역방향 (PTR) 레코드로 DNS 서버를 업데이트합니다.
    • 모든 ESXi 노드 호스트 이름 및 내부 IP 주소
    • 모든 VCF 관리 어플라이언스 호스트 이름 및 내부 IP 주소
  2. 노드 준비 도구 키트를 실행하여 각 호스트에서 초기 ESXi root 비밀번호를 재설정하고 ESXi 호스트를 초기화하고 VCF 설치 프로그램을 배포합니다. 단계별 안내는 도구 키트를 사용하여 노드 준비 및 VCF 배포를 참조하세요.
  3. VMware Cloud Foundation (VCF) 설치 프로그램에 액세스하여 배포를 완료하고 관리 도메인을 가동합니다. VCF 브링업을 완료하는 방법은 Broadcom 문서의 새 VCF Fleet 또는 새 VCF 인스턴스 배포를 참조하세요.