서버 트래픽 비율 제한 설정

서버 트래픽 비율 제한 설정

Consul 서버로 들어오는 RPC 및 gRPC 트래픽에 대한 비율 제한(rate limit)을 구성하는 방법을 설명해 드릴게요. 서버의 읽기/쓰기 요청 수를 제한하여 과도한 부하를 방지할 수 있어요.

출처: 문서

본문

이 문서는 Consul 서버로 들어오는 RPC 및 gRPC 트래픽에 대한 비율 제한을 구성하는 방법을 설명해요.

개요

비율 제한은 각 Consul 서버에 개별적으로 적용되며 RPC 및 내부 gRPC 엔드포인트에서 서버로의 읽기 요청 또는 쓰기 요청 수를 제한해요.

Consul 서버로 들어오는 모든 요청은 결국 RPC 또는 내부 gRPC 요청을 수행하므로 전역 비율 제한은 Consul의 사용자 인터페이스(HTTP API 인터페이스, CLI, 서비스 메시의 서비스용 외부 gRPC 엔드포인트)에 적용돼요.

gRPC 요청 구성을 적절히 크기 조정하는 방법에 대한 자세한 내용은 비율 제한 설정 초기화를 참고해 주세요.

Consul 서버의 전역 비율 제한 설정

RPC 및 gRPC 트래픽 비율을 제한하려면 Consul 서버 구성에서 다음 설정을 구성해 주세요.

  • rate limiter 모드 설정
  • read_rate 설정
  • write_rate 설정

다음 예시에서 Consul 서버는 500회 이상의 읽기와 200회 이상의 쓰기 RPC 호출을 방지하도록 구성돼요:

Consul server agent

HCL / JSON

limits = {
    rate_limit = {
        mode = "enforcing"
        read_rate = 500
        write_rate = 200
    }
}
{
    "limits" : {
        "rate_limit" : {
            "mode" : "enforcing",
            "read_rate" : 500,
            "write_rate" : 200
        }
    }
}

요청 속도 트래픽 모니터링

요청 비율이 정의한 임계값 내에 유지되는지 확인하려면 요청 트래픽을 계속 모니터링해야 해요. 지표 및 로그 항목 확인 방법과 문제 해결 정보는 트래픽 비율 제한 데이터 모니터링을 참고해 주세요.

요청 비율 제한 비활성화

limits.request_limits.mode를 disabled로 설정하면 서비스가 지정된 읽기 및 쓰기 요청 제한을 초과할 수 있게 해줘요. 이는 컨트롤 플레인 요청 제한 구성 엔트리에 지정된 제한을 포함해요. 에이전트 구성에 지정된 다른 모드는 전역 트래픽 비율 제한에만 적용된다는 점에 유의해 주세요.

더 알아보기 (Learn more)