Menyiapkan domain kustom untuk Cloud Workstations

Untuk mengakses workstation, Anda dapat menentukan domain kustom tepercaya, bukan menggunakan domain cloudworkstations.dev.

Arsitektur

Untuk menggunakan Cloud Workstations dengan nama host kustom, siapkan cluster pribadi dan siapkan endpoint Private Service Connect (PSC) untuk traffic masuk HTTP bagi cluster pribadi Anda. Anda juga harus membuat Load Balancer Aplikasi dengan backend PSC yang menargetkan endpoint PSC yang dibuat untuk cluster pribadi Anda. Load Balancer Aplikasi ini dapat bersifat eksternal atau internal, dan mengelola sertifikat SSL untuk domain kustom Anda.

Diagram berikut mengilustrasikan cluster dengan domain kustom:

Gambar 1. Cluster dengan domain kustom

Sebelum memulai

Untuk menyiapkan domain kustom Cloud Workstations, ikuti langkah-langkah berikut:

  1. Buat cluster pribadi dan tentukan domain kustom tepercaya menggunakan perintah CLI atau REST API gcloud.

  2. Buat Load Balancer Aplikasi dengan backend Private Service Connect (PSC) dalam project yang sama dengan yang Anda gunakan untuk project cluster workstation. Perhatikan hal berikut:

    1. Jika Anda ingin workstation Anda bersifat pribadi (tidak dapat diakses melalui internet publik), pastikan Anda membuat load balancer internal. Untuk melakukannya, buat zona DNS pribadi dan tambahkan data yang memetakan domain ke alamat IP internal yang digunakan oleh load balancer. Untuk mengetahui informasi selengkapnya tentang cara membuat load balancer internal, lihat Load Balancer Aplikasi Internal.

    2. Lampiran layanan yang perlu Anda referensikan di load balancer dapat diperoleh di resource cluster workstation setelah Anda membuat cluster.

    3. Pastikan Anda mendapatkan sertifikat dan menentukannya di load balancer sebagai sertifikat karakter pengganti untuk domain Anda—misalnya, *.us-west1-cluster1.example.com. Lihat Sertifikat dan Google Cloud load balancer untuk mengetahui jenis sertifikat yang didukung untuk load balancer yang Anda pilih.

    4. Anda juga dapat membuat load balancer di project lain asalkan Anda menambahkannya ke daftar PrivateClusterConfig.allowedProjects.

    5. Jika memiliki beberapa cluster workstation di organisasi, Anda dapat menggunakan satu load balancer dengan layanan backend, sertifikat, dan aturan perutean yang terpisah.

  3. Siapkan Domain Name System (DNS). Karena ini adalah domain yang Anda kelola, siapkan DNS untuk domain ini dengan memetakan semua subdomain dari domain yang disediakan ke load balancer. Misalnya, buat zona DNS untuk us-west1-cluster1.example.com dan tambahkan entri yang memetakan *.us-west1-cluster1.example.com ke alamat IP eksternal yang digunakan oleh load balancer Anda.

  4. Untuk mengakses workstation menggunakan domain kustom, gunakan cluster yang Anda buat untuk membuat konfigurasi workstation, lalu buat workstation menggunakan konfigurasi workstation tersebut.

  5. Mulai workstation Anda dan periksa URL-nya. Saat Anda menentukan domain kustom, URL workstation menggunakan format berikut:

    https://PORT-WORKSTATION_NAME.DOMAIN
    

    Bagian URL berikut bergantung pada konfigurasi Anda:

    • PORT: nomor port, yang secara default adalah port 80.
    • WORKSTATION_NAME: nama workstation Anda.
    • DOMAIN: nama domain khusus cluster Anda

Membuat cluster pribadi

Buat cluster workstation pribadi dengan endpoint pribadi:

