Kong 기본 구성 요소
- Service:
- 실제 백엔드 애플리케이션(API 서비스)을 나타냅니다.
- Kong은 이 Service에 요청을 라우팅합니다.
- Route:
- 클라이언트 요청을 특정 Service로 매핑하는 규칙입니다.
- URL 경로나 HTTP 메서드 등을 기반으로 라우팅할 수 있습니다.
- Plugin:
- Kong의 핵심 기능을 확장합니다.
- 인증, 속도 제한, 로깅, 트랜스포머 등의 작업을 수행할 수 있습니다.
- Consumer:
- API를 사용하는 클라이언트를 나타냅니다.
- 각 Consumer에 인증 정보 등을 연결할 수 있습니다.
Kong 설정 및 사용법
1. Kong Admin API 활성화
- Kong은 Admin API를 통해 설정 및 관리합니다.
- 기본적으로 Admin API는 http://localhost:8001에서 실행됩니다.
2. Service 생성
다음 명령어로 백엔드 서비스(예: compute-service)를 Kong에 등록합니다. url 은 포워딩하는 backend 의 주소입니다.
curl -i -X POST http://localhost:8001/services/ \
--data "name=compute-service" \
--data "url=http://compute.example.com"
3. Route 생성
클라이언트로 노출할 route 를 생성하는 것입니다. 즉 compute-service 에서 servers-route 는 http://localhost/v2/{project_id}/servers 라고 요청이 오면 servers-route 이라고 정의됩니다.
curl -i -X POST http://localhost:8001/services/compute-service/routes \
--data "paths[]=/v2/(?<project_id>[a-zA-Z0-9\-]+)/servers"
--data "name=servers-route"
728x90