Especificar modificações de configuração
O instalador da Apigee híbrida usa padrões para muitas configurações. No entanto, algumas configurações não têm padrões. É preciso fornecer valores para essas configurações, conforme explicado a seguir.
Antes de começar
Recomendamos que você analise os cenários a seguir para determinar se quer configurar o cluster para eles. Essas configurações são opcionais.
- Se você planeja instalar um ambiente híbrido em várias regiões, leia o artigo Implantação multirregional antes de continuar.
- O híbrido da Apigee fornece senhas padrão para os usuários do Cassandra. A Apigee recomenda mudar as senhas de usuário padrão. Consulte Como configurar o TLS para o Cassandra para saber mais.
- Se você quiser definir as configurações de armazenamento e heap do Cassandra, consulte Definir configurações de armazenamento e heap.
- Conforme descrito na Parte 1: configuração do projeto e da organização — Etapa 1: ativar APIs, para cenários de instalação em produção, configure o disco de estado sólido (SSD) permanente para o Cassandra. A Apigee não oferece suporte ao uso de SSDs locais para a Apigee híbrida. Para mais detalhes, consulte Adicionar armazenamento SSD para implantações de produção.
Configurar o cluster
Por convenção, as substituições de configuração são gravadas em um arquivo chamado overrides.yaml
, normalmente armazenado no diretório $APIGEE_HELM_CHARTS_HOME
.
- Crie um novo arquivo chamado
overrides.yaml
no diretório$APIGEE_HELM_CHARTS_HOME
.O
overrides.yaml
fornece a configuração para sua instalação híbrida exclusiva da Apigee. O arquivo de substituição nesta etapa fornece uma configuração básica para uma instalação de tempo de execução híbrido de pouco espaço, adequada para sua primeira instalação. - Em
overrides.yaml
, adicione os valores de propriedade obrigatórios, mostrados abaixo. Veja abaixo uma descrição detalhada de cada propriedade.Verifique se o arquivo
overrides.yaml
tem a seguinte estrutura e sintaxe:Escolha a guia do tipo de autenticação de conta de serviço que você está usando na instalação: Etapa 4: criar contas de serviço.
- Chaves de contas de serviço em secrets do Kubernetes: secrets do Kubernetes
- Arquivos de chave JSON da conta de serviço: arquivos JSON
- Chaves de conta de serviço no Vault: Vault
- Federação de identidade da carga de trabalho para o GKE: WIF para GKE
- Federação de identidade da carga de trabalho: WIF em outras plataformas
Para uma visão geral das diferentes opções de autenticação, consulte Métodos de autenticação de contas de serviço na Apigee híbrida.
Selecione a guia de instalação, produção, Produção ou não produção (instalações de prova de conceito, demonstração ou avaliação), Não produção, dependendo de sua escolha na Etapa 4: criar contas de serviço.
Para instalações em ambientes de produção, consulte os requisitos de armazenamento do banco de dados do Cassandra em Configurar o Cassandra para produção.
Secrets do Kubernetes
Produção
Modelo
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretRefs: synchronizer: SYNCHRONIZER_SERVICE_ACCOUNT_SECRET # For example: "apigee-synchronizer-svc-account" runtime: RUNTIME_SERVICE_ACCOUNT_SECRET # For example: "apigee-runtime-svc-account" udca: UDCA_SERVICE_ACCOUNT_SECRET # For example: "apigee-udca-svc-account" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountRef: MART_SERVICE_ACCOUNT_SECRET # For example: "apigee-mart-svc-account" connectAgent: serviceAccountRef: MART_SERVICE_ACCOUNT_SECRET # Use the same secret for mart and connectAgent # For example: "apigee-mart-svc-account" logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. serviceAccountRef: LOGGER_SERVICE_ACCOUNT_SECRET # For example: "apigee-logger-svc-account" metrics: serviceAccountRef: METRICS_SERVICE_ACCOUNT_SECRET # For example: "apigee-metrics-svc-account" udca: serviceAccountRef: UDCA_SERVICE_ACCOUNT_SECRET # For example: "apigee-udca-svc-account" watcher: serviceAccountRef: WATCHER_SERVICE_ACCOUNT_SECRET # For example: "apigee-watcher-svc-account" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountRef: MINT_TASK_SCHEDULER_SERVICE_ACCOUNT_SECRET # For example: "apigee-mint-task-scheduler-svc-account" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
SECRETO nome do secret do Kubernetes para a chave da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
apigee-cassandra-svc-account
apigee-logger-svc-account
apigee-mart-svc-account
apigee-metrics-svc-account
apigee-mint-task-scheduler-svc-account
apigee-runtime-svc-account
apigee-synchronizer-svc-account
apigee-udca-svc-account
apigee-watcher-svc-account
Sem produção
apigee-non-prod-svc-account
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env serviceAccountSecretRefs: synchronizer: "apigee-synchronizer-svc-account" runtime: "apigee-runtime-svc-account" udca: "apigee-udca-svc-account" cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountRef: "apigee-mart-svc-account" connectAgent: serviceAccountRef: "apigee-mart-svc-account" logger: enabled: true serviceAccountRef: "apigee-logger-svc-account" metrics: serviceAccountRef: "apigee-metrics-svc-account" udca: serviceAccountRef: "apigee-udca-svc-account" watcher: serviceAccountRef: "apigee-watcher-svc-account" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountRef: apigee-mint-task-scheduler-svc-account # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
SECRETO nome do secret do Kubernetes para a chave da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
apigee-cassandra-svc-account
apigee-logger-svc-account
apigee-mart-svc-account
apigee-metrics-svc-account
apigee-mint-task-scheduler-svc-account
apigee-runtime-svc-account
apigee-synchronizer-svc-account
apigee-udca-svc-account
apigee-watcher-svc-account
Sem produção
apigee-non-prod-svc-account
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Sem produção
Modelo
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretRefs: synchronizer: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" runtime: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" udca: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount: 1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" connectAgent: serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # Use the same secret for mart and connectAgent # For example: "apigee-non-prod-svc-account" logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" metrics: serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" udca: serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" watcher: serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountRef: NON_PROD_SERVICE_ACCOUNT_SECRET # For example: "apigee-non-prod-svc-account" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
SECRETO nome do secret do Kubernetes para a chave da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
apigee-cassandra-svc-account
apigee-logger-svc-account
apigee-mart-svc-account
apigee-metrics-svc-account
apigee-mint-task-scheduler-svc-account
apigee-runtime-svc-account
apigee-synchronizer-svc-account
apigee-udca-svc-account
apigee-watcher-svc-account
Sem produção
apigee-non-prod-svc-account
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test serviceAccountSecretRefs: synchronizer: "apigee-non-prod-svc-account" runtime: "apigee-non-prod-svc-account" udca: "apigee-non-prod-svc-account" cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountRef: "apigee-non-prod-svc-account" connectAgent: serviceAccountRef: "apigee-non-prod-svc-account" logger: enabled: true serviceAccountRef: "apigee-non-prod-svc-account" metrics: serviceAccountRef: "apigee-non-prod-svc-account" udca: serviceAccountRef: "apigee-non-prod-svc-account" watcher: serviceAccountRef: "apigee-non-prod-svc-account" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountRef: apigee-non-prod-svc-account # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
SECRETO nome do secret do Kubernetes para a chave da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
apigee-cassandra-svc-account
apigee-logger-svc-account
apigee-mart-svc-account
apigee-metrics-svc-account
apigee-mint-task-scheduler-svc-account
apigee-runtime-svc-account
apigee-synchronizer-svc-account
apigee-udca-svc-account
apigee-watcher-svc-account
Sem produção
apigee-non-prod-svc-account
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Arquivos JSON
Produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountPaths: # Provide the path relative to the apigee-env chart directory. synchronizer: SYNCHRONIZER_SERVICE_ACCOUNT_FILEPATH # For example: "PROJECT_ID-apigee-synchronizer.json" runtime: RUNTIME_SERVICE_ACCOUNT_FILEPATH # For example: "PROJECT_ID-apigee-runtime.json" udca: UDCA_SERVICE_ACCOUNT_FILEPATH # For example: "PROJECT_ID-apigee-udca.json" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. serviceAccountPath: LOGGER_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-F chart directory. # For example: "PROJECT_ID-apigee-logger.json" mart: serviceAccountPath: MART_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "PROJECT_ID-apigee-mart.json" connectAgent: serviceAccountPath: MART_SERVICE_ACCOUNT_FILEPATH # Use the same service account for mart and connectAgent # Provide the path relative to the apigee-org chart directory. # For example: "PROJECT_ID-apigee-mart.json" metrics: serviceAccountPath: METRICS_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "PROJECT_ID-apigee-metrics.json" udca: serviceAccountPath: UDCA_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "PROJECT_ID-apigee-udca.json" watcher: serviceAccountPath: WATCHER_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "PROJECT_ID-apigee-watcher.json" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountPath: MINT_TASK_SCHEDULER_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "PROJECT_ID-apigee-mint-task-scheduler.json" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
FILEPATHA conta do caminho e do nome de arquivo dos arquivos JSON da conta de serviço no diretório de gráfico correspondente. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo: - Se o arquivo
my-project-apigee-synchronizer.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Em ambientes de não produção, o nome da conta de serviço única é
PROJECT_ID-non-prod.json
por padrão.Para ambientes de produção, o nome do arquivo de chave da conta de serviço que você gerou com a ferramenta
create-service-account
na Etapa 4: criar contas de serviço.É possível ver os arquivos da conta de serviço em cada diretório de gráfico correspondente.
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-apigee-cassandra.json
apigee-datastore/
PROJECT_ID-apigee-mart.json
apigee-org/
PROJECT_ID-apigee-metrics.json
apigee-telemetry/
PROJECT_ID-apigee-mint-task-scheduler.json
apigee-org/
PROJECT_ID-apigee-runtime.json
apigee-env/
PROJECT_ID-apigee-synchronizer.json
apigee-env/
PROJECT_ID-apigee-udca.json
apigee-org/
PROJECT_ID-apigee-watcher.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-non-prod.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env serviceAccountPaths: synchronizer: "my-project-apigee-synchronizer.json" runtime: "my-project-apigee-runtime.json" udca: "my-project-apigee-udca.json" cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key logger: enabled: true serviceAccountPath: "my-project-apigee-logger.json" mart: serviceAccountPath: "my-project-apigee-mart.json" connectAgent: serviceAccountPath: "my-project-apigee-mart.json" metrics: serviceAccountPath: "my-project-apigee-metrics.json" udca: serviceAccountPath: "my-project-apigee-udca.json" watcher: serviceAccountPath: "my-project-apigee-watcher.json" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountPath: my-project-apigee-mint-task-scheduler.json" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
FILEPATHA conta do caminho e do nome de arquivo dos arquivos JSON da conta de serviço no diretório de gráfico correspondente. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo: - Se o arquivo
my-project-apigee-synchronizer.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Em ambientes de não produção, o nome da conta de serviço única é
PROJECT_ID-non-prod.json
por padrão.Para ambientes de produção, o nome do arquivo de chave da conta de serviço que você gerou com a ferramenta
create-service-account
na Etapa 4: criar contas de serviço.É possível ver os arquivos da conta de serviço em cada diretório de gráfico correspondente.
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-apigee-cassandra.json
apigee-datastore/
PROJECT_ID-apigee-mart.json
apigee-org/
PROJECT_ID-apigee-metrics.json
apigee-telemetry/
PROJECT_ID-apigee-mint-task-scheduler.json
apigee-org/
PROJECT_ID-apigee-runtime.json
apigee-env/
PROJECT_ID-apigee-synchronizer.json
apigee-env/
PROJECT_ID-apigee-udca.json
apigee-org/
PROJECT_ID-apigee-watcher.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-non-prod.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Sem produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountPaths: # Provide the path relative to the apigee-env chart directory. synchronizer: NON_PROD_SERVICE_ACCOUNT_FILEPATH # For example: "PROJECT_ID-apigee-non-prod.json" runtime: NON_PROD_SERVICE_ACCOUNT_FILEPATH # For example: "PROJECT_ID-apigee-non-prod.json" udca: NON_PROD_SERVICE_ACCOUNT_FILEPATH # For example: "PROJECT_ID-apigee-non-prod.json" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount: 1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" connectAgent: serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Use the same service account for mart and connectAgent # Provide the path relative to the apigee-org chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-F chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" metrics: serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" udca: serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" watcher: serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountPath: NON_PROD_SERVICE_ACCOUNT_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "PROJECT_ID-apigee-non-prod.json" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
FILEPATHA conta do caminho e do nome de arquivo dos arquivos JSON da conta de serviço no diretório de gráfico correspondente. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo: - Se o arquivo
my-project-apigee-synchronizer.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Em ambientes de não produção, o nome da conta de serviço única é
PROJECT_ID-non-prod.json
por padrão.Para ambientes de produção, o nome do arquivo de chave da conta de serviço que você gerou com a ferramenta
create-service-account
na Etapa 4: criar contas de serviço.É possível ver os arquivos da conta de serviço em cada diretório de gráfico correspondente.
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-apigee-cassandra.json
apigee-datastore/
PROJECT_ID-apigee-mart.json
apigee-org/
PROJECT_ID-apigee-metrics.json
apigee-telemetry/
PROJECT_ID-apigee-mint-task-scheduler.json
apigee-org/
PROJECT_ID-apigee-runtime.json
apigee-env/
PROJECT_ID-apigee-synchronizer.json
apigee-env/
PROJECT_ID-apigee-udca.json
apigee-org/
PROJECT_ID-apigee-watcher.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-non-prod.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test serviceAccountPaths: synchronizer: "hybrid-example-apigee-non-prod.json" runtime: "hybrid-example-apigee-non-prod.json" udca: "hybrid-example-apigee-non-prod.json" cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountPath: "my-project-apigee-non-prod.json" connectAgent: serviceAccountPath: "my-project-apigee-non-prod.json" logger: enabled: true serviceAccountPath: "my-project-apigee-non-prod.json" metrics: serviceAccountPath: "my-project-apigee-non-prod.json" udca: serviceAccountPath: "my-project-apigee-non-prod.json" watcher: serviceAccountPath: "my-project-apigee-non-prod.json" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountPath: my-project-apigee-non-prod.json" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
FILEPATHA conta do caminho e do nome de arquivo dos arquivos JSON da conta de serviço no diretório de gráfico correspondente. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo: - Se o arquivo
my-project-apigee-synchronizer.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Em ambientes de não produção, o nome da conta de serviço única é
PROJECT_ID-non-prod.json
por padrão.Para ambientes de produção, o nome do arquivo de chave da conta de serviço que você gerou com a ferramenta
create-service-account
na Etapa 4: criar contas de serviço.É possível ver os arquivos da conta de serviço em cada diretório de gráfico correspondente.
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-apigee-cassandra.json
apigee-datastore/
PROJECT_ID-apigee-mart.json
apigee-org/
PROJECT_ID-apigee-metrics.json
apigee-telemetry/
PROJECT_ID-apigee-mint-task-scheduler.json
apigee-org/
PROJECT_ID-apigee-runtime.json
apigee-env/
PROJECT_ID-apigee-synchronizer.json
apigee-env/
PROJECT_ID-apigee-udca.json
apigee-org/
PROJECT_ID-apigee-watcher.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos PROJECT_ID-non-prod.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Vault
Produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME serviceAccountSecretProviderClass: apigee-orgsakeys-spc # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretProviderClass: apigee-envsakeys-ENVIRONMENT_NAME-spc cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 k8sCluster: name: hybrid-env region: us-central1 org: my-project serviceAccountSecretProviderClass: apigee-orgsakeys-spc enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env serviceAccountSecretProviderClass: apigee-envsakeys-prod-env-spc cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key logger: enabled: true # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Sem produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME serviceAccountSecretProviderClass: apigee-orgsakeys-spc # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretProviderClass: apigee-envsakeys-ENVIRONMENT_NAME-spc cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount: 1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 k8sCluster: name: hybrid-env region: us-central1 org: my-project serviceAccountSecretProviderClass: apigee-orgsakeys-spc enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test serviceAccountSecretProviderClass: apigee-envsakeys-test-env-spc cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key logger: enabled: true # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # for message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
WIF para GKE
Produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: true k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME gsa: synchronizer: SYNCHRONIZER_SERVICE_ACCOUNT_EMAIL # For example: "apigee-synchronizer@PROJECT_ID.iam.gserviceaccount.com" runtime: RUNTIME_SERVICE_ACCOUNT_EMAIL # For example: "apigee-runtime@PROJECT_ID.iam.gserviceaccount.com" udca: UDCA_SERVICE_ACCOUNT_EMAIL # For example: "apigee-udca@PROJECT_ID.iam.gserviceaccount.com" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. backup: enabled: true # Required to create the Cassandra Kubernetes service accounts # for Workload Identity Federation for GKE # See Cassandra backup overview. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: gsa: MART_SERVICE_ACCOUNT_EMAIL # For example: "apigee-mart@PROJECT_ID.iam.gserviceaccount.com" connectAgent: gsa: MART_SERVICE_ACCOUNT_EMAIL # Use the same service account email for mart and connectAgent # For example: "apigee-mart@PROJECT_ID.iam.gserviceaccount.com" logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. gsa: LOGGER_SERVICE_ACCOUNT_EMAIL # For example: "apigee-logger@PROJECT_ID.iam.gserviceaccount.com" metrics: gsa: METRICS_SERVICE_ACCOUNT_EMAIL # For example: "apigee-metrics@PROJECT_ID.iam.gserviceaccount.com" udca: gsa: UDCA_SERVICE_ACCOUNT_EMAIL # For example: "apigee-udca@PROJECT_ID.iam.gserviceaccount.com" watcher: gsa: WATCHER_SERVICE_ACCOUNT_EMAIL # For example: "apigee-watcher@PROJECT_ID.iam.gserviceaccount.com" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid gsa: MINT_TASK_SCHEDULER_SERVICE_ACCOUNT_EMAIL # For example: "apigee-mint-task-scheduler@PROJECT_ID.iam.gserviceaccount.com" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
EMAILOs endereços de e-mail das contas de serviço do Google (GSA) que você precisa fornecer se estiver usando a Federação de Identidade da Carga de Trabalho para GKE. Estas são as contas que você criou na Etapa 4: criar contas de serviço. Para encontrar os endereços de e-mail das contas de serviço, use o seguinte comando: gcloud iam service-accounts list \ --project ${PROJECT_ID} \ --filter "apigee"
Veja estes tópicos:
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: true k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env gsa: synchronizer: "apigee-synchronizer@my-project.iam.gserviceaccount.com" runtime: "apigee-runtime@my-project.iam.gserviceaccount.com" udca: "apigee-udca@my-project.iam.gserviceaccount.com" cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: gsa: "apigee-mart@my-project.iam.gserviceaccount.com" connectAgent: gsa: "apigee-mart@my-project.iam.gserviceaccount.com" logger: enabled: true gsa: "apigee-logger@my-project.iam.gserviceaccount.com" metrics: gsa: "apigee-metrics@my-project.iam.gserviceaccount.com" udca: gsa: "apigee-udca@my-project.iam.gserviceaccount.com" watcher: gsa: "apigee-watcher@my-project.iam.gserviceaccount.com" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountPath: my-project-apigee-mint-task-scheduler.json" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
SERVICE_ACCOUNT_
EMAILOs endereços de e-mail das contas de serviço do Google (GSA) que você precisa fornecer se estiver usando a Federação de Identidade da Carga de Trabalho para GKE. Estas são as contas que você criou na Etapa 4: criar contas de serviço. Para encontrar os endereços de e-mail das contas de serviço, use o seguinte comando: gcloud iam service-accounts list \ --project ${PROJECT_ID} \ --filter "apigee"
Veja estes tópicos:
Sem produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: true gsa: "NON_PROD_SERVICE_ACCOUNT_EMAIL" # For example: "apigee-non-prod@PROJECT_ID.iam.gserviceaccount.com" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE logger: enabled: true # enabled by default # See apigee-logger in Service accounts and roles used by hybrid components. # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.NON_PROD_
SERVICE_ACCOUNT_
EMAILOs endereços de e-mail da conta de serviço do Google (GSA) não de produção. Essa é a conta de serviço apigee-non-prod
que você criou na Etapa 4: criar contas de serviço.Se você estiver usando a Federação de Identidade da Carga de Trabalho para GKE em uma instalação não de produção, especifique o endereço de e-mail da conta de serviço para a propriedade
gcp.workloadIdentity.gsa
. Não é necessário adicionar a propriedadegsa
a nenhum componente individual.Para encontrar os endereços de e-mail das contas de serviço, use o seguinte comando:
gcloud iam service-accounts list \ --project ${PROJECT_ID} \ --filter "apigee"
Veja
gcp.workloadIdentity.gsa
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: true gsa: "apigee-non-prod@my-project.iam.gserviceaccount.com" k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key logger: enabled: true # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.NON_PROD_
SERVICE_ACCOUNT_
EMAILOs endereços de e-mail da conta de serviço do Google (GSA) não de produção. Essa é a conta de serviço apigee-non-prod
que você criou na Etapa 4: criar contas de serviço.Se você estiver usando a Federação de Identidade da Carga de Trabalho para GKE em uma instalação não de produção, especifique o endereço de e-mail da conta de serviço para a propriedade
gcp.workloadIdentity.gsa
. Não é necessário adicionar a propriedadegsa
a nenhum componente individual.Para encontrar os endereços de e-mail das contas de serviço, use o seguinte comando:
gcloud iam service-accounts list \ --project ${PROJECT_ID} \ --filter "apigee"
Veja
gcp.workloadIdentity.gsa
.CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
WIF em outras plataformas
WIF: secrets
Produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: false # Must be set to false to use # Workload Identity Federation on other platforms. federatedWorkloadIdentity: enabled: true audience: "AUDIENCE" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretRefs: synchronizer: SYNCHRONIZER_WORKLOAD_IDENTITY_SECRET # For example: "synchronizer-workload-identity-secret" runtime: RUNTIME_WORKLOAD_IDENTITY_SECRET # For example: "runtime-workload-identity-secret" udca: UDCA_WORKLOAD_IDENTITY_SECRET # For example: "udca-workload-identity-secret" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountPath: MART_WORKLOAD_IDENTITY_SECRET # For example: "mart-workload-identity-secret" connectAgent: serviceAccountPath: MART_WORKLOAD_IDENTITY_SECRET # Use the same secret for mart and connectAgent # For example: "mart-workload-identity-secret" logger: enabled: false # apigee-logger does not support Workload Identity Federation. # See Known issue #341099433. # If you want to enable the apigee-logger component, create a # Kubernetes secret for apigee-logger by following the steps # under Kubernetes secrets in # Step 5: Set up service account authentication. # Provide a reference to the secret with the # logger.serviceAccountRef property. metrics: serviceAccountPath: METRICS_WORKLOAD_IDENTITY_SECRET # For example: "metrics-workload-identity-secret" udca: serviceAccountPath: UDCA_WORKLOAD_IDENTITY_SECRET # For example: "udca-workload-identity-secret" watcher: serviceAccountPath: WATCHER_WORKLOAD_IDENTITY_SECRET # For example: "watcher-workload-identity-secret" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountRef: MINT_TASK_SCHEDULER_WORKLOAD_IDENTITY_SECRET # For example: "apigee-mint-task-scheduler-workload-identity-secret" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
WORKLOAD_IDENTITY_
SECRETO nome do secret do Kubernetes para a configuração de credenciais da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
cassandra-workload-identity-secret
logger-workload-identity-secret
mart-workload-identity-secret
metrics-workload-identity-secret
mint-task-scheduler-workload-identity-secret
runtime-workload-identity-secret
synchronizer-workload-identity-secret
udca-workload-identity-secret
watcher-workload-identity-secret
Sem produção
non-prod-workload-identity-secret
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: false federatedWorkloadIdentity: enabled: true audience: "//iam.googleapis.com/projects/123123123123/locations/global/workloadIdentityPools/my-wi-pool/providers/my-wi-provider" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env serviceAccountSecretRefs: synchronizer: "synchronizer-workload-identity-secret" runtime: "runtime-workload-identity-secret" udca: "udca-workload-identity-secret" cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountRef: "mart-workload-identity-secret" connectAgent: serviceAccountRef: "mart-workload-identity-secret" logger: enabled: false metrics: serviceAccountRef: "metrics-workload-identity-secret" udca: serviceAccountRef: "udca-workload-identity-secret" watcher: serviceAccountRef: "watcher-workload-identity-secret" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountRef: "apigee-mint-task-scheduler-workload-identity-secret" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
WORKLOAD_IDENTITY_
SECRETO nome do secret do Kubernetes para a configuração de credenciais da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
cassandra-workload-identity-secret
logger-workload-identity-secret
mart-workload-identity-secret
metrics-workload-identity-secret
mint-task-scheduler-workload-identity-secret
runtime-workload-identity-secret
synchronizer-workload-identity-secret
udca-workload-identity-secret
watcher-workload-identity-secret
Sem produção
non-prod-workload-identity-secret
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Sem produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: false # Must be set to false to use # Workload Identity Federation on other platforms. federatedWorkloadIdentity: enabled: true audience: "AUDIENCE" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretRefs: synchronizer: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" runtime: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" udca: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount: 1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountRef: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" connectAgent: serviceAccountRef: NON_PROD_WORKLOAD_IDENTITY_SECRET # Use the same secret for mart and connectAgent # For example: "non-prod-workload-identity-secret" logger: enabled: false # apigee-logger does not support Workload Identity Federation. # See Known issue #341099433. # If you want to enable the apigee-logger component, create a # Kubernetes secret for apigee-logger by following the steps # under Kubernetes secrets in # Step 5: Set up service account authentication. # Provide a reference to the secret with the # logger.serviceAccountRef property. metrics: serviceAccountRef: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" udca: serviceAccountRef: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" watcher: serviceAccountRef: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountRef: NON_PROD_WORKLOAD_IDENTITY_SECRET # For example: "non-prod-workload-identity-secret" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
WORKLOAD_IDENTITY_
SECRETO nome do secret do Kubernetes para a configuração de credenciais da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
cassandra-workload-identity-secret
logger-workload-identity-secret
mart-workload-identity-secret
metrics-workload-identity-secret
mint-task-scheduler-workload-identity-secret
runtime-workload-identity-secret
synchronizer-workload-identity-secret
udca-workload-identity-secret
watcher-workload-identity-secret
Sem produção
non-prod-workload-identity-secret
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: false federatedWorkloadIdentity: enabled: true audience: "//iam.googleapis.com/projects/123123123123/locations/global/workloadIdentityPools/my-wi-pool/providers/my-wi-provider" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test serviceAccountSecretRefs: synchronizer: "non-prod-workload-identity-secret" runtime: "non-prod-workload-identity-secret" udca: "non-prod-workload-identity-secret" cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountRef: "non-prod-workload-identity-secret" connectAgent: serviceAccountRef: "non-prod-workload-identity-secret" logger: enabled: false metrics: serviceAccountRef: "non-prod-workload-identity-secret" udca: serviceAccountRef: "non-prod-workload-identity-secret" watcher: serviceAccountRef: "non-prod-workload-identity-secret" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountRef: "non-prod-workload-identity-secret" # for message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
WORKLOAD_IDENTITY_
SECRETO nome do secret do Kubernetes para a configuração de credenciais da conta de serviço em Etapa 5: configurar a autenticação da conta de serviço. Os nomes padrão dos secrets sugeridos neste guia são:
Produção
cassandra-workload-identity-secret
logger-workload-identity-secret
mart-workload-identity-secret
metrics-workload-identity-secret
mint-task-scheduler-workload-identity-secret
runtime-workload-identity-secret
synchronizer-workload-identity-secret
udca-workload-identity-secret
watcher-workload-identity-secret
Sem produção
non-prod-workload-identity-secret
Veja estes tópicos:
-
envs[].serviceAccountSecretRefs.synchronizer
. -
envs[].serviceAccountSecretRefs.runtime
. -
envs[].serviceAccountSecretRefs.udca
. -
logger.serviceAccountRef
. -
connectAgent.serviceAccountRef
. -
mart.serviceAccountRef
. -
metrics.serviceAccountRef
. -
mintTaskScheduler.serviceAccountRef
. -
udca.serviceAccountRef
. -
watcher.serviceAccountRef
.
WIF: arquivos
Produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: false # Must be set to false to use # Workload Identity Federation on other platforms. federatedWorkloadIdentity: enabled: true audience: "AUDIENCE" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountPaths: # Provide the path relative to the apigee-env chart directory. synchronizer: SYNCHRONIZER_CREDENTIAL_CONFIGURATION_FILEPATH # For example: "apigee-synchronizer-credential-configuration.json" runtime: RUNTIME_SERVICE_CREDENTIAL_CONFIGURATION_FILEPATH # For example: "apigee-runtime-credential-configuration.json" udca: UDCA_SERVICE_CREDENTIAL_CONFIGURATION_FILEPATH # For example: "apigee-udca-credential-configuration.json" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE installations. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift # installations. See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountPath: MART_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "apigee-mart-credential-configuration.json" connectAgent: serviceAccountPath: MART_CREDENTIAL_CONFIGURATION_FILEPATH # Use the same service account for mart and connectAgent # Provide the path relative to the apigee-org chart directory. # For example: "apigee-mart-credential-configuration.json" logger: enabled: false # apigee-logger does not support Workload Identity Federation. # See Known issue #341099433. # If you want to enable the apigee-logger component, provide # the path to the apigee-logger service account key file with # the logger.serviceAccountPath property. metrics: serviceAccountPath: METRICS_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "apigee-metrics-credential-configuration.json" udca: serviceAccountPath: UDCA_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "apigee-udca-credential-configuration.json" watcher: serviceAccountPath: WATCHER_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "apigee-watcher-credential-configuration.json" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountPath: MINT_TASK_SCHEDULER_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "apigee-mint-task-scheduler-credential-configuration.json" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
CREDENTIAL_
CONFIGURATION_
FILEPATHO caminho e o nome dos arquivos de configuração de credenciais criados na Etapa 5: configurar a autenticação da conta de serviço. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo:
- Se o arquivo
apigee-synchronizer-credential-configuration.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-cassandra-credential-configuration.json
apigee-datastore/
apigee-logger-credential-configuration.json
apigee-telemetry/
apigee-mart-credential-configuration.json
apigee-org/
apigee-metrics-credential-configuration.json
apigee-telemetry/
apigee-mint-task-scheduler-credential-configuration.json
apigee-org/
apigee-runtime-credential-configuration.json
apigee-env/
apigee-synchronizer-credential-configuration.json
apigee-env/
apigee-udca-credential-configuration.json
apigee-org/
apigee-watcher-credential-configuration.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-non-prod-credential-configuration.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: false federatedWorkloadIdentity: enabled: true audience: "//iam.googleapis.com/projects/123123123123/locations/global/workloadIdentityPools/my-wi-pool/providers/my-wi-provider" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env serviceAccountPaths: synchronizer: "apigee-synchronizer-credential-configuration.json" runtime: "apigee-runtime-credential-configuration.json" udca: "apigee-udca-credential-configuration.json" cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountPath: "apigee-mart-credential-configuration.json" connectAgent: serviceAccountPath: "apigee-mart-credential-configuration.json" logger: enabled: false metrics: serviceAccountPath: "apigee-metrics-credential-configuration.json" udca: serviceAccountPath: "apigee-udca-credential-configuration.json" watcher: serviceAccountPath: "apigee-watcher-credential-configuration.json" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountPath: apigee-mint-task-scheduler-credential-configuration.json" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
CREDENTIAL_
CONFIGURATION_
FILEPATHO caminho e o nome dos arquivos de configuração de credenciais criados na Etapa 5: configurar a autenticação da conta de serviço. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo:
- Se o arquivo
apigee-synchronizer-credential-configuration.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-cassandra-credential-configuration.json
apigee-datastore/
apigee-logger-credential-configuration.json
apigee-telemetry/
apigee-mart-credential-configuration.json
apigee-org/
apigee-metrics-credential-configuration.json
apigee-telemetry/
apigee-mint-task-scheduler-credential-configuration.json
apigee-org/
apigee-runtime-credential-configuration.json
apigee-env/
apigee-synchronizer-credential-configuration.json
apigee-env/
apigee-udca-credential-configuration.json
apigee-org/
apigee-watcher-credential-configuration.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-non-prod-credential-configuration.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Sem produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: false # Must be set to false to use # Workload Identity Federation on other platforms. federatedWorkloadIdentity: enabled: true audience: "AUDIENCE" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountPaths: # Provide the path relative to the apigee-env chart directory. synchronizer: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # For example: "apigee-non-prod-credential-configuration.json" runtime: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # For example: "apigee-non-prod-credential-configuration.json" udca: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # For example: "apigee-non-prod-credential-configuration.json" cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount: 1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE mart: serviceAccountPath: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "apigee-non-prod-credential-configuration.json" connectAgent: serviceAccountPath: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # Use the same service account for mart and connectAgent # Provide the path relative to the apigee-org chart directory. # For example: "apigee-non-prod-credential-configuration.json" logger: enabled: false # apigee-logger does not support Workload Identity Federation. # See Known issue #341099433. # If you want to enable the apigee-logger component, provide # the path to the apigee-non-prod service account key file with # the logger.serviceAccountPath property. metrics: serviceAccountPath: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "apigee-non-prod-credential-configuration.json" udca: serviceAccountPath: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "apigee-non-prod-credential-configuration.json" watcher: serviceAccountPath: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-telemetry chart directory. # For example: "apigee-non-prod-credential-configuration.json" # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. mintTaskScheduler: # Required for Monetization for Apigee hybrid serviceAccountPath: NON_PROD_CREDENTIAL_CONFIGURATION_FILEPATH # Provide the path relative to the apigee-org chart directory. # For example: "apigee-non-prod-credential-configuration.json" # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
CREDENTIAL_
CONFIGURATION_
FILEPATHO caminho e o nome dos arquivos de configuração de credenciais criados na Etapa 5: configurar a autenticação da conta de serviço. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo:
- Se o arquivo
apigee-synchronizer-credential-configuration.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-cassandra-credential-configuration.json
apigee-datastore/
apigee-logger-credential-configuration.json
apigee-telemetry/
apigee-mart-credential-configuration.json
apigee-org/
apigee-metrics-credential-configuration.json
apigee-telemetry/
apigee-mint-task-scheduler-credential-configuration.json
apigee-org/
apigee-runtime-credential-configuration.json
apigee-env/
apigee-synchronizer-credential-configuration.json
apigee-env/
apigee-udca-credential-configuration.json
apigee-org/
apigee-watcher-credential-configuration.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-non-prod-credential-configuration.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: false federatedWorkloadIdentity: enabled: true audience: "//iam.googleapis.com/projects/123123123123/locations/global/workloadIdentityPools/my-wi-pool/providers/my-wi-provider" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: hybrid-env region: us-central1 org: my-project enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test serviceAccountPaths: synchronizer: "apigee-non-prod-credential-configuration.json" runtime: "apigee-non-prod-credential-configuration.json<" udca: "apigee-non-prod-credential-configuration.json" cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key mart: serviceAccountPath: "apigee-non-prod-credential-configuration.json" connectAgent: serviceAccountPath: "apigee-non-prod-credential-configuration.json" logger: enabled: false metrics: serviceAccountPath: "apigee-non-prod-credential-configuration.json" udca: serviceAccountPath: "apigee-non-prod-credential-configuration.json" watcher: serviceAccountPath: "apigee-non-prod-credential-configuration.json" # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" mintTaskScheduler: serviceAccountPath: apigee-non-prod-credential-configuration.json" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
<component>_
CREDENTIAL_
CONFIGURATION_
FILEPATHO caminho e o nome dos arquivos de configuração de credenciais criados na Etapa 5: configurar a autenticação da conta de serviço. Forneça os nomes com o caminho relativo para o diretório do gráfico. Exemplo:
- Se o arquivo
apigee-synchronizer-credential-configuration.json
estiver no diretório de gráficoapigee-env/
, você só precisará fornecer o nome do arquivo, como:synchronizer: "FILE_NAME.json"
- Se o arquivo estiver em um diretório
apigee-env/service-accounts/
, especifique um caminho relativo:synchronizer: "service-accounts/FILE_NAME.json"
Os nomes padrão dos diretórios de gráficos correspondentes das contas de serviço são:
Produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-cassandra-credential-configuration.json
apigee-datastore/
apigee-logger-credential-configuration.json
apigee-telemetry/
apigee-mart-credential-configuration.json
apigee-org/
apigee-metrics-credential-configuration.json
apigee-telemetry/
apigee-mint-task-scheduler-credential-configuration.json
apigee-org/
apigee-runtime-credential-configuration.json
apigee-env/
apigee-synchronizer-credential-configuration.json
apigee-env/
apigee-udca-credential-configuration.json
apigee-org/
apigee-watcher-credential-configuration.json
apigee-org/
Sem produção
Nome do arquivo da conta de serviço Diretório de gráficos apigee-non-prod-credential-configuration.json
apigee-datastore/
apigee-org/
apigee-telemetry/
Veja estes tópicos:
-
envs[].serviceAccountPaths.synchronizer
. -
envs[].serviceAccountPaths.runtime
. -
envs[].serviceAccountPaths.udca
. -
logger.serviceAccountPath
. -
connectAgent.serviceAccountPath
. -
mart.serviceAccountPath
. -
metrics.serviceAccountPath
. -
mintTaskScheduler.serviceAccountPath
. -
udca.serviceAccountPath
. -
watcher.serviceAccountPath
.
WIF: Vault
Produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: false # Must be set to false to use # Workload Identity Federation on other platforms. federatedWorkloadIdentity: enabled: true audience: "AUDIENCE" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME serviceAccountSecretProviderClass: apigee-orgsakeys-spc # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretProviderClass: apigee-envsakeys-ENVIRONMENT_NAME-spc cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount:
3 # Use multiples of 3 for production. # See Configure Cassandra for production for guidelines. storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M # Minimum storage requirements for a production environment. # See Configure Cassandra for production. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE logger: enabled: false # apigee-logger does not support Workload Identity Federation. # See Known issue #341099433. # If you want to enable the apigee-logger component, add # a "logger" : "value" entry in the orgsakeys vault secret # using the contents of the apigee-logger key file for the # value. See Step 5: Set up service account authentication. # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: false federatedWorkloadIdentity: enabled: true audience: "//iam.googleapis.com/projects/123123123123/locations/global/workloadIdentityPools/my-wi-pool/providers/my-wi-provider" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: hybrid-env region: us-central1 org: my-project serviceAccountSecretProviderClass: apigee-orgsakeys-spc enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: prod-env serviceAccountSecretProviderClass: apigee-envsakeys-prod-env-spc cassandra: hostNetwork: false replicaCount: 3 storage: storageSize: 500Gi resources: requests: cpu: 7 memory: 15Gi maxHeapSize: 8192M heapNewSize: 1200M ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key logger: enabled: false # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # For message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Sem produção
Modelo
Os valores em red, bold italics são valores de propriedade que você precisa fornecer. Você pode editar os valores nesta página. Eles estão descritos na tabela abaixo.
instanceID: UNIQUE_INSTANCE_IDENTIFIER namespace: APIGEE_NAMESPACE # Usually "apigee" gcp: projectID: PROJECT_ID region: ANALYTICS_REGION workloadIdentity: enabled: false # Must be set to false to use # Workload Identity Federation on other platforms. federatedWorkloadIdentity: enabled: true audience: "AUDIENCE" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: CLUSTER_NAME region: CLUSTER_LOCATION # Closest Google Cloud region to your cluster. org: ORG_NAME serviceAccountSecretProviderClass: apigee-orgsakeys-spc # Required for Enhanced per-environment proxy limits: enhanceProxyLimits: true # Required if using data residency with hybrid: contractProvider: https://CONTROL_PLANE_LOCATION-apigee.googleapis.com envs: - name: ENVIRONMENT_NAME serviceAccountSecretProviderClass: apigee-envsakeys-ENVIRONMENT_NAME-spc cassandra: hostNetwork: false # Set to false for single region installations and for multi-region # installations with connectivity between pods in different clusters, # like GKE. # Set to true for multi-region installations with no communication # between pods in different clusters, for example Google Distributed # Cloud on VMware or bare metal, GKE on AWS, AKS, EKS, and OpenShift. # See Multi-region deployment: Prerequisites replicaCount: 1 # Use 1 for non-prod installations and multiples of 3 for production. # See Configure Cassandra for production for guidelines. ingressGateways: - name: INGRESS_NAME # maximum 17 characters. replicaCountMin: 2 replicaCountMax: 10 svcAnnotations: # optional. If you are on AKS, see Known issue #260772383 SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE virtualhosts: - name: ENVIRONMENT_GROUP_NAME selector: app: apigee-ingressgateway ingress_name: INGRESS_NAME sslCertPath: PATH_TO_CERT_FILE sslKeyPath: PATH_TO_KEY_FILE logger: enabled: false # apigee-logger does not support Workload Identity Federation. # See Known issue #341099433. # If you want to enable the apigee-logger component, add # a "logger" : "value" entry in the orgsakeys vault secret # using the contents of the apigee-non-prod key file for the # value. See Step 5: Set up service account authentication. # Required if using Monetization for Apigee hybrid (v1.15.1 and later) runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # Must be 1.15.1 or higher. # If using message payloads larger than 10MB. # See configure large message payload support: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Exemplo
instanceID: "my_hybrid_example" namespace: "apigee" gcp: projectID: my-project region: us-central1 workloadIdentity: enabled: false federatedWorkloadIdentity: enabled: true audience: "//iam.googleapis.com/projects/123123123123/locations/global/workloadIdentityPools/my-wi-pool/providers/my-wi-provider" credentialSourceFile: "/var/run/service-account/token" k8sCluster: name: hybrid-env region: us-central1 org: my-project serviceAccountSecretProviderClass: apigee-orgsakeys-spc enhanceProxyLimits: true contractProvider: https://us-apigee.googleapis.com envs: - name: test serviceAccountSecretProviderClass: apigee-envsakeys-test-env-spc cassandra: hostNetwork: false replicaCount: 1 ingressGateways: - name: my-ingress-1 replicaCountMin: 2 replicaCountMax: 10 virtualhosts: - name: example-env-group selector: app: apigee-ingressgateway ingress_name: my-ingress-1 sslCertPath: certs/keystore.pem sslKeyPath: certs/keystore.key logger: enabled: false # Monetization for Apigee hybrid runtime: image: url: "gcr.io/apigee-release/hybrid/apigee-runtime" tag: "1.15.1" # for message payloads larger than 10MB: runtime: cwcAppend: bin_setenv_max_mem: 4096m # Increase max heap size to 4 gigs resources: requests: memory: 4Gi limits: memory: 6Gi
A tabela a seguir descreve cada um dos valores de propriedade que você precisa fornecer no arquivo de substituição. Para mais informações, consulte Referência da propriedade de configuração.
Variável Descrição UNIQUE_INSTANCE_
IDENTIFIERUma string exclusiva para identificar a instância. O código pode ser qualquer combinação de letras e números com até 63 caracteres.
É possível criar várias organizações no mesmo cluster, mas o
instanceID
precisa ser o mesmo para todas as organizações que estiverem no mesmo cluster do Kubernetes.Veja
instanceID
.APIGEE_NAMESPACE O namespace do Kubernetes para seus componentes da Apigee híbrida.
O valor padrão é
apigee
.Veja
namespace
.PROJECT_ID Identifica o projeto do Google Cloud em que apigee-logger
eapigee-metrics
enviam os dados. Esse é o valor atribuído à variável de ambientePROJECT_ID
.Veja
gcp.projectID
.ANALYTICS_REGION No GKE, defina esse valor como a mesma região em que o cluster está em execução. Em todas as outras plataformas, selecione a região de análise mais próxima ao seu cluster que seja compatível com o Analytics. Consulte a tabela na Parte 1, etapa 2: criar uma organização. Este é o valor atribuído anteriormente à variável de ambiente
ANALYTICS_REGION
.Veja
gcp.region
.AUDIENCE O público-alvo permitido do provedor de identidade da carga de trabalho. Para encontrar o valor, pesquise o termo audience:
em qualquer um dos arquivos de configuração de credenciais. O valor do público-alvo é o mesmo em cada arquivo de configuração de credencial.Por exemplo, no arquivo
apigee-udca-credential-configuration.json
de amostra a seguir:{ "universe_domain": "googleapis.com", "type": "external_account:," "audience": "AUDIENCE", "subject_token_type": "TOKEN_TYPE", "token_url": "TOKEN_URL", "service "impersonation_url": "IMPERSONATION_URL", "credential_source": { "file": "FILE_PATH", "format": { "type": "text" } } }
O valor do público-alvo será parecido com o seguinte (sem quebras de linha):
"//iam.googleapis.com/projects/123456789012/ locations/global/workloadIdentityPools/ POOL_ID/providers/WORKLOAD_PROVIDER_ID"
CLUSTER_NAME O nome do cluster do Kubernetes. Esse é o valor atribuído à variável de ambiente CLUSTER_NAME
.Veja
k8sCluster.name
.CLUSTER_LOCATION A região em que o cluster está em execução. Esta é a região em que você criou o cluster na Etapa 1: criar um cluster. Este é o valor atribuído anteriormente à variável de ambiente
CLUSTER_LOCATION
.Veja
k8sCluster.location
.ORG_NAME É o ID da sua organização da Apigee híbrida. Esse é o valor atribuído à variável de ambiente ORG_NAME
.Veja
org
.CONTROL_PLANE_
LOCATIONObrigatório se você estiver usando a residência de dados com sua instalação da Apigee híbrida. Esse é o local onde o conteúdo principal do cliente, como pacotes de proxy, é armazenado. Para uma lista, consulte Regiões disponíveis do plano de controle da API Apigee. É o valor atribuído à variável de ambiente CONTROL_PLANE_LOCATION
na Etapa 2: criar uma organização.Veja
contractProvider
.ENVIRONMENT_NAME Use o mesmo nome usado para criar um ambiente na UI, conforme explicado em Configuração de projeto e organização - Etapa 3: criar um grupo de ambiente. Veja
envs[].name
.ENVIRONMENT_GROUP_
NAMENome do grupo a que os ambientes são atribuídos. Este é o grupo que você criou em Configuração do projeto e da organização - Etapa 3: criar um grupo de ambiente. Esse é o valor atribuído à variável de ambiente ENV_GROUP
.Veja
virtualhosts[].name
.INGRESS_NAME O nome do gateway de entrada da Apigee para sua implantação. Pode ser qualquer nome que atenda aos seguintes requisitos: - máximo de 17 caracteres;
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Veja estes tópicos:
PATH_TO_CERT_FILE
PATH_TO_KEY_FILEDigite o caminho e o nome de arquivo da chave TLS autoassinada e dos arquivos de certificado gerados anteriormente na Etapa 6: criar certificados TLS. Esses arquivos precisam estar localizados no diretório APIGEE_HELM_CHARTS_HOME/apigee-virtualhosts/certs
. Exemplo:sslCertPath: certs/keystore.crt sslKeyPath: certs/keystore.key
Veja estes tópicos:
SVC_ANNOTATIONS_
KEY: SVC_ANNOTATIONS_
VALUE(Opcional). Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver anotações obrigatórias e sugeridas.
Comente ou exclua esta seção se você não a estiver usando.
Resumo
O arquivo de configuração informa ao Kubernetes como implantar os componentes híbridos em um cluster. Em seguida, ative o acesso do sincronizador para que os planos de ambiente de execução e gerenciamento da Apigee possam se comunicar.
Próxima etapa
1 2 3 4 5 6 7 (PRÓXIMA) Etapa 8: ative o acesso ao plano de controle 9 10 11