เราต้องการใช้ haproxy ingress 1.7 บน kubernetes เพื่อฟังบนพอร์ต 55560 สำหรับการเชื่อมต่อ https
คุณช่วยในเรื่องนี้ได้ไหม
นี่คือไฟล์ haproxy.cfg ของฉัน เมื่อพยายามเข้าถึง ได้รับ curl: (35) OpenSSL SSL_connect: SSL_ERROR_SYSCALL ในข้อผิดพลาดในการเชื่อมต่อ
Https บน 443 ใช้งานได้ดี
ความนับถือ,
กัลยาณ
#_version=5
# HAProxy เทคโนโลยี
# https://www.haproxy.com/
# ไฟล์นี้ไม่ได้หมายถึงการเปลี่ยนแปลงโดยตรง
# อยู่ภายใต้การจัดการคอนโทรลเลอร์ haproxy ingress
ทั่วโลก
localpeer ท้องถิ่น
นายคนงาน
pidfile /var/run/haproxy.pid
ซ็อกเก็ตสถิติ /var/run/haproxy-runtime-api.sock ผู้ดูแลระบบระดับผู้ฟัง expose-fd
หมดเวลาสถิติ 1m
tune.ssl.default-dh-param 2048
ssl-default-bind-options no-sslv3 no-tls-tickets no-tlsv10
ssl-default-bind-ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA -AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128 -SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA :DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES :!MD5:!ปสก
บันทึก stdout จัดรูปแบบ raw daemon
เซิร์ฟเวอร์สถานะไฟล์ทั่วโลก
เซิร์ฟเวอร์สถานะฐาน /var/state/haproxy/
ค่าเริ่มต้น
เข้าสู่ระบบทั่วโลก
รูปแบบบันทึก '%ci:%cp [%tr] %ft %b/%s %TR/%Tw/%Tc/%Tr/%Ta %ST %B %CC %CS %tsc %ac/%fc/ %bc/%sc/%rc %sq/%bq %hr %hs "%HM %[var(txn.base)] %HV"'
ตัวเลือกการจัดส่งซ้ำ
ตัวเลือก dontlognull
ตัวเลือก http-keep-alive
หมดเวลา http-request 5 วินาที
หมดเวลาเชื่อมต่อ 5 วินาที
ไคลเอนต์หมดเวลา 50 วินาที
หมดเวลาคิว 5 วินาที
เซิร์ฟเวอร์หมดเวลา 50 วินาที
อุโมงค์หมดเวลา 1 ชม
หมดเวลา http-keep-alive 1m
โหลดเซิร์ฟเวอร์สถานะจากไฟล์ทั่วโลก
เพียร์โลคัลอินสแตนซ์
เพียร์ท้องถิ่น 127.0.0.1:10000
ฟรอนท์เอนด์ healthz
โหมด http
ผูก 0.0.0.0:1042 ชื่อ v4
ผูก :::1042 ชื่อ v6 v4v6
มอนิเตอร์-uri /healthz
ตัวเลือก dontlog-ปกติ
http ส่วนหน้า
โหมด http
ผูก 0.0.0.0:80 ชื่อ v4
ผูก :::80 ชื่อ v6
การเชื่อมต่อคำขอ tcp คาดหวังพร็อกซี layer4 ถ้า { src -f /etc/haproxy/maps/proxy-protocol-827c05ecc804eacf23a63899ca0ffcf6.map }
ฐาน http-request set-var(txn.base)
http-request set-var(txn.path) เส้นทาง
http-request set-var(txn.host) req.hdr(โฮสต์),ฟิลด์(1,:),ต่ำกว่า
http-request set-var(txn.host_match) var(txn.host), แผนที่(/etc/haproxy/maps/host.map)
http-request set-var(txn.host_match) var(txn.host),regsub(^[^.]*,,),map(/etc/haproxy/maps/host.map,'') if !{ var (txn.host_match) -m พบ }
http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),แผนที่(/etc/haproxy/maps/path-exact.map)
http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),map_beg(/etc/haproxy/maps/path-prefix.map) if !{ var(txn.path_match ) -m พบ }
use_backend %[var(txn.path_match),ฟิลด์(1,.)]
default_backend default-default-ingress-default-backend-port-1
ฟรอนท์เอนด์ https
โหมด http
ผูก 127.0.0.1:443 ชื่อ v4 ยอมรับพร็อกซี
ผูก :: 1:443 ชื่อ v6 v4v6 ยอมรับพร็อกซี
ฐาน http-request set-var(txn.base)
http-request set-var(txn.path) เส้นทาง
http-request set-var(txn.host) req.hdr(โฮสต์),ฟิลด์(1,:),ต่ำกว่า
http-request set-var(txn.host_match) var(txn.host), แผนที่(/etc/haproxy/maps/host.map)
http-request set-var(txn.host_match) var(txn.host),regsub(^[^.]*,,),map(/etc/haproxy/maps/host.map,'') if !{ var (txn.host_match) -m พบ }
http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),แผนที่(/etc/haproxy/maps/path-exact.map)
http-request set-var(txn.path_match) var(txn.host_match),concat(,txn.path,),map_beg(/etc/haproxy/maps/path-prefix.map) if !{ var(txn.path_match ) -m พบ }
http-request set-header X-Forwarded-Proto https
use_backend %[var(txn.path_match),ฟิลด์(1,.)]
default_backend default-default-ingress-default-backend-port-1
ฟรอนท์เอนด์ ssl
โหมด tcp
ผูก 0.0.0.0:443 ชื่อ v4
ผูก :::443 ชื่อ v6 v4v6
รูปแบบบันทึก '%ci:%cp [%t] %ft %b/%s %Tw/%Tc/%Tt %B %ts %ac/%fc/%bc/%sc/%rc %sq/% bq %hr %hs haproxy.MAP_SNI: %[var(sess.sni)]'
เนื้อหาคำขอ tcp ปฏิเสธหาก !{ req_ssl_hello_type 1 }
tcp-ขอตรวจสอบ-ล่าช้า 50,000
การเชื่อมต่อคำขอ tcp คาดหวังพร็อกซี layer4 ถ้า { src -f /etc/haproxy/maps/proxy-protocol-827c05ecc804eacf23a63899ca0ffcf6.map }
tcp-request content set-var(sess.sni) req_ssl_sni
tcp-request content set-var(txn.sni_match) req_ssl_sni,map(/etc/haproxy/maps/sni.map)
tcp-request content set-var(txn.sni_match) req_ssl_sni,regsub(^[^.]*,,),map(/etc/haproxy/maps/sni.map)
use_backend %[var(txn.sni_match),ฟิลด์(1,.)]
default_backend ssl
สถิติส่วนหน้า
โหมด http
ผูก *:1024
ผูก :::1024 ชื่อ v6
เปิดใช้งานสถิติ
สถิติ ยูริ /
สถิติรีเฟรช 10 วินาที
ฐาน http-request set-var(txn.base)
http-ขอใช้บริการ prometheus-exporter ถ้า { เส้นทาง /ตัวชี้วัด }
ส่วนหน้า tcp-55560
โหมด tcp
ผูก 0.0.0.0:55560 ชื่อ v4
ผูก :::55560 ชื่อ v6 v4v6
ตัวเลือก tcplog
default_backend ค่าเริ่มต้นอย่างรวดเร็ว po บริการ 55560
แบ็คเอนด์เริ่มต้น-ic-http-service-80
โหมด http
วงเวียนสมดุล
ตัวเลือกไปข้างหน้าสำหรับ
เริ่มต้นเซิร์ฟเวอร์ init-addr สุดท้าย libc ไม่มี
เซิร์ฟเวอร์ SRV_1 xxxxxxxxxxxx.com:80 ตรวจสอบน้ำหนัก 128
แบ็คเอนด์เริ่มต้นค่าเริ่มต้นขาเข้าเริ่มต้นแบ็คเอนด์พอร์ต-1
โหมด http
วงเวียนสมดุล
ตัวเลือกไปข้างหน้าสำหรับ
เซิร์ฟเวอร์ SRV_1 10.119.58.166:8080 ตรวจสอบน้ำหนัก 128
เซิร์ฟเวอร์ SRV_2 127.0.0.1:8080 ปิดใช้งานการตรวจสอบน้ำหนัก 128
แบ็กเอนด์เริ่มต้นอย่างรวดเร็ว po-service-55560
โหมด tcp
วงเวียนสมดุล
เริ่มต้นเซิร์ฟเวอร์ init-addr สุดท้าย libc ไม่มี
เซิร์ฟเวอร์ SRV_1 xxxxxxx:55560 ตรวจสอบน้ำหนัก 128
แบ็กเอนด์เริ่มต้นอย่างรวดเร็วบริการ 44448
โหมด tcp
วงเวียนสมดุล
เริ่มต้นเซิร์ฟเวอร์ init-addr สุดท้าย libc ไม่มี
เซิร์ฟเวอร์ SRV_1 xxxxxxxxxx:44448 ตรวจสอบน้ำหนัก 128
แบ็กเอนด์เริ่มต้นตัวอย่าง http-service-80
โหมด http
วงเวียนสมดุล
ตัวเลือกไปข้างหน้าสำหรับ
เริ่มต้นเซิร์ฟเวอร์ init-addr สุดท้าย libc ไม่มี
เซิร์ฟเวอร์ SRV_1 xxxxxxxxxxxx:80 ตรวจสอบน้ำหนัก 128
แบ็กเอนด์เริ่มต้นตัวอย่าง https-service-443
โหมด tcp
วงเวียนสมดุล
เริ่มต้นเซิร์ฟเวอร์ init-addr สุดท้าย libc ไม่มี
เซิร์ฟเวอร์ SRV_1 xxxxxxxxxxxx:443 ตรวจสอบน้ำหนัก 128
แบ็กเอนด์ ssl
โหมด tcp
เซิร์ฟเวอร์ https 127.0.0.1:443 send-proxy-v2