gcloud

  1. Sebelum memulai, pastikan Anda telah melakukan inisialisasi gcloud CLI dengan menjalankan gcloud init dan telah menentukan project default. Contoh berikut mengasumsikan bahwa Anda telah menetapkan project default.

  2. Untuk membuat cluster workstation pribadi, jalankan perintah berikut:

    gcloud workstations clusters create WORKSTATION_CLUSTER \
      --region=REGION \
      --domain=DOMAIN \
      --network=NETWORK \
      --subnetwork=SUBNETWORK \
      --enable-private-endpoint
    

    Ganti kode berikut:

    • WORKSTATION_CLUSTER: nama cluster workstation yang akan dibuat.
    • REGION: nama region cluster.
    • DOMAIN: nama domain yang digunakan oleh Cloud Workstations untuk traffic masuk HTTP. Gunakan subdomain yang unik untuk cluster ini, misalnya, us-west1-cluster1.example.com.
    • NETWORK: nama jaringan VPC. Jika dihilangkan, jaringan VPC default akan digunakan.
    • SUBNETWORK: nama subnetwork di jaringan VPC. Jika jaringan dan subnetwork dihilangkan, jaringan VPC default akan digunakan, dan subnetwork default di REGION yang ditentukan akan digunakan.

Untuk mengetahui informasi selengkapnya tentang perintah CLI gcloud ini, lihat dokumentasi referensi gcloud workstations clusters create.

curl

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json"  -d '{"domain_config": {"domain": "DOMAIN"}, "private_cluster_config": {"enable_private_endpoint":true}, "network": "NETWORK", "subnetwork": "SUBNETWORK"}'  https://workstations.googleapis.com/v1/projects/PROJECT_NAME/locations/REGION/workstationClusters?workstation_cluster_id=WORKSTATION_CLUSTER

Ganti kode berikut:

  • DOMAIN: nama domain yang digunakan oleh Cloud Workstations untuk traffic masuk HTTP. Subdomain ini harus unik untuk cluster ini, misalnya, us-west1-cluster1.example.com.
  • NETWORK: Nama jaringan VPC. Jika dihilangkan, jaringan VPC default akan digunakan.
  • SUBNETWORK: nama subnetwork di jaringan VPC. Jika jaringan dan subnetwork dihilangkan, jaringan VPC default akan digunakan, dan subnetwork default di REGION yang ditentukan akan digunakan.
  • PROJECT_NAME: nama project.
  • REGION: nama region cluster.
  • WORKSTATION_CLUSTER: nama cluster workstation yang akan dibuat.

Untuk mengetahui informasi selengkapnya tentang metode API ini, lihat dokumentasi referensi workstationClusters.create.

REST

POST https://workstations.googleapis.com/v1/projects/PROJECT_NAME/locations/REGION/workstationClusters?workstationClusterId=WORKSTATION_CLUSTER
{
  "domainConfig": {
    "domain": "DOMAIN"
  },
  "privateClusterConfig": {
    "enablePrivateEndpoint": true
  },
  "network": "NETWORK",
  "subnetwork": "SUBNETWORK"
}

Ganti kode berikut:

  • PROJECT_NAME: nama project.
  • REGION: nama region cluster.
  • WORKSTATION_CLUSTER: nama cluster workstation yang akan dibuat.
  • DOMAIN: nama domain yang digunakan oleh Cloud Workstations untuk ingress HTTP. Subdomain ini harus unik untuk cluster ini, misalnya, us-west1-cluster1.example.com.
  • NETWORK: Nama jaringan VPC. Jika dihilangkan, jaringan VPC default akan digunakan.
  • SUBNETWORK: nama subnetwork di jaringan VPC. Jika jaringan dan subnetwork dihilangkan, jaringan VPC default akan digunakan, dan subnetwork default di REGION yang ditentukan akan digunakan.

Untuk mengetahui informasi selengkapnya tentang metode API ini, lihat dokumentasi referensi workstationClusters.create.

Membuat Load Balancer Aplikasi dengan backend PSC

