สมุดบันทึกการเรียน Kubernetes Part 3

--

จากตอนที่ผ่านที่มีการเล่าถึงการสร้างและรัน Resource ประเภท Pod ไปแล้ว

ในบทความนี้จะมาเล่า Resource อีกประเภทหนึ่งที่ช่วยรักษาให้ Pod ของเรานั้นยังคงอยู่ต่อไปได้ตลอดนั้นก็คือ ReplicaSet

ReplicaSet มีหน้าที่รักษาจำนวน Pod ให้อยู่เท่ากับจำนวนที่เราต้องการให้ Replica เป็นเหมือนใบรับประกันว่าจะมี Pod รันอยู่ตามจำนวน replica ที่กำหนด เช่น สมมุติถ้าเราบอกว่าเราจะ replica Pod จำนวน 3 Pods และถ้ามี Pod ใด Pod หนึ่งเกิดเสียหาย มันจะทำการสร้าง Pod นั้นใหม่ขึ้นมาทดแทน

ซึ่งการที่จะสร้าง Resource: ReplicaSet นั้นจำเป็นจะต้องระบุ Pod template ไปในตัวเลย

มาเริ่มสร้าง ReplicaSet พร้อมกับ Pod กันเลย

  1. สร้าง manifest file

2. Run command ด้านล่างเพื่อทำการ Apply

kubectl apply -f replica-sample-app.yml

3. ตรวจจำนวน Pod ได้เลย

kubectl get pod
Result: kubectl get pod

จากข้างต้นที่บอกว่า ReplicaSet จะรักษาจำนวน Pod ตามจำนวนที่กำหนด
เรามาลองทดสอบจำลองว่ามี Pod ตัวแรกตายโดยการ delete และลอง get pod อีกทีว่าจะมีครบ 3 ไหม

kubectl delete pod/sample-app-49vrw 
kubectl get pod
Result: kubectl delete pod/sample-app-49vrw

สรุปสั้นๆ ก็คือ ReplicaSet ค่อยช่วยรักษาให้ Pods ของเราอยู่เสมอ

ในบทความถัดไปจะมาเล่าเรื่องการใช้ประโยช์ของ ReplicaSet กับ Pod ในการ Deploy application เช่น patch version ของ application ใหม่แล้วเกิดปัญหาสามารถ Rollback หรือย้อนกับไป version ก่อนหน้าได้ หรือ patch app แบบ No down time ได้ นั้นก็คือ Resource ประเภท Deployment

โปรดติดตามตอนต่อไป…

--

--