Skip to main content

2026년 7월 20일

Google Cloud Platform에 대한 PowerShell 배포

PowerShell 명령은 Google Cloud Platform 내의 Compute Engine에 Unified Access Gateway 2103 이상을 배포하는 데 사용됩니다.

권장 운영 체제 및 PowerShell 버전

운영 체제권장 OS 버전PowerShell 버전
Windows10 및 115 및 7
Ubuntu20.04, 22.04, 24.04 7

절차

  1. 클라이언트 시스템 준비
  2. Google Cloud Platform 환경 준비
  3. Unified Access Gateway 이미지를 Google Cloud Platform에 업로드
  4. Google Cloud Platform에 배포할 .ini 파일 준비
  5. Compute Engine에 배포

1단계: PowerShell 배포를 위해 클라이언트 시스템 준비

클라이언트 시스템에 Google Cloud 유틸리티를 설치합니다.

  1. gsutil를 설치합니다. Windows 및 Ubuntu에 gsutil 도구를 설치하는 방법에 대한 지침은 Google Cloud 설명서에서 Google Cloud CLI의 일부로 gsutil 설치를 참조하십시오.

  2. Windows 시스템의 경우 관리 권한으로 다음 PowerShell 명령을 실행합니다.

    Install-Package 7Zip4PowerShell
    

2단계: Google Cloud Platform 환경 준비

Google Cloud 프로젝트를 사용합니다. 이 프로젝트는 VPC 네트워크, 해당 서브넷 네트워크 및 방화벽 규칙으로 구성되어야 합니다. 자세한 내용은 Google Cloud 설명서를 참조하십시오.

전제 조건

  • Google Cloud Platform 개념을 알고 있는지 확인합니다.
  • Google Cloud 프로젝트에서 이미지, VPC 네트워크, 서브넷, 방화벽 규칙 등과 같은 리소스를 생성하거나 수정하는 데 필요한 사용 권한이 있는지 확인합니다.
  • Compute Engine API를 사용하도록 설정해야 합니다.

절차

  1. Google Cloud 프로젝트를 사용합니다.

    옵션조치
    새 프로젝트
    1. Google Cloud Console에서 프로젝트 선택기 페이지로 이동합니다.
    2. Google Cloud 프로젝트를 생성합니다.
    기존 프로젝트프로젝트를 이미 사용할 수 있고 활성 상태인 경우 기존 프로젝트를 사용할 수 있습니다.
  2. 각 NIC에 대해 VPC(Virtual Private Cloud) 네트워크를 생성합니다.

    Unified Access Gateway의 각 NIC는 고유한 VPC 네트워크와 해당 네트워크 내의 서브넷을 사용합니다.

    VPC 네트워크를 생성하지 않도록 선택하면 단일 NIC Unified Access Gateway를 배포할 수 있습니다. Compute Engine에 배포된 Unified Access Gateway 장치는 Google Cloud Platform에서 사용할 수 있는 기본 VPC 네트워크를 사용합니다.

    예를 들어 다음 이미지에서는 Google Cloud Console에 두 개의 VPC 네트워크 uag-front-vpcuag-back-vpc가 생성됩니다. 이러한 VPC 네트워크에는 각각 서브넷으로 uag-front-networkuag-back-network가 있습니다. 두 NIC 장치를 배포할 수 있는 Unified Access Gateway는 프런트엔드 인터넷 연결에 대해 이러한 두 서브넷을 사용하고 백엔드 연결을 위해 별도의 서브넷 네트워크를 사용합니다.

    Google Cloud Console에서 두 개의 VPC 네트워크 uag-back-vpc 및 uag-front-vpc가 생성됩니다. 이러한 VPC 네트워크에는 각각 uag-back-network 및 uag-front-network가 서브넷으로 사용됩니다.

    참고: 공유 VPC 네트워크로 Unified Access Gateway를 구성할 수도 있습니다. 이 경우 서비스 프로젝트에 배포된 Unified Access Gateway 인스턴스는 호스트 프로젝트에서 생성 및 관리되는 공유 VPC 네트워크에 연결됩니다. Unified Access Gateway의 각 NIC(네트워크 인터페이스)는 공유 VPC 네트워크 또는 로컬 VPC 네트워크를 사용하도록 독립적으로 구성할 수 있습니다. 자세한 내용은 Google Cloud 설명서에서 공유 VPC 구성을 참조하십시오.

  3. 생성한 서브넷 이름을 기록해 둡니다.

    PowerShell을 사용하여 Unified Access Gateway를 배포하는 동안 VPC 네트워크 내의 서브넷 이름이 .ini 파일에 사용됩니다.

  4. 인터넷 액세스 가능 VPC의 Unified Access Gateway 장치에 대한 TCP 및 UDP 포트 액세스를 허용하려면 필요한 수의 방화벽 항목을 생성합니다.

    중요사항: 인터넷에서 TCP 포트 22의 Unified Access Gateway에 대한 SSH 원격 액세스를 방화벽에서 신중하게 제한해야 합니다. SSH 액세스가 필요한 경우 방화벽 규칙은 특정 소스 IP 주소에서만 이러한 액세스를 허용하거나 액세스를 제어할 수 있는 클라우드의 Jumpbox 가상 시스템에서 이러한 액세스를 허용해야 합니다.

    예를 들어 다음 Google Cloud Console 이미지에서 uag-horizon-protocols라는 방화벽 규칙이 인터넷 연결 VPC 네트워크 uag-front-vpc에 생성됩니다. 이 방화벽 규칙은 uag-front-vpc 네트워크에 연결된 모든 인스턴스에 적용되며 공용 인터넷의 지정된 포트에서 인바운드 TCP 및 UDP 트래픽을 허용합니다.

    Google Cloud Console에 TCP 및 UDP 포트가 구성된 Horizon Edge 서비스에 대한 방화벽 항목이 표시됩니다.