Ikuti langkah-langkah gcloud CLI dan REST API berikut untuk membuat Load Balancer Aplikasi dengan backend PSC:

  1. Membuat NEG untuk terhubung ke layanan yang dipublikasikan
  2. Menambahkan backend ke Load Balancer Aplikasi eksternal global
  3. Membuat peta URL untuk mengarahkan permintaan masuk ke layanan backend
  4. Membuat proxy HTTPS target
  5. Membuat alamat global
  6. Membuat aturan penerusan
  7. Opsional: Mengonfigurasi Load Balancer Aplikasi regional atau internal

Membuat NEG untuk terhubung ke layanan yang dipublikasikan

Saat membuat NEG yang mengarah ke layanan yang dipublikasikan, Anda memerlukan URI lampiran layanan untuk layanan tersebut. Lampiran layanan memiliki format berikut: projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME. Anda dapat menemukan URI di resource cluster workstation.

gcloud

gcloud compute network-endpoint-groups create NEG_NAME \
  --network-endpoint-type=private-service-connect \
  --psc-target-service=TARGET_SERVICE \
  --region=REGION \
  --network=NETWORK \
  --subnet=SUBNET

Ganti kode berikut:

  • NEG_NAME: nama untuk grup endpoint jaringan.
  • TARGET_SERVICE: URI lampiran layanan.
  • REGION: region tempat membuat grup endpoint jaringan. Region harus sama dengan region layanan target.
  • NETWORK: jaringan VPC untuk membuat grup endpoint jaringan. Jika dihilangkan, jaringan default akan digunakan.
  • SUBNET: subnet untuk membuat grup endpoint jaringan. Subnet harus berada di region yang sama dengan layanan target. Subnet harus disediakan jika Anda menyediakan jaringan. Jika jaringan dan subnet dihilangkan, jaringan default akan digunakan, dan subnet default di REGION yang ditentukan akan digunakan.

Untuk mengetahui informasi selengkapnya tentang perintah CLI gcloud ini, lihat dokumentasi referensi gcloud compute network-endpoint-groups create.

REST

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/networkEndpointGroups
{
  "pscTargetService": "TARGET_SERVICE",
  "networkEndpointType": "PRIVATE_SERVICE_CONNECT",
  "name": "NEG_NAME",
  "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/networks/NETWORK",
  "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET"
}

Ganti kode berikut:

  • PROJECT_NAME: nama project.
  • REGION: region tempat membuat grup endpoint jaringan. Region harus sama dengan region layanan target.
  • TARGET_SERVICE: URI lampiran layanan.
  • NEG_NAME: nama untuk grup endpoint jaringan.
  • NETWORK: jaringan VPC untuk membuat grup endpoint jaringan. Jika dihilangkan, jaringan default akan digunakan.
  • SUBNET: subnet untuk membuat grup endpoint jaringan. Subnet harus berada di region yang sama dengan layanan target. Subnet harus disediakan jika Anda menyediakan jaringan. Jika jaringan dan subnet dihilangkan, jaringan default akan digunakan, dan subnet default di REGION yang ditentukan akan digunakan.

Menambahkan backend ke Load Balancer Aplikasi eksternal global

gcloud

  1. Buat layanan backend untuk layanan target:

    gcloud compute backend-services create BACKEND_SERVICE_NAME \
    --load-balancing-scheme=EXTERNAL_MANAGED \
    --protocol=HTTPS \
    --global
    

    Ganti BACKEND_SERVICE_NAME dengan nama layanan backend.

  2. Tambahkan NEG Private Service Connect yang mengarah ke layanan target.

    gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
    --network-endpoint-group=NEG_NAME \
    --network-endpoint-group-region=NEG_REGION \
    --global
    

    Ganti kode berikut:

    • BACKEND_SERVICE_NAME: nama layanan backend.
    • NEG_NAME: nama grup endpoint jaringan.
    • NEG_REGION: region grup endpoint jaringan.

