คำถามติดแท็ก haproxy

HAProxy เป็นโอเพ่นซอร์สโซลูชันที่รวดเร็วและเชื่อถือได้ซึ่งให้ความพร้อมใช้งานสูงการทำโหลดบาลานซ์และพร็อกซีสำหรับแอพพลิเคชั่นที่ใช้ TCP และ HTTP มันเหมาะอย่างยิ่งสำหรับเว็บไซต์ที่รวบรวมข้อมูลภายใต้โหลดสูงมากในขณะที่ต้องมีการคงอยู่หรือการประมวลผล Layer7

3
ฉันจะใช้เอกสารข้อผิดพลาด 503 ที่กำหนดเองได้อย่างไรเมื่อ HAProxy ส่งรหัส HTTP 503
ฉันต้องการ haproxy ที่จะใช้หน้าเอกสารของตัวเอง 503 เมื่อเซิร์ฟเวอร์ด้านหลัง (แบ็กเอนด์) ส่งรหัส HTTP 503 มันเป็นไปได้? เคยเห็นบางอย่างเช่น "การตรวจสอบล้มเหลว" แต่ไม่ทราบวิธีเพิ่มลงในส่วนหน้า

6
ฉันจะใช้ HAproxy กับ SSL และรับส่วนหัว X-Forwarded- สำหรับและบอก PHP ว่าใช้งาน SSL ได้อย่างไร
ฉันมีการตั้งค่าต่อไปนี้: (internet) ---> [ pfSense Box ] /-> [ Apache / PHP server ] [running HAproxy] --+--> [ Apache / PHP server ] +--> [ Apache / PHP server ] \-> [ Apache / PHP server ] สำหรับคำขอ HTTP นี้ใช้งานได้ดีการร้องขอถูกแจกจ่ายไปยังเซิร์ฟเวอร์ Apache ของฉันไม่เป็นไร สำหรับการร้องขอ SSL ฉันมี HAproxy กระจายการร้องขอโดยใช้ TCP load balancing …

3
เมื่อใช้ TCP load balancing กับ HAProxy ปริมาณการรับส่งข้อมูลขาออกทั้งหมดผ่าน LB หรือไม่
ฉันกำลังตั้งค่าแอปให้ใช้งานโฮสต์โดยใช้ VM (อาจเป็น amazon แต่ไม่ได้ตั้งค่าไว้) ซึ่งจะต้องมีทั้ง HTTP load balancing และ load balancing เป็นจำนวนมาก (50k หรือมากกว่านั้นถ้าเป็นไปได้) ของการเชื่อมต่อ TCP แบบถาวร จำนวนข้อมูลไม่ได้ทั้งหมดนั้นสูง แต่การปรับปรุงเป็นประจำ ตอนนี้ฉันกำลังประเมิน load balancer และสับสนเล็กน้อยเกี่ยวกับสถาปัตยกรรมของ HAProxy ถ้าฉันใช้ HAProxy เพื่อสร้างความสมดุลการเชื่อมต่อ TCP การรับส่งข้อมูลทั้งหมดจะไหลผ่านตัวโหลดบาลานซ์หรือไม่ ถ้าเป็นเช่นนั้นโซลูชันอื่น (เช่น LVS หรือแม้แต่ nginx_tcp_proxy_module) จะเหมาะสมกว่าหรือไม่

8
IP ระยะไกลพร้อม HAProxy
ฉันกำลังทดสอบการตั้งค่าเซิร์ฟเวอร์เว็บใหม่ซึ่งกำลังมีปัญหาอยู่สองสามข้อ โดยพื้นฐานแล้วเรามีเว็บเซิร์ฟเวอร์โดยที่รหัสนั้นใช้ IP ระยะไกลสำหรับสิ่งที่น่าสนใจและยังมีไดเรกทอรี apache บางส่วนที่ได้รับการรักษาความปลอดภัยให้อยู่ในระดับ IP ที่แน่นอน (สำนักงานของเราเป็นต้น) อย่างไรก็ตามเราเพิ่งวางไว้ด้านหลัง ha_proxy เพื่อให้เราสามารถดูการเพิ่มแอพเซิร์ฟเวอร์เพิ่มเติมได้ แต่ตอนนี้ IP ระยะไกลมักจะผ่านมาเป็นพร็อกซีไอพีไม่ใช่ผู้ใช้ระยะไกลที่แท้จริง ซึ่งหมายความว่าเราไม่สามารถไปยังสถานที่บางแห่งได้และแอพของเรามีพฤติกรรมแปลก ๆ เล็กน้อยที่ซึ่ง IP ผู้ใช้เป็นสิ่งสำคัญ config ของเรามีดังนี้: global maxconn 4096 pidfile /var/run/haproxy.pid daemon defaults mode http retries 3 option redispatch maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 listen farm xxx.xxx.xxx.xxx:80 mode http cookie GALAXY …
19 haproxy 

