잘못된 구성 파일

<ph type="x-smartling-placeholder"></ph> 현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서.
정보

증상

에지 라우터는 NGINX를 사용하여 구현됩니다. Edge 업그레이드 프로세스 도중 또는 NGINX 구성 오류가 표시될 수 있습니다. 이러한 Edge는 문제를 일으킨 모든 NGINX 구성 파일을 /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

오류 메시지

오류 메시지는 표시되지 않습니다. 하지만 API를 실행하지 못할 수도 있습니다. 잘못된 구성 파일로 인해 15개 또는 10일

가능한 원인

일반적으로 NGINX 구성 파일은 잘못된 값이 /opt/apigee/customer/application/router.properties 파일의 NGINX 속성 가상 호스트에 잘못 변경사항이 발생한 경우일 수 있습니다.

진단

  1. 파일 이름에서 .bad 접미사를 /opt/nginx/conf.d 디렉터리로 이동하므로 .conf로 끝나야 합니다.
  1. NGINX configtest 도구를 실행하여 실패 이유를 확인합니다.
    /opt/nginx/scripts/apigee-nginx configtest
    

해상도

  1. 구성 테스트에서 구성 파일이 잘못된 이유를 확인한 후 다음을 수행하여 문제를 해결합니다. 적절한 변경사항을 적용할 수 있도록 /opt/apigee/customer/application/router.properties 파일 또는 가상 호스트.
  1. /opt/nginx/conf.d 디렉터리를 삭제합니다.
    rm -rf /opt/nginx/conf.d
    
  1. 라우터를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    
  1. 더 이상 잘못된 구성 파일이 /opt/nginx/conf.d 디렉터리에 있습니다.

문제가 계속되면 Apigee Edge 지원팀에 문의하세요.

이 예에서는 Google에서 제공한 정보를 바탕으로 문제를 해결하는 방법을 NGINX 구성 테스트를 실행합니다

예 1: NGINX 속성에 잘못된 값 설정

  1. 'proxy_busy_buffers_size' 속성을 업데이트했다고 가정해 보겠습니다. 최대 128K로 /opt/apigee/customer/application/router.properties 파일 형식을 아래:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k 
    

이로 인해 /opt/apigee/nginx/conf.d에서 구성 파일이 잘못된 것으로 표시되었습니다. 를 참조하세요.

  1. NGINX configtest 명령어를 실행하여 실패 이유를 확인합니다.
    /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
    

configtest 결과는 속성의 값이 proxy_busy_buffers_size는 이상이어야 합니다. proxy_buffer_size가 잘못된 값으로 설정된 것 같습니다.

  1. 속성에 설정된 값 확인 proxy_buffer_sizeproxy_바쁨_buffers_size (0-default.conf 파일:)
    proxy_buffer_size 512k;
    proxy_busy_buffers_size 128k;
    
  1. 다음에서 프록시_바쁨_buffers_size 값을 512K로 /opt/apigee/customer/application/router.properties 파일:
    conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
    
  1. /opt/nginx/conf.d 폴더를 삭제합니다.
    rm -rf /opt/nginx/conf.d
    
  1. 라우터를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart
    

문제가 해결되었으며 잘못된 구성 파일이 삭제되었습니다.

예시 2: 프로세스가 NGINX 업그레이드에 실패함 (Private Cloud 18.01만 해당)

configtest를 실행하고 다음 응답을 얻는다고 가정해 보겠습니다.

/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

이 실패는 프로세스가 NGINX를 1.10.x에서 1.12.x로 업그레이드하지 못했음을 나타냅니다. Edge Private Cloud를 버전 18.01로 업그레이드하는 것과 관련된 알려진 버그가 있습니다.

이 문제를 올바르게 진단하려면 (Private Cloud 18.01을 사용하는 경우에만) 다음을 수행합니다.

rpm -aq | grep apigee-nginx

이 명령어는 설치된 rpm을 버전 1.12.x로 반환합니다. 그렇지 않은 경우 다음 단계를 따르세요.

  1. 엣지 라우터 구성요소를 중지합니다.
  2. 에지 라우터 구성요소를 백업합니다.
  3. 다음 명령어를 실행하여 apigee-nginx 1.2.x로 업그레이드하세요.
  4. sudo yum update apigee-nginx
  5. /opt/apigee/nginx/conf.d.의 파일 *.bad개 모두 삭제
  6. 에지 라우터 구성요소를 다시 시작합니다.