네트워크
로드밸런서
리스너, 규칙, 대상 그룹, 헬스체크, 가중치 배포
Standard 이상에 포함됩니다. 구조는 클라우드의 애플리케이션 로드밸런서와 같습니다.
리스너 (HTTPS:443)
└─ 규칙 1 IF Host = api.example.com AND Path = /v1/* THEN 전달 → tg-api
└─ 규칙 2 IF Host = www.example.com THEN 전달 → tg-web
└─ 기본 고정 응답 404
대상 그룹 tg-api : 인스턴스 api-01:3000, api-02:3000 · 헬스체크 GET /health
리스너
- HTTP:80 — 기본 액션은 HTTPS로 리다이렉트(301)입니다. 바꿀 수 있습니다.
- HTTPS:443 — 인증서는 연결된 도메인에 따라 자동 선택됩니다. TLS 1.2 이상.
규칙
조건(IF)은 여러 개를 AND로 묶습니다.
| 조건 | 예 |
|---|---|
| Host | api.example.com, *.example.com |
| Path | /v1/*, /admin/* |
| HTTP 헤더 | X-Env = staging |
| 쿼리 문자열 | preview=1 |
| 소스 IP | 211.0.0.0/24 (사무실만 허용) |
액션(THEN)은 하나입니다.
| 액션 | 설명 |
|---|---|
| 전달 | 대상 그룹으로 보냅니다. 여러 그룹에 가중치를 줘 블루/그린·카나리 배포를 합니다. |
| 리다이렉트 | 301/302. #{host}, #{path}, #{query} 치환을 지원합니다. |
| 고정 응답 | 상태 코드와 본문을 그대로 돌려줍니다. 점검 페이지에 씁니다. |
규칙은 우선순위 순으로 평가되고, 맞는 규칙이 없으면 기본 액션이 적용됩니다. 저장하면 프록시 설정을 검증한 뒤 한 번에 반영하며, 검증에 실패하면 이전 설정이 유지됩니다.
대상 그룹과 헬스체크
대상은 인스턴스 + 포트입니다. 헬스체크는 경로·주기·임계치를 정합니다.
- 기본:
GET /10초마다, 3회 연속 실패 → 비정상 - 비정상 대상에는 트래픽을 보내지 않습니다. 모두 비정상이면 503을 돌려줍니다.
- 배포 직후
초기화상태는 첫 헬스체크 통과까지의 상태입니다.
WebSocket · HTTP/2
둘 다 기본 지원합니다. 별도 설정이 없습니다.
액세스 로그·지표
리스너별 요청 수, 상태 코드 분포, p95 응답 시간을 콘솔 모니터링에서 봅니다. 액세스 로그는 7일간 보관되며 내려받을 수 있습니다.