소개
GitOps 워크플로를 사용하다 보면 다양한 설정 정보를 Git 저장소에 저장하게 됩니다.
이런 환경에서는 다음과 같은 문제들이 발생할 수 있습니다.
•
민감한 정보를 담고 있는 Kubernetes Secret 관리에 대한 어려움
•
이번 과정에서는 이런 문제점들을 해결할 수 있는 솔루션에 대한 지식을 습득하고 실습하는 과정을 학습합니다.
Sealed Secret을 사용해 Secret 정보를 암호화하여 저장합니다. Reflector를 사용해 네임스페이스 간 Secret 정보를 복사하고 동기화합니다.
Sealed Secrets란?
Sealed Secret은 Kubernetes 환경에서 Secret을 안전하게 관리하고 저장하기 위한 도구입니다. Kubernetes Secret의 데이터는 Base64 인코딩을 사용하여 난독화 합니다. 이러한 메니페스트 파일을 GitOps 워크플로에 통합하면 누구나 복호화할 수 있어 보안에 취약합니다. Sealed Secret을 사용하면 클러스터에 실행 중인 컨트롤러만 해당 Secret을 복호화할 수 있는 구조로 되어 있어 안전하게 Secret을 관리할 수 있습니다.
Sealed Secret의 대표적인 특징 3가지가 있습니다.
•
단반향 암호화 - Write만 가능하며 컨트롤러에 의해서만 해독할 수 있고 작성자도 원래 Secret을 알 수 없습니다.
•
키 자동 갱신 - Sealed Secret을 복호화하는 데 사용하는 키를 30일마다 자동 갱신합니다.
•
Metric 지원 - Prometheus Metric을 지원하여 관련 운영 지표를 확인할 수 있습니다.
Reflector란?
Reflector는 리소스(Secret 및 ConfigMap) 변경사항을 모니터링하고 동일 또는 다른 네임스페이스에 있는 미러 리소스에 변경사항을 반영하도록 설계된 Kubernetes 애드온입니다.
학습 내용
•
Kubernetes 환경에 Helm 차트를 이용해 Sealed Secrets, Reflector를 배포하는 방법
•
Sealed Secrets를 사용하여 Kubernetes Secret을 암호화하는 방법
•
Reflector를 사용하여 Secret 네임스페이스간 복제
아키텍처
사전 준비사항
실습을 시작하기 전에 준비되어야 하는 사항은 다음과 같습니다.
•
과정을 수행하여 사용할 수 있는 Kubernetes 클러스터가 구성되어 있어야 합니다.
DevOps 전문가 실험실 Expert Labs에서 Reflector와 Sealed Secrets 사용법을 실습하세요!
IDE, Port 기반 실습 환경에서 베테랑 DevOps 엔지니어 지도에 따라
Kubernetes Secret 암호화와 네임스페이스 간 Secret 복사, 동기화를
실제 해 보고, 빠르게 익힐 수 있습니다.
InfoGrab의 서비스와 기술에 대한 더 많은 정보가 알고 싶으신가요?
인포그랩 유한회사 | COPYRIGHT ⓒ InfoGrab LC. All Right Reserved.
경기도 성남시 분당구 백현로101번길 17, 초림프라자 511~512호(수내동, 초림프라자)