280
쿠버네티스를 활용한 클라우드 네이티브 데브옵스
앞서
PGP
를 사용한 예제와 같이 키
ID
(
arn
:
aws
:
kms
...
)는 파일에 내장되어 나중에
SOPS
가 복호화할 방식을 알려준다.
10.5
마치며
구성과 시크릿은 많은 사람들이 궁금해하는 쿠버네티스와 관련 주제다. 이번 장에서는 구성과
시크릿을 주제로 필요한 설정과 데이터를 애플리케이션에 연동하는 몇 가지 방법을 설명했다.
이 장에서 놓치지 말아야 할 내용을 정리해보자.
●
구성 데이터는 애플리케이션 코드에서 분리하고 쿠버네티스 컨피그맵과 시크릿을 사용하
여 배포한다. 이렇게 하면 암호를 변경할 때마다 애플리케이션을 다시 배포하지 않아도
된다.
●
데이터를 포함한 컨피그맵을 생성하는 방법은 쿠버네티스 매니페스트 파일에 직접 작성
하는 방법과
kubectl
명령어를 사용하여 기존
YAML
파일을 컨피그맵 스펙으로 변환하
는 방법이 있다.
●
컨피그맵에 있는 데이터는 컨테이너의 환경 변수나 엔트리 포인트의 명령줄 인자로 가져
올 수 있다. 또 컨테이너에 마운트 된 파일로 데이터를 작성할 수 있다.
●
시크릿은 저장 시에 데이터가 암호화된다는 것과
kubectl
출력 결과가 난독화된다는 것
을 제외하면 컨피그맵과 비슷하다.
●
시크릿을 간단하게 유연하게 관리하는 방법은 소스 코드 저장소에 보관하는 것이다. 하지
만 보관 시에는
SOPS
나 다른 텍스트 기반 암호화 도구를 사용하여 암호화해야 한다.
●
처음부터 시크릿 관리를 너무 어렵게 생각하지 않아도 된다. 개발자가 쉽게 사용할 수