3단계: Unified Access Gateway 이미지를 Google Cloud Platform에 업로드

Unified Access Gateway 인스턴스를 Compute Engine에 배포하려면 Unified Access Gateway 장치 디스크 이미지를 Google Cloud Platform에 업로드해야 합니다.

  1. Omnissa Customer Connect에서 vSphere, AWS 및 Google Cloud용 UAG(Unified Access Gateway) 파일로 이동한 후 지금 다운로드를 클릭합니다.
    zip 파일 euc-unified-access-gateway-x.x.x.xxxxxxxxx.ova이(가) 로컬 시스템에 다운로드됩니다.

  2. PowerShell 명령 창을 열고 다음 명령을 실행하여 이전에 다운로드한 .ova 파일에서 .vmdk 파일을 추출합니다.

    • ova-filename은 Customer Connect에서 다운로드한 .ova 이미지 파일입니다.
    • target-location은 .vmdk 파일이 추출된 위치입니다.
    WindowsUbuntu
    expand-7zip ova-filename target-location
    예를 들어 euc-unified-access-gateway-22.12.0.0-42741890_OVF10.ova는 다운로드된 파일입니다. 여기서 22-12는 버전 번호이고 42741890은 빌드 번호입니다. .vmdk 파일을 C:\temp로 추출하려면 다음 명령을 실행합니다.
    expand-7zip C:\temp\euc-unified-access-gateway-22.12.0.0-42741890_OVF10.ova C:\temp\
    tar -xvf ova-filename
    예를 들면 다음과 같습니다.
    tar -xvf euc-unified-access-gateway-22.12.0.0-42741890_OVF10.ova 
  3. 다음 변수를 설정합니다.

    • $gcImageFile은 2단계에서 추출된 .vmdk 파일의 파일 이름입니다.
    • $gcImageFolder는 .vmdk 파일의 폴더 경로입니다. 예:
    
    $gcImageFolder="C:\temp"
    $gcImageFile="euc-unified-access-gateway-22.12.0.0-42741890-system.vmdk"
    $gcBucket="uag-appliance-images"
    $gcImageName=$gcImageFile.Replace("-system.vmdk","").Replace(".", "-")
    gcloud auth login
    gcloud config set project "my-project"
    
    
  4. Google Cloud 스토리지 버킷을 생성합니다.

    참고: 다른 Google Cloud 프로젝트에서 호스팅되는 계산 이미지로 Unified Access Gateway를 배포할 수도 있습니다. 이 경우 Unified Access Gateway 배포 중에 계산 이미지 이름($gcImageName) 및 호스팅 프로젝트 ID를 지정합니다.

    동일한 프로젝트에서 스토리지 버킷을 생성하려면 이 명령을 실행합니다.

    gsutil mb -l us-east1 gs://$gcBucket
    

    다른 프로젝트에서 스토리지 버킷을 생성하려면 이 명령을 실행합니다.

    gsutil mb -l us-east1 gs://$gcBucket -p my-image-hosting-project
    
  5. 다음 명령을 사용하여 .vmdk 이미지를 Google Cloud 스토리지 버킷에 업로드합니다.

    gsutil cp $gcImageFolder\$gcImageFile gs://$gcBucket
    
  6. 업로드된 .vmdk에서 Compute Engine에 장치 이미지를 생성합니다.

    동일한 프로젝트에 이미지를 가져오려면 이 명령을 실행합니다.

    gcloud compute images import $gcImageName --source-file gs://$gcBucket/$gcImageFile --data-disk
    

    다른 프로젝트에 이미지를 가져오려면 이 명령을 실행합니다.

    gcloud compute images import $gcImageName --source-file gs://$gcBucket/$gcImageFile --data-disk --project my-image-hosting-project
    

    참고: 계산 이미지를 가져올 때 가져오기 도구에서 생성된 임시 VM에 사용할 서브넷을 지정할 수 있습니다. 다음 예제와 같이 플래그 --subnet을 사용합니다.

    gcloud compute images import $gcImageName --source-file gs://$gcBucket/$gcImageFile --data-disk --subnet default
    

    이러한 명령에 대한 자세한 내용은 Google Cloud SDK 설명서를 참조하십시오.

    이전 단계에서 언급한 예를 고려할 때 Compute Engine에 생성된 장치 이미지는 euc-unified-access-gateway-22-12-0-0-42741890입니다. 여기서 22-12는 버전 번호이고 42741890은 빌드 번호입니다.

