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 alteração de configuração em um componente do plano do ambiente de execução híbrido,
edite o arquivo de substituições e
aplique as alterações com o Helm ou com apigeectl
, dependendo da ferramenta de gerenciamento.
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
- Aplique as mudanças com os seguintes comandos:
Helm
É preciso instalar um ambiente de cada vez. Especifique o ambiente com
--set env=
ENV_NAME.- Faça primeiro uma simulação:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE \ --dry-run
- 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 híbrida v1.11 e mais recentes, geralmente é ENV_NAME. - ENV_NAME é o nome do ambiente que você está fazendo upgrade.
- OVERRIDES_FILE é o caminho para o arquivo de substituições.1.3.6
- ENV_RELEASE_NAME é o nome com que você instalou anteriormente o
gráfico
- Faça upgrade do gráfico:
helm upgrade ENV_RELEASE_NAME apigee-env/ \ --install \ --namespace APIGEE_NAMESPACE \ --set env=ENV_NAME \ -f OVERRIDES_FILE
apigeectl
Use
apigeectl
para aplicar a alteração ao cluster:apigeectl apply -f OVERRIDES.yaml --org --env apigee-env
- Faça primeiro uma simulação:
- Para saber se ele está funcionando, confira o estado do respectivo ambiente:
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: configurar o cluster para mais informações.
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.
Arquivos de modificações de amostra
A Apigee fornece um conjunto de arquivos de modificações de amostra para ajudar a configurar sua implantação híbrida. É uma boa prática copiar e modificar o arquivo de modificações que melhor atende aos seus requisitos de instalação.
As amostras a seguir estão incluídas no
diretório HYBRID_ROOT_DIR/examples
:
Arquivos de modificações de amostra | Descrição |
---|---|
overrides-small.yaml |
Essa amostra é ideal para dar os primeiros passos rapidamente. Ele usa a abrangência mínima recomendada
para iniciar os componentes do ambiente de execução híbrido. Essa configuração de exemplo depende o
máximo possível das configurações e valores padrão. Todas as réplicas mínimas estão definidas como 1 . |
overrides-medium.yaml |
Esse exemplo é um bom ponto de partida para ambientes de teste e de controle de qualidade. Os componentes individuais receberam um nível mais alto de recursos para lidar com tráfego adicional. O Cassandra usa discos SSD para desempenho. Nesse ambiente, é recomendável que os usuários instalem componentes com estado e sem estado em nós separados. Consulte Configurar nós dedicados. |
overrides-large.yaml |
Essa amostra é um bom ponto de partida para ambientes de alto desempenho, como pré-produção e produção. O exemplo inclui propriedades para definir chaves de criptografia, senhas e outros. Os componentes individuais têm no mínimo duas réplicas. |
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.
Helm
kubectl apply -k apigee-operator/etc/crds/default/
helm upgrade operator apigee-operator/ \ --install \ --namespace apigee-system \ --atomic \ -f OVERRIDES_FILE.yaml \ --dry-run
helm upgrade ingress-manager apigee-ingress-manager/ / --install \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml \ --dry-run
apigeectl
APIGEECTL_HOME/apigeectl init -f overrides/OVERRIDES.yaml --dry-run=client
Para ver mais informações, consulte apigeectl
.
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.
Por exemplo:
Helm
helm upgrade test-1-env apigee-env/ \ --namespace apigee \ --atomic \ --set env=test-1-env \ -f test-1-env-overrides.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f test-1-env-overrides.yaml --env test-1-env
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 do cluster os componentes do plano do ambiente de execução específicos da Apigee híbrida, use os
comandos helm delete
ou apigeectl delete
.
Especifique o mesmo arquivo de substituições usado para instalar os componentes do ambiente de execução.
Por exemplo:
Helm
Use o Helm para excluir cada componente individualmente. Por exemplo, para excluir o componentecassandra
, use o seguinte comando:
helm -n apigee 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
apigeectl
Com apigeectl
, é possível excluir todos os componentes do ambiente de execução de uma só vez ou limitar o escopo
para excluir um por vez. Por exemplo, para excluir todos os componentes de uma vez:
$APIGEECTL_HOME/apigeectl delete -f OVERRIDES_FILE.yaml
Para excluir o componente cassandra
:
$APIGEECTL_HOME/apigeectl delete -f OVERRIDES_FILE.yaml --datastore
Para recriar componentes específicos (o grupo de ambientes neste exemplo):
Helm
helm upgrade ENV_GROUP apigee-virtualhost/ \ --install \ --namespace apigee \ --atomic \ --set envgroup=ENV_GROUP_NAME \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --env ENV_NAME --settings virtualhosts