รวม Traffic Distributor เข้ากับแอปพลิเคชันที่ทำงานอยู่
คู่มือนี้เรียบเรียงและปรับรูปแบบสำหรับ Ruk-Com Cloud PaaS ภาพหน้าจออาจแตกต่างเล็กน้อยตามเวอร์ชันของระบบ
คลิกหรือแตะภาพหน้าจอเพื่อดูรายละเอียดขนาดจริง
วัตถุประสงค์
บทความนี้อธิบายการใช้งาน รวม Traffic Distributor เข้ากับแอปพลิเคชันที่ทำงานอยู่ บน Ruk-Com Cloud PaaS โดยจัดลำดับขั้นตอนและจุดตรวจสอบสำหรับการนำไปใช้งานจริง
ก่อนเริ่มดำเนินการ
- เข้าสู่ระบบด้วยบัญชีที่มีสิทธิ์จัดการ Environment ที่เกี่ยวข้อง
- ตรวจสอบชื่อ Environment, Region และทรัพยากรเป้าหมายก่อนบันทึกการเปลี่ยนแปลง
- สำรองข้อมูลหรือกำหนดแผนย้อนกลับก่อนแก้ไขระบบ Production
ส่วนใหญ่นักพัฒนาต้องเผชิญกับปัญหาการกระจาย traffic ระหว่าง backends หลายๆตัวเมื่อมีแอปพลิเคชันที่ทำงานอยู่แล้วโดยกลุ่มผู้ใช้ที่มีอยู่และโหลดที่เข้ามาอย่างต่อเนื่อง ดังนั้นนอกเหนือจากปัญหาการกำหนดค่าการแบ่งปันการรับส่งข้อมูลทั่วไปมันมีความซับซ้อนยิ่งขึ้นด้วยความจำเป็นในการใช้การเปลี่ยนแปลง "ทันที" ที่เหมาะสมกับอินสแตนซ์แอปพลิเคชัน front-end ในหลายๆกรณีทำให้แอปพลิเคชันหยุดทำงานชั่วคราว ด้านล่างนี้เราจึงพิจารณาวิธีการผสมผสานโซลูชันผู้จัดจำหน่ายจราจร (TD)เข้ากับ topology ของแอปพลิเคชันที่ทำงานอยู่ได้อย่างง่ายดายและไม่ลำบาก
หมายเหตุ:Traffic Distributor เตรียมความสามารถเพื่อรับประโยชน์จากโซลูชันที่มีประโยชน์มากมาย เช่น:
- ใช้การอัปเดตแอปพลิเคชัน "มองไม่เห็น" ที่มองไม่เห็นด้วยการปรับใช้สีน้ำเงินเขียว
- ตรวจสอบประสิทธิภาพ, ประสบการณ์ผู้ใช้, และความเสถียรของแอปเวอร์ชันใหม่ผ่านการทดสอบเอ/บี
- เพิ่มความพร้อมให้บริการด้วยการป้องกัน failover ขั้นสูง
ขั้นตอนมีดังนี้:
- deploy แอปเวอร์ชันใหม่และเพิ่มไปยังการกำหนดเส้นทาง
- กำหนดค่าแอป entrypoint ผ่าน TD
เพิ่มการคัดลอกแอปพลิเคชันไปยังการกำหนดเส้นทาง
สำหรับตัวอย่างนี้เรารันแอปพลิเคชันใน Apache server ภายในสภาพแวดล้อมหลักสิ่งแวดล้อม

1. ในขั้นตอนแรกคุณต้องสร้าง environment ขึ้นมาอีกหนึ่ง env ด้วยแอปพลิเคชันเดียวกันภายใน (เราจะตั้งชื่อว่าสภาพแวดล้อมที่สอง)
เคล็ดลับ:คุณสามารถใช้ฟีเจอร์สภาพแวดล้อมการโคลนเพื่อคัดลอก environment ที่เหมือนกันได้ทันที (เช่น มีการตั้งค่าข้อมูลและการตั้งค่าที่เหมาะสมทั้งหมดไว้ภายใน) ประเภทใดก็ได้

เพิ่มเติม:อย่าลืมกำหนดค่าข้อมูล "hardcoded" ให้ถูกต้อง (ลิงก์โดยตรง, IPs ฯลฯ) สำหรับ environment ที่โคลนมา หากจำเป็นต้องใช้
2. ตอนนี้ก็พร้อมที่จะติดตั้ง Traffic Distributorแล้วโดยการระบุ environment ทั้งสองนี้เป็น backends

เคล็ดลับ:หากมี environment หลาย regions ที่ผู้ให้บริการโฮสต์แพลตฟอร์มเลือก คุณสามารถย้าย environment ของคุณไปยังฮาร์ดแวร์เซตอื่นได้ในภายหลังโดยสิ่งนี้จะช่วยป้องกัน failover ได้ดีกว่าเนื่องจากคุณจะสามารถจัดการกับปัญหา hardware ที่ขึ้นอยู่กับ backends ของคุณ (หากเกิดขึ้น) โดยกำหนดเส้นทางคำขอไปยังอินสแตนซ์ที่ยังคงทำงานได้
3. เมื่อดำเนินการครบแล้ว Traffic Distributor ก็จะได้รับการตั้งค่าแล้วและพร้อมที่จะจัดการคำขอไปยังแอปพลิเคชัน

