Arquivos de configuração incorretos

Esta é a documentação do Apigee Edge.
Acesse Documentação da Apigee X.
informações

Sintoma

O Edge Router é implementado usando o NGINX. Durante o processo de upgrade do Edge ou quando alterar a configuração do roteador, podem ocorrer erros de configuração do NGINX. Quando esses erros ocorrerem, o Edge marcará todos os arquivos de configuração do NGINX que causaram o problema para /opt/nginx/conf.d:

-rw-r--r-- 1 apigee apigee 522 Jul 20 08:41 0-default.conf.bad 
-rw-r--r-- 1 apigee apigee 577 Jul 20 08:42 0-fallback.conf 
-rw-r--r-- 1 apigee apigee 1062 Jul 20 08:18 0-map.conf 
-rw-r--r-- 1 apigee apigee 1887 Jul 20 08:42 custorg_test_default.conf.bad

Mensagens de erro

Nenhuma mensagem de erro será exibida. No entanto, talvez não seja possível executar sua API proxies devido aos arquivos de configuração incorretos.

Causas possíveis

Normalmente, os arquivos de configuração NGINX são marcados como inválidos porque valores incorretos estão definidos como Propriedades NGINX no arquivo /opt/apigee/customer/application/router.properties ou alterações incorretas forem feitas em um host virtual.

Diagnóstico

  1. Remova o sufixo .bad dos nomes dos arquivos na /opt/nginx/conf.d para que terminem em .conf.
  1. Execute a ferramenta configtest do NGINX para determinar o motivo da falha:
    /opt/nginx/scripts/apigee-nginx configtest
    

Resolução

  1. Se o teste de configuração identificar o motivo dos arquivos de configuração incorretos, corrija o problema da seguinte forma: fazer as alterações apropriadas na propriedade específica na arquivo /opt/apigee/customer/application/router.properties ou host virtual.
  1. Remova o diretório /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. Reinicie o roteador:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  1. Você não verá mais arquivos de configuração ruins no /opt/nginx/conf.d .

Se o problema persistir, entre em contato com o suporte do Apigee Edge.

Aqui está um exemplo que mostra como corrigir o problema com base nas informações fornecidas por o teste de configuração do NGINX.

Exemplo 1: valor incorreto definido para uma propriedade do NGINX

  1. Digamos que você atualizou a propriedade "proxy_busy_buffers_size" para 128K no arquivo /opt/apigee/customer/application/router.properties, conforme mostrado abaixo:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k 
    

Isso fez com que os arquivos de configuração fossem marcados como inválidos em /opt/apigee/nginx/conf.d diretório.

  1. Execute o comando configtest do NGINX para determinar o motivo da falha:
    /opt/nginx/scripts/apigee-nginx configtest
    nginx: [emerg] "proxy_busy_buffers_size" must be equal to or greater than the maximum of the value of "proxy_buffer_size" and one of the "proxy_buffers" in /opt/nginx/conf/nginx.conf:47
    nginx: configuration file /opt/nginx/conf/nginx.conf test failed
    

Os resultados de configtest indicam que o valor da propriedade proxy_busy_buffers_size deve ser igual ou maior que proxy_buffer_size, mas parece ter sido definido com um valor incorreto.

  1. Verifique os valores definidos para as propriedades proxy_buffer_size e proxy_frequently_buffers_size No arquivo 0-default.conf:
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
    
  1. Atualize o valor de proxy_available_buffers_size para 512K no Arquivo /opt/apigee/customer/application/router.properties:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
    
  1. Remova a pasta /opt/nginx/conf.d:
    rm -rf /opt/nginx/conf.d
    
  1. Reinicie o roteador:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    

O problema foi corrigido, e os arquivos de configuração incorretos foram removidos.

Exemplo 2: falha no processo de upgrade do NGINX (somente nuvem privada 18.01)

Digamos que você execute configtest e receba as seguintes respostas:

/apigee-nginx configtest

 nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok
 nginx: [emerg] zero size shared memory zone "perclient"
 nginx: configuration file /opt/nginx/conf/nginx.conf test failed

Essa falha indica que houve falha no processo ao fazer upgrade do NGINX de 1.10.x para 1.12.x. Há um bug conhecido relacionado ao upgrade da nuvem privada do Edge para a versão 18.01.

Para diagnosticar adequadamente esse problema (apenas se você estiver na nuvem privada 18.01), faça o seguinte:

rpm -aq | grep apigee-nginx

Esse comando retornará o rpm instalado como a versão 1.12.x. Se não tiver, siga estas etapas:

  1. Pare o componente do roteador de borda.
  2. Faça backup do componente do roteador de borda.
  3. Execute este comando para fazer upgrade para o apigee-nginx 1.2.x:
  4. sudo yum update apigee-nginx
  5. Excluir todos os *.bad arquivos em /opt/apigee/nginx/conf.d.
  6. Reinicie o componente do roteador de borda.