Guida rapida

Questo argomento mostra come creare un carico di lavoro su cluster Anthos su AWS (GKE su AWS) ed esporlo internamente al tuo cluster.

Prima di iniziare

Prima di iniziare a utilizzare i cluster Anthos su AWS, assicurati di aver eseguito le seguenti attività:

  • Installa un servizio di gestione.
  • Crea un cluster utente.
  • Dalla directory anthos-aws, utilizza anthos-gke per cambiare il contesto del cluster utente.
    cd anthos-aws
    env HTTPS_PROXY=http://localhost:8118 \
      anthos-gke aws clusters get-credentials CLUSTER_NAME
    Sostituisci CLUSTER_NAME con il nome del tuo cluster utente.

Puoi eseguire questi passaggi con kubectl o con la console di Google Cloud se hai Autenticato con Connect. Se utilizzi la console Google Cloud, vai direttamente ad Avviare un deployment NGINX.

Per connetterti ai cluster Anthos sulle risorse AWS, esegui i passaggi seguenti. Seleziona se hai già un VPC AWS (o connessione diretta al VPC) o hai creato un VPC dedicato quando crei il servizio di gestione.

VPC esistente

Se hai una connessione diretta o VPN a un VPC esistente, ometti la riga env HTTP_PROXY=http://localhost:8118 dai comandi in questo argomento.

VPC dedicato

Quando crei un servizio di gestione in un VPC dedicato, i cluster Anthos su AWS includono un host bastion in una subnet pubblica.

Per collegarti al tuo servizio di gestione, segui questi passaggi:

  1. Passa alla directory con i cluster Anthos su configurazione AWS. Hai creato questa directory durante l'installazione del servizio di gestione.

    cd anthos-aws

  2. Per aprire il tunnel, esegui lo script bastion-tunnel.sh. Il tunnel inoltra a localhost:8118.

    Per aprire un tunnel al bastion host, esegui il comando seguente:

    ./bastion-tunnel.sh -N
    

    In questa finestra vengono visualizzati i messaggi del tunnel SSH. Quando è tutto pronto per chiudere la connessione, interrompi il processo utilizzando Ctrl+C o chiudendo la finestra.

  3. Apri un nuovo terminale e modificalo nella directory anthos-aws.

    cd anthos-aws
  4. Verifica di poterti connettere al cluster con kubectl.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl cluster-info
    

    L'output include l'URL del server API del servizio di gestione.

Avvia un deployment NGINX

In questa sezione, creerai un deployment del server web NGINX denominato nginx-1.

kubectl

  1. Usa kubectl create per creare il deployment.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl create deployment --image nginx nginx-1
    
  2. Utilizza kubectl per ottenere lo stato del deployment. Osserva la NAME del pod.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl get deployment
    

console

Per avviare un deployment NGINX con Google Cloud Console, esegui questi passaggi:

  1. Visita il menu Carichi di lavoro GKE in Google Cloud Console.

    Vai al menu Carichi di lavoro

  2. Fai clic su Esegui il deployment.

  3. In Modifica container, seleziona Immagine container esistente per scegliere un'immagine container disponibile in Container Registry. Inserisci il percorso dell'immagine con l'immagine container che vuoi utilizzare e la relativa versione. Per questa guida rapida, utilizza nginx:latest.

  4. Fai clic su Fine e poi su Continua. Viene visualizzata la schermata Configurazione.

  5. Puoi modificare il Nome applicazione e il Spazio dei nomi Kubernetes. Per questa guida rapida, puoi utilizzare il nome dell'applicazione nginx-1 e lo spazio dei nomi default

  6. Dal menu a discesa Cluster, seleziona il cluster utente. Per impostazione predefinita, il tuo primo cluster utente è denominato cluster-0.

  7. Fai clic su Esegui il deployment. I cluster Anthos su AWS avviano il deployment di NGINX. Viene visualizzata la schermata Dettagli deployment.

Esposizione dei pod

In questa sezione viene spiegato come eseguire una delle seguenti operazioni:

  • Esponi il deployment internamente nel cluster e verifica che sia disponibile con kubectl port-forward.

  • Esporre il deployment da Google Cloud Console agli indirizzi consentiti dal gruppo di sicurezza del pool di nodi.