สิ่งที่เหลืออยู่คือการเปลี่ยนเส้นทางการรับส่งข้อมูลขาเข้าจาก environment แรกไปยัง Traffic Distributor
กำหนดค่า App Entrypoint ผ่าน TD
แอปพลิเคชันส่วนใหญ่ใน production มีโดเมนที่กำหนดเองในตัวอย่าง environment ขั้นต้น (สภาพแวดล้อมหลัก) มีชื่อโดเมนที่กำหนดเองที่ผูกไว้อยู่แล้ว
สำหรับการเปลี่ยนเส้นทางคำขอที่เหมาะสม (เช่น การดำเนินการผ่านผู้แจกจ่าย) เราจำเป็นต้องย้าย entrypoint ที่เหมาะสมไปยัง TD environment ด้วยวิธีนี้ข้อมูลดังกล่าวจะถูกวางไว้ด้านหน้าของคู่แบ็กเอนด์ที่เลือกและแชร์โหลดที่เข้ามาระหว่างกันตามที่ตั้งค่าไว้ ให้คุณปฏิบัติตามขั้นตอนง่ายๆถัดไปตามวิธีการผูกโดเมนแบบกำหนดเองดังนี้:
- หากใช้CNAMEหรือชื่อเปลี่ยนเส้นทาง - สลับโดเมนระหว่าง environment เริ่มต้นและ TD
- หากใช้ A Record - สลับ Public IPs เพื่อย้าย IP ภายนอกที่ใช้ไปยัง TD environment
การสลับโดเมน
1. วางเมาส์เหนือ environment ของโดเมนที่กำหนดเองและผูกกับสภาพแวดล้อมหลักจากนั้นคลิกปุ่ม Settings

2. ภายในแท็บการตั้งค่า environment คลิกที่ส่วนโดเมนที่กำหนดเองแล้วไปที่ตัวเลือก[สลับโดเมน]/swap-domains/)เลือก Traffic Distributor environment ภายในรายการดรอปดาวน์

คลิกปุ่มสลับและยืนยันการกระทำนี้ในป๊อปอัปเพื่อใช้การเปลี่ยนแปลง
3. รอซักครู่แอปพลิเคชันที่กำหนดชื่อโดเมนเองจะถูกย้าย environment กับ Traffic Distributor เพื่อให้ backends ทั้งสองของคุณใช้งานได้ผ่านโดเมนนี้
การสลับ Public IPs
วิธีที่ง่ายที่สุดในการส่ง Public IP จากสภาพแวดล้อมหลัก(เช่น โดเมนที่คุณกำหนดเอง) ไปยัง Traffic Distributor คือการใช้ฟังก์ชันสลับที่อยู่ภายนอกที่สอดคล้องกันซึ่งมีให้ใช้งานผ่าน Jelasticเอพีไอและคลีไอ
อนุญาตให้ดำเนินการกำหนดค่าที่จำเป็นในคำสั่งเดียวซึ่งจะช่วยยกเว้นการกำหนดค่าบันทึกด้วยตนเอง
หากคุณต้องการทำงานผ่าน GUI คุณต้องไปที่ผู้รับจดทะเบียนโดเมนของคุณและแทนที่ IP address ภายนอกด้วยตนเองใน A Record สำหรับโดเมนที่คุณกำหนดเอง
1. ตรวจสอบให้แน่ใจว่าอินสแตนซ์ NGINX balancer ใน Traffic Distributor environment ของคุณมีIP address ภายนอกที่แนบมา คลิก Copy เพื่อคัดลอกค่าจากแดชบอร์ด

2. จากนั้นเข้าถึงการจัดการ DNS ของคุณและกำหนด A Record เพื่อชี้ไปยัง IP address ใหม่
เคล็ดลับ:
- หากต้องการใช้การเปลี่ยนแปลงเหล่านี้คุณต้องรอให้ DNS record cache ปัจจุบันหมดอายุ (เนื่องจาก DNS server อาจส่งคืนที่อยู่โดเมนเก่าเมื่อมี request) หากคุณต้องการทราบระยะเวลาที่แน่นอนว่า IP address เก่าของโดเมนจะถูกเก็บไว้ใน cache คุณสามารถตรวจสอบการตั้งค่าทีทีแอลใน DNS manager ของคุณ (โดยปกติจะระบุเป็นวินาที)
- อย่าลืมตรวจสอบการกำหนดค่าของแอปพลิเคชันอีกครั้งสำหรับการตั้งค่าที่ขึ้นกับ IP แบบ hardware แล้วปรับเปลี่ยนตามนั้น
3. หลังจากเปลี่ยนที่อยู่ entrypoint ของแอปพลิเคชัน คุณสามารถแยกไอพีสาธารณะออกจาก environment เริ่มต้น (หากไม่ต้องการเข้าถึงโดยตรงอีกต่อไป) เพื่อที่จะไม่ต้องชำระเงินสำหรับส่วนที่ไม่ได้ใช้งาน
เมื่อดำเนินการครบแล้วการรับส่งข้อมูลขาเข้าทั้งหมดสำหรับโดเมนที่คุณกำหนดเองจะถูกประมวลผลโดย Traffic Distributor solution ซึ่งจะกำหนดเส้นทางตามอัตราส่วนการรับส่งข้อมูลที่ตั้งไว้ระหว่าง backends ของแอปพลิเคชัน