rpc 구성 블록

rpc 구성 블록 (RPC Configuration Block)

이 페이지는 Nomad 에이전트 구성의 rpc 블록에서 Nomad의 RPC 동작을 구성하는 방법에 대한 참조 정보를 제공해요. RPC 세션 구성, 스트림 수신 대기열(accept backlog), keepalive 간격, 개방 스트림 타임아웃을 수정해요.

출처: 문서

본문

이 값들을 비워두고 기본값을 사용하는 것을 강력히 권장해요. 기본값은 수천 개 노드로 구성된 클러스터에서 프로덕션 검증을 거친 값이에요. 특정 사용 사례를 개선할 명확한 이유가 있을 때만 rpc 블록을 구성하세요.

rpc {
  accept_backlog           = 256
  keep_alive_interval      = "30s"
  connection_write_timeout = "10s"
  max_stream_window_size   = 262144
  stream_open_timeout      = "75s"
  stream_close_timeout     = "5m"
  dial_timeout             = "10s"
}

rpc 매개변수 (Parameters)

  • accept_backlog (int: 256) — RPC 서버의 수락을 기다리는 RPC 스트림(요청)이 얼마나 많을 수 있는지 제한해요.
  • keep_alive_interval (string: 30s) — keep alive를 얼마나 자주 수행할지 지정해요.
  • connection_write_timeout (string: 10s) — 안전 밸브용 타임아웃으로, 이 시간이 지나면 기본 연결에 문제가 있다고 의심하고 연결을 닫아요. 일반적으로 빠르게 진행되기를 기대하는 쓰기 작업에만 적용돼요.
  • max_stream_window_size (int: 262144) — 스트림에 허용되는 최대 윈도우 크기(바이트)를 제어해요.
  • stream_open_timeout (string: 75s) — 피어로부터 ACK를 기다리는 동안 스트림이 대기(pending) 상태로 유지되는 최대 시간이에요. 타임아웃에 도달하면 Nomad는 세션을 우아하게 닫아요. 0 값을 주면 스트림 개방 타임아웃이 비활성화되어 개방 스트림 호출이 무제한으로 차단될 수 있어요.
  • stream_close_timeout (string: 5m) — close가 호출됐을 때 연결을 강제로 닫기 전에 스트림이 half-closed 상태로 유지되는 최대 시간이에요. 강제로 닫힌 연결은 수신 버퍼를 비우고, 해당 스트림에 대해 이후 수신되는 패킷을 버리며, 원격 측에 RST를 보내요.
  • dial_timeout (string: 10s) — 피어 에이전트에 대한 새 아웃바운드 RPC 연결을 설정하는 데 허용되는 최대 시간을 제어해요.

더 알아보기 (Learn more)