NGINX Plus API 로 구성 및 모니터링 전환
NGINX Plus API 의 차별화 기능 중 하나는 공유 메모리를 사용하여 추가 메트릭, 런타임 상태 및 구성을 저장하는 것입니다. 이 공유 메모리를 통해 NGINX Plus는 자세한 확장 상태 데이터를 수집하고 효율적인 상태 검사를 구현하며 동적 구성 API를 제공할 수 있습니다.
NGINX Plus R12 및 이전 버전에서는 이 공유 메모리에 액세스하기 위해 두 가지 API를 제공했습니다. 하나는 확장된 상태 데이터를 읽기 위한 API(status API)이고 다른 하나는 업스트림 그룹 구성을 관리하기 위한 것(upstream_conf API)입니다. NGINX Plus R13에서 우리는 새롭고 통합된 NGINX Plus API를 도입했으며 status 및 upstream_conf API가 더 이상 사용되지 않으며 이후 릴리스에서 제거될 것이라고 발표했습니다.
이제 R15 버전까지는 사용하지 않는 API에 대한 지원을 포함하는 마지막 버전입니다. R16 버전부터는 사용하지 않는 API들이 제거됩니다.

레거시 API에서 새로운 NGINX Plus API로 전환
이 문서에서는 이전 API와 새 API 간의 변경 사항을 요약하고 이전 API에서 아직 마이그레이션하지 않은 사용자를 위한 지침을 제공합니다.
목록
1. 권장 구성
2. 확장 상태 API 교체
2-1 더 이상 사용되지 않는 상태 API와 새로운 NGINX Plus API 의 차이점
3. Upstream Conf API 교체
3-1 지원이 중단된upsteam_conf
API와 새 NGINX Plus API의 차이점
4. 결론
1. 권장 구성
새로운 NGINX Plus API에 대한 권장 구성은 이전 status 및 upstream_conf API 보다 간단합니다. 다음 구성은 API 및 라이브 활동 모니터링 대시보드에 대한 액세스를 가능하게 하는 간단한 가상 서버를 생성합니다.
server {
listen 192.168.1.23;
# ...
location /api {
api [write=on];
# directives limiting access to the API
}
location = /dashboard.html {
root /usr/share/nginx/html;
}
# Redirect requests made to the old dashboard
location = /status.html {
return 301 /dashboard.html;
}
}
/api URI 경로 에 대한 액세스를 보호하는 것이 좋습니다.
API를 사용하여 업스트림 그룹을 재구성하거나 수집된 통계 세트를 지우려는 경우 write=on
매개변수가 필요합니다. 상태 정보를 검색할 필요는 없습니다.
2. 확장 상태 API 교체
더 이상 사용되지 않는 상태 API는 HTTP GET
작업을 지원하고 내부 NGINX Plus 지표를 포함하는 단일 JSON 문서를 제공했습니다. 하위 집합을 처리하는 URI를 통해 JSON 문서의 더 작은 하위 집합으로 드릴다운할 수 있습니다.
새로운 NGINX Plus API는 HTTP GET 작업을 지원하여 API namespace 를 탐색하고 NGINX Plus 메트릭이 포함된 여러 JSON 문서 중 하나를 검색합니다. 적절한 URI를 사용하여 하위 집합으로 드릴다운하거나 필드 목록을 사용하여 더 작은 데이터 하위 집합을 얻을 수 있습니다. DELETE
메서드를 사용하여 통계를 재설정 할 수도 있습니다.
2-1. 더 이상 사용되지 않는 상태 API와 새로운 NGINX Plus API 의 차이점
더 이상 사용되지 않는 상태 API를 사용하는 모든 클라이언트 또는 서비스는 새로운 NGINX Plus API를 지원하도록 업데이트해야 합니다. 새 API로 전환할 때 다음 사항에 유의하세요.
api
지시문 은 NGINX Plus 구성 파일의 상태 지시문으로 대체합니다- 확장된 상태 데이터에 액세스하기 위한 일반적인 URI는 /status 를 대체하는 /api 입니다.
- 라이브 활동 모니터링 대시보드에 액세스하기 위한 기존 URI는 /status.html 을 대체는 /dashboard.html 입니다.
- 확장된 상태 데이터는 더 이상 단일 JSON 문서로 사용할 수 없습니다. 확장성과 구조상의 이유로 별도의 문서로 분할됩니다. 원하는 데이터를 얻기 위해 여러 GET 요청을 해야 할 수도 있습니다.
사용되지 않는 상태 API | 새로운 NGINX 플러스 API | |
---|---|---|
유효성 | NGINX Plus R15 및 이전 버전 | NGINX 플러스 R13 이상 |
활성화 지시문 | status | api [write=on] |
요청의 기존 URI | /상태 | /api/version/ |
지원되는 방법 | GET | GET ,DELETE |
응답 페이로드 | 단일 JSON 문서 | 여러 JSON 문서 |
기존 대시보드 위치 | /status.html | /dashboard.html |
3. Upstream Conf API 교체
더 이상 사용되지 않는 upstream_conf API는 업스트림 그룹의 구성원을 관리하는 CLI 중심 방법을 제공했습니다. 이 API를 사용하면 NGINX Plus 구성 파일을 수정한 다음 구성을 다시 로드할 필요 없이 로드 밸런싱 구성을 동적으로 변경할 수 있습니다.
새로운 NGINX Plus API를 사용하여 업스트림 그룹의 구성원을 수정할 수도 있습니다. 다음 URI에서 업스트림 그룹 구성 및 메트릭에 액세스합니다.
/api/ 버전 /http/upstreams/ httpUpstreamName /servers/
각각 POST, DELETE 및 PATCH 메소드를 사용하여 업스트림 서버의 매개변수를 추가, 제거 및 수정합니다.
지원이 중단된 upsteam_conf
API와 새 NGINX Plus API 의 차이점
더 이상 사용되지 않는 upstream_conf API를 사용하는 모든 클라이언트 또는 서비스는 새로운 NGINX Plus API를 지원하도록 업데이트해야 합니다. 새 API로 전환할 때 다음 사항에 유의하세요.
api
지시문 은 NGINX Plus 구성 파일의upstream_conf
지시문을 대체합니다 .- 동적 재구성을 위한 일반적인 URI는 /upstream_conf 를 대체하는 /api 입니다 .
- 작업 매개변수는 더 이상 쿼리 문자열로 제공되지 않습니다. 대신 HTTP 메서드와 JSON 요청 본문을 사용하여 RESTful 방식으로 작동합니다.
지원 중단된 upstream_conf API | 새로운 NGINX 플러스 API | |
---|---|---|
유효성 | NGINX Plus R15 및 이전 버전 | NGINX 플러스 R13 이상 |
활성화 지시문 | upstream_conf | api write=on |
기존 URI | /upstream_conf | /api/version/ |
일반적인 작동 | GET 쿼리 문자열이 있는 CLI 또는 HTTP | RESTful, JSON 요청 본문 데이터 포함 |
지원되는 방법 | GET 쿼리 문자열 포함 | GET , DELETE , POST ,PATCH |
4. 결론
새로운 NGINX Plus API는 표준 RESTful 사례를 따라 NGINX Plus status tree 및 구성에서 리소스에 액세스하고 업데이트합니다. 클라이언트가 더 쉽게 액세스할 수 있으며 API 버전 관리 지원을 통해 이러한 클라이언트를 더 쉽게 유지 관리할 수 있습니다. API는 Open API 사양(Swagger) 형식으로 문서화됩니다. swagger 파일은 NGINX Plus에 포함되어 있거나 온라인에서 찾아볼 수 있습니다.
API는 향후 NGINX Plus 혁신의 기반입니다. R13 릴리스에서는 API로 관리되는 새로운 Key-Value Store도 추가했으며 NGINX Plus R14에서는 TCP/UDP(스트림) 가상 서버와 HTTP 업스트림 서버에 대한 drain operation을 지원하도록 확장했습니다. NGINX Plus R15는 NGINX Plus 클러스터 동기화를 위해 NGINX Plus 노드가 구성되었는지 확인하기 위한 API 액세스를 추가했습니다. 앞으로 출시될 릴리스에서 더 많은 혁신을 찾아보십시오.
NGINX Plus API를 직접 사용해 보십시오. 오늘 무료 30일 평가판을 시작하거나 당사에 문의하십시오 .
또한 NGINX에 대한 최신 소식을 빠르게 전달받고 싶으시면 아래 뉴스레터를 구독하세요.
댓글을 달려면 로그인해야 합니다.