Untuk mengetahui informasi selengkapnya tentang perintah gcloud CLI ini, lihat dokumentasi referensi gcloud compute backend-services create dan gcloud compute backend-services add-backend.

REST

  1. Buat layanan backend untuk layanan target:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/backendServices
    {
      "protocol": "HTTPS",
      "loadBalancingScheme": "EXTERNAL_MANAGED",
      "name": "BACKEND_SERVICE_NAME"
    }
    

    Ganti BACKEND_SERVICE_NAME dengan nama layanan backend.

  2. Tambahkan NEG Private Service Connect yang mengarah ke layanan target.

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/backendServices/BACKEND_SERVICE_NAME
    {
      "backends": [
        {
          "group": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/NEG_REGION/networkEndpointGroups/NEG_NAME "
        }
      ]
    }
    

    Ganti kode berikut:

    • PROJECT_NAME: nama project.
    • BACKEND_SERVICE_NAME: nama layanan backend.
    • NEG_REGION: region grup endpoint jaringan.
    • NEG_NAME: nama grup endpoint jaringan.

Membuat peta URL untuk mengarahkan permintaan masuk ke layanan backend

gcloud

gcloud compute url-maps create URL_MAP_NAME \
  --default-service=BACKEND_SERVICE_NAME \
  --global

Ganti kode berikut:

  • URL_MAP_NAME: nama peta URL yang akan dibuat.
  • BACKEND_SERVICE_NAME: nama layanan backend yang akan digunakan untuk permintaan saat peta URL ini tidak memiliki pemetaan.

Untuk mengetahui informasi selengkapnya tentang perintah CLI gcloud ini, lihat dokumentasi referensi gcloud compute url-maps create.

REST

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/urlMaps
{
  "name": "URL_MAP_NAME",
  "defaultService": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/backendServices/BACKEND_SERVICE_NAME "
}

Ganti kode berikut:

  • PROJECT_NAME: nama project.
  • URL_MAP_NAME: nama peta URL yang akan dibuat.
  • BACKEND_SERVICE_NAME: nama layanan backend yang akan digunakan untuk permintaan saat peta URL ini tidak memiliki pemetaan.

Membuat proxy HTTPS target

Buat proxy HTTPS target untuk mengarahkan permintaan ke peta URL. Proxy ini merupakan bagian dari load balancer yang menampung sertifikat SSL untuk Load Balancing HTTPS, sehingga Anda juga memuat sertifikat pada langkah ini:

gcloud

gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
  --ssl-certificates=SSL_CERTIFICATE_NAME \
  --url-map=URL_MAP_NAME \
  --global

Ganti kode berikut:

  • TARGET_HTTPS_PROXY_NAME: nama proxy HTTPS target yang akan dibuat.
  • SSL_CERTIFICATE_NAME: sertifikat SSL yang terkait dengan load balancer.
  • URL_MAP_NAME: resource peta URL.

Untuk mengetahui informasi selengkapnya tentang perintah CLI gcloud ini, lihat dokumentasi referensi gcloud compute target-https-proxies create.

REST

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/targetHttpsProxies
{
  "sslCertificates": [
    "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/sslCertificates/SSL_CERTIFICATE_NAME"
  ],
  "urlMap": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/urlMaps/URL_MAP_NAME",
  "name": "TARGET_HTTPS_PROXY_NAME"
}

Ganti kode berikut:

  • PROJECT_NAME: nama project.
  • SSL_CERTIFICATE_NAME: sertifikat SSL yang terkait dengan load balancer.
  • URL_MAP_NAME: resource peta URL.
  • TARGET_HTTPS_PROXY_NAME: nama proxy HTTPS target yang akan dibuat.

Membuat alamat global

Cadangkan alamat IP statis yang akan digunakan oleh load balancer Anda:

gcloud

gcloud compute addresses create LB_IP_ADDRESS_NAME \
  --global

Ganti kode berikut:

  • LB_IP_ADDRESS_NAME: nama untuk alamat IP eksternal atau internal statis yang dicadangkan dari load balancer.

