Kubernetes HELM

Peeradis Sanguantrakul
Arcadia Software Development
2 min readJan 6, 2020

โอเคร คราวที่แล้ว ผมได้เล่าถึง Architect ในองค์กรใหญ่ ๆ ไปแล้ว ในบทนี้ (และบทถัด ๆ ไป ถ้านึกอะไรไม่ออก) ก็จะเริ่ม มาแนะนำ Tool ต่าง ๆ เพื่อที่จะให้ K8S ของเรา ๆ นั้นมีความเป็น Production มากขึ้น วันนี้ก็เลยจะมาแนะนำ Helm 1 ใน tool ที่หลาย ๆ คนแนะนำมาใช้ให้ทุกคนได้รับฟังกันนะครับ

Helm คืออะไร จริง ๆ แล้ว มันก็คือ ตัว Application Installer (หรือ Package Manager) นั้นหละคับ แต่มันจะ Install เข้าไปใน K8S ของเราได้เลย แทนที่เราจะมานั้งเขียน Yaml ไฟล์เอง ใส่ค่า ENV (Environment) เอง Deploy เอง ก็เรียกได้ว่าลดขั้นตอนการยุ่งยากหลาย ๆ ลงไป แทบจะคำสั่งเดียว แล้วป็าปปปป ได้มาเลย SQLServer 1 ea หรือจะเป็น Redis HA (High Availability) 1 Cluster ก็ทำได้เช่นกัน สามารถเข้าไปดูเพิ่มเติมได้ที่ ที่นี่

สำหรับการ Install นั้นก็ง่าย แสนง่ายครับ(มั้ง) ผมขอยกตัวอย่างที่ผมเคยทำใน CentOS ละกันนะคับ

  1. เลือก Version แล้ว Download HERE
  2. Unpack มันซะ

tar -zxvf helm-v3.0.0-linux-amd64.tar.gz

3. หา File แล้ว Copy ไปที่

mv linux-amd64/helm /usr/local/bin/helm

จากนั้นก็ลอง

helm help

ถ้ามันโชว์ Help ขึ้นมาก็ถือว่าผ่านครับ ต่อไปก็ Tiller (ตัวที่ฝังไว้ กับ K8S Cluster)

4. สร้าง Service Account ของ Tiller ขึ้นมา

kubectl -n kube-system create serviceaccount tiller

5. ต่อไปก็ ClusterRoleBinding

kubectl create clusterrolebinding tiller — clusterrole cluster-admin — serviceaccount=kube-system:tiller

6. แล้วก็ Init ได้เลยครับบบ

helm init — service-account tiller

จากนั้นให้ลอง

kubectl get pods — namespace kube-system

ถ้ามี

tiller-deploy-5cas5sd9r-vxc6d 1/1 Running 0 40s

ก็ถือว่า Install Helm เสร็จสิ้นพร้อมใช้งาน ซึ่งเด๋วไว้ว่ากันในบทความหน้า ๆ นะครับ (หน้าไหนไม่รู้)

เจอกัน บายยยยยย

--

--