kubectl

  1. Esporre la porta 80 del deployment al cluster con kubectl expose.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl expose deployment nginx-1 --port=80
    

    Il deployment è ora accessibile dall'interno del cluster.

  2. Inoltra la porta 80 sul deployment alla porta 8080 sulla tua macchina locale con kubectl port-forward.

    env HTTPS_PROXY=http://localhost:8118 \
    kubectl port-forward deployment/nginx-1 8080:80
    
  3. Esegui il collegamento a http://localhost:8080 con curl o con il browser web. Viene visualizzata la pagina web NGINX predefinita.

    curl http://localhost:8080
    

console

  1. Vai al menu Carichi di lavoro GKE in Google Cloud Console.

    Vai al menu Carichi di lavoro

  2. Nella schermata Dettagli deployment, fai clic su Esponi. Viene visualizzata la schermata Esponi un deployment.

  3. Nella sezione Mappatura delle porte, lascia la porta predefinita (80) e fai clic su Fine.

  4. In Tipo di servizio, seleziona Bilanciatore del carico. Per ulteriori informazioni su altre opzioni, consulta la sezione Servizi di pubblicazione (ServiceTypes) nella documentazione di Kubernetes.

  5. Fai clic su Esponi. Viene visualizzata la schermata Dettagli del servizio. I cluster Anthos su AWS creano un bilanciatore del carico elastico classico per il servizio.

  6. Fai clic sul link Endpoint esterni. Se il bilanciatore del carico è pronto, viene visualizzata la pagina web NGINX predefinita.

Visualizza il tuo deployment su Google Cloud Console

Se il cluster è connesso a Google Cloud Console, puoi visualizzare il tuo deployment nella pagina dei carichi di lavoro GKE. Per visualizzare il carico di lavoro, procedi come segue:

  1. Nel browser, visita la pagina dei carichi di lavoro di Google Kubernetes Engine.

    Visita la pagina Carichi di lavoro di Google Kubernetes Engine

    Viene visualizzato l'elenco dei carichi di lavoro.

  2. Fai clic sul nome del tuo carico di lavoro nginx-1. Viene visualizzata la schermata Dettagli deployment.

  3. Da questa schermata puoi ottenere dettagli sul tuo deployment, visualizzare e modificare la configurazione YAML ed eseguire altre azioni Kubernetes.

Per ulteriori informazioni sulle opzioni disponibili in questa pagina, vedi Deployment di un'applicazione stateless nella documentazione di GKE.

Esegui la pulizia

Per eliminare il deployment NGINX, utilizza kubectl delete o la console Google Cloud.

kubectl

env HTTPS_PROXY=http://localhost:8118 \
kubectl delete service nginx-1 &&\
kubectl delete deployment nginx-1

console

  1. Visita il menu Pagina Servizi e Ingress su Google Cloud Console.

    Visita la pagina Servizi e Ingress

  2. Trova il servizio NGINX e fai clic sul relativo Nome. Per impostazione predefinita, il nome è nginx-1-service. Viene visualizzata la schermata Dettagli del servizio.

  3. Fai clic su Elimina e conferma di voler eliminare il Servizio. I cluster Anthos su AWS elimina il bilanciatore del carico.

  4. Visita la pagina dei carichi di lavoro di Google Kubernetes Engine.

    Visita la pagina Carichi di lavoro di Google Kubernetes Engine

    Viene visualizzato l'elenco dei carichi di lavoro.

  5. Fai clic sul nome del tuo carico di lavoro nginx-1. Viene visualizzata la schermata Dettagli deployment.

  6. Fai clic su Elimina e conferma che vuoi eliminare il deployment. Il cluster Anthos su AWS elimina il deployment.

Passaggi successivi

Crea un bilanciatore del carico interno o esterno usando uno dei seguenti servizi:

Puoi utilizzare altri tipi di carichi di lavoro Kubernetes con i cluster Anthos su AWS. Consulta la documentazione di GKE per saperne di più sul deployment dei carichi di lavoro.