Closed bluejayA closed 2 years ago
성일님과 상의해서 범위 조정 필요
내일 싱크시 문의
우선 TKS bastion 노드에서 수동으로 다음 내용 진행해봄
# sealed-secret controller 설치 #
wget https://github.com/bitnami-labs/sealed-secrets/releases/download/v0.12.1/controller.yaml
kubectl apply -f controller.yaml
# (향후 sealing 에 사용하기 위해) controller로부터 인증서 추출 #
kubectl get secret -n kube-system -l sealedsecrets.bitnami.com/sealed-secrets-key -o jsonpath="{.items[0].data.tls\.crt}" | base64 -d > sealed-secret-tls.ca
# taco-cat 도메인 인증서 secret 획득 #
kubectl get secret taco-cat-tls -n argo -o yaml > taco-cat-tls.yml
# taco-cat 인증서 secret을 seal #
kubeseal --format=yaml --cert=sealed-secret-tls.ca < taco-cat-tls.yml > sealed-taco-cat-tls.yaml
seal된 secret을 tks-admin-site 에 테스트 차원에서 업로드 https://github.com/openinfradev/tks-admin-site/blob/main/sealed-certificates/taco-cat-tls-sealed.yaml
controller가 사용하는 master key 도 계속 사용되므로 admin-site repo 에 올려두고 controller 설치 전에 미리 secret으로 생성해두어야함. https://github.com/openinfradev/tks-admin-site/blob/main/sealed-secret-key/master-key-secret.yaml
mgmt cluster 설치가 자동화된다면 contoller 설치 및 secret 배포는 다음과 같이 가능할 것 같음. 'deploy-cert-on-mgmt' 등의 workflow 만들고,
## sealed-secret-master-key 설치 ##
## AppGroupOnAdmin task 호출해서 controller 설치 ##
- name: install-sealed-secret-controller
templateRef:
name: tks-create-application
template: AppGroupOnAdmin
arguments:
parameters:
- name: list
value: |
[
{ "path": “sealed-secret-controller", "namespace": “kube-system” },
{ "path": “kubed", "namespace": “kube-system” },
...
]
## Get sealed secret from git repo and deploy it to cluster ##
PR 제출 완료! https://github.com/openinfradev/tks-flow/pull/11
admin cluster와 user cluster 의 경우 배포시 로직이 조금 달라서, workflow를 분리해서 작성함. usercluster에 배포시 호출하는 tks-createapp workflow가 기본 createapp workflow와 통합되면, 이를 호출하는 workflow도 admin, user cluster 구분 없이 통합 가능할 것으로 보임.
tks-createapp의 경우 우선은 createapp과 변수명 등만 통일하였고, 차주 데모 완료후 본격적으로 통합 예정임.
본 티켓은 여기서 종료!
Describe the Story
- [ ] A clear and concise description of what this story is.
TKS-user Cluster SSL 도메인 인증서 배포를 위한 인프라 설치 및 설정
위 설치는 Ingress controller 설치전 완료 하고, domain 인증서를 사용할 NS는 생성 시,
sync=taco-tls label을 붙임
Acceptance criteria (Validation Scenario)
- [ ] This is something that can be verified to show that this story is satisfied. - [ ] This should have information for QA to validate this story.
Additional information (Optional)