융융이'Blog

[Kubernetes]컨피그맵(ConfigMap) & 시크릿(Secret) 이란? 본문

2022이전/Docker&Kubernetes

[Kubernetes]컨피그맵(ConfigMap) & 시크릿(Secret) 이란?

바로퇴장 2020. 6. 18. 20:02

컨피그맵(ConfigMap)

환경 변수나 설정값까지 쿠버네티스 오브젝트에서 관리 값들을 YAML 파일로 포드와 함께 배포할 수 있다.

사용법

kubectl create configmap <컨피그맵 이름> <각종설정값들>

위 실행문은 log-level-configmap 에 변수 1개 / start-k83에 변수 2개를 설정해준 것이다.

configmap 확인 => kubectl describe configmap , kubectl get configmap -o yaml이다.

주요 사용

  • 컨피그맵의 값을 컨테이너의 환경 변수로 사용
  • 컨피그맵의 값을 포드 내부의 파일로 마운트해 사용
  • 컨피그맵의 데이터를 컨테이너의 환경변수로 가져오기

예시:

yaml 파일에서 log-level-configmapstart-k8s의 comfigmap값 참조를 하고 있다.

시크릿(Secret)란?

ssh 키, 비밀번호등과 민감한 정보를 저장하기 위한 용도

컨피그맵과 시크릿의 차이점은 컨피그맵의 정보들은 plain-text이지만, 시크릿 정보들은 암호화를 거쳐서 전달된다.

사용법

kubectl create secret generic my-password --from-literal password=q1w2e3r4

# secret 정보 보기
kubectl get secret -o yaml

실제로 적용시키는 방법은 컨피그맵과 비슷하다.