컨테이너를 사용할 때, 개발과 서비스 사이의 차이로 발생하는 문제점을 방지하기 위해 Dev용, Prod용 컨테이너는 같아야한다.
하지만 각각의 컨테이너가 서로 다른 설정이 필요한 경우가 있는데 → 개발용 or 테스트용 DB 등등
이처럼 서비스마다 다른 설정이 필요할 때 사용하는 것이 ConfigMap이며 환경 설정을 컨테이너와 분리해서 제공하는 방식으로 개발/서비스 와 같은 다양한 방식으로 사용 가능하다.
민감한 정보를 저장하는 용도로 사용된다.
민감한 정보들은 컨테이너 안에 저장하지 않고 별도로 보관, 실제 Pod를 실행할때 Key, Value로 구성된 템플릿으로 컨테이너에 제공된다.
ConfigMap을 포함한 일반적인 오브젝트의 값은 k8s DB에 저장되는 반면, Secret은 메모리에 저장되며 1Mbyte의 제한을 가진다. 또한 암호화된 정보들은 base64 인코딩으로 이루어져 있어 쉽게 디코딩이 가능하다.
입력값 확인 (Secret, ConfigMap)
ConfigMap 수정