Generate TLS Secret for kubernetes

0
generate-tls-secret-for-kubernetes

สำหรับใครที่ต้องการนำไฟล์ SSL เช่น domain.com.key หรือ domain.com.crt มาใช้งานใน K8S เราสามารถนำเข้ามาได้โดยวิธีการสร้าง Secret ดังนี้

นำไฟล์ .key และ .crt มาทำเป็น base64 ก่อน

$ cat twinsynergy.co.th.key | base64 -w0
LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS...
$ cat twinsynergy.co.th.crt | base64 -w0
LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS...

สร้างไฟล์ secret.yml ดังนี้

apiVersion: v1
kind: Secret
data:
  tls.crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUdYVENDQlVXZ0F3...
  tls.key: LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQ...
metadata:
  name: <secret_name>
type: Opaque
  • tls.crt กับ tls.key ก็ให้เราใส่ค่า base64 จากด้านบนที่ได้มา
  • <secret_name> ไว้ให้เราตั้งชื่อ secret ที่จะสร้าง

นำ secret.yml มาใช้

$ kubectl create -f secret.yml

ตรวจสอบ secret ใน K8S ของเรา

$ kubectl get secret
NAME                                                           TYPE                                  DATA      AGE
ssl-key-twin                                                   Opaque                                2         76d
ssl-vertobase                                                  Opaque                                2         47d

ส่วนวิธีการนำมาใช้เดียวผมจะกล่าวในครั้งต่อไป

LEAVE A REPLY

Please enter your comment!
Please enter your name here

18 + five =