Deployment di un proxy API

Questa pagina si applica ad Apigee e Apigee hybrid.

Visualizza la documentazione di Apigee Edge.

Non puoi invocare un proxy API finché non è stato disegnato. Dopo aver creato un nuovo proxy API o apportato una modifica a uno esistente, puoi eseguirlo nel tuo cluster.

Quando crei una nuova revisione di un proxy API senza modificarne il percorso di base, e poi esegui il deployment in un ambiente in cui è già stato eseguito il deployment, la revisione precedente viene annullata e al suo posto viene eseguita la nuova revisione.

Esegui il deployment di un proxy API

Esegui il deployment di una revisione del proxy API come descritto nelle sezioni seguenti.

Nuovo editor proxy

Per eseguire il deployment di un proxy API nell'interfaccia utente di Apigee:

  1. Se utilizzi l'interfaccia utente di Apigee nella console Cloud: seleziona Sviluppo proxy > Proxy API.

    Se utilizzi la UI di Apigee classica: seleziona Sviluppa > Proxy API e nel riquadro Proxy, seleziona l'ambiente per il proxy.

  2. Fai clic sul proxy API di cui vuoi eseguire il deployment. La UI mostra la pagina Panoramica:

    Dettagli del proxy API, tra cui lo stato di implementazione per ambiente, i dettagli dell'endpoint proxy e i dettagli dell'endpoint di destinazione.

  3. Per eseguire il deployment delle modifiche, fai prima clic su Esegui il deployment per visualizzare la finestra di dialogo Esegui il deployment:

    Endpoint di destinazione selezionati in Proxy Explorer.

  4. Inserisci quanto segue:
    • Revisione: il numero di revisione del proxy che vuoi implementare.
    • Ambiente: l'ambiente in cui vuoi eseguire il deployment del proxy.
    • (Facoltativo) Account di servizio: un account di servizio per il proxy.
  5. Fai clic su Esegui il deployment.

L'interfaccia utente avvia il processo di implementazione della revisione selezionata.

Quando il proxy viene disegnato, la colonna Stato nella sezione Deployment mostra un'icona verde per indicare che è stata implementata la revisione 1 del proxy.

Icona di stato del proxy di cui è stato eseguito il deployment

Editor proxy classico

Per eseguire il deployment di un proxy API nell'interfaccia utente di Apigee:

  1. Accedi all'interfaccia utente di Apigee.
  2. Seleziona Sviluppa > Proxy API.

    L'interfaccia utente mostra un elenco di proxy API e il relativo stato di implementazione:

    Viene visualizzato un elenco di proxy API che include
      il nome, lo stato, il traffico nelle ultime 24 ore, l'autore e l'ora dell'ultima modifica.

  3. Nell'elenco a discesa Ambiente, seleziona l'ambiente in cui vuoi eseguire il deployment del proxy API.
  4. Fai clic sul proxy API di cui vuoi eseguire il deployment.

    L'interfaccia utente mostra la scheda Panoramica dei proxy API. Questa visualizzazione include le sezioni Deployment, Endpoint proxy ed Endpoint di destinazione:

    Dettagli del proxy API, tra cui lo stato di implementazione per ambiente, i dettagli dell'endpoint proxy e i dettagli dell'endpoint di destinazione.

    Se si tratta di un nuovo proxy API che non hai mai disegnato (o di un proxy API che hai disdisegnato), la colonna Revisione mostra Non disegnato.

  5. Nella colonna Revisione, espandi il selettore del menu a discesa.

    Se si tratta di un nuovo proxy API che non è mai stato di cui non è mai stato eseguito il deployment, nell'elenco a discesa vengono visualizzati solo 1 e Esegui il rollback:

    Esegui il deployment della prima revisione del proxy.

    Per i proxy API con più revisioni, l'elenco a discesa mostra tutte le revisioni tra cui scegliere, nonché Esegui il ritiro.

    Sezione Deployment dei dettagli del proxy API con 
      il menu a discesa selezionato per l'ambiente di test.

  6. Seleziona la revisione di cui vuoi eseguire il deployment dall'elenco a discesa.

    L'interfaccia utente ti chiede di confermare il deployment:

    Sezione Deployment dei dettagli del proxy API
      con la revisione 3 selezionata per l'ambiente di produzione.

  7. Fai clic su Esegui il deployment.

    L'interfaccia utente avvia il processo di implementazione della revisione selezionata.

    Posiziona il cursore sul link Dettagli nella colonna Stato per visualizzare lo stato del deployment. Se sono già state implementate una o più revisioni, puoi monitorarne lo stato di annullamento dell'implementazione, come mostrato nella figura seguente. Per ulteriori informazioni, consulta la sezione Deployment senza tempi di riposo.

    Conferma del deployment di my-new-proxy nell'ambiente di test

    Al termine del deployment, i dettagli dello stato indicano che la revisione è stata completamente implementata:

    Stato del deployment che mostra la revisione 18 implementata al 75% e la revisione 17 al 25%

    Tieni presente che il deployment non è un processo istantaneo. Il modello di deployment coerente in un secondo momento di Apigee prevede che un nuovo deployment venga implementato nel cluster in un breve periodo di tempo e non immediatamente. Per ulteriori informazioni, consulta Informazioni sul deployment.

    Per informazioni sul significato degli indicatori di stato e su come controllarli, consulta Visualizzare lo stato di implementazione.

    Stato di deployment che mostra l'implementazione completa della revisione 18

