ตั้งค่าตัวแปรสภาพแวดล้อมพร็อกซี่ใน Kubernetes Pod
ใส่ตัวแปรพร็อกซี่ HTTP ที่รองรับในข้อกำหนดคอนเทนเนอร์ Kubernetes และแยกเส้นทางคลัสเตอร์โดยตรงออกจากการกำหนดค่าการดึงอิมเมจ
คำสั่งบนโหนด Kubernetes สามารถใช้พร็อกซี่ของเชลล์ได้ ขณะที่ Pod บนโหนดนั้นไม่มีสภาพแวดล้อมพร็อกซี่ สภาพแวดล้อมของคอนเทนเนอร์ถูกกำหนดโดยอิมเมจและการกำหนดค่า Pod
สำหรับแอปพลิเคชันที่รองรับตัวแปรเหล่านี้ ให้เพิ่มรายการ env ลงในรายการคอนเทนเนอร์ที่มีอยู่:
env:
- name: HTTP_PROXY
value: http://proxy.example:8080
- name: HTTPS_PROXY
value: http://proxy.example:8080
- name: NO_PROXY
value: localhost,127.0.0.1,kubernetes.default.svc,.svc,.cluster.local
ใน Deployment สิ่งนี้อยู่ใต้คอนเทนเนอร์ที่เกี่ยวข้องใน spec.template.spec.containers อัปเดตเวิร์กโหลดผ่านการเปิดตัวตามปกติเพื่อให้ Pod ใหม่ได้รับ ระบุชื่อตัวพิมพ์เล็กด้วยเมื่อไคลเอนต์จริงต้องการ
รายการข้ามเป็นตัวอย่างเริ่มต้น ไม่ใช่รายการของทุกเส้นทางในคลัสเตอร์ ใช้ส่วนต่อท้าย DNS จริงของคลัสเตอร์และปลายทางภายใน แอปพลิเคชันที่ใช้ IP ของบริการอาจต้องใช้ช่วงบริการจริงในรูปแบบที่ไคลเอนต์รองรับ
คอนเทนเนอร์ init มีข้อกำหนดคอนเทนเนอร์ของตนเอง เพิ่มการกำหนดค่าที่ต้องการที่นั่นเมื่อพวกเขาดาวน์โหลดภายนอก สำหรับการดาวน์โหลด HTTP สาธารณะ ปลายทางจากรายการพร็อกซี่ HTTPเป็นผู้สมัครสำหรับค่าสภาพแวดล้อมคอนเทนเนอร์เหล่านี้
การดึงอิมเมจเกิดขึ้นก่อนที่แอปพลิเคชันจะทำงาน และดำเนินการโดยรันไทม์คอนเทนเนอร์ของโหนด สภาพแวดล้อม Pod ไม่สามารถกำหนดค่าการเชื่อมต่อรีจิสทรีก่อนหน้านั้นได้
สุดท้าย ตัวแปรพร็อกซี่ HTTP มีผลเฉพาะกับไคลเอนต์ที่ใช้งานเท่านั้น ไม่ได้เปลี่ยนเส้นทางการรับส่งข้อมูลฐานข้อมูล UDP หรือซ็อกเก็ตอื่นใดจาก Pod