ฉันมีบริการ API แบ็กเอนด์สองรายการ:
- api-บริการ-v1
- api-บริการ-v2
ทั้งคู่ตอบสนองบนเส้นทาง "/api/"
ฉันมีการกำหนดค่านี้ทำงานได้ดีเป็นการตั้งค่านักเทียบท่าที่เขียนโดยบริการ nginx ทำหน้าที่เป็นพร็อกซีพร้อมไฟล์กำหนดค่าต่อไปนี้
/etc/nginx/conf.d/default.conf:
เซิร์ฟเวอร์ {
...
ตำแหน่ง /apiv1/ {
proxy_pass http://api-service-v1/api/;
}
...
ตำแหน่ง /apiv2/ {
proxy_pass http://api-service-v2/api/;
}
...
}
ตอนนี้ฉันต้องการปรับใช้การตั้งค่ากับคลัสเตอร์ k8s ฉันติดอยู่กับการกำหนดค่าขาเข้า
ingress.yml:
รุ่น api: networking.k8s.io/v1
ชนิด: ทางเข้า
ข้อมูลเมตา:
ชื่อ: dev-ingress
คำอธิบายประกอบ:
nginx.ingress.kubernetes.io/use-regex: "จริง"
ข้อมูลจำเพาะ:
กฎ:
- โฮสต์: demo.com
http:
เส้นทาง:
- pathType: คำนำหน้า
เส้นทาง: "/"
แบ็กเอนด์:
บริการ:
ชื่อ: บริการส่วนหน้า
ท่า:
จำนวน: 80
- pathType: คำนำหน้า
เส้นทาง: "/apiv1/"
แบ็กเอนด์:
บริการ:
ชื่อ: api-service-v1
ท่า:
จำนวน: 80
- pathType: คำนำหน้า
เส้นทาง: "/apiv2/"
แบ็กเอนด์:
บริการ:
ชื่อ: api-บริการ-v2
ท่า:
จำนวน: 80
เส้นทาง "/" ทำงานได้ดี แต่เส้นทาง "/apiv1/" และ "/apiv2/" ไม่ทำงาน
กรุณาช่วย.
ขอบคุณ!