Untuk mengetahui informasi selengkapnya tentang perintah CLI gcloud ini, lihat dokumentasi referensi gcloud compute addresses create.

REST

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/addresses
{
  "name": "LB_IP_ADDRESS_NAME"
}

Ganti kode berikut:

  • PROJECT_NAME: nama project.
  • LB_IP_ADDRESS_NAME: nama untuk alamat IP eksternal atau internal statis yang dicadangkan dari load balancer.

Membuat aturan penerusan

Buat aturan penerusan untuk mengarahkan permintaan masuk ke proxy:

gcloud

gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
  --load-balancing-scheme=EXTERNAL_MANAGED \
  --network-tier=PREMIUM \
  --address=LB_IP_ADDRESS_NAME  \
  --target-https-proxy=TARGET_HTTPS_PROXY_NAME  \
  --global \
  --ports=443

Ganti kode berikut:

  • HTTPS_FORWARDING_RULE_NAME: nama aturan penerusan yang akan dibuat.
  • LB_IP_ADDRESS_NAME: nama untuk alamat IP eksternal atau internal statis yang dicadangkan dari load balancer.
  • TARGET_HTTPS_PROXY_NAME: proxy HTTPS target yang menerima traffic.

Untuk mengetahui informasi selengkapnya tentang perintah CLI gcloud ini, lihat dokumentasi referensi gcloud compute forwarding-rules create.

REST

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/forwardingRules
{
  "loadBalancingScheme": "EXTERNAL_MANAGED",
  "networkTier": "PREMIUM",
  "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/addresses/LB_IP_ADDRESS_NAME",
  "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/targetHttpsProxies/TARGET_HTTPS_PROXY_NAME",
  "name": "HTTPS_FORWARDING_RULE_NAME",
  "portRange": "443-443"
}

Ganti kode berikut:

  • PROJECT_NAME: nama project.
  • LB_IP_ADDRESS_NAME: nama untuk alamat IP eksternal atau internal statis yang dicadangkan dari load balancer.
  • TARGET_HTTPS_PROXY_NAME: proxy HTTPS target yang menerima traffic.
  • HTTPS_FORWARDING_RULE_NAME: nama aturan penerusan yang akan dibuat.

Mengonfigurasi Load Balancer Aplikasi regional atau internal

