Passaggio 3: configura il cluster di utenti GKE on-prem

Specificare le sostituzioni di configurazione

L'installatore di Apigee Hybrid utilizza i valori predefiniti per molte impostazioni. Tuttavia, alcune impostazioni non hanno valori predefiniti. Devi fornire i valori per queste impostazioni, come spiegato di seguito.

  1. Assicurati di essere nella directory hybrid-base-directory/hybrid-files.
  2. Copia il file overrides-small.yaml dalla directory $APIGEECTL_HOME/examples alla directory overrides:
    cp $APIGEECTL_HOME/examples/overrides-small.yaml ./overrides/overrides.yaml

    Questo file di esempio fornisce una configurazione di base per un'installazione del runtime ibrida con un ingombro ridotto, una configurazione adatta per la prima installazione.

  3. cd nella directory overrides:
  4. cd overrides
  5. Apri overrides.yaml e aggiungi i valori delle proprietà richiesti, come mostrato di seguito. Di seguito è riportata anche una descrizione dettagliata di ogni proprietà:

    Sintassi

    Il file overrides.yaml ha la seguente struttura e sintassi. I valori in red, bold italics sono valori delle proprietà che devi fornire. Sono descritti anche nella tabella seguente.

    gcp:
      region: gcp-region
      projectID: gcp-project-id
    
    k8sCluster:
      name: cluster-name
      region: cluster-region
    
    org: org-name
    
    virtualhosts:
      - name: virtual-host-name
        hostAliases:
          - "host-alias-1"
          - "host-alias-2"
          - "host-alias-n"
        sslCertPath: ./certs/test-cert-name.pem
        sslKeyPath: ./certs/test-key-name.key
        routingRules:
          - paths:
            - /path1
            - /path2
            - /pathn
            env: environment-name
    
    envs:
      - name: environment-name          # The same name of the env you created in the UI
        serviceAccountPaths:
          synchronizer: ./service-accounts/synchronizer-service-account-name.json
          udca: ./service-accounts/udca-service-account-name.json
    
    mart:
      hostAlias: mart-host-alias
      serviceAccountPath: ./service-accounts/mart-service-account-name.json
      sslCertPath: ./certs/mart-cert-name.pem
      sslKeyPath: ./certs/mart-key-name.key
    
    cassandra:
      hostNetwork: true
      dnsPolicy: ClusterFirstWithHostNet
    
    ingress:
      runtime:
        loadBalancerIP: virtual_IP_runtime
      mart:
        loadBalancerIP: virtual_IP_mart
    
    
    metrics:
      serviceAccountPath: ./service-accounts/metrics-service-account-name.json
    
    logger:
      enabled: false

    Esempio

    L'esempio seguente mostra un file delle sostituzioni completato con valori di proprietà di esempio aggiunti:

    gcp:
      region: us-central1
      projectID: my-gcp-project
    
    k8sCluster:
      name: apigee-hybrid
      region: us-central1
    
    org: hybrid-org
    
    virtualhosts:
      - name: default
        hostAliases:
          - "*.acme.com"
        sslCertPath: ./certs/keystore.pem
        sslKeyPath: ./certs/keystore.key
        routingRules:
          - paths:
            - /foo
            - /bar
            env: test
    
    envs:
      - name: test
        serviceAccountPaths:
          synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
          udca: ./service-accounts/hybrid-project-apigee-udca.json
    
    mart:
      hostAlias: "mart.apigee-hybrid-docs.net"
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-mart.json
      sslCertPath: ./certs/fullchain.pem
      sslKeyPath: ./certs/privkey.key
    
    cassandra:
      hostNetwork: true
      dnsPolicy: ClusterFirstWithHostNet
    
    ingress:
      runtime:
        loadBalancerIP: 21.0.124.13
      mart:
        loadBalancerIP: 21.0.124.14
    
    metrics:
      serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json
    
    logger:
      enabled: false
  6. Al termine, salva il file.

La tabella seguente descrive ciascuno dei valori della proprietà che devi fornire nel file delle sostituzioni. Per ulteriori informazioni, consulta Riferimento per le proprietà di configurazione.

Variabile Descrizione
project-id L'ID del tuo progetto Google Cloud.
cluster-name Il nome del cluster Kubernetes.
cluster-region La regione in cui è stato creato il cluster.
org-name Il nome della tua organizzazione Apigee hybrid.
environment-name Utilizza lo stesso nome che hai utilizzato per creare un ambiente nell'interfaccia utente, come spiegato nel Passaggio 5: aggiungi un nuovo ambiente nell'interfaccia utente ibrida.
test-host-alias

(Obbligatorio) Per la guida rapida, utilizza il carattere jolly "*".

L'utilizzo di * è consigliato solo per un'installazione di prova quando si utilizzano credenziali TLS autofirmate. In seguito, quando sviluppi configurazioni ibride Apigee più complesse, ad esempio la creazione di più ambienti, dovrai utilizzare un nome di dominio qualificato per questo valore.

test-cert-name
test-key-name
Inserisci il nome dei file della chiave e del certificato TLS autofirmati che hai generato in precedenza nel passaggio Crea le credenziali TLS per il gateway di runtime. Questi file devono trovarsi nella directory base_directory/hybrid-files/certs. Ad esempio:
sslCertPath: ./certs/keystore.pem
sslKeyPath: ./certs/keystore.key
synchronizer-service-account-name Il nome del file della chiave dell'account di servizio del sincronizzatore che hai generato con lo strumento create-service-account. Ad esempio:
synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
udca-service-account-name Il nome del file della chiave dell'account di servizio udca che hai generato con lo strumento create-service-account. Ad esempio:
udca: ./service-accounts/hybrid-project-apigee-udca.json
virtual_IP_runtime,
virtual_IP_mart
Per utilizzare il bilanciamento del carico integrato di GKE On-Prem, devi fornire IPv virtuali per i bilanciatori del carico sui servizi runtime e MART ibridi. GKE on-prem configura automaticamente l'IP virtuale sul bilanciatore del carico F5 BIG-IP. Per ulteriori informazioni, consulta Configurare il bilanciatore del carico per GKE on-prem
mart-host-alias Un nome DNS completo per l'endpoint del server MART. Questo nome deve corrispondere al nome comune (CN) utilizzato nel certificato TLS autorizzato richiesto per questa configurazione. Ad esempio: mart.mydomain.com
mart-service-account-name Il nome del file della chiave dell'account di servizio del marketplace che hai generato con lo strumento create-service-account.
mart-cert-name
mart-key-name
Inserisci il nome dei file della chiave e del certificato TLS autorizzati che hai generato in precedenza nel passaggio Crea le credenziali TLS per il gateway MART. Questi file devono trovarsi nella directory base_directory/hybrid-files/certs. Ad esempio:
sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.key
gcp-region Identifica la regione della piattaforma Google Cloud in cui apigee-logger e apigee-metrics inviano i propri dati.
gcp-project-id Identifica il progetto Google Cloud in cui apigee-logger e apigee-metrics inviano i propri dati.
metrics-service-account-name Il nome del file della chiave dell'account di servizio per le metriche che hai generato con lo strumento create-service-account. Ad esempio:
serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json

Riepilogo

Il file di configurazione indica a Kubernetes come eseguire il deployment dei componenti ibridi in un cluster. Successivamente, dovrai applicare questa configurazione al tuo cluster.

1 2 3 (AVANTI) Passaggio 4: installa il runtime ibrido