Scatch note
k8s secret 사용법 간단메모
06.10.20211 Min Read — In howto

쿠버네티스 시크릿이란?

비밀번호와 같이 평문으로 저장되어서는 안되는 민감 정보를 보호하는 컴포넌트.

생성

kubectl create secret generic [name] --from-file=[field_name]=[file_name]

수정

kubectl edit secrets [name]

  • data 필드를 수정해서 시크릿이 보유한 값을 수정할 수 있다.
  • 이 때, 값은 base64인코딩 포멧을 지켜야만 저장된다.

!! base64인코딩때문에 secret authentication failed가 뜨는경우가 많다 !!
이때, data 필드 대신 stringData필드를 사용하면 해결된다.

Ex)

apiVersion: v1
# !!!!data 필드를 지우고, 대신 stringData 사용!!!
#data:
#  password: MXEydzNlNHIhCg==
stringData:
    password: 1q2w3e4r!
kind: Secret
metadata:
  creationTimestamp: "2021-06-10T13:47:17Z"
  name: asd
  namespace: asd
  resourceVersion: "***"
  uid: ******
type: Opaque

삭제

kubectl remove secrets [name]


레퍼런스

더 많은 secret의 활용사례는 공식문서를 참조하자.