In alternativa, puoi eseguire il deployment della revisione corrente che stai modificando nella scheda Sviluppa. In questo modo, Apigee crea una nuova revisione per te.

  1. Fai clic sull'elenco a discesa Esegui il deployment in: env_name

    Menu a discesa di Deployment che consente di eseguire il deployment o il dis-deployment della revisione corrente in ogni ambiente

    L'interfaccia utente mostra un elenco di ambienti. Nella colonna Revisione, l'interfaccia utente elenca la revisione attualmente implementata (o "‑‑" se non è presente alcuna revisione).

  2. Fai clic su Esegui il deployment revision per eseguire il deployment della revisione modificata più di recente.

    L'interfaccia utente ti chiede di confermare il deployment.

  3. Fai clic su Esegui il deployment.

    L'interfaccia utente avvia il processo di implementazione della revisione selezionata.

API Apigee

Le sezioni seguenti forniscono esempi di utilizzo dell'API Apigee per eseguire il deployment delle revisioni del proxy API ed elencare i deployment per la tua organizzazione.

Consulta anche Visualizzare lo stato del deployment.

Crea un report sulle modifiche di deployment prima del deployment

Il deployment di un proxy in più di un ambiente nello stesso gruppo di ambienti potrebbe comportare un comportamento non definito. Per determinare se questo accade, puoi generare un report utilizzando il metodo generateDeployChangeReport come segue:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/apis/$API/deployments:generateDeployChangeReport" \
-X POST \
-H "Authorization: Bearer $TOKEN"

Viene restituito un report sulle modifiche di deployment che ti avvisa se un percorso base nel proxy che vuoi implementare non riceverà traffico a causa di un deployment esistente che utilizza già quel percorso base.

Deployment di una revisione di un proxy API utilizzando l'API

Per eseguire il deployment di una revisione del proxy API, utilizza la seguente chiamata API:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/environments/$ENV/apis/$API/revisions/$REV/deployments" \
  -X POST \
  -H "Authorization: Bearer $TOKEN"

dove $TOKEN è impostato sul tuo token di accesso OAuth 2.0, come descritto in Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl utilizzate in questo esempio, consulta Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste dell'API Apigee.

Di seguito è riportato un esempio dell'output della risposta. In questo esempio, la revisione 1 del proxy API helloworld è stata eseguita correttamente nell'ambiente test:

{
  "environment": "test",
  "apiProxy": "helloworld",
  "revision": "1",
  "deployStartTime": "1559149080457"
}

Per saperne di più, consulta Eseguire il deployment dell'API di revisione del proxy API.

Elenco dei deployment utilizzando l'API

Per elencare tutti i deployment di proxy API e flussi condivisi per la tua organizzazione, inserisci la seguente chiamata API:

curl "https://apigee.googleapis.com/v1/organizations/$ORG/deployments" \
  -X GET \
  -H "Authorization: Bearer $TOKEN"

