스파클링소다 3.0 SSL 인증서 적용 가이드

작성자 김민태 수정일 2023-01-04 16:29

#스파클링소다3.0, #스파클링소다3, #스파클링소다, #SparklingSoDA3.0, #SparklingSoDA3

아티클 관련 제품: SparklingSoDA3.0

들어가며

  • 스파클링소다 3.0은 pem 파일과 key파일만 준비 되면 언제든 SSL 인증서 적용이 가능합니다.  
  • 아래의 가이드를 따라하여 SSL 인증서 적용 방법에 대해 알아봅니다.






내용

고객사에서 발급한 key 파일과 pem 파일을 받아 임의의 위치에 업로드 후 진행합니다.

✓ 본 가이드의 파일 경로와 이름은 임의로 위와 같이 진행 됩니다.
 파일 이름이나 경로 위치는 다르더라도 가이드에 영향 없습니다.










nginx-ingress 설치 디렉토리 내부의 values.yaml 파일을 수정합니다.


# cd ~/sparklingsoda/install/nginx-ingress
# vi  values.yaml




213번째 줄 근처의 enableHttps 부분을 아래와 같이 수정 합니다.


    213     enableHttp: false
    214     exposeHttpPort: 80
    215     enableHttps: true
    216     exposeHttpsPort: 443




76번째 줄 부분의 extraArgs: 부근이 아래 소스와 같은지 확인합니다.


     76   extraArgs:
     77     annotations-prefix: "ingress.kubernetes.io"
     78     default-ssl-certificate: "devai-cluster/sparklingsoda-https-secret"





nginx-ingress 디렉토리 하위의 create-tls-secret.sh 스크립트 파일 내용을 확인합니다.


# cd ~/sparklingsoda/install/nginx-ingress
# vi create-tls-secret.sh
#!/usr/bin/env bash

SECRET_NAME="sparklingsoda-https-secret"
KEY_FILE=$1
CERT_FILE=$2

kubectl delete secret ${SECRET_NAME}

kubectl -n devai-cluster create secret tls ${SECRET_NAME} --key ${KEY_FILE} --cert ${CERT_FILE}
✓ 위의 소스 코드와 다른 점이 있는지 확인합니다.




 secret 파일을 생성 후 확인합니다.



▶︎ 생성
# ./create-tls-secret.sh <key file 위치> <pem file 위치>



 예시 ↓
# ./create-tls-secret.sh ./server.key ./server.pem



✓ 확인
# kubectl get secrets -n devai-cluster



주요 파드 재기동 후 정상 적용 확인합니다.




nginx 적용 업데이트 
# cd ~/sparklingsoda/install/nginx-ingress
# ./upgrade-nginx-ingress.sh



스파클링소다 포탈 재기동
# cd ~/sparklingsoda/setup/spsd-portal
# ./uninstall-charts.sh


 uninstall-charts.sh 실행 후 스파클링소다 포탈 파드들이 모두 내려가는지 확인합니다.
# watch kubectl get pod | grep devai

Every 2.0s: kubectl get pod | grep devai                                                                                                  Wed Jan  4 02:17:01 2023

devai-77dfd8f5cf-5g64t                     0/1    Terminating   1       
devai-monitor-59d4849564-rkw99             0/1    Terminating   1       
devai-service-mariadb-6cd7b484c6-w7ld7     1/2    Terminating   4       
devai-svc-6b4b464d8f-j5bpn                 0/1    Terminating   1       


Terminating 된 파드가 모두 내려간 것을 확인하면 포탈 파드들을 다시 기동시킵니다.


# cd ~/sparklingsoda/setup/spsd-portal
# ./install-charts.sh


 install-charts.sh 실행 후 스파클링소다 포탈 파드들이 모두 정상적으로 기동되는지 확인합니다.
# watch "kubectl get pod | grep devai"
 
Every 2.0s: kubectl get pod | grep devai                                                                                                  Wed Jan  4 02:19:52 2023

devai-77dfd8f5cf-5g64t                           1/1     Running   1         
devai-monitor-59d4849564-rkw99                   1/1     Running   1          
devai-service-mariadb-6cd7b484c6-w7ld7           2/2     Running   4         
devai-svc-6b4b464d8f-j5bpn                       1/1     Running   1          





모든 스파클링소다 포탈 파드가 정상적으로 Running 상태가 되었다면 접속 테스트를 해봅니다.
✓ 안전하지 않은 https 연결은 본사 테스트 서버에서 자체 서명 SSL 인증서를 생성 후 작성 되었기 때문입니다.






마무리

  • 위와 같은 방법으로 스파클링소다 3.0에서 SSL 인증서를 적용하여 도메인 연결 적용 또한 가능합니다.

아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300