반응형

ConfigMap과 Secret

  • ConfigMap: 컨테이너 구성 정보를 한곳에 모아서 관리
  • Secret: 컨테이너가 사용하는 password, auth token, ssh key와 같은 중요한 정보를 저장하고 민감한 구성정보를 base64로 인코딩하여 한곳에 모아서 관리
  • 민감하지 않은 일반 설정파일 -> configMap 사용 / 민감한 데이터 -> secret 사용
  • Secret 데이터 전달 방법
    • Command-line Argument
    • Environment Variable
    • Volume Mount

 

Secret 만들기

  • kubectl create secret <Available Commands> name [flags] [options]
    • Available Commands 종류
      • docker-registry
        • Create a secret for use with a Docker registry
      • generic
        • Create a secret from a local file, directory or literal value
      • tls
        • Create a TLS secret
    • Available Commands에 따라 들어가는 옵션이 달라짐
      • docker-registry
        • 인증 정보 / username, password, email-address
      • generic
        • user define 정보 / --from-literal, --from-file
      •  tls
        • public, private key 정보 / cert, key

Secret Type 종류

 

Secret 사용하기

  • 정의된 Secret을 Pod의 Container에 전달하는 방법
    • environment variable로 전달
    • command-line argument로 전달
    • volume에 secret을 사용하여 컨테이너 디렉토리에 mount

  • 생성한 secret을 컨테이너 환경변수(env)로 컨테이너에 전달하기

  • 생성한 secret을 컨테이너 volume mount로 전달하기

 

Secret 데이터 용량 제한

  • Secret etcd에 암호화하지 않은 텍스트로 저장되므로 secret value가 커지면 메모리 용량을 많이 사용하게 됨
  • secret의 최대 크기는 1MB

 

Reference

따배쿠34강

 

반응형
반응형

ConfigMap

  • ConfigMap: 컨테이너 구성 정보를 한곳에 모아서 관리
    • 컨테이너 수가 많을 때 하나하나 컨테이너에 들어가 구성 정보를 관리하는 것이 쉽지 않음
    • configmap의 구성 정보를 여러 컨테이너에 적용하여 관리
  • 구성 정보 전달 방법
    • 환경 변수로 전달
    • argument로 전달
    • volume mount, 저장소 파일로 전달

 

ConfigMap 생성

  • --from-file로 파일 source, --from-literal로 key:value
    • kubectl create configmap test_Configmap --from-literal=id=b2021002 --from-literal=class=bigdata
    • kubectl create configmap test_Configmap --from-file=text.file
    • kubectl create configmap test_Configmap --from-file=mydata=text.file
    • kubectl create configmap test_Configmap --from-file=/configmap.dir/

Example

 

ConfigMap의 일부분을 적용하기

  • 생성한 ConfigMap의 key를 pod의 컨테이너에 적용

 

ConfigMap의 전체를 적용하기

  • 생성한 ConfigMap 전체 key를 pod의 컨테이너에 적용

 

ConfigMap의 볼륨으로 적용하기

  • 생성한 ConfigMap의 key를 pod의 컨테이너에 볼륨 마운트 하기
    • key가 파일이름으로 value가 내용으로 전달

 

Reference

따배쿠33강

 

반응형

+ Recent posts