Faça a gestão dos componentes do plano de tempo de execução

Este tópico explica como configurar e gerir os componentes do plano de execução do Apigee hybrid. Para ver uma lista dos componentes do plano de tempo de execução que pode configurar, consulte a vista geral da configuração do serviço de tempo de execução.

Acerca do ficheiro de substituições

Quando instala o tempo de execução híbrido num cluster pela primeira vez, tem de criar um ficheiro de substituições de configuração. Este ficheiro permite substituir os valores de configuração predefinidos conforme necessário, configurar ambientes, fazer referência a certificados TLS e chaves de contas de serviço, atribuir pools de nós do Kubernetes a componentes híbridos específicos, etc.

Os passos de instalação híbrida explicam o processo de criação de um ficheiro de substituições e de aplicação da sua configuração a um cluster. Se quiser alterar a configuração mais tarde, modifique o ficheiro de substituições que criou e volte a aplicá-lo.

Fazer uma alteração de configuração

Para fazer uma alteração de configuração a um componente do plano de execução híbrido, edite o ficheiro de substituições e aplique as alterações com apigeectl.

Por exemplo, para alterar a quantidade de réplicas no processador de mensagens, siga estes passos:

  1. Abra o ficheiro YAML de substituições. Certifique-se de que usa o mesmo ficheiro de substituições que foi usado para instalar o tempo de execução híbrido no cluster.
  2. Localize o elemento runtime no ficheiro. Por exemplo:
    ...
    runtime:
      nodeSelector:
        key: cloud.google.com/gke-nodepool
        value: apigee-runtime
      replicaCountMin: 1
      replicaCountMax: 2
    ...
  3. Altere as propriedades de contagem de réplicas conforme necessário. Por exemplo:
    ...
    runtime:
      nodeSelector:
        key: cloud.google.com/gke-nodepool
        value: apigee-runtime
      replicaCountMin: 2
      replicaCountMax: 4
    ...
  4. Use apigeectl para aplicar a alteração ao cluster:
    apigeectl apply -f ./my_overrides.yaml -c runtime

Que propriedades de configuração pode modificar?

Pode encontrar a lista completa de propriedades configuráveis na referência de propriedades de configuração. A referência apenas lista as propriedades que pode modificar. Se tentar modificar uma propriedade que não esteja na referência, a alteração é ignorada.

Como usar a referência de configuração

A referência da propriedade de configuração usa a notação de pontos para descrever os elementos de configuração, em que o primeiro item é o nome do elemento de nível superior seguido de propriedades e propriedades secundárias. Por exemplo:

authz.image.pullPolicy

No ficheiro de substituições, a propriedade está formatada em YAML adequado. Para o exemplo acima, o elemento authz de nível superior tem uma indentação à esquerda e as propriedades dos subelementos têm uma indentação abaixo. Além disso, o YAML requer dois pontos no final de cada elemento e subelemento.

Por exemplo, para definir a propriedade authz.image.pullPolicy como Always, localize esta secção YAML no ficheiro de substituições e defina-a:

authz:
  image:
    pullPolicy: Always

Por outro lado, a propriedade cassandra.auth.admin.password (conforme está listada na referência da propriedade de configuração) é usada para definir a palavra-passe de administrador do Cassandra. Para a alterar, localize o seguinte YAML no ficheiro de substituições e defina-o:

cassandra:
  auth:
    admin:
      password: abc123

Lembre-se de que a referência da propriedade de configuração descreve todas as propriedades que pode definir em componentes do plano de tempo de execução híbrido. Siga o padrão explicado acima para modificar estes elementos no ficheiro de substituições antes de aplicar as alterações ao cluster.

Usar ficheiros de substituições de exemplos predefinidos

Quando instala o tempo de execução híbrido pela primeira vez, o Apigee recomenda que use um dos ficheiros de substituições de exemplo pré-configurados. Estes exemplos fornecem um conjunto completo de propriedades de configuração para cenários de instalação específicos, como a configuração de uma instalação de produção ou de teste. Só tem de fornecer valores adequados para as propriedades e aplicar o ficheiro de substituições ao seu cluster. Consulte o artigo Crie um ficheiro de substituições para mais informações.

Acerca das predefinições de configuração

O Apigee mantém a sua configuração de componentes predefinida no ficheiro hybrid_root_dir/config/values.yaml. Os ficheiros de substituições seguem a mesma estrutura YAML que values.yaml.

Normalmente, um ficheiro de substituições 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 aplica uma configuração a um cluster, as substituições são unidas com as predefinições para criar a configuração completa do cluster do Kubernetes. Consulte também Produzir a configuração unida.

O código seguinte mostra a configuração predefinida do componente mart, conforme encontrado em values.yaml. Tenha em atenção que alguns valores têm predefinições, enquanto outros, como sslCertPath e sslKeyPath, não têm. Tem de fornecer estes valores em falta no ficheiro de substituições, conforme explicado nos passos de instalação. Se quiser alterar algum dos valores predefinidos, certifique-se de que são editáveis consultando a referência da propriedade de configuração.

