사용자 지정 인증서 사용

Cluster API는 부트스트래핑에 사용되는 인증서와 키가 아래 규칙을 따를 것으로 예상한다. CABPK는 아직 존재하지 않는 경우 이 규칙을 사용하여 새 인증서를 생성한다.

각 인증서는 다음 중 하나의 이름을 가진 시크릿으로 저장해야 한다.

이름유형
[cluster name]-caCAopenssl req -x509 -subj “/CN=Kubernetes API” -new -newkey rsa:2048 -nodes -keyout tls.key -sha256 -days 3650 -out tls.crt
[cluster name]-etcdCAopenssl req -x509 -subj “/CN=ETCD CA” -new -newkey rsa:2048 -nodes -keyout tls.key -sha256 -days 3650 -out tls.crt
[cluster name]-proxyCAopenssl req -x509 -subj “/CN=Front-End Proxy” -new -newkey rsa:2048 -nodes -keyout tls.key -sha256 -days 3650 -out tls.crt
[cluster name]-saKey Pairopenssl genrsa -out tls.key 2048 && openssl rsa -in tls.key -pubout -out tls.crt

CA Key Age

CA 인증서 교환은 중요하지 않으므로 수명이 긴 CA를 생성하거나 중간 CA가 짧은 긴 루트/오프라인 CA를 사용하는 것이 좋습니다.

apiVersion: v1
kind: Secret
metadata:
  name: cluster1-ca
type: kubernetes.io/tls
data:
  tls.crt: <base 64 encoded PEM>
  tls.key: <base 64 encoded PEM>

자신의 CA를 사용하여 Kubeconfig 생성

  1. system:masters Kubernetes 역할에 대한 새 Certificate Signing Request (CSR)을 생성하거나 CN 아래에 다른 역할을 지정한다.
openssl req  -subj "/CN=system:masters" -new -newkey rsa:2048 -nodes -out admin.csr -keyout admin.key  -out admin.csr
  1. [cluster-name]-ca 키를 사용하여 CSR 서명:
openssl x509 -req -in admin.csr -CA tls.crt -CAkey tls.key -CAcreateserial -out admin.crt -days 5 -sha256
  1. 서명 키로 kubeconfig 업데이트
kubectl config set-credentials cluster-admin --client-certificate=admin.crt --client-key=admin.key --embed-certs=true
0 Shares:
답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

You May Also Like

1.7 실험적인 기능

이제 Cluster API는 새로운 기능을 가진 exp/ 디렉토리에 있는 새로운 실험 패키지와 함께 제공된다. 이 위치는 졸업 후…

1.7.2 ClusterResourceSet

실험 기능: ClusterResourceSet (알파) ClusterResourceSet 기능은 사용자가 정의한 리소스 세트(예: CNI/CSI)를 새로 생성된 클러스터와 일치시키는 데 자동으로 적용할…

Cluster API Book : 개념

개념 관리 클러스터(Management cluster) 워크로드 클러스터의 라이프사이클을 관리하는 쿠버네티스 클러스터다. 관리 클러스터는 하나 이상의 인프라 공급자가 실행되고, 머신과…

Cluster API Book : 페르소나

페르소나(Persona) 이 문서에서는 Cluster API 1.0 프로젝트의 사용자를 사용 사례에서 파생된 것으로 설명한다. 활용 사례별로 “현재 프로젝트에 대해…

1.4 MachineHealthCheck 구성

전제조건 MachinehealthCheck를 구성하기 전에 하나 이상의 MachineDeployment 또는 MachineSet가 배포된 작업 관리 클러스터가 있어야 한다. MachineHealthCheck란 무엇입니까? MachineHealthCheck는…