แนะ นำ

เสร็จสมบูรณ์เมื่อ

เป็นเรื่องปกติที่จะใช้แพลตฟอร์มการจัดการคอนเทนเนอร์ เช่น Kubernetes สมมติว่าคุณทํางานที่ บริษัท จัดการโดรน บริษัทของคุณให้บริการการติดตามโดรนให้กับลูกค้าทั่วโลก

แผนภาพของสถาปัตยกรรมระดับสูงที่อธิบายถึงโซลูชันการติดตามโดรน

โซลูชันถูกสร้างและปรับใช้เป็น microservices และรวมถึงแอปพลิเคชันหลักหลายตัว:

  • Web front end: แสดงแผนที่และข้อมูลเกี่ยวกับโดรนที่ติดตาม
  • บริการแคช : จัดเก็บข้อมูลที่ร้องขอบ่อยๆ ที่แสดงบนเว็บไซต์
  • RESTful API: ใช้โดยโดรนติดตามเพื่อส่งข้อมูลเกี่ยวกับสถานะของพวกเขาเช่นตําแหน่ง GPS และระดับการชาร์จแบตเตอรี่
  • คิว : เก็บข้อมูลที่ยังไม่ได้ประมวลผลที่รวบรวมโดย RESTful API
  • บริการประมวลผลข้อมูล : รับและประมวลผลข้อมูลจากคิว
  • ฐานข้อมูล NoSQL: จัดเก็บข้อมูลการติดตามที่ประมวลผลและข้อมูลผู้ใช้ที่รวบรวมจากเว็บไซต์และบริการประมวลผลข้อมูล

คอนเทนเนอร์เป็นตัวเลือกที่ยอดเยี่ยมเมื่อพัฒนาซอฟต์แวร์ตามสถาปัตยกรรม microservice คุณลักษณะเหล่านี้ทําให้การใช้ฮาร์ดแวร์มีประสิทธิภาพ ทําให้มีคุณลักษณะด้านความปลอดภัยในการเรียกใช้หลายอินสแตนซ์พร้อมกันบนโฮสต์เดียวกันโดยไม่ส่งผลกระทบต่อกันและกัน และทําให้บริการสามารถปรับขนาดได้โดยการปรับใช้อินสแตนซ์เพิ่มเติม

แผนภาพ ที่แสดงถึงประโยชน์สามข้อของการจัดคอนเทนเนอร์ ประสิทธิภาพ, การแยกและการปรับขนาด

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

  • การกําหนดค่าและบํารุงรักษาการปรับสมดุลโหลด
  • การเชื่อมต่อเครือข่าย
  • การประมวลกระบวนการปรับใช้

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

วัตถุประสงค์การเรียนรู้

ในโมดูลนี้ คุณทราบสิ่งต่อไปนี้

  • วิธีการที่ Kubernetes สนับสนุนการเรียงคอนเทนเนอร์
  • ความแตกต่างระหว่างแผนควบคุมและโหนด
  • ประเมินว่า Kubernetes เป็นแพลตฟอร์มการเรียงที่เหมาะสมสําหรับปริมาณงานที่กําหนดหรือไม่

ข้อกําหนดเบื้องต้น

  • แนวคิดพื้นฐานของสถาปัตยกรรมไมโครเซอร์วิซ
  • ความเข้าใจพื้นฐานเกี่ยวกับวิธีการทํางานของคอนเทนเนอร์ Docker
  • ความรู้พื้นฐานเกี่ยวกับวิธีการติดตั้งซอฟต์แวร์โดยใช้อินเทอร์เฟซบรรทัดคําสั่ง (CLI)