squid 負載均衡問題
公司網站需要做squid +dns輪詢 負載均衡,是在win2003上搭建。搞了幾天了,還是沒搞定,環境是這樣的
一個域名www.xx.com, 4台web伺服器(不同機房),在萬網上指定www.xx.com的IP是webserver1,內部DNS在webserver2上,4台web 同時做squid反向代理。可是搞完后,看access.log 所有的客戶端訪問都在webserver1上,其他3台web沒有輪詢。
DNS 建了個正向域,4個A記錄,4台web 公網IP 都指向www.xx.com.
squid 配置都一樣:
http_port 80 accel vhost vport
acl Safe_ports port 80
acl Safe_ports port 3130
cache_peer webserver1-ip parent 81 3130 no-query originserver round-robin name=webserver1
cache_peer webserver2-ip parent 81 3130 no-query originserver round-robin name=webserver2
cache_peer webserver3-ip parent 81 3130 no-query originserver round-robin name=webserver3
cache_peer webserver4-ip parent 81 3130 no-query originserver round-robin name=webserver4
cache_peer_domain webserver1 webserver2 webserver3 webserver4 ds.object.com.cn
acl localnet src webserver1-IP webserver2-ip webserver3-ip webserver4-ip
http_access allow all
icp_access allow localnet
cache_log c:/squid/var/logs/cache.log
cache_dir ufs c:/squid/var/cache 1000 16 256
maximum_object_size 10240 KB
我懷疑是不是DNS寫A記錄要用內網IP,這個可以用VPN解決,其他方面真想不到了。:dizzy:
《解決方案》
cache_peer_domain寫錯了
http://www.squid-cache.org/Doc/config/cache_peer_domain/
《解決方案》
不用這麼複雜吧?
如果萬網支持DNS也就是說支持多個A記錄,直接就增加A記錄就行
如果不支持,要自己配DNS,那在萬網上,就是改為用你自己的DNS,如果沒用