แบบฝึกหัด - กฎการปรับขนาดอัตโนมัติ

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

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

แบบฝึกหัดกฎ

ในแอปพลิเคชัน Azure Spring Apps ตัวอย่างของคุณ แอปพลิเคชันของคุณจะทริกเกอร์การดําเนินการปรับมาตราส่วนบนไมโครเซอร์วิสบริการลูกค้าเมื่อถูกสร้างขึ้น

แอปที่ให้บริการลูกค้าจะปรับขนาด เมื่อจํานวนคําขอ tomcat เกิน 10 เซสชันต่อนาทีโดยเฉลี่ย หลังจากที่การปรับขนาดอัตโนมัติถูกทริกเกอร์ ระบบจะปรับขนาด ใน หากจํานวนคําขอน้อยกว่าหรือเท่ากับ 10 เซสชันต่อนาทีโดยเฉลี่ย

ดูการตั้งค่าการปรับขนาดอัตโนมัติในพอร์ทัล Azure

  1. ในแท็บเว็บเบราว์เซอร์ใหม่ เปิดพอร์ทัล Azure
  2. จากกล่องค้นหาด้านบน ค้นหา Azure Spring Apps
  3. จากหน้าภาพรวม Azure Spring Apps เลือกอินสแตนซ์ Azure Spring Apps ของคุณจากผลลัพธ์
  4. เลือกแท็บ Apps ภายใต้ การตั้งค่า ในเมนูในบานหน้าต่างนําทางด้านซ้าย
  5. เลือกแอปพลิเคชันบริการลูกค้า จากนั้นคุณควรเห็นหน้า ภาพรวม ของแอปพลิเคชัน
  6. ไปที่ แท็บ มาตราส่วนออกภายใต้การตั้งค่าในเมนูทางด้านซ้ายของหน้า

สกรีนช็อตของการตั้งค่า 'ปรับมาตราส่วนออก' ในพอร์ทัล Azure

มีสองตัวเลือกสําหรับการจัดการความต้องการปรับมาตราส่วนอัตโนมัติ:

  1. มาตราส่วนแบบแมนนวล: รักษาจํานวนอินสแตนซ์คงที่ ในระดับมาตรฐาน คุณสามารถปรับขนาดให้ได้สูงสุด 500 อินสแตนซ์ ค่านี้จะเปลี่ยนจํานวนอินสแตนซ์การเรียกใช้ที่แยกต่างหากของแอปพลิเคชัน microservice
  2. การปรับขนาดอัตโนมัติแบบกําหนดเอง: ปรับมาตราส่วนตามกําหนดการใด ๆ ตามเมตริก

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

สกรีนช็อตของการกําหนดค่าการปรับขนาดอัตโนมัติแบบกําหนดเองในพอร์ทัล Azure

การดูเหตุการณ์การปรับขนาดอัตโนมัติที่เสร็จสิ้นแล้ว

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

สกรีนช็อตของประวัติการเรียกใช้ปรับขนาดอัตโนมัติในพอร์ทัล Azure

ทริกเกอร์การดําเนินการปรับมาตราส่วนออกด้วยสคริปต์

คุณยังสามารถทริกเกอร์การปรับขนาดอัตโนมัติด้วยตนเองผ่านทางเว็บเบราว์เซอร์หรือสคริปต์เชลล์

ในการทดสอบกฎการปรับขนาดอัตโนมัติ เราจะสร้างบางโหลดบนอินสแตนซ์ การโหลดจําลองนี้ทําให้กฎการปรับขนาดอัตโนมัติขยายและเพิ่มจํานวนอินสแตนซ์ เมื่อโหลดจําลองถูกหยุดลง กฎการปรับมาตราส่วนอัตโนมัติจะเพิ่มมาตราส่วนและลดจํานวนอินสแตนซ์