2
HAProxy HTTP กับ TCP
HAProxy ให้ตัวเลือกในการตั้งค่าโหมดเป็น TCP หรือ HTTP นอกจากนี้ยังช่วยให้คุณสามารถตั้งค่าพอร์ต เหตุใดจึงอนุญาตให้ฉันเลือกระหว่าง HTTP กับ TCP ถ้าให้ฉันเลือกพอร์ตด้วยล่ะ แน่นอนถ้าฉันต้องการ HTTP ฉันสามารถเลือก TCP และพอร์ต 80 ได้หรือไม่ ทำไมต้องใช้ TCP และ HTTP เท่านั้น ดูเหมือนว่าแปลว่า HTTP ไม่ใช่ TCP ทำไมไม่มี TCP, HTTP, SNMP, FTP, etc และอื่น ๆ ทำไมต้องเป็น HTTP และ TCP เหตุใดจึงมีตัวเลือกเหล่านี้อย่างใดอย่างหนึ่งถ้า HTTP เป็น TCP พบว่ามันสับสนมากและเป็นเรื่องยากมากที่จะค้นหาข้อมูลใด ๆ เกี่ยวกับบริการโหลดบาลานซ์ที่ไม่ใช่ http
17 haproxy 

5
ติดตั้ง HAProxy บน CentOS 6.3?
นี่เป็นสิ่งที่แปลก ฉันได้ติดตั้ง EPEL สำหรับ CentOS 6 ผ่านทาง # rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm พยายามติดตั้ง HAProxy: # yum update # yum install haproxy แต่รับ: Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * base: ftp.heanet.ie * epel: fedora.mirror.nexicom.net * extras: ftp.heanet.ie * updates: ftp.heanet.ie Setting up Install Process No package haproxy …
17 haproxy  rpm  repository  epel 

1
จะเปลี่ยนเส้นทางการรับส่งข้อมูลตามชื่อโฮสต์โดยใช้ HAProxy อย่างไร
ฉันประสบความสำเร็จในเบื้องต้นด้วยการตั้งค่า HAProxy เซิร์ฟเวอร์แอพจำนวนมากที่ฟังพอร์ตอื่น ๆ ตอนนี้ฉันมีเว็บเซิร์ฟเวอร์อื่นกำลังฟังบนพอร์ตหนึ่งและฉันต้องการเปลี่ยนแปลงสิ่งใดที่ทำให้การกำหนดค่าของฉันเพื่อรับส่งข้อมูลด้วยชื่อโฮสต์เช่นกัน ต่อไปนี้เป็นการตั้งค่าปัจจุบันสมมติว่า: เว็บเซิร์ฟเวอร์ apache ของฉันทำงานที่ examplecom: 8001 เซิร์ฟเวอร์แอปของฉันเป็นกลุ่ม 0.0.0.0:8081, 0.0.0.0:8082, 0.0.0.0:8083 global log 127.0.0.1 local0 log 127.0.0.1 local1 notice maxconn 4096 debug #quiet #user haproxy #group haproxy defaults log global mode http option httplog option dontlognull retries 3 redispatch maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout …

3
มีวิธีการเพิ่มเซิร์ฟเวอร์แบ็กเอนด์มากขึ้นไป haproxy โดยไม่ต้องรีสตาร์ท haproxy?
เราต้องการที่จะสามารถเพิ่มเซิร์ฟเวอร์แบ็กเอนด์ตามความต้องการ ตอนนี้ฉันไม่เห็นวิธีเพิ่มเซิร์ฟเวอร์แบ็กเอนด์มากขึ้นไปยังไฟล์ปรับแต่งโดยไม่ต้องรีสตาร์ท haproxy

