Score:0

จะเพิ่มชื่อโดเมนไปยังคอนเทนเนอร์ ECS (บริการ ECS) โดยไม่มีโหลดบาลานเซอร์ได้อย่างไร

ธง ss

ฉันกำลังค้นหาวิธีเพิ่มชื่อโดเมนในบริการ ECS (คอนเทนเนอร์) โดยไม่ต้องโหลดบาลานเซอร์

บริการประเภทเฉพาะที่ฉันต้องการทำคือโหลดบาลานเซอร์ที่มีความสามารถนอกเหนือไปจากข้อเสนอของ AWS เราต้องการให้สิ่งนี้ซ้ำซ้อนกันทั่วทั้ง Availability Zone ด้วยการตั้งค่าที่คล้ายกันใน VPC ที่แยกกันหลายตัว ฉันเกลียดจริงๆ ที่จะใช้จ่าย $2,000 ต่อปีเพื่อติดตั้งโหลดบาลานซ์ให้เพียงพอเพื่อตอบสนองความต้องการง่ายๆ นี้

เพื่อให้ชัดเจน ฉันกำลังมองหาโซลูชันที่แก้ไข FQDN เป็นที่อยู่ IP ภายนอกที่แนบกับคอนเทนเนอร์ ดังนั้นชื่อ A หรือ AAAA (อาจเป็น CNAME หากระบุน้ำหนักและชี้ไปที่ A หรือ AAAA) ไม่สำคัญสำหรับฉันว่าจะใช้โหมดเครือข่ายใด คอนเทนเนอร์สามารถวางในใด ๆ เจ้าภาพ, สะพาน, awsvpc หากวิธีแก้ปัญหาได้ผล!

จนถึงตอนนี้ฉันพบว่ามีข้อ จำกัด ที่น่าผิดหวัง:

  • Service Discovery จะเพิ่มเฉพาะระเบียน SRV สำหรับ เจ้าภาพ และ สะพาน พิมพ์คอนเทนเนอร์เครือข่าย
  • Service Discovery จะสร้างระเบียน A และ AAAA สำหรับ awsvpc คอนเทนเนอร์ประเภทเครือข่าย แต่ awsvpc ไม่สามารถวางงานบนอินสแตนซ์ ECS EC2 และยังคงมีที่อยู่ IP สาธารณะ
  • การเรียกใช้งานเดียวกันใน fargate จะมีค่าใช้จ่ายมากหรือมากกว่าโหลดบาลานเซอร์
  • Route53 ไม่มีกลไกที่ดีในการเพิ่มระเบียนชื่อ A และ AAAA ไปยังอินสแตนซ์ EC2 ในกลุ่มการปรับขนาดอัตโนมัติ ดังนั้นแม้ว่าฉันจะใส่อินสแตนซ์ของงานนี้ในทุกโหนด ฉันก็ยังอ้างอิงด้วยชื่อโดเมนไม่ได้

จะเพิ่มชื่อโดเมนไปยังคอนเทนเนอร์ ECS โดยไม่มีโหลดบาลานเซอร์ได้อย่างไร

Score:0
ธง nl

ฉันไม่ชัดเจนเกี่ยวกับคำถาม Service Discovery รองรับชื่อโดเมน (เนมสเปซ) มันบังคับจริง ๆ เท่าที่ฉันสามารถบอกได้ กล่าวอีกนัยหนึ่ง หากคุณต้องการใช้ SD สำหรับบริการ ECS ที่เรียก บริการของฉัน คุณต้องอ้างถึงมันเป็น myservice.<โดเมน> ที่ไหน <domain> เป็นเนมสเปซตามอำเภอใจที่คุณต้องกำหนด (เช่น .local หรือ .my.domain) นี่คือตัวอย่าง ของสแต็กที่ใช้ SD

โปรดทราบว่าทั้งหมดนี้เป็น ภายใน ไปยังคลัสเตอร์และวิธีการค้นหาบริการภายใน (เช่น วิธีการที่บริการ ECS ค้นพบบริการ ECS อื่น)

[แก้ไข] หากคุณต้องการเปิดเผยบริการ ECS ของคุณ แต่ไม่ต้องการใช้โหลดบาลานเซอร์ อีกทางเลือกหนึ่งคือใช้ API GW เป็น อธิบายไว้ในโพสต์บล็อกนี้. โดยทั่วไป คุณไม่ต้องการลงทะเบียนที่อยู่ IP สาธารณะแบบสุ่มของงาน Fargate ใน R53 เนื่องจากเป็นที่อยู่ชั่วคราวและคุณต้องสร้างกลไกที่ซับซ้อนเพื่อให้สอดคล้องกันเมื่องาน Fargate เข้ามาและไป พิจารณากันรึยังครับ แอพรันเนอร์?

ss flag
สิ่งนี้สร้างระเบียน DNS SRV เท่าที่ฉันรู้เท่านั้น เบราว์เซอร์ Wen และไคลเอนต์อื่นๆ จำนวนมากไม่มองหาบันทึก SRV และไม่รู้วิธีใช้งาน ...เว้นแต่คุณจะวิ่งบนทางไกล
mreferre avatar
nl flag
ใช่. นั่นคือสิ่งที่ฉันหมายถึงโดย "ภายในคลัสเตอร์" ฉันได้อัปเดตคำตอบของฉันแล้ว
ss flag
"*เนื่องจากเป็นแบบชั่วคราวและคุณต้องสร้างกลไกที่ซับซ้อนเพื่อให้สอดคล้องกันเมื่องาน Fargate*" เช่นเดียวกับที่อยู่ IP ภายในบนคลัสเตอร์ ECS EC2 คอนเทนเนอร์สามารถถูกรื้อและวางบนโฮสต์ใหม่ได้ ด้วยกลุ่มการปรับขนาดอัตโนมัติ โฮสต์เองก็จะพังทลายลงและฟื้นคืนชีพขึ้นมา นั่นเป็นเหตุผลที่ "Service Discovery" มีอยู่ AFAIK การมีโซลูชันที่ติดตามการเปลี่ยนแปลง IP ของบริการนั้นเป็นประเด็นของคำถาม
ss flag
ฉันถือว่าการระบุ "ชื่อโดเมน" สรุปสิ่งภายนอก แต่คุณพูดถูกว่ามีชื่อโดเมนภายในด้วยเช่นกัน ฉันได้แก้ไขคำถามเพื่อให้ชัดเจน
mreferre avatar
nl flag
"การมีโซลูชันที่ติดตามการเปลี่ยนแปลง IP ของบริการนั้นเป็นประเด็นของคำถาม"
ss flag
*"เราได้ยินมาว่าคุณชอบโหลดบาลานเซอร์ เราจึงบังคับให้คุณใส่โหลดบาลานเซอร์ในโหลดบาลานเซอร์ของคุณ คุณจึงสามารถ..."* /ถอนหายใจ ขอบคุณสำหรับความคิดของคุณ เป็นเรื่องดีที่รู้ว่าฉันไม่ได้พลาดอะไรที่ชัดเจนไป

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา