Header-sellsuki.webp
S E L L S U K I

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster


08 Jan 2023

Share with :
0
วิธีจัดการการเข้าถึง Kubernetes Cluster

Kubernetes คือ

Kubernetes ไม่ใช่ platform ที่เรามารถจัดการการเข้าถึงของ User ได้ง่ายนัก ยกเว้น Kubernetes Platform ของเจ้าดัง ๆ

อย่างเช่น Openshift ที่มี kind: Oauth มาให้เราใช้ได้เลย (https://docs.openshift.com/container-platform/4.11/authentication/identity_providers/configuring-ldap-identity-provider.html)

หรือ EKS ที่มี feature authentication มาให้เราใช้ได้เช่นกัน (https://docs.aws.amazon.com/eks/latest/userguide/cluster-auth.html)

ทีนี้เรามาพูดถึงการ Authentication เข้าสู่ kubernetes cluster แบบปกติกัน (https://kubernetes.io/docs/reference/access-authn-authz/certificate-signing-requests/)

จะเห็นว่าการ grant access ให้ใครซักคนนอกจาก admin ค่อนข้างยุ่งยากและต้องทำหลายขั้นตอน (admin จะมี config พ่นออกมาให้ตอนรัน kubeadm init ที่ /etc/kubernetes/admin.conf) ต้องนำ privatekey ไปสร้าง csr (certificate signing request) และอื่น ๆ

วันนี้ทาง Sellsuki ก็เลยจะมาแนะนำ tool ตัวใหม่ที่ไปเจอมานั่นคือ infrahq นั่นเอง (https://infrahq.com/docs/quickstart) infrahq เป็นเครื่องมือที่ใช้ในการจัดการการเข้าถึง cluster เราได้และมีหน้าตา GUI ให้ดูแบบง่าย ๆ ด้วย อย่างไรก็ตาม project นี้ยังอยู่ในช่วง development อยู่นะ

มาลง tool ตัวนี้กันเลย แต่ก่อนอื่นก็เข้าไป sign up ที่ https://signup.infrahq.com/ หลังจากเรียบร้อยแล้วเราจะเข้ามาถึงหน้า GUI หน้าตาแบบนี้

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 1

หน้าที่เราเข้าอยู่นี้จะทำหน้าที่แทน infra server ที่เป็นตัวกลางคอยคุม access ของหลายๆ cluster ที่เราจะ install infra connector ไปเชื่อมต่อ cluster นั้นๆเข้ามาหา infra server นะครับ (ทั้งนี้ทั้งนั้น เราก็สามารถ deploy infra server มาใช้งานเองได้เหมือนกันนะครับ https://github.com/infrahq/helm-charts)

หลังจากกดปุ่ม connect to cluster แล้วใส่ชื่อ cluster ให้เรียบร้อย

kubernetes cluster

หลังจากกด next เราจะได้ key สำหรับเชื่อมต่อไปที่ kubernetes cluster ของเรา (access key แต่ละครั้งที่ลง connector จะไม่เหมือนกัน)

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 4

ทีนี้เราสามารถรัน helm install ตัว connector ที่ cluster ได้เลย

git clone https://github.com/infrahq/helm-charts.git
cd helm-charts/charts/infra
helm upgrade -i infra-connector . -f values.yaml --set config.name=staging-cluster-1 --set config.accessKey=xxxxx.xxxxxxx

output

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 5

result on web

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 6
Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 7

ทีนี้เรามา login เข้า kubernetes cluster ของเรากัน https://infrahq.com/docs/download

ในที่นี้ผู้เขียนให้ macbook จะทำการลงด้วย brew นะ

brew install infrahq/tap/infra

หลังจากลง cli tool เรียบร้อบแล้วก็เข้าไปที่หน้า console grant permission ให้ตัวเอง แล้วกด access cluster ได้เลย

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 8
Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 9

ที่นี้เราก็สามารถเข้าใช้งาน cluster เราได้ผ่านทาง infrahq ได้แล้วนะ และยังสามารถาสร้าง local user หรือผ่าน provider ต่าง ๆ ได้เลย ตาม list provider ที่ infrahq support ข้างล่างเลยนะ

Infrahq วิธีจัดการการเข้าถึง Kubernetes Cluster 10

หากชอบเทคนิคหรือเคล็บลับ Tools เด็ด ๆ แบบนี้อย่าลืมกดติดตามน้องสุกิผ่านช่องทางเหล่านี้ด้วยน้า

Facebook
Youtube
TikTok