Jika Anda mengonfigurasi Load Balancer Aplikasi eksternal regional (misalnya, untuk persyaratan residensi data) atau Load Balancer Aplikasi internal, perhatikan persyaratan berikut. Sebelum mengonfigurasi resource load balancer regional, pastikan Anda telah membuat NEG Private Service Connect yang mengarah ke cluster workstation Anda seperti yang dijelaskan dalam Membuat NEG untuk terhubung ke layanan yang dipublikasikan.

  1. Mengonfigurasi subnet khusus proxy: Load balancer berbasis Envoy regional memerlukan subnet khusus proxy di region dan jaringan VPC tempat load balancer berada. Anda harus membuat subnet khusus proxy sebelum membuat aturan penerusan:

    gcloud

    gcloud compute networks subnets create PROXY_ONLY_SUBNET \
      --purpose=REGIONAL_MANAGED_PROXY \
      --role=ACTIVE \
      --region=REGION \
      --network=NETWORK \
      --range=PROXY_ONLY_RANGE
    

    Ganti kode berikut:

    • PROXY_ONLY_SUBNET: nama untuk subnet khusus proxy.
    • REGION: region tempat cluster workstation dan load balancer berada.
    • NETWORK: jaringan VPC tempat cluster workstation dan load balancer berada.
    • PROXY_ONLY_RANGE: blok CIDR yang tidak digunakan dalam jaringan VPC Anda, seperti 10.0.0.0/24, dengan ukuran minimum /26 (64 alamat).

    Untuk mengetahui informasi selengkapnya, lihat Subnet khusus proxy untuk load balancer berbasis Envoy dan dokumentasi referensi gcloud compute networks subnets create.

    REST

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/subnetworks
    {
      "name": "PROXY_ONLY_SUBNET",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/networks/NETWORK",
      "ipCidrRange": "PROXY_ONLY_RANGE",
      "purpose": "REGIONAL_MANAGED_PROXY",
      "role": "ACTIVE"
    }
    

    Ganti kode berikut:

    • PROJECT_NAME: nama project.
    • REGION: region tempat cluster workstation dan load balancer berada.
    • PROXY_ONLY_SUBNET: nama untuk subnet khusus proxy.
    • NETWORK: jaringan VPC tempat cluster workstation dan load balancer berada.
    • PROXY_ONLY_RANGE: blok CIDR yang tidak digunakan dalam jaringan VPC Anda, seperti 10.0.0.0/24, dengan ukuran minimum /26 (64 alamat).
  2. Buat resource load balancer regional: Buat layanan backend, tambahkan backend NEG Private Service Connect, buat peta URL, buat proxy HTTPS target, dan cadangkan alamat IP statis di region yang sama dengan cluster workstation Anda:

    gcloud

    1. Buat layanan backend regional. Tetapkan --load-balancing-scheme ke EXTERNAL_MANAGED untuk Load Balancer Aplikasi eksternal regional atau INTERNAL_MANAGED untuk Load Balancer Aplikasi internal:

      gcloud compute backend-services create BACKEND_SERVICE_NAME \
        --load-balancing-scheme=SCHEME \
        --protocol=HTTPS \
        --region=REGION
      

      Ganti kode berikut:

      • BACKEND_SERVICE_NAME: nama untuk layanan backend.
      • SCHEME: skema load balancing (EXTERNAL_MANAGED untuk Load Balancer Aplikasi eksternal regional atau INTERNAL_MANAGED untuk Load Balancer Aplikasi internal).
      • REGION: region tempat cluster workstation dan load balancer berada.
    2. Tambahkan NEG Private Service Connect yang mengarah ke cluster workstation Anda ke layanan backend:

      gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
        --network-endpoint-group=NEG_NAME \
        --network-endpoint-group-region=REGION \
        --region=REGION
      

      Ganti kode berikut:

      • BACKEND_SERVICE_NAME: nama layanan backend.
      • NEG_NAME: nama grup endpoint jaringan.
      • REGION: region grup endpoint jaringan dan layanan backend.
    3. Buat peta URL regional untuk mengarahkan permintaan masuk ke layanan backend:

      gcloud compute url-maps create URL_MAP_NAME \
        --default-service=BACKEND_SERVICE_NAME \
        --region=REGION
      

      Ganti kode berikut:

      • URL_MAP_NAME: nama untuk peta URL.
      • BACKEND_SERVICE_NAME: nama layanan backend.
      • REGION: region peta URL.
    4. Buat proxy HTTPS target regional:

      gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \
        --ssl-certificates=SSL_CERTIFICATE_NAME \
        --url-map=URL_MAP_NAME \
        --url-map-region=REGION \
        --region=REGION
      

      Ganti kode berikut:

      • TARGET_HTTPS_PROXY_NAME: nama untuk proxy HTTPS target.
      • SSL_CERTIFICATE_NAME: sertifikat SSL regional yang terkait dengan load balancer.
      • URL_MAP_NAME: nama peta URL.
      • REGION: region proxy HTTPS target dan peta URL.
    5. Cadangkan alamat IP statis untuk load balancer:

      Untuk load balancer eksternal regional:

      gcloud compute addresses create LB_IP_ADDRESS_NAME \
        --region=REGION
      

      Untuk load balancer internal:

      gcloud compute addresses create LB_IP_ADDRESS_NAME \
        --region=REGION \
        --subnet=SUBNET
      

      Ganti kode berikut:

      • LB_IP_ADDRESS_NAME: nama untuk alamat IP statis yang dicadangkan.
      • REGION: region resource alamat IP.
      • SUBNET: untuk load balancer internal, subnet VPC tempat alamat IP internal akan dicadangkan.

    REST

    1. Buat layanan backend regional:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/backendServices
      {
        "name": "BACKEND_SERVICE_NAME",
        "loadBalancingScheme": "SCHEME",
        "protocol": "HTTPS"
      }
      

      Ganti kode berikut:

      • PROJECT_NAME: nama project.
      • REGION: region layanan backend.
      • BACKEND_SERVICE_NAME: nama untuk layanan backend.
      • SCHEME: skema load balancing (EXTERNAL_MANAGED untuk Load Balancer Aplikasi eksternal regional atau INTERNAL_MANAGED untuk Load Balancer Aplikasi internal).
    2. Tambahkan NEG Private Service Connect yang mengarah ke cluster workstation Anda ke layanan backend:

      PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/backendServices/BACKEND_SERVICE_NAME
      {
        "backends": [
          {
            "group": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/networkEndpointGroups/NEG_NAME"
          }
        ]
      }
      

      Ganti kode berikut:

      • PROJECT_NAME: nama project.
      • REGION: region layanan backend dan NEG.
      • BACKEND_SERVICE_NAME: nama layanan backend.
      • NEG_NAME: nama grup endpoint jaringan.
    3. Buat peta URL regional untuk mengarahkan permintaan masuk ke layanan backend:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/urlMaps
      {
        "name": "URL_MAP_NAME",
        "defaultService": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/backendServices/BACKEND_SERVICE_NAME"
      }
      

      Ganti kode berikut:

      • PROJECT_NAME: nama project.
      • REGION: region peta URL.
      • URL_MAP_NAME: nama untuk peta URL.
      • BACKEND_SERVICE_NAME: nama layanan backend.
    4. Buat proxy HTTPS target regional:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/targetHttpsProxies
      {
        "name": "TARGET_HTTPS_PROXY_NAME",
        "sslCertificates": [
          "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/sslCertificates/SSL_CERTIFICATE_NAME"
        ],
        "urlMap": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/urlMaps/URL_MAP_NAME"
      }
      

      Ganti kode berikut:

      • PROJECT_NAME: nama project.
      • REGION: region proxy HTTPS target.
      • TARGET_HTTPS_PROXY_NAME: nama untuk proxy HTTPS target.
      • SSL_CERTIFICATE_NAME: sertifikat SSL regional.
      • URL_MAP_NAME: resource peta URL.
    5. Cadangkan alamat IP statis untuk load balancer:

      Untuk load balancer eksternal regional:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/addresses
      {
        "name": "LB_IP_ADDRESS_NAME"
      }
      

      Untuk load balancer internal:

      POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/addresses
      {
        "name": "LB_IP_ADDRESS_NAME",
        "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET",
        "addressType": "INTERNAL"
      }
      

      Ganti kode berikut:

      • PROJECT_NAME: nama project.
      • REGION: region resource alamat IP.
      • LB_IP_ADDRESS_NAME: nama untuk alamat IP statis yang dicadangkan.
      • SUBNET: untuk load balancer internal, subnet VPC tempat alamat IP internal akan dicadangkan.
  3. Tentukan jaringan pada aturan penerusan: Saat membuat aturan penerusan, tentukan flag --network (dan flag --subnet untuk load balancer internal):

    gcloud

    Untuk load balancer eksternal regional:

    gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
      --load-balancing-scheme=EXTERNAL_MANAGED \
      --network-tier=PREMIUM \
      --network=NETWORK \
      --address=LB_IP_ADDRESS_NAME \
      --ports=443 \
      --region=REGION \
      --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
      --target-https-proxy-region=REGION
    

    Untuk load balancer internal:

    gcloud compute forwarding-rules create HTTPS_FORWARDING_RULE_NAME \
      --load-balancing-scheme=INTERNAL_MANAGED \
      --network=NETWORK \
      --subnet=SUBNET \
      --address=LB_IP_ADDRESS_NAME \
      --ports=443 \
      --region=REGION \
      --target-https-proxy=TARGET_HTTPS_PROXY_NAME \
      --target-https-proxy-region=REGION
    

    Ganti kode berikut:

    • HTTPS_FORWARDING_RULE_NAME: nama aturan penerusan yang akan dibuat.
    • NETWORK: jaringan VPC tempat load balancer dan cluster workstation berada.
    • SUBNET: untuk load balancer internal, subnet VPC tempat alamat IP internal yang dicadangkan berada.
    • LB_IP_ADDRESS_NAME: nama untuk alamat IP eksternal atau internal statis yang dicadangkan dari load balancer.
    • REGION: region aturan penerusan dan proxy HTTPS target.
    • TARGET_HTTPS_PROXY_NAME: proxy HTTPS target yang menerima traffic.

    REST

    Untuk load balancer eksternal regional:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/forwardingRules
    {
      "loadBalancingScheme": "EXTERNAL_MANAGED",
      "networkTier": "PREMIUM",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/networks/NETWORK",
      "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/addresses/LB_IP_ADDRESS_NAME",
      "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/targetHttpsProxies/TARGET_HTTPS_PROXY_NAME",
      "name": "HTTPS_FORWARDING_RULE_NAME",
      "portRange": "443-443"
    }
    

    Untuk load balancer internal:

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/forwardingRules
    {
      "loadBalancingScheme": "INTERNAL_MANAGED",
      "network": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/networks/NETWORK",
      "subnetwork": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET",
      "IPAddress": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/addresses/LB_IP_ADDRESS_NAME",
      "target": "https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/targetHttpsProxies/TARGET_HTTPS_PROXY_NAME",
      "name": "HTTPS_FORWARDING_RULE_NAME",
      "portRange": "443-443"
    }
    

    Ganti kode berikut:

    • PROJECT_NAME: nama project.
    • REGION: region aturan penerusan dan proxy HTTPS target.
    • NETWORK: jaringan VPC tempat load balancer dan cluster workstation berada.
    • LB_IP_ADDRESS_NAME: nama untuk alamat IP eksternal atau internal statis yang dicadangkan dari load balancer.
    • TARGET_HTTPS_PROXY_NAME: proxy HTTPS target yang menerima traffic.
    • HTTPS_FORWARDING_RULE_NAME: nama aturan penerusan yang akan dibuat.
    • SUBNET: untuk load balancer internal, subnet VPC tempat alamat IP internal yang dicadangkan berada.

