Neste tópico, explicamos como configurar e gerenciar os componentes do plano do ambiente de execução híbrido do Apigee. Para uma lista dos componentes do plano do ambiente de execução que podem ser configurados, consulte Visão geral da configuração do serviço do ambiente de execução.
Sobre o arquivo de modificações
Na primeira vez que você instalar o ambiente de execução híbrido em um cluster, será preciso criar uma configuração arquivo de modificações. Esse arquivo permite que você modifique os valores de configuração padrão conforme necessário, configure ambientes, faça referência a certificados TLS e chaves de conta de serviço, atribua pools de nós do Kubernetes a componentes híbridos específicos e assim por diante.
As etapas de instalação híbrida percorrem o processo de criação de um arquivo de modificações e de aplicar a configuração a um cluster. Se você quiser alterar a configuração mais tarde, modifique o arquivo de modificações criado e aplique-o novamente.
Como fazer uma alteração de configuração
Para fazer uma mudança de configuração em um componente do plano de ambiente de execução híbrido, edite o arquivo de substituições e use o Helm para fazer upgrade do gráfico correspondente ao componente. O gráfico a seguir mostra quais gráficos correspondem a quais componentes da Apigee híbrida:
Escopo | Componentes | Gráfico do Helm |
---|---|---|
Operador da Apigee | Operador da Apigee | apigee-operator |
Armazenamento | Cassandra | apigee-datastore |
Armazenamento na memória | Redis | apigee-redis |
Relatórios | Métricas do logger |
apigee-telemetry |
Entrada | Gateway de entrada da Apigee | apigee-ingress-manager |
Organização | Apigee Connect Agent MART UDCA Watcher |
apigee-org |
Ambiente | Sincronizador de ambiente de execução |
apigee-env |
Grupo de ambientes | virtualhost | apigee-virtualhost |
Por exemplo, para alterar a contagem de réplicas no Processador de mensagens, siga estas etapas:
- Abra o arquivo
OVERRIDES
.yaml
. Use o mesmo arquivo de modificações que foi usado para instalar o ambiente de execução híbrido no cluster. - Localize o elemento
runtime
no arquivo. Exemplo:runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 1 replicaCountMax: 2 ...
-
Altere as propriedades da contagem de réplicas, conforme necessário. Exemplo:
runtime: nodeSelector: key: cloud.google.com/gke-nodepool value: apigee-runtime replicaCountMin: 2 replicaCountMax: 20 ...
- Faça upgrade do ambiente.
- ENV_RELEASE_NAME é o nome com que você instalou anteriormente o
gráfico
apigee-env
. Na versão híbrida v1.10, geralmente éapigee-env-ENV_NAME
. Na versão 1.11 e mais recentes da versão híbrida, geralmente ele é ENV_NAME. - ENV_NAME é o nome do ambiente que você está fazendo upgrade.
- OVERRIDES_FILE é o novo arquivo de substituição para a v.1.3.6
- Faça upgrade do gráfico:
- Para saber se ele está funcionando, confira o estado do respectivo ambiente:
É preciso instalar um ambiente de cada vez. Especifique o ambiente com --set env=
ENV_NAME.
Simulação:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run=server
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
kubectl -n APIGEE_NAMESPACE get apigeeenv
NAME STATE AGE GATEWAYTYPE apigee-org1-dev-xxx running 2d
Quais propriedades de configuração você pode modificar?
Veja a lista completa de propriedades configuráveis na Referência da propriedade de configuração. A referência lista apenas as propriedades que podem ser modificadas. Se você tentar modificar uma propriedade que não esteja na referência, a alteração será ignorada.
Como usar a referência de configuração
A Referência da propriedade de configuração usa a notação de ponto para descrever elementos de configuração, em que o primeiro item é o nome do elemento de nível superior seguido por propriedades e propriedades filho. Exemplo:
ao.image.pullPolicy
No arquivo de modificações, as propriedades são formatadas em YAML adequado. Para o exemplo acima,
o elemento de nível superior ao
tem recuo
à esquerda e as propriedades de subelemento são recuadas nele. Além disso, o YAML requer dois pontos no
final de cada elemento e subelemento.
Por exemplo, para definir a propriedade ao.image.pullPolicy
como Always
, localize esta estrofe YAML no arquivo de modificações e defina-a:
ao: image: pullPolicy: Always
Para outro exemplo, a propriedade cassandra.auth.admin.password
(conforme
listado na referência da propriedade de configuração) é usada para definir a senha de administrador
do Cassandra. Para alterá-la, localize o YAML a seguir no arquivo de modificações e defina-o
da seguinte maneira:
cassandra: auth: admin: password: abc123
Lembre-se de que a Referência de propriedade de configuração descreve todas as propriedades que podem ser definidas em componentes do plano do ambiente de execução híbrido. Siga o padrão explicado acima para modificar esses elementos no arquivo de modificações antes de aplicar as alterações no cluster.
Como usar arquivos de modificações de exemplos predefinidos
Quando você instala o ambiente de execução híbrido pela primeira vez, a Apigee recomenda que você use um dos arquivos de modificações de exemplo pré-configurados. Esses exemplos fornecem um conjunto completo de propriedades de configuração para cenários de instalação específicos, como para definir uma instalação de produção ou teste. Você só precisa fornecer valores apropriados para as propriedades e aplicar o arquivo de modificações ao cluster. Consulte a Etapa 6: criar as substituições para saber mais.
Sobre padrões de configuração
A Apigee mantém a configuração padrão de componentes no arquivo
HYBRID_ROOT_DIR/config/values.yaml
. Seus arquivos de modificações seguem a mesma estrutura YAML
de values.yaml
.
Um arquivo de modificações normalmente inclui apenas um subconjunto das propriedades de configuração encontradas em
values.yaml
. Lembre-se de que nem
todas as propriedades são editáveis. Quando você aplica uma configuração
a um cluster, as modificações são mescladas com os padrões para criar a configuração completa do cluster
do Kubernetes. Consulte também Testar
a configuração mesclada.
O código a seguir mostra a configuração padrão para o componente mart
, conforme
encontrado em values.yaml
. Observe que alguns valores têm padrões, enquanto outros como sslCertPath
e sslKeyPath
não. Forneça esses valores ausentes no
arquivo de modificações, conforme explicado nas etapas de instalação.
Se você quiser alterar algum valor padrão, verifique se ele pode ser editado na Referência de propriedade de configuração.
... mart: replicaCountMin: 2 replicaCountMax: 4 targetCPUUtilizationPercentage: 75 terminationGracePeriodSeconds: 30 sslCertPath: sslKeyPath: hostAlias: nodeSelector: key: value: revision: blue image: url: "gcr.io/apigee-release/hybrid/apigee-mart-server" tag: "1.3.6" pullPolicy: IfNotPresent resources: requests: cpu: 500m memory: 512Mi initCheckCF: resources: requests: cpu: 10m livenessProbe: timeoutSeconds: 1 failureThreshold: 12 periodSeconds: 5 initialDelaySeconds: 15 readinessProbe: timeoutSeconds: 1 successThreshold: 1 failureThreshold: 2 periodSeconds: 5 initialDelaySeconds: 15 metricsURL: "/v1/server/metrics" cwcAppend: | ...
Se quiser modificar os padrões de um componente e o componente ainda não
estiver no arquivo de modificações, copie o YAML de values.yaml
para o
arquivo de modificações e modifique-o nele.
Anotações personalizadas
Anotações são mapas de chave-valor usados para anexar metadados a pods do Kubernetes da Apigee híbrida. É possível criar anotações personalizadas para as seguintes propriedades listadas na Referência de propriedade de configuração:
Para adicionar uma anotação personalizada, adicione uma estrofe ao arquivo OVERRIDES.yaml
para o respectivo componente.
O exemplo a seguir ilustra como uma anotação pode ser especificada em pods
runtime
:
runtime: annotations: businessunit: "bu1"
Teste a configuração mesclada
Use a flag --dry-run
para testar o arquivo
de configuração mesclado sem aplicá-lo ao cluster. Essa opção é útil para depurar
problemas de instalação porque mostra exatamente o que será aplicado ao cluster.
Também é uma boa prática testar a configuração e armazená-la no
controle de origem para ter uma referência dos recursos instalados
e configurados no cluster.
kubectl apply -k apigee-operator/etc/crds/default/
helm upgrade operator apigee-operator/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f OVERRIDES_FILE.yaml \ --dry-run=server
helm upgrade ingress-manager apigee-ingress-manager/ / --install \ --namespace APIGEE_NAMESPACE \ --atomic \ -f OVERRIDES_FILE.yaml \ --dry-run=server
Crie vários arquivos de modificações conforme necessário
Você pode criar quantas modificações quiser, em que cada uma atende a um requisito específico. Por exemplo, você pode ter um arquivo que modifique seu cluster para produção e outro para criar um cluster de teste. É possível manter esses arquivos no sistema de controle de origem.
Exemplo:
helm upgrade test-1-env apigee-env/ \ --namespace APIGEE_NAMESPACE \ --atomic \ --set env=test-1-env \ -f test-1-env-overrides.yaml
Excluir componentes do plano de ambiente de execução específicos do híbrido
Os componentes do plano do ambiente de execução incluem synchronizer
,
mart
, runtime
,
cassandra
e udca
.
Para excluir os componentes do plano de execução específicos do híbrido do cluster, use o
comando helm delete
. Especifique o mesmo arquivo de substituições usado para instalar os componentes do ambiente de execução.
Exemplo:
Use o Helm para excluir cada componente individualmente. Por exemplo, para excluir o
componente cassandra
, use o seguinte comando:
helm -n APIGEE_NAMESPACE delete datastore
No exemplo acima, o componente do repositório de dados foi instalado com o nome "datastore". Se você
instalou o componente com um nome diferente, forneça esse nome para excluir
o componente. Por exemplo, se você instalou o gráfico apigee-datastore
com
helm install my-cassandra-storage apigee-datastore/
, exclua-o usando o
seguinte comando:
helm delete -n apigee my-cassandra-storage
Para recriar componentes específicos (o grupo de ambientes neste exemplo):
helm upgrade ENV_GROUP apigee-virtualhost/ \ --install \ --namespace APIGEE_NAMESPACE \ --atomic \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE.yaml