4단계: Google Cloud Platform에 배포할 .ini 파일 준비

Unified Access Gateway에 대한 Compute Engine PowerShell 배포 스크립트는 .ini 구성 파일에서 모든 구성 설정을 읽습니다. 이 섹션에서는 .ini 파일 형식에 대해 설명하고 배포에 사용할 수 있는 설정의 예를 보여 줍니다.

.ini 파일의 섹션 대부분은 다른 모든 하이퍼바이저 배포에 대해 지원되는 Unified Access Gateway의 표준 .ini 설정과 동일합니다. .ini 파일에 대한 자세한 내용은 PowerShell을 사용하여 Unified Access Gateway 장치 배포 섹션을 참조하십시오.

  1. [일반] 섹션에서 필요한 설정을 구성합니다. PowerShell 배포 매개 변수를 참조하십시오.

    참고: Google Cloud Platform 배포의 경우 [일반] 섹션의 다음 설정이 사용되지 않습니다.

    • diskMode
    • ds
    • folder
    • netInternet
    • netManagementNetwork
    • netmask0, netmask1, netmask2
    • netBackendNetwork
    • source
    • target
    • ip0, defaultGateway, netmask0, ipmode0
    • v6ip0, v6ipprefix0, v6DefaultGateway
  2. .ini 파일에서 새 그룹 [GoogleCloud] 및 Google Cloud Platform과 관련된 필요한 설정을 추가합니다.

다음 표에는 Google Cloud Platform 배포에 필요한 설정(값 이름)이 나열되어 있습니다.