2
HAProxy reload - กระบวนการเก่าไม่เคยยุติ
ฉันมีการตั้งค่า HAProxy ในโหมด TCP กับไคลเอนต์ / เซิร์ฟเวอร์ / เชื่อมต่อหมดเวลา 120 วินาที เมื่อฉันโหลดการกำหนดค่าเร็วเกินไปบางครั้งฉันก็จบลงด้วยกระบวนการหลายอย่าง จากการออกแบบสิ่งนี้คาดว่าจะเกิดขึ้นดังนั้นการเชื่อมต่อที่สร้างขึ้นทั้งหมดจะถูกระบายออกไป ปัญหาของฉันคือพวกเขาไม่เคยยุติแม้ว่าการเชื่อมต่อทั้งหมดจะปิด ps aux | haproxy haproxy 12483 0.0 0.1 103748 1084 ? Ss 20:45 0:00 /usr/sbin/haproxy -D -f /etc/haproxy/haproxy.cfg -p /var/run/haproxy.pid -sf 12405 haproxy 12485 0.0 0.1 103748 1088 ? Ss 20:45 0:00 /usr/sbin/haproxy -D -f /etc/haproxy/haproxy.cfg …
15 haproxy 

3
haproxy และส่งต่อที่อยู่ IP ของลูกค้าไปยังเซิร์ฟเวอร์
ฉันมีปัญหากับ HAproxy ฉันใช้ HAproxy เป็น load balancer ซึ่งกระจายการร้องขอ http ขาเข้าไปยัง 5 เว็บเซิร์ฟเวอร์ โดยปกติคำขอของลูกค้าจะถูกส่งต่อไปยังเว็บเซิร์ฟเวอร์ที่มี IP ของ loadbalancer แต่ฉันต้องการ IP ของลูกค้าหรือ IP จริงที่ร้องขอบางอย่างจากเว็บเซิร์ฟเวอร์ เพราะเราจำเป็นต้องบันทึก IP ของลูกค้าจริง ฉันพยายามรับ IP ของลูกค้าบนเว็บเซิร์ฟเวอร์ แต่ฉันไม่สามารถประสบความสำเร็จได้ในตอนนี้ ฉันเห็น IP ของตัวโหลดบาลานซ์เสมอ ฉันใช้ตัวเลือก x-forward-for แต่ไม่สามารถแก้ปัญหาได้ หลังจากนั้นฉันพบตัวเลือกอื่น " source 0.0.0.0:80 usesrc clientip " แต่ฉันมี eror ในขณะที่พยายามเรียกใช้ HAproxy ซึ่งเป็นเรื่องเกี่ยวกับการรวบรวมความต้องการด้วยตัวเลือก USE_TPROXY ของ HAproxy ฉันทำแล้วฉันจะคอมไพล์ …
15 haproxy 

2
ทำหน้าที่ 404 จาก HAProxy เมื่อไม่ตรงกับ acls
ฉันกำลังกำหนดค่า HAProxy อีกครั้งโดยใช้ 1.5dev-17 สิ่งที่ฉันต้องการจะทำคือคืนข้อผิดพลาด 404 เมื่อไม่มีแบ็กเอนด์ที่จะใช้สำหรับคำขอเฉพาะ การกำหนดค่าปัจจุบันของเราใช้ default_backend เพื่อกำหนดเส้นทางไปยังเซิร์ฟเวอร์แอพ django ของเรา แต่เมื่อมีคำขอตรวจสอบจำนวนมาก (เช่นการทดสอบด้วยปากกา) ที่ตรงกับแบ็กเอนด์ที่กำหนดค่าอื่น ๆ เซิร์ฟเวอร์ django ของเราจะหยุดชะงักในขณะที่พยายาม เพื่อตอบสนองคำขอที่ไม่ถูกต้องเหล่านี้ในที่สุดก็ส่งคืน 404 ฉันต้องการรับใช้ 404 จาก HAProxy แทนที่จะมอบหมายให้กับแบ็กเอนด์ django ขณะนี้ฉันประสบความสำเร็จด้วยแฮ็ค: frontend www ... default_backend nomatch backend nomatch errorfile 503 /var/www/http/404.http และภายในไฟล์ 404.http ฉันตั้งรหัสสถานะ 404 ในส่วนหัว ใช้งานได้ แต่รู้สึกผิดมาก มีวิธีที่ดีกว่าในการบรรลุเป้าหมายนี้ด้วย HAProxy หรือไม่? หรือฉันควรใช้แบ็กเอนด์เป็นประจำและให้ที่จัดการกับการตอบสนองกับ 404?