...
mart:
  replicaCountMin: 2
  replicaCountMax: 4
  targetCPUUtilizationPercentage: 75
  terminationGracePeriodSeconds: 30
  sslCertPath:
  sslKeyPath:
  hostAlias:
  nodeSelector:
    key:
    value:
  revision: blue
  image:
    url: "google/apigee-mart-server"
    tag: "1.0.0"
    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 as predefinições de um componente e o componente ainda não estiver no ficheiro de substituições, pode copiar o respetivo YAML de values.yaml para o ficheiro de substituições e modificá-lo aí.

Ficheiros de substituições de exemplo

O Apigee fornece um conjunto de ficheiros de substituições de exemplo para ajudar a configurar a sua implementação híbrida. É uma boa prática copiar e modificar o ficheiro de substituições que corresponde mais de perto aos requisitos de instalação.

Os seguintes exemplos estão incluídos no diretório hybrid_root_dir/examples:

Ficheiros de substituições de exemplo Descrição
overrides-small.yaml Este exemplo é ideal para começar rapidamente. Usa a área de ocupação mínima recomendada para iniciar os componentes de tempo de execução híbrido. Esta configuração de exemplo baseia-se o mais possível nas definições e nos valores predefinidos. Todas as réplicas mínimas estão definidas como 1.
overrides-medium.yaml Este exemplo é um bom ponto de partida para ambientes de teste e controlo de qualidade. Os componentes individuais receberam um nível mais elevado de recursos para lidar com tráfego adicional. O Cassandra usa discos SSD para o desempenho. Neste ambiente, recomenda-se que os utilizadores instalem componentes com estado e sem estado em nós separados. Consulte Configure nós dedicados.
overrides-large.yaml Este exemplo é um bom ponto de partida para ambientes de elevado desempenho, como pré-produção e produção. O exemplo inclui propriedades para definir chaves de encriptação, palavras-passe e outras. Os componentes individuais têm um mínimo de duas réplicas.

Produzir a configuração unida

Pode usar a flag --dry-run com apigeectl para gerar o ficheiro de configuração unido sem o aplicar realmente ao cluster. Esta opção é útil para depurar um problema de instalação, porque mostra exatamente o que vai ser aplicado ao cluster. Também é uma boa prática gerar a configuração e armazená-la no controlo de origem para ter uma referência dos recursos instalados e configurados no cluster.

Por exemplo:

apigeectl apply -f ./my_overrides.yaml --dry-run --print-yaml > apigee-hybrid.yaml

Para mais informações, consulte apigeectl.

Crie vários ficheiros de substituições conforme necessário

Pode criar quantos ficheiros de substituições quiser, em que cada um cumpre um requisito específico. Por exemplo, pode ter um ficheiro de substituições que ajuste o cluster para produção e outro para criar um cluster de testes. Em seguida, pode manter estes ficheiros no seu sistema de controlo de origem.

Use a opção -f com apigeectl para especificar a localização e o nome de um ficheiro de substituições. Por exemplo:

apigeectl apply  -f ./test_env_override.yaml

Para mais informações, consulte apigeectl.

Elimine componentes do plano de tempo de execução específicos do híbrido

Para eliminar os componentes do plano de tempo de execução específicos do híbrido do seu cluster, use o comando apigeectl delete. Estes componentes incluem o sincronizador, o mart, o tempo de execução, o cassandra e o udca. Certifique-se de que especifica o mesmo ficheiro de substituições que usou para instalar os componentes de tempo de execução:

Por exemplo:

apigeectl delete -f ./my_overrides.yaml

Pode usar o comando apigeectl apply para recriar um componente específico ou componentes:

apigeectl apply -c synchronizer -f ./my_overrides.yaml

Para mais informações, consulte apigeectl.

Elimine um componente específico

Se quiser eliminar apenas um componente específico, use a opção -c com apigeectl delete. Certifique-se de que especifica o mesmo ficheiro de substituições que usou para instalar os componentes de tempo de execução.

Por exemplo, para eliminar o componente Synchronizer, use este comando:

apigeectl delete -c synchronizer -f ./my_overrides.yaml

Em seguida, pode usar o comando apigeectl apply para recriar o componente:

apigeectl apply -c synchronizer -f ./my_overrides.yaml

Para mais informações, consulte apigeectl.

Elimine todos os componentes

Para eliminar todos os componentes híbridos do cluster, incluindo os criados pelo comando apigeectl init, use o comando apigeectl delete com a flag --all. Certifique-se de que especifica o mesmo ficheiro de substituições que usou para instalar os componentes de tempo de execução:

Por exemplo:

apigeectl delete -f ./my_overrides.yaml --all

Para mais informações, consulte apigeectl.