เพื่อให้คุณสามารถทริกเกอร์การปรับขนาดอัตโนมัติ ได้เตรียมสคริปต์ Shell ใน GIT repo เดียวกับที่คุณใช้สร้างแอปพลิเคชัน Azure Spring Apps ของคุณ

  1. ตั้งชื่ออินสแตนซ์ของบริการ Spring Apps ของคุณ โดยการเรียกใช้คําสั่งต่อไปนี้ในหน้าต่าง https://shell.azure.com bash ของคุณ ใช้ชื่อบริการ Azure spring Apps เดิมที่คุณใช้ในแบบฝึกหัดก่อนหน้านี้:

    export SPRING_APPS_SERVICE=<spring-apps-instance-name>
    
  2. ถัดไป ในหน้าต่าง bash ให้เรียกใช้คําสั่งต่อไปนี้เพื่อดําเนินการธุรกรรมกับ Spring Apps บริการของลูกค้า ไมโครเซอร์วิส:

    cd mslearn-autoscale-java
    sh loadTest.sh
    
  3. คุณควรเห็นผลลัพธ์ของ บริการของลูกค้า ทดสอบการโหลดที่ส่ง 100 คําขอไปยังอินสแตนซ์ของคุณ

ทริกเกอร์การดําเนินการปรับขนาดด้วยตนเองผ่านทางเว็บเบราว์เซอร์ (เป็นทางเลือก)

ในการทริกเกอร์เงื่อนไขการปรับมาตราส่วนออกด้วยตนเองในการตั้งค่าการปรับขนาดอัตโนมัติที่สร้างขึ้น บริการของลูกค้า microservice ต้องมีมากกว่า 10 คําขอในเวลาน้อยกว่าหนึ่งนาที

  1. เปิดหน้าต่างเบราว์เซอร์ใหม่และนําทางไปยัง บริการลูกค้า microservice:

    https://<your-spring-apps-service>-api-gateway.azuremicroservices.io/api/customer/owners
    
  2. ในการสืบทอดด่วน ให้โหลดหน้าใหม่มากกว่า 10 ครั้ง

การดูการดําเนินการปรับมาตราส่วนออก

  1. กลับไปในหน้าต่างเบราว์เซอร์เดิม ในการตั้งค่าการปรับขนาดอัตโนมัติ เลือกแท็บ ประวัติการเรียกใช้

  2. คุณควรเห็นแผนภูมิที่สะท้อนถึงจํานวนอินสแตนซ์

  3. ในไม่กี่นาที จํานวนอินสแตนซ์ควรเพิ่มขึ้นจาก 1 ถึง 2

  4. ภายใต้แผนภูมิ คุณควรมีรายการบันทึกกิจกรรมสําหรับแต่ละการดําเนินการปรับมาตราส่วนที่ดําเนินการโดยการตั้งค่าการปรับขนาดอัตโนมัตินี้

สกรีนช็อตของประวัติการปรับมาตราส่วนแบบขยายอัตโนมัติในพอร์ทัล Azure

สเกลในการดําเนินการ

เงื่อนไขการปรับขนาดในการตั้งค่าการปรับขนาดอัตโนมัติจะทริกเกอร์หากมีคําขอน้อยกว่าหรือเท่ากับ 10 คําขอไปยัง บริการของลูกค้า ไมโครเซอร์วิสในช่วงเวลาหนึ่งนาที

  1. ตรวจสอบให้แน่ใจว่าไม่มีการส่งคําขอไปยังบริการ ลูกค้าของคุณ ไมโครเซอร์วิสและหน้าต่างเบราว์เซอร์ไปยังแอป/บริการของคุณถูกปิด

  2. สังเกตจํานวนอินสแตนซ์ ในไม่กี่นาที การนับจํานวนตัวอย่าง อาจ ลดลงจาก 2 ถึง 1 (ดูจุดสําคัญต่อไปนี้)

สกรีนช็อตของการดําเนินการปรับขนาดอัตโนมัติในพอร์ทัล Azure

สําคัญ

Azure Spring Apps ของคุณอาจไม่ปรับขนาด เนื่องจากการปรับขนาดอัตโนมัติจะพยายามประมาณสถานะสุดท้ายที่จะเป็นหลังจากปรับมาตราส่วนแล้ว ซึ่งหมายความว่าการปรับขนาดอัตโนมัติจะต้องปรับขนาดอีกครั้งทันที หากจํานวนคําขอ tomcat โดยเฉลี่ยยังคงเหมือนเดิมหรือแม้แต่ลดลงเพียงเล็กน้อย