inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[워밍업 클럽: 쿠버네티스] #6. Configmap, Secret (2주차)

wnsrlf0721
1

복습한 내용과 미션3를 함께 포함해서 작성하였다.

 

강의 수강 일자 : 25.06.03 (화)
블로그 복습 일자 : 25.06.08 (일)

 

ConfigMap

image

configmap에 대한 세팅 정보이다.

metadata에는 다른 object와 마찬가지로 소속된 namespace, 이름, labels 등이 존재하고,

파드와 연결될 때 아래 코드와 같이 이름을 매칭해서 연결해준다.

image

configmap에서 봐야할 것은 data 부분으로, 아래 데이터들을 Pod에 환경변수로 전달한다.

 

image

 

Secret

imagesecret은 다음과 같이 세팅을 하게 된다. 우리는 stringData만 잘 살펴보면 된다.

postgresql-info.yaml 파일이 만들어 지고,

| 이하에 적힌 코드들이 해당 파일에 저장된다는 의미이다.

stringData는 쓰기 전용 속성이라 실제 저장될 경우 configmap과 같이 data 형식으로 저장이된다.

저장될 경우 위에 적힌 값들이 Base64 기반으로 인코딩된 값으로 변경되어 저장된다.

mountPath에 기록된 Path 값에 해당 data가 전달되어 디코딩된 값으로 파일이 저장되고,

App이 기동하면 파일을 로딩해 안에 들어있는 정보로 데이터베이스를 세팅한다.

 

미션#3

응용1 : Configmap의 환경변수들을 Secret을 사용해서 작성하고, App에서는 같은 결과가 나오도록 확인해 보세요.

imageconfigmap의 이 값을 secret으로 저장을 하고, Deployment 부분에서 연결되는 부분을 secret으로 편집하면 된다.

secret은 다음과 같이 생성해준다.

 

1) dashboard로 생성하기

image

2) 시크릿에 잘 생성되었는지 확인

image

3) Deployment 편집

image

 

응용2 : 반대로 Secret의 DB정보를 Configmap으로 만들어보고 App을 동작시켜 보세요

image이번엔 secret에 들어있던 db 세팅정보를 configmap 형태로 전달하도록 바꿔야한다.

 

1) dashboard로 configmap 생성하기

imagestringData에 들어있는 값을 data에 대입한다.

 

2) 컨피그 맵 생성 확인하기

image

3) Deployment 값 변경하기

image

image

volumes 부분과 MountPath 부분을 업데이트한다.

데브옵스 · 인프라 k8s mission

답변 0