Why Helm ?
ในการ deploy ระบบงานบน Kubernetes cluster นั้น
พบว่า ปกติจะง่ายเมื่อระบบงานไม่ซับซ้อน
แต่เมื่อระบบเริ่มซับซ้อน มีจำนวน component เยอะขึ้น
ทำให้การ deploy ระบบงานยากขึ้น แถมงานซ้ำ ๆ เกิดมากขึ้น

ดังนั้นจึงต้องการลดเวลาในการ deploy ลดการทำงานซ้ำ ๆ ลง
รวมทั้งสร้างแนวทางการทำงานที่เป็นมาตรฐานร่วมกันมากขึ้น
อีกอย่างเรื่องเรื่องของการ reuse
น่าจะช่วยทำให้ productivity ทั้ง development และ operation ดีขึ้น
จึงเป็นที่มาของเครื่องมือจำนวนมาก หนึ่งในนั้นที่เลือกใช้งานคือ Helm

Helm คือ Package manager for Kubernetes

  • Find
  • Share
  • Use

Helm version 3

ทำการปรับปรุงและเปลี่ยนแปลงตามความต้องการของ community ที่ใช้งาน Helm
โดยนำแนวปฏิบัติที่ดี (best pracctice) มาใช้งาน
เพื่อทำให้การใช้งานง่ายและสะดวกขึ้น
รวมทั้งการเปลี่ยนแปลง architecture โดยที่เน้นที่เรื่องของ security เป็นหลัก

คำสั่งที่เปลี่ยนแปลง

  • จาก helm deleted เปลี่ยนเป็น helm uninstall
  • จาก helm inspect เปลี่ยนเป็น helm show
  • จาก helm fetch เปลี่ยนเป็น helm pull
  • จาก helm search เปลี่ยนเป็น helm search repo

How ?

เพื่อความเข้าใจมาลองใช้งานดีกว่า
ก่อนอื่นให้ทำการติดตั้ง Helm จากนั้นเตรียม Docker image ที่จะใช้ในการ deploy 

เริ่มการใช้งานด้วยการสร้าง Helm chart กัน

จากนั้นก็ทำการแก้ไขไฟล์ต่าง ๆ ตามที่ต้องการ
ทำการ deploy แต่ละ chart ของ helm ได้เลย
ที่สำคัญมี chart ดี ๆ ที่ใน community ทำไว้ให้เพียบเเลยที่ Helm Hub

มาใช้งานกัน แต่ก่อนอื่นต้องเข้าใจก่อนนะ
ว่าเครื่องมือเหล่านี้เข้ามาช่วยอะไรบ้าง

Reference Website

https://docker.events.cube365.net/docker/dockercon