dove $TOKEN è impostato sul tuo token di accesso OAuth 2.0, come descritto in Ottenere un token di accesso OAuth 2.0. Per informazioni sulle opzioni curl utilizzate in questo esempio, consulta Utilizzare curl. Per una descrizione delle variabili di ambiente utilizzate, consulta Impostazione delle variabili di ambiente per le richieste dell'API Apigee.

Di seguito è riportato un esempio di risposta. In questo esempio, è stato eseguito il deployment di tre proxy API, tra cui helloworld di cui è stato eseguito il deployment nella sezione precedente.

{
  "deployments": [
    {
      "environment": "test",
      "apiProxy": "helloworld",
      "revision": "1",
      "deployStartTime": "1559149080457"
    },
    {
      "environment": "test",
      "apiProxy": "weather",
      "revision": "1",
      "deployStartTime": "1558620435217"
    },
    {
      "environment": "test",
      "apiProxy": "testproxy",
      "revision": "2",
      "deployStartTime": "1558635113086"
    }
  ]
}

gcloud

Le sezioni seguenti forniscono esempi di utilizzo dei comandi CLI di gcloud apigee per eseguire il deployment delle revisioni dei proxy API e elencare i deployment per la tua organizzazione.

Consulta anche Visualizzare lo stato del deployment.

Per ulteriori informazioni e una descrizione delle variabili di ambiente utilizzate negli esempi, consulta la sezione Guida introduttiva all'utilizzo di gcloud con Apigee.

Deployment di una revisione del proxy API utilizzando gcloud CLI

Per eseguire il deployment di una revisione del proxy API, utilizza il seguente comando gcloud:

gcloud apigee apis deploy $REV --api=$API --environment=$ENV

Di seguito è riportato un esempio dell'output della risposta. In questo esempio, la revisione 1 del proxy API helloworld è stata eseguita correttamente nell'ambiente test:

Using Apigee organization 'my-org'
apiProxy: helloworld
deployStartTime: '1598032332802'
environment: test
revision: '1'

Per saperne di più, consulta Eseguire il deployment della revisione del proxy API con l'interfaccia a riga di comando.

Elenco dei deployment utilizzando gcloud CLI

Per elencare tutti i deployment di proxy API e flussi condivisi per la tua organizzazione, utilizza il seguente comando gcloud:

gcloud apigee deployments list

Di seguito è riportato un esempio di risposta. In questo esempio, è stato eseguito il deployment di tre proxy API, tra cui helloworld di cui è stato eseguito il deployment nella sezione precedente.

Using Apigee organization `my-org`
 - apiProxy: helloworld
   deployStartTime: 1598032332802
   environment: test
   revision: 1
 - apiProxy: weather
   deployStartTime: 1558620435217
   environment: test
   revision: 1
 - apiProxy: testproxy
   deployStartTime: 1558635113086
   environment: test
   revision: 2

Per ulteriori informazioni, consulta List deployments CLI.

Risoluzione dei problemi

Se non riesci a eseguire il deployment del proxy API, controlla se potrebbe essere applicabile uno dei seguenti scenari comuni.

Restrizioni di denominazione per i gruppi di ambienti

Se il nome del gruppo di ambienti non è conforme alle limitazioni di denominazione, il proxy non verrà disegnato. In alcuni casi, è possibile creare un gruppo di ambienti e aggiungervi ambienti senza dover soddisfare queste limitazioni. Tuttavia, questo impedirà il deployment del proxy.

Consulta la sezione Creare gruppi di ambienti per una descrizione delle linee guida e delle limitazioni per i nomi.

Ambiente creato con un nome già utilizzato

Se crei un ambiente con lo stesso nome di un ambiente eliminato in precedenza, il proxy non verrà disegnato. Ad esempio, se hai creato un ambiente denominato prod-1 dopo aver creato ed eliminato un ambiente prod-1, dovrai rimuoverlo. Per risolvere il problema, puoi procedere nel seguente modo:

  1. Scollega l'ambiente prod-1 dal gruppo di ambienti utilizzando l' API.
  2. Elimina l'ambiente prod-1 utilizzando l'API.
  3. Crea un nuovo ambiente. Ad esempio, prod-2.
  4. Collega il nuovo ambiente prod-2 al gruppo di ambienti utilizzando l' API.