Huawei Cloud International Cloud โครงสร้างพื้นฐานเนทีฟ: คลัสเตอร์คอนเทนเนอร์ CCE และคู่มือการปรับใช้สถาปัตยกรรมไมโครเซอร์วิสในต่างประเทศ
ในคลื่นของบริษัทที่ไปต่างประเทศ "ความไม่เพียงพอ" ของสถาปัตยกรรมทางเทคนิคเป็นสาเหตุของการแท้งธุรกิจในต่างประเทศการปฏิบัติตามข้อกำหนดที่เข้มงวดความล่าช้าของเครือข่ายและการกระวนกระวายใจและความแตกต่างของเวลาในการดำเนินการและการบำรุงรักษาข้ามชาติล้วนเป็นกระดูกแข็ง
Huawei Cloud International Edition กลายเป็นตัวเลือกแรกของบริษัทในต่างประเทศหลายแห่งโดยอาศัยศูนย์ข้อมูลที่แปลเป็นภาษาท้องถิ่นในเอเชียแปซิฟิกยุโรปละตินอเมริกาและที่อื่นๆบทความนี้ไม่ได้พูดถึงแนวคิดมหภาคเสมือนจริงแต่ใช้ผลิตภัณฑ์แข็งทางเทคนิคโดยตรงและพูดคุยเกี่ยวกับวิธีการสร้างโครงสร้างพื้นฐานระบบคลาวด์ในต่างประเทศที่มีความพร้อมใช้งานสูงสอดคล้องและมีเวลาแฝงต่ำโดยใช้ Huawei Cloud International Cloud Container Engine (CCE) และสถาปัตยกรรมไมโครเซอร์วิส.
1.การปฏิบัติตามข้อกำหนดในต่างประเทศและการออกแบบสถาปัตยกรรม: ก้าวแรก
การปรับใช้ในต่างประเทศ
การปฏิบัติตามข้อกำหนดและการกู้คืนจากภัยพิบัติเป็นสิ่งสำคัญที่สุด
。มี GDPR ในยุโรปและ PDPA ในเอเชียตะวันออกเฉียงใต้หากคุณย้ายโครงสร้าง "รถรับส่ง" ในประเทศโดยตรงคุณจะต้องถูกปรับจำนวนมากเมื่อใดก็ได้
1.การปฏิบัติตามข้อมูลและภาคเลือก
Huawei Cloud International Edition มีภูมิภาคอิสระในสิงคโปร์แฟรงก์เฟิร์ตกรุงเทพฯเซาเปาโลและที่อื่นๆเมื่อวางแผนสถาปัตยกรรมไมโครเซอร์วิสจะต้องดำเนินการ
การตรวจสอบการไหลของข้อมูล
:
ข้อมูลความเป็นส่วนตัวของผู้ใช้ (PII): ต้องจัดเก็บไว้ในสถานที่ตัวอย่างเช่นไมโครเซอร์วิสของผู้ใช้ในยุโรปฐานข้อมูล (เช่น GaussDB) และแคช (บริการแคชที่กระจาย) จะต้องอยู่ในเขตแฟรงก์เฟิร์ตและจะต้องไม่ถูกส่งกลับประเทศข้ามพรมแดน
ตรรกะทางธุรกิจที่ไม่ละเอียดอ่อน: สามารถแยกชิ้นส่วนผ่านไมโครเซอร์วิสและปรับใช้ในโหนดที่ใกล้กับผู้ใช้มากที่สุดเพื่อลดความล่าช้า
2.ข้ามภูมิภาคที่มีอยู่สูง (Geo-Redundancy)
ความน่าจะเป็นของความล้มเหลวของห้องคอมพิวเตอร์เดี่ยวในต่างประเทศนั้นไม่ต่ำกว่าในประเทศจีนดังนั้นจึงต้องปรับใช้บริการไมโครในต่างประเทศโดยใช้ Multi-AZ
การกำหนดค่าคลัสเตอร์ CCE: เมื่อสร้างคลัสเตอร์ CCE Turbo โหนดควบคุมและโหนดงานจะต้องตรวจสอบ AZ ที่แตกต่างกันอย่างน้อย3โหนด
การกระจายการรับส่งข้อมูล: พอร์ทัลการรับส่งข้อมูลใช้โหลดบาลานซ์แบบยืดหยุ่น (ELB) รวมกับบริการเร่งความเร็วทั่วโลกของ Huawei Cloud (GA) และใช้เครือข่ายกระดูกสันหลังทั่วโลกของ Huawei เพื่อเข้าถึงการรับส่งข้อมูลของผู้ใช้ในต่างประเทศในบริเวณใกล้เคียงและทำการโหลดบาลานซ์ระหว่าง AZ หลายตัวโดยอัตโนมัติ
2.การเชื่อมโยงไปถึงในต่างประเทศของคลัสเตอร์ CCE Turbo: การปฏิบัติการกำหนดค่าหลัก
Huawei Cloud CCE(Cloud Container Engine) แบ่งออกเป็นรุ่นปกติและรุ่น Turbo ขอแนะนำให้เลือกธุรกิจในต่างประเทศ
CCE Turbo
รองรับการพัฒนาตนเองของ Huawei
สถาปัตยกรรมเครือข่าย Yangtse (Yangtze River)
นี่เป็นอาวุธในการจัดการกับสภาพแวดล้อมเครือข่ายในต่างประเทศที่ซับซ้อน
1.เครือข่ายคอนเทนเนอร์: ปฏิเสธการจำลองเสมือนรอง
เครือข่ายคอนเทนเนอร์แบบดั้งเดิม (เช่น Calico VxLAN) มีการสูญเสียแพ็กเก็ตซึ่งจะทำให้การสื่อสาร RPC ระหว่างไมโครเซอร์วิสช้าลงเมื่อเครือข่ายทางกายภาพในต่างประเทศมีความล่าช้าสูง
คำแนะนำแบบฮาร์ดคอร์: เลือก Cloud Native Network 2.0(Yangtse) ช่วยให้ Pod แต่ละตัวสามารถกำหนด IP จริงใน Huawei Cloud VPC, Pod และ Cloud Server (ECS) ได้โดยตรง
ฐานข้อมูลคลาวด์อยู่ในระนาบเครือข่ายเดียวกัน
ผลกระทบ: การโทรร่วมกันระหว่างไมโครเซอร์วิส (เช่น Spring Cloud เรียกผ่าน Feign หรือ Go micro-service สื่อสารผ่าน gRPC) โดยตรงผ่านการกำหนดเส้นทาง VPC และความล่าช้าของเครือข่ายจะลดลงมากกว่า40%
2.ต่างประเทศโหนดพูล (Node Pool) ที่มีความยืดหยุ่น
ผู้ใช้ในต่างประเทศมักมี "เอฟเฟกต์เจ็ตแล็ก" และ "การเข้าชมอย่างกะทันหัน" ที่ชัดเจน (เช่นโปรโมชั่นอีคอมเมิร์ซและบริการเกม)
พูลโหนดหลายข้อกำหนด: สำหรับไมโครเซอร์วิสอย่าผสม Pod ทั้งหมดในอินสแตนซ์ ECS สร้างพูลโหนดสองพูล: พูลโหนดที่เน้นการคำนวณ (ซีรีส์ C): เรียกใช้เกตเวย์ API และไมโครเซอร์วิสสำหรับธุรกิจหลักพูลโหนดสากล (ซีรีส์ S): ส่วนประกอบเสริมเช่นการรวบรวมบันทึกการทำงาน (Logstash/Fluentd) และการตรวจสอบ (Prometheus Exporter)
การเชื่อมโยง HPA และ CA: กำหนดค่า Pod กล้องส่องทางไกล (HPA) แนวนอนขยาย Pod โดยอัตโนมัติตามการใช้ CPU/หน่วยความจำในขณะเดียวกันก็เปิดคลัสเตอร์ Autoscaler (CA) เมื่อ Pod อยู่ในสถานะ Pending เนื่องจากทรัพยากรไม่เพียงพอ Huawei Cloud ใช้ ECS ในต่างประเทศเพื่อเพิ่มลงในโหนดพูล
3.การนำสถาปัตยกรรมไมโครเซอร์วิสไปใช้ในต่างประเทศ: การกำกับดูแลและการสื่อสาร
ในสภาพแวดล้อมของหลายภูมิภาคและหลาย AZ ในต่างประเทศจะจัดการบริการขนาดเล็กได้อย่างไร? Huawei Cloud ให้
เครื่องยนต์ไมโครบริการ (CSE)
ซึ่งรวมเอาบริการ ServiceComb, Spring Cloud Huawei และ Istio เข้าด้วยกันอย่างลึกซึ้ง
1.ศูนย์การลงทะเบียนและศูนย์การกำหนดค่า: การแปลและการซิงโครไนซ์
หากธุรกิจของคุณต้องการการทำงานร่วมกันข้ามประเทศ/ข้ามภูมิภาค
อย่าปล่อยให้ไมโครเซอร์วิสในต่างประเทศเชื่อมต่อกับศูนย์จดทะเบียนในประเทศ
。
การปรับใช้ในพื้นที่: ปรับใช้ CSE อย่างอิสระในภูมิภาคต่างประเทศ (รองรับ Nacos/ZooKeeper/ServiceComb) ลงทะเบียนบริการไมโครในต่างประเทศที่ใกล้ที่สุด
การจัดการการกำหนดค่า: ใช้ศูนย์การกำหนดค่าของ CSE เพื่อแยก "ตรรกะทางธุรกิจ" ออกจาก "พารามิเตอร์สภาพแวดล้อมในต่างประเทศ" (เช่น Sercet Key ของ SDK การชำระเงินของบุคคลที่สามในต่างประเทศที่อยู่อินเทอร์เฟซอัตราแลกเปลี่ยนสกุลเงินของประเทศต่างๆ) หลังจากปรับเปลี่ยนการกำหนดค่าแล้วไมโครเซอร์วิสจะรับรู้ในไม่กี่วินาทีและไม่จำเป็นต้องบรรจุภาพใหม่
2.การจัดการการจราจรทางตะวันออก-ตะวันตก (Service Mesh)
เมื่อจำนวนไมโครเซอร์วิสเกิน100มันเป็นเรื่องที่เจ็บปวดอย่างยิ่งที่จะต้องพึ่งพา SDK ระดับรหัส (เช่น Spring Cloud) เพื่อจัดการการหมดเวลาเครือข่ายที่ซับซ้อนในต่างประเทศและลองใหม่อีกครั้งแนะนำ
แอพลิเคชันบริการกริด (ASM)
(บริการโฮสติ้งบน Istio ของหัวเว่ยคลาวด์)
Circuit Breaking: การกระวนกระวายใจของเครือข่ายสาธารณะในต่างประเทศเป็นบรรทัดฐานกำหนดค่ากลยุทธ์ฟิวส์ผ่าน ASM เมื่อบริการของบุคคลที่สามในต่างประเทศ (เช่นอินเทอร์เฟซการชำระเงิน Google Auth หรือ PayPal) ล้มเหลว5ครั้งติดต่อกันไมโครเซอร์วิสจะถูกทำลายทันที
, ใช้ตรรกะการลดระดับท้องถิ่นเพื่อป้องกันการถล่มของลิงก์ทั้งหมด
Canary Release: เวอร์ชันที่วางจำหน่ายในต่างประเทศมีความเสี่ยงสูงการใช้ ASM สามารถใช้ HTTP Header (เช่นตามประเทศ X-Country: SG ของผู้ใช้) สำหรับการเปิดตัวระดับสีเทาที่แม่นยำขั้นแรกให้ผู้ใช้ชาวสิงคโปร์5% ทดสอบบริการไมโครใหม่จากนั้นจึงผลักดันปริมาณทั้งหมดหลังจากเสถียร
ประการที่สี่การเร่ง CI/CD และการทำมิเรอร์ข้ามชาติ: เปิดลิงค์การจัดส่ง R & D
ทีม R & D อยู่ในประเทศจีนและคลัสเตอร์การผลิตอยู่ในต่างประเทศจะปรับใช้รหัสอย่างปลอดภัยและรวดเร็วเป็นระยะทางหลายพันกิโลเมตรได้อย่างไร?
1.คลังสินค้ากระจก (SWR) การจำลองแบบทั่วโลก
หากคลัสเตอร์ CCE ในต่างประเทศได้รับอนุญาตให้ไปที่คลังสินค้ามิเรอร์คอนเทนเนอร์ในประเทศ (SWR) โดยตรงเพื่อดึงภาพธุรกิจของ G หลายๆภาพจะช้ามากจนผู้คนสงสัยในชีวิตและการปรับใช้จะล้มเหลวได้ง่ายเนื่องจากการหยุดชะงักของเครือข่าย
แนวทางที่ถูกต้อง: สร้างคลังสินค้า SWR ที่บ้าน (เช่นปักกิ่ง4) และต่างประเทศ (เช่นสิงคโปร์) ใช้ฟังก์ชันการซิงโครไนซ์กระจกของ SWR สายการประกอบ CI/CD ในประเทศ (เช่น Jenkins หรือ GitLab CI) จะส่งแพ็คเกจมิเรอร์ไปยัง SWR ในประเทศด้วยการกำหนดค่าทริกเกอร์ SWR จะซิงโครไนซ์มิเรอร์กับ SWR ของสิงคโปร์โดยอัตโนมัติผ่านสายเฉพาะข้ามพรมแดนของ Huawei Cloud การกำหนดค่าคลัสเตอร์ CCE ในต่างประเทศดึงมิเรอร์จาก SWR ในพื้นที่และใช้สายเฉพาะของอินทราเน็ตความเร็วจะสั้นลงจากไม่กี่นาทีเหลือเพียงไม่กี่วินาที
2.สายการประกอบข้ามชาติที่ปลอดภัย
การควบคุม R & D: คอนโซล CI/CD ยังคงอยู่ในประเทศเพื่อความปลอดภัยของสินทรัพย์รหัส
การโฮสต์ใบรับรอง: อย่าเขียนไฟล์ Kubeconfig ของคลัสเตอร์ CCE ในต่างประเทศโดยตรงในสคริปต์ไปป์ไลน์ใช้ข้อมูลรับรองการโฮสต์ DEW (บริการเข้ารหัสข้อมูล) ของ Huawei Cloud หรือให้สิทธิ์การดำเนินการคลัสเตอร์ที่เล็กที่สุดสำหรับสายการประกอบผ่าน Huawei Cloud IAM (Unified Identity Authentication)
5.ความสามารถในการสังเกตในต่างประเทศ: ดูไมโครเซอร์วิสในกล่องดำ
หลังจากเปิดตัวธุรกิจในต่างประเทศการดำเนินงานและการบำรุงรักษามักเผชิญกับ "จุดบอดของอาการเจ็ตแล็ก" ในขณะที่การวิจัยและพัฒนาในประเทศกำลังนอนหลับอยู่ในต่างประเทศกำลังประสบกับปริมาณการใช้งานสูงสุดโครงสร้างที่สังเกตได้อย่างสมบูรณ์แบบเป็นวิธีเดียวในการช่วยเหลือตนเอง
1.การจัดการบันทึกแบบรวม: LTS
บันทึกแบบกระจายไมโครเซอร์วิสต้องรวมศูนย์ Huawei Cloud Cloud Log Service (LTS) รวมอยู่ใน CCE Turbo
การกำหนดค่า: เปิดปลั๊กอินรวบรวมบันทึก LTS ของ CCE และรวบรวมเอาต์พุตมาตรฐาน (Stdout) ของ Pod และไฟล์บันทึกในคอนเทนเนอร์โดยตรง
การเพิ่มประสิทธิภาพ: ตั้งค่าความละเอียดที่มีโครงสร้างใน LTS (เช่นการแยก userId และเวลาตอบสนองในบันทึก JSON เป็นดัชนี) การใช้ฟังก์ชันการถ่ายโอนข้อมูลของ LTS บันทึกเย็นที่มีอายุมากกว่า30วันจะถูกถ่ายโอนไปยัง OBS (Object Storage) เพื่อให้เป็นไปตามข้อกำหนดของการตรวจสอบในต่างประเทศสำหรับรอบการเก็บรักษาบันทึก
2.การจัดการประสิทธิภาพการใช้งาน: APM
การตอบสนองของไมโครเซอร์วิสในต่างประเทศช้าเป็นปัญหาเครือข่ายการหยุดชะงักของฐานข้อมูลหรือ API ของบุคคลที่สามติดขัด?
การปรับใช้: ฉีดโพรบ APM (การจัดการประสิทธิภาพของแอปพลิเคชัน) (ไม่มีการบุกรุกรองรับ Java/Go/Node.js ฯลฯ) ลงในไมโครเซอร์วิส Pod ใน CCE
ตรวจสอบตัวบ่งชี้หลัก: ดูแผนภาพโทโพโลยีการโทรและหน่วยความจำฮีป JVM ผ่านการติดตามลิงก์แบบกระจาย (Trace) ของ APM คุณสามารถดูได้อย่างรวดเร็วว่าโหนดไมโครเซอร์วิสใดที่ใช้เวลานานที่สุดสำหรับคำขอ
6.ออกทะเลเพื่อหลีกเลี่ยงหลุมและสรุปแนวทางปฏิบัติที่ดีที่สุด
สุดท้ายสรุปบทเรียนที่เต็มไปด้วยเลือดและน้ำตาของการปรับใช้ CCE และไมโครเซอร์วิสในต่างประเทศ:
กลุ่มรักษาความปลอดภัยต้องปฏิบัติตามหลักการของสิทธิพิเศษขั้นต่ำ: สแกนเนอร์ในต่างประเทศอาละวาดอย่างมากโหนดโหนดของคลัสเตอร์ CCE จะต้องไม่ผูกกับ IP สาธารณะแบบยืดหยุ่น (EIP) การรับส่งข้อมูลขาเข้าทั้งหมดต้องผ่าน ELB และเปิดเฉพาะพอร์ตที่จำเป็นเช่น80/443เท่านั้น
การกำหนดค่า CoreDNS อย่างสมเหตุสมผล: การเยี่ยมชมร่วมกันบ่อยครั้งระหว่างไมโครเซอร์วิสผ่านชื่อโดเมนบริการและการประสาน CoreDNS ในต่างประเทศอาจกลายเป็นปัญหาคอขวดได้อย่างง่ายดายอย่าลืมเปิด NodeLocal DNSCache (Node Local DNS Cache) ใน CCE เพื่อลดแรงกดดันต่อ DNS หลักของคลัสเตอร์และหลีกเลี่ยงความล้มเหลวของการเรียกไมโครเซอร์วิสที่เกิดจากการหมดเวลาการแก้ปัญหาชื่อโดเมน
ให้ความสนใจกับการเลือกพื้นที่จัดเก็บ: หากไมโครเซอร์วิสในต่างประเทศมีข้อกำหนดในการคงอยู่ (เช่นการอัปโหลดไฟล์) อย่าใช้ดิสก์ในเครื่องบริสุทธิ์ (ดิสก์ในเครื่องจะหายไปเมื่อ Pod ถูกทำลาย) คุณควรใช้ Huawei Cloud SFS Turbo (ที่เก็บไฟล์ความเร็วสูง) ซึ่งรองรับการอ่านและเขียนหลาย Pod พร้อมกันและความล่าช้าในการอ่านและเขียนสามารถเข้าถึงระดับวินาทีซึ่งเหมาะมากสำหรับสถานการณ์การจัดเก็บที่ใช้ร่วมกันของไมโครเซอร์วิส
คลาวด์เนทีฟไม่ใช่แค่การเปลี่ยนเครื่องเสมือนด้วยคอนเทนเนอร์และการปรับใช้ในต่างประเทศไม่ใช่แค่การเปลี่ยนห้องคอมพิวเตอร์ด้วยการกำหนดค่า CCE Turbo, เครือข่าย Yangtse และเครื่องมือไมโครเซอร์วิส CSE เวอร์ชันสากลของ Huawei Cloud บริษัทต่างๆสามารถสร้างชุดพื้นฐานทางธุรกิจระดับโลกที่มั่นคงและรวดเร็วในเครือข่ายในต่างประเทศที่ซับซ้อนและสภาพแวดล้อมการปฏิบัติตามกฎระเบียบ.
