Squid平衡轮询

实验背景

当多个客户访问一台服务器时,服务器会因为压力过大宕机而对我们企业造成财产和利益的损失,我们可以通过设置squid调度器来缓解压力实现负载均衡,客户端只访问一个域名,而squid调度器可以合理的为服务器分配用户,当第一个用户访问时,去找第一台apache服务器,当第二个用户访问时,去找第二台apache服务器,这两台apache服务器显示的内容是完全一样的。

实验思路

  • 本实验需要4台主机,其中3台为服务器,1台客户端测试,2台服务器作为Apache服务器,1台作为squid调度器。
  • apache服务主机设置:能访问默认发布文件的内容即可(为了实验效果明显我们把两个默认发布文件的内容写成不同的)

实验步骤

  • 首先,为三台作为服务器的虚拟机分别配置网络,修改主机名,搭建yum源:
    在这里插入图片描述
    在这里插入图片描述在这里插入图片描述
  • 然后,我们在两台作为apache的虚拟机中下载httpd服务,关闭防火墙,编写默认发布文件,并重启服务,打开浏览器访问测试:
yum install httpd -y
systemctl start httpd
systemctl enable httpd
systemctl stop firewalld.service 
vim /var/www/html/index.html  ##写入:
<h1>hey,this is apache_server1!</h1>
<h1>hey,this is apache_server2!</h1>
systemctl restart httpd

在这里插入图片描述在这里插入图片描述

  • 在squid主机中,安装squid,修改配置文件,关闭火墙,重启服务:
yum install  squid.x86_64 -y
vim /etc/squid/squid.conf

56 http_access allow all
59 http_port 80  vhost vport
60 cache_peer 172.25.254.124  parent  80  0  proxy-only  no-query  round-robin     originserver name=web1
61 cache_peer 172.25.254.224  parent  80  0  proxy-only  no-query  round-robin     originserver name=web2 weight=2     ###修改权重,默认都为1,把224改为2,会访问两次224一次124
62 cache_peer_domain web1 web2 www.westos.com     ###在web1和web2之间被调度的域名
64 cache_dir ufs /var/spool/squid 100 16 256          ####缓存目录

systemctl stop firewalld.service
systemctl restart squid.service

在这里插入图片描述

  • squid配置文件中参数含义及说明:
localnet内网
localhost本机
vhost虚拟主机
vport虚拟端口
proxy-only只做代理
no-query不去查询邻居的存在
round-robin轮循方式访问,默认各一次
originserver指定是一个web服务器
weight=2权重为2
  • 在测试的主机中,修改本地解析文件,ip为squid主机的ip,域名为squid主机配置文件/etc/squid/squid.conf中添加的域名www.westos.com,浏览器中输入域名进行测试:
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
    在这里插入图片描述注意:这里的用户访问只能是通过域名访问,如果通过ip访问就没有通过调度器而是直接访问,没有起到负载均衡的作用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值