TLSStore
출처: TLSStore
본문
TLSStore
Traefik에서 인증서는 인증서 스토어(certificates stores)에 함께 그룹화돼요.
TLSStore는 Traefik TLS Store의 CRD 구현이에요.
TLSStore 객체를 만들기 전에 Traefik Kubernetes CRD를 Kubernetes 클러스터에 적용해야 해요.
기본 TLS Store
Traefik은 현재 "default"라는 이름의 TLS Store만 사용해요. 이 기본 TLSStore는 Traefik이 찾을 수 있는 네임스페이스에 있어야 해요. IngressRoute와 IngressRouteTCP 객체에 기본으로 사용되므로 실제로 참조할 필요는 전혀 없어요. 즉, 서로 다른 Kubernetes 네임스페이스에 default라는 이름의 스토어 두 개를 가질 수 없어요. 결과적으로 TLS 스토어와 관련해 합리적인 변경(그리고 필요한 경우에만)은 기본 TLSStore를 구성하는 것뿐이에요. defaultTLSResourcesNamespace provider 옵션은 이 클러스터 전역 스토어가 정의될 수 있는 네임스페이스를 제한해요.
Configuration Example (설정 예시)
TLSStore
apiVersion: traefik.io/v1alpha1
kind: TLSStore
metadata:
name: default
spec:
defaultCertificate:
secretName: supersecret
Configuration Options (설정 옵션)
| Field | Description | Required |
| certificates[n].secretName | 스토어에 추가할 키/인증서 쌍을 각각 보유한 Kubernetes Secrets 목록이에요. | No |
| defaultCertificate.secretName | SNI가 없거나 일치하는 도메인이 없는 연결에 제공되는 Kubernetes Secret의 이름이에요. 기본 인증서가 제공되지 않으면 Traefik은 생성된 인증서를 사용해요. defaultGeneratedCert 옵션이 설정된 경우 사용하지 마세요. | No |
| defaultGeneratedCert.resolver | 기본 인증서를 생성하는 데 사용할 ACME 리졸버의 이름이에요. defaultCertificate 옵션이 설정된 경우 사용하지 마세요. | No |
| defaultGeneratedCert.domain.main | 기본 인증서를 생성하는 데 사용되는 주요 도메인이에요. defaultCertificate 옵션이 설정된 경우 사용하지 마세요. | No |
| defaultGeneratedCert.domain.sans | 기본 인증서를 생성하는 데 사용되는 Subject Alternative Name 목록이에요. defaultCertificate 옵션이 설정된 경우 사용하지 마세요. | No |
DefaultCertificate vs DefaultGeneratedCert
defaultCertificate와 defaultGeneratedCert가 모두 설정되면 defaultCertificate.secretName에 포함된 TLS 인증서가 제공돼요. ACME 기본 인증서는 생성되지 않아요.