그룹값 이름설명필수/선택 사항
[GoogleCloud]projectIdprojectId=my-project새 Unified Access Gateway 인스턴스를 생성하는 데 사용되는 Google Cloud Platform 프로젝트 ID입니다. 프로젝트 ID가 제공되지 않으면 클라우드 SDK의 활성 구성을 사용한 프로젝트가 사용됩니다.선택 사항
imageNameimageName=euc-unified-access-gateway-22-12-0-0-42741890새 인스턴스를 생성해야 하는 Compute Engine의 가져온 장치 이미지의 이름입니다.필수
 imageProjectIdimageProjectId= (image-host-project)계산 이미지 imageName을 호스팅하는 프로젝트입니다. 지정하지 않으면 계산 이미지를 조회하는 데 기본 projectId가 사용됩니다.선택 사항
machineTypemachineType=e2-standard-4Compute Engine 시스템 유형을 나타냅니다. machineType의 기본값은 e2-standard-4입니다. 참고: 지정된 machineType이 필요한 Unified Access Gateway NIC 수에 적합한지 확인합니다. 예: e2-standard-2는 1개의 NIC 또는 2개의 NIC 배포를 지원하지만 3개의 NIC는 지원하지 않습니다. 자세한 내용은 Google Cloud 설명서에서 최대 네트워크 인터페이스 수를 참조하십시오.선택 사항
zonezone=us-central1-aUnified Access Gateway 인스턴스가 새로 생성되는 Compute Engine 영역입니다. zone 값이 제공되지 않으면 클라우드 SDK의 활성 구성을 사용하는 영역이 사용됩니다.선택 사항
  subnet0 subnet1 subnet2subnet0=custom-subnetUnified Access Gateway의 eth0, eth1 및 eth2 NIC를 생성해야 하는 서브넷입니다. 다음은 deploymentOption의 값과 사용된 해당 서브넷입니다.
  • deploymentOption을 onenic으로 설정하면 subnet0이 사용됩니다.
  • deploymentOption을 twonic으로 설정하면 subnet0 및 subnet1이 사용됩니다.
  • deploymentOption을 threenic으로 설정하면 subnet0, subnet1 및 subnet2가 사용됩니다.
서브넷 값이 제공되지 않으면 PowerShell 스크립트는 서브넷의 기본값을 사용합니다. 2개의 NIC 또는 3개의 NIC 배포에서 단일 서브넷만 기본값을 사용할 수 있습니다.
2개의 NIC 또는 3개의 NIC 배포에서 서브넷 값 중 하나만 선택 사항일 수 있습니다.
 vpcHostProjectIdvpcHostProjectId= (shared-vpc-host-project)Unified Access Gateway NIC가 공유 VPC에서 구성된 경우 호스트 프로젝트 역할을 하는 프로젝트입니다. 공유 VPC에서 지정된 서브넷을 구성하려면 sharedVpcForSubnet<n> 플래그를 true로 설정합니다. 여기서 n은 NIC 번호입니다.선택 사항
  sharedVpcForSubnet0 sharedVpcForSubnet1 sharedVpcForSubnet2
sharedVpcForSubnet0=true
sharedVpcForSubnet1=false
sharedVpcForSubnet2=false
vpcHostProjectId를 지정한 경우 이 플래그는 지정된 서브넷이 공유 VPC에서 생성되었는지 여부를 나타냅니다. vpcHostProjectId를 지정하지 않으면 이 필드는 무시됩니다. 기본값은 false입니다.선택 사항
privateIPAddress0 privateIPAddress1 privateIPAddress2privateIPAddress0=10.30.11.213NIC의 내부 IP 주소입니다. 이 설정은 Unified Access Gateway의 eth0, eth1 및 eth2를 Google Cloud의 VPC 네트워크에서 고정 내부 IP 주소로 연결하는 데 사용할 수 있습니다. privateIPAddress 값을 제공하지 않으면 Compute Engine은 해당 NIC를 동적 내부 IP 주소와 연결합니다. 예: 두 NIC 배포 고려
  • eth0은 정적 내부 IP 주소와 함께 연결됩니다.
  • eth1은 동적으로 연결된 내부 IP 주소를 수신합니다.