1
HAProxy เพื่อยกเลิก SSL ยังส่ง SSL ไปยังเซิร์ฟเวอร์แบ็กเอนด์
ฉันต้องการยกเลิก SSL ที่ HAProxy ทำการจัดการบางอย่างบนส่วนหัวเขียน URL ใหม่และเข้ารหัสการรับส่งข้อมูลอีกครั้งและส่งไปยังเซิร์ฟเวอร์แบ็กเอนด์เป็น SSL หรือไม่ ฉันไม่สามารถหาวิธีทำสิ่งนี้ได้ ฉันสามารถเลิกใช้ SSL ได้ตามปกติและส่งคำขอ HTTP ธรรมดาเพื่อแบ็กเอนด์ แต่ฉันต้องส่ง SSL เพื่อแบ็กเอนด์ ฉันต้องการมีคุณสมบัติดังต่อไปนี้: แตก x-forwarded-for header เพื่อรับ IP ไคลเอ็นต์จริงหลังพร็อกซี ใช้ความหนืดของเซสชันโดยใช้คุกกี้ ทำการเขียน URL ใหม่ ส่งปริมาณการใช้งาน SSL ไปยังส่วนแบ็คเอนด์โดยใช้เซสชันที่ยึดติดกับคุกกี้ ถ้าฉันสิ้นสุด SSL ที่ปลาย haproxy ฉันจะไม่สามารถเขียน URL ใหม่ได้ ความช่วยเหลือใด ๆ จากคนดีที่นี่จะได้รับการชื่นชมอย่างมาก
14 haproxy 

3
วิธีการตั้งค่า HAProxy ด้วย failover
ฉันเข้าใจว่าหากต้องการรับการเฟลโอเวอร์ในการตั้งค่าโหลดบาลานซ์ HAProxy คุณต้องใช้สองเครื่องที่ใช้ HAproxy (และกำหนดเส้นทางไปยังอินสแตนซ์ของเว็บเซิร์ฟเวอร์หลายอินสแตนซ์) แต่ในกรณีนี้ให้พูด abcd.com เราจะแยก / กำหนดเส้นทางการรับส่งข้อมูลนี้ไปยังที่อยู่ IP 2 แห่งแทนที่จะเป็นที่อยู่เดียวได้อย่างไร DNS มักจะแก้ไขชื่อโดเมนเป็น IP เดียว เราจะใช้เครื่องมือ / บริการฟรี / ราคาถูกได้อย่างไร

1
HAProxy - ส่งต่อไปยังเว็บเซิร์ฟเวอร์อื่นตาม URI
ฉันมีฟาร์ม HTTP ที่มีการกำหนดค่าต่อไปนี้: listen webfarm 10.254.23.225:80 mode http balance roundrobin cookie SERVERID insert option httpclose option forwardfor option httpchk HEAD /check.txt HTTP/1.0 server webA 10.254.23.4:80 cookie A check server webB 10.248.23.128:80 cookie B check ฉันต้องการเพิ่มตัวเลือกที่จะส่งต่อคำขอทั้งหมดสำหรับ URI เฉพาะ (เช่น / พิเศษ) ไปยังเว็บเซิร์ฟเวอร์ที่สาม ฉันควรทำอย่างไร

2
ฉันจะสร้างคำขอเส้นทาง haproxy ตามสตริงย่อย URL ได้อย่างไร
ตัวโหลดบาลานซ์ถูกตั้งค่าโดยมีปลายด้านหลังสองด้าน URI คำขอจะมีลักษณะดังนี้: http://example.com/answers/submit http://example.com/tag-02/answers/submit ฉันจะกำหนดค่า haproxy ในลักษณะที่คำขอถูกส่งไปยังหนึ่งหรืออีกสองหลังสิ้นสุดขึ้นอยู่กับรูปแบบของคำขอ URI? ข้อแตกต่างระหว่างคำขออยู่/tag-02/ในคำขอ URI เท่านั้น ไฟล์การกำหนดค่า haproxy สำหรับสิ่งนี้พร้อมคำอธิบายเล็กน้อยจะได้รับการชื่นชมมากเนื่องจากฉันยังใหม่กับ haproxy
14 haproxy 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.