ฉันกำลังสร้างแอปพลิเคชัน API ซึ่งฉันต้องการปรับใช้ในระบบคลาวด์ และแอปพลิเคชันของฉันประกอบด้วยคอนเทนเนอร์ต่อไปนี้:
- คอนเทนเนอร์ Nginx: เกตเวย์ API
- คอนเทนเนอร์ API
- คอนเทนเนอร์ฐานข้อมูลเซิร์ฟเวอร์ SQL
ฉันใช้ Nginx เป็นเกตเวย์เพื่อกำหนดเส้นทางการรับส่งข้อมูลเครือข่ายทั้งหมดไปยังคอนเทนเนอร์ API และฉันยังมี DNS ซึ่งก็คือ https://www.example.com และชี้ไปที่ปลายทางคอนเทนเนอร์ Nginx
ในสภาพแวดล้อมการผลิตของฉัน สามารถใช้คอนเทนเนอร์ nginx เป็นเซิร์ฟเวอร์โหลดบาลานซ์ได้ จากนั้น ในกรณีของโหนดเดียว nginx หรือเซิร์ฟเวอร์นี้อาจล้มเหลว เพื่อให้แน่ใจว่ามีความพร้อมใช้งานสูง สิ่งแรกที่ควรคำนึงถึงคือการปรับใช้เซิร์ฟเวอร์ nginx อื่น แต่ที่อยู่ IP ของเซิร์ฟเวอร์ nginx สองเครื่องนั้นแตกต่างกัน แล้วจะแน่ใจได้อย่างไรว่าเมื่อเซิร์ฟเวอร์หนึ่งล้มเหลว อีกเซิร์ฟเวอร์หนึ่งจะถูกใช้โดยอัตโนมัติ
ฉันรู้ว่ามี Nginx HA (ความพร้อมใช้งานสูง) อยู่ แต่สำหรับสภาพแวดล้อมภายในองค์กร ฉันจะใช้ Nginx HA ในสภาพแวดล้อมการผลิตของฉันในระบบคลาวด์ด้วยคอนเทนเนอร์และไม่ใช้ kubernetes, AWS Network Load Balancer, Azure Standard Load Balancer หรือ Google Cloud Platform ได้อย่างไร
เอกสารตัวอย่างหรือแนวคิดใด ๆ จะได้รับการชื่นชมอย่างมาก
ดีที่สุด