Mengonfigurasi DNS

Konfigurasikan DNS dan tambahkan data yang memetakan *.DOMAIN—misalnya, *.example.com—ke alamat IP yang dicadangkan di langkah sebelumnya:

  • Load Balancer Aplikasi Eksternal: Tambahkan pemetaan data DNS *.DOMAIN ke alamat IP eksternal statis yang dicadangkan di zona DNS publik Anda. Jika Anda menggunakan Cloud DNS untuk mengelola DNS bagi domain Anda, lihat Menambahkan data DNS.

  • Load Balancer Aplikasi Internal: Tambahkan pemetaan data DNS *.DOMAIN ke alamat IP internal statis yang dicadangkan di zona DNS pribadi yang diizinkan untuk jaringan VPC Anda. Jika Anda menggunakan Cloud DNS, lihat Membuat zona pribadi dan Menambahkan data DNS.

Membuat konfigurasi workstation dan workstation Anda

Untuk mengakses workstation menggunakan domain kustom, lakukan hal berikut:

  1. Gunakan cluster dengan domain kustom untuk membuat konfigurasi workstation.

  2. Buat workstation menggunakan konfigurasi workstation dengan domain kustom.

Langkah berikutnya

Untuk mengetahui informasi selengkapnya tentang cara menyiapkan domain kustom dan cluster pribadi, lihat berikut ini: