esegui il deployment della configurazione di Endpoints

Dopo aver configurato il file .proto e la configurazione dell'API gRPC file, esegui il deployment in modo che Cloud Endpoints contiene le informazioni necessarie per gestire l'API. A eseguire il deployment della configurazione di Endpoints, utilizza gcloud endpoints services deploy . Questo comando utilizza Service Infrastructure, il programma di base, usata da Endpoints e altri e servizi per creare e gestire API e servizi. Questa pagina descrive come eseguire il deployment dei file di configurazione in Endpoints.

Prerequisiti

Per iniziare, questa pagina presuppone che tu abbia:

Preparazione di Google Cloud CLI per il deployment

Puoi usare lo strumento a riga di comando gcloud per il deployment della configurazione. Per ulteriori informazioni sui comandi, consulta la documentazione di riferimento di gcloud.

Per prepararti al deployment:

  1. Installa e inizializza gcloud CLI.
  2. Aggiorna gcloud CLI:
    gcloud components update
  3. Assicurati che l'interfaccia a riga di comando gcloud sia autorizzata ad accedere ai tuoi dati e ai tuoi servizi:
    gcloud auth login

    Si apre una nuova scheda del browser e ti viene chiesto di scegliere un account.

  4. Imposta il progetto predefinito. Sostituisci [YOUR-PROJECT-ID] con l'ID del tuo progetto Google Cloud
    gcloud config set project [YOUR-PROJECT-ID]
  5. Se esegui il deployment del backend dell'API su Kubernetes o Kubernetes Engine, esegui il seguente comando per acquisire nuove credenziali utente da utilizzare per le credenziali predefinite dell'applicazione. Le credenziali utente sono necessarie per autorizzare kubectl.
    gcloud auth application-default login
    Si apre una nuova scheda del browser e ti viene chiesto di scegliere un account.

Eseguire il deployment dei file di configurazione

  1. Assicurati di trovarti nella directory in cui si trovano i file api_descriptor.pb e api_config.yaml.
  2. Conferma che il progetto predefinito a riga di comando gcloud attualmente in uso è il progetto Google Cloud che vuoi eseguire il deployment della configurazione di Endpoints. Convalida l'ID progetto restituito dal seguente comando per assicurarti che il servizio non venga creato nel progetto sbagliato.
    gcloud config list project
    

    Se devi modificare il progetto predefinito, esegui questo comando:

    gcloud config set project YOUR_PROJECT_ID
    
  3. Esegui il deployment del file proto descriptor e del file di configurazione utilizzando l'interfaccia a riga di comando Google Cloud:
    gcloud endpoints services deploy api_descriptor.pb api_config.yaml
    

    Durante la creazione e la configurazione del servizio, Service Management genera le informazioni al terminale. Al termine del deployment, verrà visualizzato un messaggio simile a viene visualizzato quanto segue:

    Service Configuration [CONFIG_ID] uploaded for service [bookstore.endpoints.example-project.cloud.goog]

    CONFIG_ID è la configurazione univoca del servizio Endpoints ID creato dal deployment. Ad esempio:

    Service Configuration [2017-02-13r0] uploaded for service [bookstore.endpoints.example-project.cloud.goog]
    

    Nell'esempio precedente, 2017-02-13r0 è l'ID configurazione del servizio e bookstore.endpoints.example-project.cloud.goog è il nome del servizio. L'ID configurazione del servizio è costituito da una data seguita da un numero di revisione. Se esegui il deployment della configurazione di Endpoints sempre nello stesso giorno, il numero di revisione viene incrementato o l'ID configurazione.

Se la configurazione del servizio si trova in più file YAML, puoi passarli tutti al comando deploy. Ad esempio, la libreria ha la sua configurazione di base in api_config.yaml, ma puoi attivare la transcodifica HTTP per il servizio anche tramite il deployment di api_config_http.yaml, che ha una configurazione aggiuntiva per questa funzionalità:

gcloud endpoints services deploy api_descriptor.pb api_config.yaml api_config_http.yaml

Tieni presente che se i file YAML contengono valori in conflitto, i valori nell'ultimo file specificato sostituiscono gli altri. Puoi scoprire di più su come Endpoints gestisce l'unione di più file YAML in Configurazione di un servizio gRPC.

Se viene visualizzato un messaggio di errore, consulta Risoluzione dei problemi relativi agli endpoint configurazione del deployment informazioni sulla risoluzione dell'errore.

Nuovo deployment in corso...

Ogni volta che modifichi qualcosa nel file YAML di .proto o di configurazione del servizio, esegui nuovamente il deployment dei file in modo che il proxy di servizio Extensible (ESP) abbia la versione più recente della configurazione del servizio dell'API. Se in precedenza hai eseguito il deployment dell'ESP con l'opzione rollout impostata su managed, non è necessario riavviare o eseguire nuovamente il deployment dell'ESP. L'rollout=managed opzione configura ESP in modo da utilizzare la configurazione del servizio di cui è stato eseguito il deployment più recente. Quando specificare questa opzione, fino a 5 minuti dopo il deployment di un nuovo servizio configurazione, ESP rileva la modifica e inizia automaticamente a utilizzarla. Ti consigliamo di specificare questa opzione anziché un ID configurazione specifico da utilizzare per ESP.

Dopo il primo dispiegamento della configurazione di Endpoints, puoi assegnare a un utente, a un account di servizio o a un gruppo un ruolo che consenta di eseguire nuovamente il dispiegamento della configurazione di Endpoints. Per ulteriori informazioni, consulta la sezione Concedere e revocare l'accesso all'API.

Passaggi successivi