Per accedere alle tue workstation, puoi specificare un dominio personalizzato attendibile anziché utilizzare il dominio cloudworkstations.dev.
Architettura
Per utilizzare Cloud Workstations con un nome host personalizzato, configura un cluster privato e configura l'endpoint Private Service Connect (PSC) per l'ingresso HTTP per il tuo cluster privato. Devi anche creare un bilanciatore del carico delle applicazioni con un backend PSC che abbia come target l'endpoint PSC creato per il tuo cluster privato. Questo bilanciatore del carico delle applicazioni può essere esterno o interno e gestisce il certificato SSL per il tuo dominio personalizzato.
Il seguente diagramma illustra un cluster con un dominio personalizzato:
Prima di iniziare
Per configurare un dominio personalizzato di Cloud Workstations, segui questi passaggi:
Crea un cluster privato e specifica un dominio personalizzato attendibile utilizzando i comandi dell'interfaccia a riga di comando
gcloudo dell'API REST.Crea un bilanciatore del carico delle applicazioni con un backend Private Service Connect (PSC) nello stesso progetto che hai utilizzato per il progetto del cluster di workstation. Tieni presente quanto segue:
Se vuoi che le tue workstation siano private (non accessibili tramite internet pubblico), assicurati di creare un bilanciatore del carico interno. Per farlo, crea una zona DNS privata e aggiungi un record che mappa il dominio all'indirizzo IP interno utilizzato dal bilanciatore del carico. Per saperne di più su come creare un bilanciatore del carico interno, consulta Bilanciatori del carico delle applicazioni interni.
Il collegamento al servizio a cui devi fare riferimento nel bilanciatore del carico può essere ottenuto nella risorsa del cluster di workstation dopo aver creato il cluster.
Assicurati di ottenere un certificato e di specificarlo sul bilanciatore del carico come certificato con carattere jolly per il tuo dominio, ad esempio
*.us-west1-cluster1.example.com. Consulta Certificati e bilanciatori del carico Google Cloud per i tipi di certificati supportati per il bilanciatore del carico che hai selezionato.Puoi anche creare il bilanciatore del carico in un progetto diverso, purché lo aggiungi all'elenco
PrivateClusterConfig.allowedProjects.Se nella tua organizzazione sono presenti più cluster di workstation, puoi utilizzare un unico bilanciatore del carico con servizi di backend, certificati e regole di instradamento separati.
Configura un Domain Name System (DNS). Poiché si tratta di un dominio che gestisci, configura un DNS per questo dominio mappando tutti i sottodomini del dominio fornito al bilanciatore del carico. Ad esempio, crea una zona DNS per
us-west1-cluster1.example.come aggiungi una voce che mappa*.us-west1-cluster1.example.comall'indirizzo IP esterno utilizzato dal bilanciatore del carico.Per accedere alle workstation utilizzando il dominio personalizzato, utilizza il cluster che hai creato per creare una configurazione della workstation, quindi crea una workstation utilizzando la configurazione della workstation.
Avvia la workstation e controlla l'URL. Quando specifichi un dominio personalizzato, l'URL della workstation utilizza il seguente formato:
https://PORT-WORKSTATION_NAME.DOMAINLe seguenti parti dell'URL dipendono dalla configurazione:
PORT: il numero di porta, che per impostazione predefinita è80.WORKSTATION_NAME: il nome della tua workstation.DOMAIN: il nome di dominio specifico del cluster
Creare un cluster privato
Crea un cluster di workstation privato con un endpoint privato:
gcloud
Prima di iniziare, assicurati di aver inizializzato l'interfaccia a riga di comando
gcloudeseguendogcloud inite di aver specificato un progetto predefinito. Gli esempi seguenti presuppongono che tu abbia impostato il progetto predefinito.Per creare un cluster di workstation privato, esegui questo comando:
gcloud workstations clusters create WORKSTATION_CLUSTER \ --region=REGION \ --domain=DOMAIN \ --network=NETWORK \ --subnetwork=SUBNETWORK \ --enable-private-endpoint
Sostituisci quanto segue:
WORKSTATION_CLUSTER: il nome del cluster di workstation da creare.REGION: il nome della regione del cluster.DOMAIN: il nome di dominio utilizzato da Cloud Workstations per l'ingresso HTTP. Utilizza un sottodominio univoco per questo cluster, ad esempious-west1-cluster1.example.com.NETWORK: il nome della rete VPC. Se omessa, viene utilizzata la rete VPC predefinita.SUBNETWORK: il nome della subnet nella rete VPC. Se vengono omesse sia la rete sia la subnet, viene utilizzata la rete VPC predefinita e la subnet predefinita nellaREGIONspecificata.
Per saperne di più su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di 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
Sostituisci quanto segue:
DOMAIN: il nome di dominio utilizzato da Cloud Workstations per l'ingresso HTTP. Deve essere un sottodominio univoco per questo cluster, ad esempious-west1-cluster1.example.com.NETWORK: il nome della rete VPC. Se omessa, viene utilizzata la rete VPC predefinita.SUBNETWORK: il nome della subnet nella rete VPC. Se vengono omesse sia la rete che la subnet, viene utilizzata la rete VPC predefinita e la subnet predefinita nellaREGIONspecificata.PROJECT_NAME: il nome del progetto.REGION: il nome della regione del cluster.WORKSTATION_CLUSTER: il nome del cluster di workstation da creare.
Per saperne di più su questo metodo API, consulta la documentazione di riferimento di 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"
}
Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: il nome della regione del cluster.WORKSTATION_CLUSTER: il nome del cluster di workstation da creare.DOMAIN: il nome di dominio utilizzato da Cloud Workstations per l'ingresso HTTP. Deve essere un sottodominio univoco per questo cluster, ad esempious-west1-cluster1.example.com.NETWORK: il nome della rete VPC. Se omessa, viene utilizzata la rete VPC predefinita.SUBNETWORK: il nome della subnet nella rete VPC. Se vengono omesse sia la rete che la subnet, viene utilizzata la rete VPC predefinita e la subnet predefinita nellaREGIONspecificata.
Per saperne di più su questo metodo API, consulta la documentazione di riferimento di workstationClusters.create.
Crea un bilanciatore del carico delle applicazioni con backend PSC
Segui questi passaggi dell'interfaccia a riga di comando gcloud e dell'API REST per creare un bilanciatore del carico delle applicazioni con un backend PSC:
- Crea un NEG per connetterti a un servizio pubblicato
- Aggiungi un backend a un bilanciatore del carico delle applicazioni esterno globale
- Crea una mappa URL per instradare le richieste in entrata al servizio di backend
- Crea un proxy HTTPS di destinazione
- Crea un indirizzo globale
- Crea una regola di forwarding
- (Facoltativo) Configura un bilanciatore del carico delle applicazioni regionale o interno
Crea un NEG per connetterti a un servizio pubblicato
Quando crei un NEG che punta a un servizio pubblicato, devi avere l'URI del collegamento al servizio. Il collegamento al servizio ha il seguente formato:
projects/SERVICE_PROJECT/regions/REGION/serviceAttachments/SERVICE_NAME.
Puoi trovare l'URI nella risorsa del cluster di 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
Sostituisci quanto segue:
NEG_NAME: un nome per il gruppo di endpoint di rete.TARGET_SERVICE: l'URI del collegamento al servizio.REGION: la regione in cui creare il gruppo di endpoint di rete. La regione deve essere la stessa del servizio di destinazione.NETWORK: la rete VPC in cui creare il gruppo di endpoint di rete. Se omesso, viene utilizzata la rete predefinita.SUBNET: la subnet in cui creare il gruppo di endpoint di rete. La subnet deve trovarsi nella stessa regione del servizio di destinazione. Se fornisci la rete, devi fornire una subnet. Se vengono omesse sia la rete sia la subnet, vengono utilizzate la rete predefinita e la subnet predefinita nellaREGIONspecificata.
Per saperne di più su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di 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"
}
Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione in cui creare il gruppo di endpoint di rete. La regione deve essere la stessa del servizio di destinazione.TARGET_SERVICE: l'URI del collegamento al servizio.NEG_NAME: un nome per il gruppo di endpoint di rete.NETWORK: la rete VPC in cui creare il gruppo di endpoint di rete. Se omesso, viene utilizzata la rete predefinita.SUBNET: la subnet in cui creare il gruppo di endpoint di rete. La subnet deve trovarsi nella stessa regione del servizio di destinazione. Se fornisci la rete, devi fornire una subnet. Se vengono omesse sia la rete sia la subnet, vengono utilizzate la rete predefinita e la subnet predefinita nellaREGIONspecificata.
Aggiungi un backend a un bilanciatore del carico delle applicazioni esterno globale
gcloud
Crea un servizio di backend per il servizio di destinazione:
gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTPS \ --global
Sostituisci
BACKEND_SERVICE_NAMEcon il nome del servizio di backend.Aggiungi il NEG Private Service Connect che punta al servizio di destinazione.
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=NEG_NAME \ --network-endpoint-group-region=NEG_REGION \ --global
Sostituisci quanto segue:
BACKEND_SERVICE_NAME: il nome del servizio di backend.NEG_NAME: il nome del gruppo di endpoint di rete.NEG_REGION: la regione del gruppo di endpoint di rete.
Per ulteriori informazioni su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di gcloud compute backend-services create e gcloud compute backend-services add-backend.
REST
Crea un servizio di backend per il servizio di destinazione:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/backendServices { "protocol": "HTTPS", "loadBalancingScheme": "EXTERNAL_MANAGED", "name": "BACKEND_SERVICE_NAME" }Sostituisci
BACKEND_SERVICE_NAMEcon il nome del servizio di backend.Aggiungi il NEG Private Service Connect che punta al servizio di destinazione.
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 " } ] }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.BACKEND_SERVICE_NAME: il nome del servizio di backend.NEG_REGION: la regione del gruppo di endpoint di rete.NEG_NAME: il nome del gruppo di endpoint di rete.
Crea una mappa URL per instradare le richieste in entrata al servizio di backend
gcloud
gcloud compute url-maps create URL_MAP_NAME \ --default-service=BACKEND_SERVICE_NAME \ --global
Sostituisci quanto segue:
URL_MAP_NAME: il nome della mappa URL da creare.BACKEND_SERVICE_NAME: il nome del servizio di backend da utilizzare per le richieste quando questa mappa URL non ha mappature.
Per saperne di più su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di 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 "
}
Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.URL_MAP_NAME: il nome della mappa URL da creare.BACKEND_SERVICE_NAME: il nome del servizio di backend da utilizzare per le richieste quando questa mappa URL non ha mappature.
Crea un proxy HTTPS di destinazione
Crea un proxy HTTPS di destinazione per indirizzare le richieste alla mappa URL. Il proxy è la parte del bilanciatore del carico che contiene il certificato SSL per il bilanciamento del carico HTTPS, quindi devi caricare anche il tuo certificato in questo passaggio:
gcloud
gcloud compute target-https-proxies create TARGET_HTTPS_PROXY_NAME \ --ssl-certificates=SSL_CERTIFICATE_NAME \ --url-map=URL_MAP_NAME \ --global
Sostituisci quanto segue:
TARGET_HTTPS_PROXY_NAME: il nome del proxy HTTPS di destinazione da creare.SSL_CERTIFICATE_NAME: il certificato SSL associato al bilanciatore del carico.URL_MAP_NAME: la risorsa della mappa URL.
Per saperne di più su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di 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"
}
Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.SSL_CERTIFICATE_NAME: il certificato SSL associato al bilanciatore del carico.URL_MAP_NAME: la risorsa della mappa URL.TARGET_HTTPS_PROXY_NAME: il nome del proxy HTTPS di destinazione da creare.
Crea un indirizzo globale
Prenota un indirizzo IP statico che verrà utilizzato dal bilanciatore del carico:
gcloud
gcloud compute addresses create LB_IP_ADDRESS_NAME \ --global
Sostituisci quanto segue:
LB_IP_ADDRESS_NAME: il nome dell'indirizzo IP esterno o interno statico prenotato del bilanciatore del carico.
Per saperne di più su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di gcloud compute addresses create.
REST
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/global/addresses
{
"name": "LB_IP_ADDRESS_NAME"
}
Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.LB_IP_ADDRESS_NAME: il nome dell'indirizzo IP esterno o interno statico prenotato del bilanciatore del carico.
Creare una regola di forwarding
Crea una regola di forwarding per indirizzare le richieste in entrata al 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
Sostituisci quanto segue:
HTTPS_FORWARDING_RULE_NAME: il nome della regola di forwarding da creare.LB_IP_ADDRESS_NAME: il nome dell'indirizzo IP esterno o interno statico prenotato del bilanciatore del carico.TARGET_HTTPS_PROXY_NAME: il proxy HTTPS di destinazione che riceve il traffico.
Per saperne di più su questo comando dell'interfaccia a riga di comando gcloud, consulta la documentazione di riferimento di 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"
}
Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.LB_IP_ADDRESS_NAME: il nome dell'indirizzo IP esterno o interno statico prenotato del bilanciatore del carico.TARGET_HTTPS_PROXY_NAME: il proxy HTTPS di destinazione che riceve il traffico.HTTPS_FORWARDING_RULE_NAME: il nome della regola di forwarding da creare.
Configura un bilanciatore del carico delle applicazioni regionale o interno
Se stai configurando un bilanciatore del carico delle applicazioni esterno regionale (ad esempio per i requisiti di residenza dei dati) o un bilanciatore del carico delle applicazioni interno, tieni presente i seguenti requisiti. Prima di configurare le risorse del bilanciatore del carico regionale, assicurati di aver creato il NEG Private Service Connect che punta al cluster di workstation, come descritto in Crea un NEG per connetterti a un servizio pubblicato.
Configura una subnet solo proxy: i bilanciatori del carico basati su Envoy a livello di regione richiedono una subnet solo proxy nella regione e nella rete VPC in cui si trova il bilanciatore del carico. Devi creare la subnet solo proxy prima di creare la regola di forwarding:
gcloud
gcloud compute networks subnets create PROXY_ONLY_SUBNET \ --purpose=REGIONAL_MANAGED_PROXY \ --role=ACTIVE \ --region=REGION \ --network=NETWORK \ --range=PROXY_ONLY_RANGE
Sostituisci quanto segue:
PROXY_ONLY_SUBNET: un nome per la subnet solo proxy.REGION: la regione in cui si trovano il cluster di workstation e il bilanciatore del carico.NETWORK: la rete VPC in cui si trovano il cluster di workstation e il bilanciatore del carico.PROXY_ONLY_RANGE: un blocco CIDR non utilizzato all'interno della tua rete VPC, ad esempio10.0.0.0/24, con una dimensione minima di/26(64 indirizzi).
Per saperne di più, consulta Subnet solo proxy per i bilanciatori del carico basati su Envoy e la documentazione di riferimento di
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" }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione in cui si trovano il cluster di workstation e il bilanciatore del carico.PROXY_ONLY_SUBNET: un nome per la subnet solo proxy.NETWORK: la rete VPC in cui si trovano il cluster di workstation e il bilanciatore del carico.PROXY_ONLY_RANGE: un blocco CIDR non utilizzato all'interno della tua rete VPC, ad esempio10.0.0.0/24, con una dimensione minima di/26(64 indirizzi).
Crea risorse del bilanciatore del carico a livello di regione: crea il servizio di backend, aggiungi il backend NEG Private Service Connect, crea la mappa URL, crea il proxy HTTPS di destinazione e prenota un indirizzo IP statico nella stessa regione del cluster di workstation:
gcloud
Crea un servizio di backend regionale. Imposta
--load-balancing-schemesuEXTERNAL_MANAGEDper un bilanciatore del carico delle applicazioni esterno regionale o suINTERNAL_MANAGEDper un bilanciatore del carico delle applicazioni interno:gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=SCHEME \ --protocol=HTTPS \ --region=REGION
Sostituisci quanto segue:
BACKEND_SERVICE_NAME: un nome per il servizio di backend.SCHEME: lo schema di bilanciamento del carico (EXTERNAL_MANAGEDper un bilanciatore del carico delle applicazioni esterno regionale oINTERNAL_MANAGEDper un bilanciatore del carico delle applicazioni interno).REGION: la regione in cui si trovano il cluster di workstation e il bilanciatore del carico.
Aggiungi al servizio di backend il NEG Private Service Connect che punta al cluster di workstation:
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=NEG_NAME \ --network-endpoint-group-region=REGION \ --region=REGION
Sostituisci quanto segue:
BACKEND_SERVICE_NAME: il nome del servizio di backend.NEG_NAME: il nome del gruppo di endpoint di rete.REGION: la regione del gruppo di endpoint di rete e del servizio di backend.
Crea una mappa URL regionale per instradare le richieste in entrata al servizio di backend:
gcloud compute url-maps create URL_MAP_NAME \ --default-service=BACKEND_SERVICE_NAME \ --region=REGION
Sostituisci quanto segue:
URL_MAP_NAME: un nome per la mappa URL.BACKEND_SERVICE_NAME: il nome del servizio di backend.REGION: la regione della mappa URL.
Crea un proxy HTTPS di destinazione regionale:
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
Sostituisci quanto segue:
TARGET_HTTPS_PROXY_NAME: un nome per il proxy HTTPS di destinazione.SSL_CERTIFICATE_NAME: il certificato SSL a livello di regione associato al bilanciatore del carico.URL_MAP_NAME: il nome della mappa URL.REGION: la regione del proxy HTTPS di destinazione e della mappa URL.
Prenota un indirizzo IP statico per il bilanciatore del carico:
Per un bilanciatore del carico esterno regionale:
gcloud compute addresses create LB_IP_ADDRESS_NAME \ --region=REGION
Per un bilanciatore del carico interno:
gcloud compute addresses create LB_IP_ADDRESS_NAME \ --region=REGION \ --subnet=SUBNET
Sostituisci quanto segue:
LB_IP_ADDRESS_NAME: un nome per l'indirizzo IP statico prenotato.REGION: la regione dell'indirizzo IP.SUBNET: per i bilanciatori del carico interni, la subnet VPC in cui prenotare l'indirizzo IP interno.
REST
Crea un servizio di backend regionale:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/backendServices { "name": "BACKEND_SERVICE_NAME", "loadBalancingScheme": "SCHEME", "protocol": "HTTPS" }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione del servizio di backend.BACKEND_SERVICE_NAME: un nome per il servizio di backend.SCHEME: lo schema di bilanciamento del carico (EXTERNAL_MANAGEDper un bilanciatore del carico delle applicazioni esterno regionale oINTERNAL_MANAGEDper un bilanciatore del carico delle applicazioni interno).
Aggiungi al servizio di backend il NEG Private Service Connect che punta al cluster di workstation:
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" } ] }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione del servizio di backend e del NEG.BACKEND_SERVICE_NAME: il nome del servizio di backend.NEG_NAME: il nome del gruppo di endpoint di rete.
Crea una mappa URL regionale per instradare le richieste in entrata al servizio di 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" }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione della mappa URL.URL_MAP_NAME: un nome per la mappa URL.BACKEND_SERVICE_NAME: il nome del servizio di backend.
Crea un proxy HTTPS di destinazione regionale:
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" }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione del proxy HTTPS di destinazione.TARGET_HTTPS_PROXY_NAME: un nome per il proxy HTTPS di destinazione.SSL_CERTIFICATE_NAME: il certificato SSL a livello di regione.URL_MAP_NAME: la risorsa della mappa URL.
Prenota un indirizzo IP statico per il bilanciatore del carico:
Per un bilanciatore del carico esterno regionale:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_NAME/regions/REGION/addresses { "name": "LB_IP_ADDRESS_NAME" }Per un bilanciatore del carico interno:
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" }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione dell'indirizzo IP.LB_IP_ADDRESS_NAME: un nome per l'indirizzo IP statico prenotato.SUBNET: per i bilanciatori del carico interni, la subnet VPC in cui prenotare l'indirizzo IP interno.
Specifica la rete nella regola di forwarding: quando crei la regola di forwarding, specifica il flag
--network(e il flag--subnetper i bilanciatori del carico interni):gcloud
Per un bilanciatore del carico esterno regionale:
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
Per un bilanciatore del carico interno:
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
Sostituisci quanto segue:
HTTPS_FORWARDING_RULE_NAME: il nome della regola di forwarding da creare.NETWORK: la rete VPC in cui si trovano il bilanciatore del carico e il cluster di workstation.SUBNET: per i bilanciatori del carico interni, la subnet VPC in cui si trova l'indirizzo IP interno prenotato.LB_IP_ADDRESS_NAME: il nome dell'indirizzo IP esterno o interno statico prenotato del bilanciatore del carico.REGION: la regione della regola di forwarding e del proxy HTTPS di destinazione.TARGET_HTTPS_PROXY_NAME: il proxy HTTPS di destinazione che riceve il traffico.
REST
Per un bilanciatore del carico esterno regionale:
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" }Per un bilanciatore del carico interno:
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" }Sostituisci quanto segue:
PROJECT_NAME: il nome del progetto.REGION: la regione della regola di forwarding e del proxy HTTPS di destinazione.NETWORK: la rete VPC in cui si trovano il bilanciatore del carico e il cluster di workstation.LB_IP_ADDRESS_NAME: il nome dell'indirizzo IP esterno o interno statico prenotato del bilanciatore del carico.TARGET_HTTPS_PROXY_NAME: il proxy HTTPS di destinazione che riceve il traffico.HTTPS_FORWARDING_RULE_NAME: il nome della regola di forwarding da creare.SUBNET: per i bilanciatori del carico interni, la subnet VPC in cui si trova l'indirizzo IP interno prenotato.
Configura il DNS
Configura il DNS e aggiungi un record che mappa *.DOMAIN, ad esempio *.example.com, all'indirizzo IP prenotato nel passaggio precedente:
Bilanciatore del carico delle applicazioni esterno: aggiungi un record DNS che mappa
*.DOMAINall'indirizzo IP esterno statico riservato nella tua zona DNS pubblica. Se utilizzi Cloud DNS per gestire il DNS del tuo dominio, consulta Aggiungi un record DNS.Bilanciatore del carico delle applicazioni interno: aggiungi un record DNS che mappa
*.DOMAINall'indirizzo IP interno statico riservato in una zona DNS privata autorizzata per la tua rete VPC. Se utilizzi Cloud DNS, consulta Crea una zona privata e Aggiungi un record DNS.
Crea la configurazione della workstation e la workstation
Per accedere alle workstation utilizzando il dominio personalizzato:
Utilizza il cluster con il dominio personalizzato per creare una configurazione della workstation.
Crea una workstation utilizzando la configurazione della workstation con il dominio personalizzato.
Passaggi successivi
Per ulteriori informazioni sulla configurazione di domini personalizzati e cluster privati, consulta quanto segue:
- Tutorial: configura un dominio utilizzando Cloud DNS
- Configura i Controlli di servizio VPC e i cluster privati