Passo 3: configure o cluster de utilizadores do GKE On-Prem

Especifique substituições de configuração

O instalador híbrido do Apigee usa predefinições para muitas definições. No entanto, existem algumas definições que não têm predefinições. Tem de fornecer valores para estas definições, conforme explicado em seguida.

  1. Certifique-se de que está no diretório hybrid-base-directory/hybrid-files.
  2. Copie o ficheiro overrides-small.yaml do diretório $APIGEECTL_HOME/examples para o diretório overrides:
    cp $APIGEECTL_HOME/examples/overrides-small.yaml ./overrides/overrides.yaml

    Este ficheiro de exemplo fornece uma configuração básica para uma instalação de tempo de execução híbrida de pequena dimensão, uma configuração adequada para a sua primeira instalação.

  3. cd para o diretório overrides:
  4. cd overrides
  5. Abra overrides.yaml e adicione os valores das propriedades obrigatórias, apresentados abaixo. Também é fornecida uma descrição detalhada de cada propriedade abaixo:

    Sintaxe

    O ficheiro overrides.yaml tem a seguinte estrutura e sintaxe. Os valores em red, bold italics são valores de propriedades que tem de fornecer. Também estão descritos na tabela abaixo.

    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

    Exemplo

    O exemplo seguinte mostra um ficheiro de substituições concluído com valores de propriedades de exemplo adicionados:

    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. Quando terminar, guarde o ficheiro.

A tabela seguinte descreve cada um dos valores das propriedades que tem de fornecer no ficheiro de substituições. Para mais informações, consulte a referência da propriedade de configuração.

Variável Descrição
project-id O ID do seu projeto da GCP.
cluster-name O nome do cluster do Kubernetes.
cluster-region A região em que o cluster foi criado.
org-name O nome da sua organização do Apigee Hybrid.
environment-name Use o mesmo nome que usou quando criou um ambiente na IU, conforme explicado no passo 5: adicione um novo ambiente na IU híbrida.
test-host-alias

(Obrigatório) Para o início rápido, use o caráter universal "*".

A utilização de * só é recomendada para uma instalação de avaliação quando usar credenciais TLS autoassinadas. Mais tarde, à medida que desenvolve configurações híbridas do Apigee mais complexas, como a criação de vários ambientes, tem de usar um nome de domínio qualificado para este valor.

test-cert-name
test-key-name
Introduza o nome dos ficheiros de certificado e chave TLS autoassinados que gerou anteriormente no passo Crie credenciais TLS para o gateway de tempo de execução. Estes ficheiros têm de estar localizados no diretório base_directory/hybrid-files/certs. Por exemplo:
sslCertPath: ./certs/keystore.pem
sslKeyPath: ./certs/keystore.key
synchronizer-service-account-name O nome do ficheiro de chave da conta de serviço do sincronizador que gerou com a ferramenta create-service-account. Por exemplo:
synchronizer: ./service-accounts/hybrid-project-apigee-synchronizer.json
udca-service-account-name O nome do ficheiro de chave da conta de serviço da UDCA que gerou com a ferramenta create-service-account. Por exemplo:
udca: ./service-accounts/hybrid-project-apigee-udca.json
virtual_IP_runtime,
virtual_IP_mart
Para usar o balanceamento de carga integrado do GKE On-Prem, tem de fornecer IPs virtuais para LoadBalancers nos serviços MART e de tempo de execução híbridos. O GKE on-prem configura automaticamente o IP virtual no equilibrador de carga do F5 BIG-IP. Para mais informações, consulte o artigo Configurar o balanceador de carga para o GKE on-prem
mart-host-alias Um nome DNS qualificado para o ponto final do servidor MART. Este nome tem de corresponder ao nome comum (CN) usado no certificado TLS autorizado necessário para esta configuração. Por exemplo, mart.mydomain.com
mart-service-account-name O nome do ficheiro de chave da conta de serviço do mercado que gerou com a ferramenta create-service-account.
mart-cert-name
mart-key-name
Introduza o nome dos ficheiros de certificado e chave TLS autorizados que gerou anteriormente no passo Crie credenciais TLS para o gateway MART. Estes ficheiros têm de estar localizados no diretório base_directory/hybrid-files/certs. Por exemplo:
sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.key
gcp-region Identifica a região da GCP onde o apigee-logger e o apigee-metrics enviam os respetivos dados.
gcp-project-id Identifica o projeto do Google Cloud onde apigee-logger e apigee-metrics enviam os respetivos dados.
metrics-service-account-name O nome do ficheiro de chave da conta de serviço de métricas que gerou com a ferramenta create-service-account. Por exemplo:
serviceAccountPath: ./service-accounts/hybrid-project-apigee-metrics.json

Resumo

O ficheiro de configuração indica ao Kubernetes como implementar os componentes híbridos num cluster. Em seguida, aplica esta configuração ao cluster.

1 2 3 (NEXT) Passo 4: instale o tempo de execução híbrido