두 IP 주소는 인스턴스가 삭제될 때까지 Unified Access Gateway 인스턴스에 연결된 상태로 유지됩니다.
선택 사항
publicIPAddress0 publicIPAddress1 publicIPAddress2 publicIPAddress0=eipalloc-027afa45f34984c87 publicIPAddress1=no-addressNIC의 외부 IP 주소 이 설정은 Unified Access Gateway의 eth0, eth1 및 eth2를 Google Cloud의 VPC 네트워크에서 예약된 외부 IP 주소로 연결하는 데 사용할 수 있습니다. publicIPAddress 값을 제공하지 않으면 Compute Engine은 해당 NIC를 동적 외부 IP 주소와 연결합니다. NIC가 외부 IP 주소와 연결되지 않도록 하려면 no-address를 값으로 사용합니다. 이 예에서는 세 NIC 배포를 고려합니다.
  • eth0은 정적 외부 IP 주소와 함께 연결됩니다.
    정적 외부 IP 주소는 인스턴스가 삭제되거나 예약이 제거될 때까지 이 NIC에 연결된 상태로 유지됩니다.</li>
    
  • eth1은 외부 IP 주소에 연결되어 있지 않습니다.
  • eth2는 동적으로 연결된 외부 IP 주소를 수신합니다.
    외부 IP 주소는 인스턴스가 중지되거나 종료될 때 해제됩니다.</li>
    
선택 사항
labelslabels=label0=value0,label1=value1Unified Access Gateway 인스턴스와 연결된 레이블입니다. 기본적으로 name=$uagName 레이블은 PowerShell 스크립트에 의해 Unified Access Gateway 인스턴스와 연결됩니다.선택 사항
tagstags=tag0,tag1Unified Access Gateway 인스턴스와 연결된 태그입니다. 기본적으로 https-server 태그는 PowerShell 스크립트에 의해 Unified Access Gateway 인스턴스와 연결됩니다.선택 사항
 serviceAccountserviceAccount=51841023978-compute@prod.gserviceaccount.com서비스 계정은 Unified Access Gateway 인스턴스에 연결된 ID입니다. 서비스 계정의 액세스 토큰은 Unified Access Gateway 인스턴스 메타데이터 서버를 통해 액세스할 수 있으며 인스턴스에서 애플리케이션을 인증하는 데 사용됩니다. 필수 서비스 계정에 해당하는 이메일 주소를 사용하여 계정을 설정할 수 있습니다. 서비스 계정이 제공되지 않으면 Unified Access Gateway 인스턴스는 프로젝트의 기본 서비스 계정을 사용합니다.선택 사항

예 1: Google Cloud Platform에 Unified Access Gateway를 배포하기 위한 INI 파일 정의


[General]
name=uag1
deploymentOption=onenic
sshEnabled=true

[GoogleCloud]
projectId=my-project
imageName=euc-unified-access-gateway-22-12-0-0-42741890
zone=us-central1-a
subnet0=uag-front-network

[Horizon]
proxyDestinationUrl=https://myhorizon.example.com

예 2: Google Cloud Platform에 Unified Access Gateway를 배포하기 위한 INI 파일 정의


[General]
name=uag2
deploymentOption=twonic
sshEnabled=true
routes1=10.20.0.0/16 10.2.0.1

[GoogleCloud]
projectId=my-project
imageName=euc-unified-access-gateway-22-12-0-0-42741890
imageProjectId=my-image-hosting-project
zone=us-central1-a
vpcHostProjectId=my-sharedvpc-host-project
subnet0=uag-front-network
sharedVpcForSubnet0=true
subnet1=uag-back-network
sharedVpcForSubnet1=false

[Horizon]
proxyDestinationUrl=https://myhorizon.example.com

5단계: Compute Engine에 배포

uagdeploygce.ps1 PowerShell 명령을 사용하여 Unified Access Gateway를 Compute Engine에 배포할 수 있습니다. 이 명령은 .ini 파일의 모든 구성 설정을 가져오고 Unified Access Gateway 인스턴스를 배포합니다.

Compute Engine의 기존 인스턴스가 .ini 파일의 일반 섹션에 지정된 것과 동일한 이름을 갖는 경우 PowerShell 스크립트는 배포 중에 기존 인스턴스를 제거하고 동일한 이름으로 새 Unified Access Gateway 인스턴스를 생성합니다. 이렇게 바꾸면 Unified Access Gateway 장치를 업그레이드하거나 업데이트된 설정으로 장치를 다시 배포하는 데 도움이 됩니다.

  1. Omnissa Customer Connect에서 UAG(Unified Access Gateway) PowerShell 스크립트 파일로 이동한 후 지금 다운로드를 클릭합니다.
    zip 파일 uagdeploy-xx.xx.x.x-xxxxxxxx이(가) 로컬 시스템에 다운로드됩니다.

  2. zip 파일에서 파일의 압축을 풉니다. 시스템에 다음 PowerShell 스크립트가 있는지 확인합니다.
    Windows 시스템의 uagdeploygce.ps1uagdeploy.psm1.

  3. PowerShell 명령 창을 시작하고 디렉토리를 다운로드한 스크립트가 포함된 폴더로 변경합니다.

  4. Unified Access Gateway를 Compute Engine에 배포하려면 다음을 수행합니다.

    1. 최신 버전의 Unified Access Gateway로 업그레이드하는 경우 .ini 파일을 편집하여 imageName 설정을 이전 작업 중 하나에서 Compute Engine으로 업로드된 새 이미지 이름으로 업데이트합니다.

      .ini 파일의 다른 모든 구성 매개 변수는 동일하게 유지되어야 합니다.

    2. 대화형 모드를 선택하는지 또는 비대화형 모드를 선택했는지에 따라 다음 명령을 실행합니다.

      모드명령
      대화형
      .\uagdeploygce.ps1 <ini-filename>.ini
      <ini-filename>은 이전 작업에서 준비된 .ini 파일의 이름입니다. 예: .\uagdeploygce.ps1 uag1.ini uag1.ini는 이전 작업에 사용된 파일 이름입니다.
      비대화형.\uagdeploygce.ps1 <ini-filename> <root-pwd> <admin-pwd> <ceip-yes-no>

      .\uagdeploygce.ps1 <ini-filename> <secret> <admin-pwd> yes
      • <ini-filename>은 이전 작업에서 준비된 .ini 파일의 이름입니다.
      • 명령에 표시된 것처럼 명령줄에 암호를 지정한 경우 Unified Access Gateway를 배포한 후 Clear-History PowerShell 명령을 사용합니다.
      • 암호가 약한 경우 배포가 실패합니다. 암호는 ! @ # $ % * ( ) 문자 중 하나를 포함해야 합니다.

      uagdeploygce.ps1 명령을 다시 실행하면 이전 Unified Access Gateway 인스턴스와 연결된 리소스가 삭제되고 이름이 같은 새 인스턴스로 대체됩니다. 첫 번째 부팅 시 Unified Access Gateway 장치를 운영 환경에서 사용할 준비가 되도록 새 .ini 파일에 필요한 모든 구성 매개 변수가 있어야 합니다.

루트 사용자 및 관리자 암호 요구 사항에 대한 자세한 내용은 암호 요구 사항을 참조하십시오.

다음에 수행할 작업

Unified Access Gateway가 Compute Engine에 배포되고 모든 설정이 적용되면 Google Cloud에서 Unified Access Gateway 장치의 구성 설정을 적용하는 데 사용되는 메타데이터를 제거해야 합니다. 메타데이터를 제거하려면 예제와 같이 다음 명령을 사용합니다.


$uagName=uag1
$zone=us-central1-a
$projectId=my-project
gcloud compute instances remove-metadata $uagName --zone=$zone --project $projectId --keys "user-data"

이 페이지가 도움이 되었나요?

이 항목에 대한 피드백 보내기

이 항목이 도움이 되었나요?

개인정보나 기밀정보는 입력하지 마세요.

링크를 생성하는 중…