Traefik Redis 문서
Traefik Redis 문서 (Traefik Redis Documentation)
본문
Traefik & Redis
라우팅 구성 갱신 (Routing configuration updates)
라우팅 구성 갱신에는 Redis keyspace 알림(notifications)이 활성화되어 있어야 해요.
클라우드 관리형 Redis 서비스(예: GCP Memorystore, AWS ElastiCache)는 CPU 성능 우려 때문에 기본적으로 이를 비활성화할 수 있어요. 자세한 내용은 Redis 문서 또는 클라우드 프로바이더 문서에서 구성 단계를 확인하세요.
구성 예시 (Configuration Example)
아래에서 설명하는 것처럼 Redis 프로바이더를 활성화할 수 있어요.
File (YAML)
providers:
redis: {}
File (TOML)
[providers.redis]
CLI
--providers.redis.endpoints=127.0.0.1:6379
구성 옵션 (Configuration Options)
| Field | Description | Default | Required |
| providers.providersThrottleDuration | 구성 리로드 이후, 새로운 구성 갱신 이벤트를 반영하기까지 기다리는 최소 시간. 이 시간 안에 여러 이벤트가 발생하면 가장 최근 이벤트 하나만 반영되고 나머지는 모두 버려져요. 이 옵션은 프로바이더별로 설정할 수 없지만, 스로틀링 알고리즘은 각 프로바이더에 독립적으로 적용됩니다. | 2s | No |
| providers.redis.endpoints | Redis에 접근하기 위한 엔드포인트를 정의해요. | "127.0.0.1:6379" | Yes |
| providers.redis.rootKey | 구성의 루트 키를 정의해요. | "traefik" | Yes |
| providers.redis.username | Redis에 연결할 때 사용할 사용자 이름을 정의해요. | "" | No |
| providers.redis.password | Redis에 연결할 때 사용할 비밀번호를 정의해요. | "" | No |
| providers.redis.db | Redis에 연결한 후 선택할 데이터베이스를 정의해요. | 0 | No |
| providers.redis.tls | Redis와의 보안 연결에 사용되는 TLS 구성을 정의해요. | - | No |
| providers.redis.tls.ca | Redis와의 보안 연결에 사용되는 인증 기관(CA)의 경로를 정의해요. 기본값은 시스템 번들(system bundle)이에요. | "" | No |
| providers.redis.tls.cert | Redis와의 보안 연결에 사용되는 공개 인증서의 경로를 정의해요. 이 옵션을 사용하려면 key 옵션도 설정해야 해요. | "" | Yes |
| providers.redis.tls.key | Redis와의 보안 연결에 사용되는 개인 키의 경로를 정의해요. 이 옵션을 사용하려면 cert 옵션도 설정해야 해요. | "" | Yes |
| providers.redis.tls.insecureSkipVerify | TLS 연결을 수립할 때 인증서가 커버하는 호스트 이름과 무관하게, Redis가 제시하는 어떤 인증서든 수락하도록 프로바이더에 지시해요. | false | No |
| providers.redis.sentinel | Redis Sentinel과 상호작용하는 데 사용되는 Sentinel 구성을 정의해요. | - | No |
| providers.redis.sentinel.masterName | Sentinel 마스터의 이름을 정의해요. | "" | Yes |
| providers.redis.sentinel.username | Sentinel 인증을 위한 사용자 이름을 정의해요. | "" | No |
| providers.redis.sentinel.password | Sentinel 인증을 위한 비밀번호를 정의해요. | "" | No |
| providers.redis.sentinel.latencyStrategy | 명령을 가장 가까운 마스터 또는 레플리카 노드로 라우팅할지 여부를 정의해요(RandomStrategy 및 ReplicaStrategy와 상호 배타적). | false | No |
| providers.redis.sentinel.randomStrategy | 명령을 마스터 또는 레플리카 노드에 무작위로 라우팅할지 여부를 정의해요(LatencyStrategy 및 ReplicaStrategy와 상호 배타적). | false | No |
| providers.redis.sentinel.replicaStrategy | 모든 명령을 레플리카 노드로만 라우팅해요(LatencyStrategy 및 RandomStrategy와 상호 배타적). | false | No |
| providers.redis.sentinel.useDisconnectedReplicas | 연결된 레플리카를 얻을 수 없을 때 마스터와 연결이 끊긴 레플리카를 사용할지 여부를 정의해요. | false | false |
라우팅 구성 (Routing Configuration)
라우팅(routing) 문서의 전용 섹션을 참고하세요.