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

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

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

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

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

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

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

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