แนะ นำ
เป็นเรื่องปกติที่จะใช้แพลตฟอร์มการจัดการคอนเทนเนอร์ เช่น Kubernetes สมมติว่าคุณทํางานที่ บริษัท จัดการโดรน บริษัทของคุณให้บริการการติดตามโดรนให้กับลูกค้าทั่วโลก
โซลูชันถูกสร้างและปรับใช้เป็น microservices และรวมถึงแอปพลิเคชันหลักหลายตัว:
- Web front end: แสดงแผนที่และข้อมูลเกี่ยวกับโดรนที่ติดตาม
- บริการแคช : จัดเก็บข้อมูลที่ร้องขอบ่อยๆ ที่แสดงบนเว็บไซต์
- RESTful API: ใช้โดยโดรนติดตามเพื่อส่งข้อมูลเกี่ยวกับสถานะของพวกเขาเช่นตําแหน่ง GPS และระดับการชาร์จแบตเตอรี่
- คิว : เก็บข้อมูลที่ยังไม่ได้ประมวลผลที่รวบรวมโดย RESTful API
- บริการประมวลผลข้อมูล : รับและประมวลผลข้อมูลจากคิว
- ฐานข้อมูล NoSQL: จัดเก็บข้อมูลการติดตามที่ประมวลผลและข้อมูลผู้ใช้ที่รวบรวมจากเว็บไซต์และบริการประมวลผลข้อมูล
คอนเทนเนอร์เป็นตัวเลือกที่ยอดเยี่ยมเมื่อพัฒนาซอฟต์แวร์ตามสถาปัตยกรรม microservice คุณลักษณะเหล่านี้ทําให้การใช้ฮาร์ดแวร์มีประสิทธิภาพ ทําให้มีคุณลักษณะด้านความปลอดภัยในการเรียกใช้หลายอินสแตนซ์พร้อมกันบนโฮสต์เดียวกันโดยไม่ส่งผลกระทบต่อกันและกัน และทําให้บริการสามารถปรับขนาดได้โดยการปรับใช้อินสแตนซ์เพิ่มเติม
แผนภาพ
รันไทม์การจัดการคอนเทนเนอร์มาตรฐานมุ่งเน้นไปที่การจัดการคอนเทนเนอร์แต่ละรายการ ถ้าคุณต้องการปรับขนาดระบบที่ซับซ้อนด้วยหลายคอนเทนเนอร์ที่ทํางานร่วมกัน สถานการณ์นี้เป็นเรื่องที่ท้าทาย พิจารณาประเด็นต่อไปนี้:
- การกําหนดค่าและบํารุงรักษาการปรับสมดุลโหลด
- การเชื่อมต่อเครือข่าย
- การประมวลกระบวนการปรับใช้
คุณใช้อินสแตนซ์ที่จัดเก็บไว้เพื่อปรับใช้ในภูมิภาคของลูกค้าใหม่อย่างรวดเร็วและปรับขนาดทรัพยากรตามความจําเป็นเพื่อตอบสนองความต้องการของลูกค้า เพื่อให้ง่ายต่อการพัฒนา ปรับใช้ และจัดการแอปพลิเคชันคอนเทนเนอร์ที่ซับซ้อนเหล่านี้ คุณใช้แพลตฟอร์มการเรียงลําดับคอนเทนเนอร์ เช่น Kubernetes
วัตถุประสงค์การเรียนรู้
ในโมดูลนี้ คุณทราบสิ่งต่อไปนี้
- วิธีการที่ Kubernetes สนับสนุนการเรียงคอนเทนเนอร์
- ความแตกต่างระหว่างแผนควบคุมและโหนด
- ประเมินว่า Kubernetes เป็นแพลตฟอร์มการเรียงที่เหมาะสมสําหรับปริมาณงานที่กําหนดหรือไม่
ข้อกําหนดเบื้องต้น
- แนวคิดพื้นฐานของสถาปัตยกรรมไมโครเซอร์วิซ
- ความเข้าใจพื้นฐานเกี่ยวกับวิธีการทํางานของคอนเทนเนอร์ Docker
- ความรู้พื้นฐานเกี่ยวกับวิธีการติดตั้งซอฟต์แวร์โดยใช้อินเทอร์เฟซบรรทัดคําสั่ง (CLI)