DEV Community

Anuchit Prasertsang
Anuchit Prasertsang

Posted on

1

Kubernetes คืออะไร? แบบ Dev เห็นภาพ

ลองนึกถึงชีวิตจริงของเรา เมื่อเราต้องการส่งของขวัญให้ใครสักคน สิ่งที่เราต้องมีคือระบบไปรษณีย์ ไปรษณีย์จะบอกเราว่า “เราสามารถส่งของให้คุณได้ แต่ว่าคุณต้องเตรียมบรรจุภัณฑ์ที่ได้มาตรฐาน” นั่นหมายความว่า ถ้าคุณจะส่งทุเรียน ก็ต้องห่อให้เรียบร้อย ไม่ใช่แค่เอาทุเรียนลูกใหญ่ไปส่งเลย ต้องมีการเตรียมพร้อมในการจัดส่งเพื่อให้มันถึงปลายทางได้อย่างปลอดภัย

หรือถ้าคุณจะส่งหนังสือ ก็ต้องใส่ซองจดหมายให้เรียบร้อย ในกรณีนี้ก็จะมีค่าใช้จ่ายในการจัดส่ง ค่าใช้จ่ายนี้จะขึ้นอยู่กับระยะทางและน้ำหนักของพัสดุ ซึ่งเราสามารถจ่ายเป็นสแตมป์ได้ตามที่เห็นสมควร

แต่สิ่งที่สำคัญคือ ไม่ว่าจะใส่อะไรลงไปในพัสดุ ขอแค่บรรจุภัณฑ์มันสามารถรองรับได้ตามมาตรฐาน ระบบไปรษณีย์ก็จะทำหน้าที่ส่งถึงปลายทางให้ได้

ทีนี้ ลองนำหลักการนี้มาคิดในแง่ของ Kubernetes ถ้าเราต้องการให้ Kubernetes มีประสิทธิภาพเหมือนระบบขนส่งไปรษณีย์ เราต้องอธิบายว่าเราจะส่งอะไร ไปที่ไหน (ที่อยู่ปลายทาง) และมันจะไปรันที่ไหน? ใครจะรันมัน? เรารอได้นานแค่ไหน? การตอบคำถามเหล่านี้เหมือนกับการที่เราเตรียมพัสดุให้พร้อมก่อนส่งให้ไปรษณีย์

Kubernetes ทำงานเหมือนกับระบบไปรษณีย์ที่ซ่อนความซับซ้อนต่างๆ ไว้เบื้องหลัง เราไม่จำเป็นต้องรู้ว่าในกระบวนการขนส่งเกิดอะไรขึ้นบ้าง เพียงแค่เราติดสแตมป์ ใส่ที่อยู่ปลายทาง แล้วระบบไปรษณีย์จะรับประกันว่าในที่สุดพัสดุของเราจะถึงมือผู้รับภายในระยะเวลาที่กำหนด แม้ว่าเครื่องบินอาจจะพังหรือรถบรรทุกอาจจะเสีย ระบบไปรษณีย์ก็ไม่โทรหาเราเพื่อแจ้งเหตุการณ์เหล่านั้น มันเป็นสิ่งที่เราไม่จำเป็นต้องรู้และไม่ต้องกังวล เพราะเขาได้สัญญากับเราว่าจะจัดส่งพัสดุถึงที่ให้ได้

ในลักษณะเดียวกัน Kubernetes ก็ใช้หลักการที่เรียกว่า Promise Theory ระบบของ Kubernetes จะมีโหนดหรือเครื่องในคลัสเตอร์จำนวนมาก ซึ่งบางเครื่องอาจจะพังไปบ้าง แต่ Kubernetes รับประกันว่าแอปพลิเคชันของเราจะต้องรันอยู่เสมอ ระบบจะทำให้เรามั่นใจว่าแอปจะทำงานต่อไปไม่ว่าคลัสเตอร์จะเกิดปัญหาหรือไม่

เปรียบเทียบกับไปรษณีย์ Kubernetes ซ่อนรายละเอียดทางเทคนิคทั้งหมดไว้เบื้องหลัง และอนุญาตให้นักพัฒนาแค่ใส่แอปพลิเคชันลงไปในกล่อง พิมพ์ที่อยู่ปลายทาง แล้วจ่ายสแตมป์ (หรือบอกว่าจะให้ Kubernetes ดูแลการรันแอป) ทุกอย่างที่เหลือ Kubernetes จะจัดการให้

https://youtu.be/BE77h7dmoQU?t=472

Billboard image

Synthetic monitoring. Built for developers.

Join Vercel, Render, and thousands of other teams that trust Checkly to streamline monitor creation and configuration with Monitoring as Code.

Start Monitoring

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Explore a sea of insights with this enlightening post, highly esteemed within the nurturing DEV Community. Coders of all stripes are invited to participate and contribute to our shared knowledge.

Expressing gratitude with a simple "thank you" can make a big impact. Leave your thanks in the comments!

On DEV, exchanging ideas smooths our way and strengthens our community bonds. Found this useful? A quick note of thanks to the author can mean a lot.

Okay