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

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

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

 

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

 

ConfigMap

image

configmap에 대한 세팅 정보이다.

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

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

image

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

 

image

  • 인프라의 환경: (개발/검증/운영) 환경 중 App이 돌아가는 환경을 뜻한다.
    "dev" 의 경우 App이 개발환경을 뜻한다. 이 환경변수 값은 App이 기동되는 시점에 전달되어 알려준다.

  • App의 기능을 제어하기 위한 값 : ALL, GET, POST 등등

  • secret stringData로 연결할 파일 경로(filePath)이다.


    imagemountPath에 연결될 경로를 설정하고, 해당 경로에서 사용할 파일 이름을 설정한다.

 

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 부분을 업데이트한다.

댓글을 작성해보세요.

채널톡 아이콘