xiu12 发表于 2019-1-3 09:01:27

负载均衡集群LVS安装篇

一.检查内核是否支持LVS
  # uname -a
  Linux wjb10000 3.10.0-123.el7.x86_64 #1 SMP Mon May 5 11:16:57 EDT 2014 x86_64 x86_64 x86_64 GNU/Linux
  备注:2.4.23以后版本的内核已经支持LVS,只需要直接使用,不需要进行内核的下载和更新工作。
二.检查内核是否支持lvs的ipvs模块
  # modprobe -l|grep ipvs
  modprobe: invalid option -- 'l'
  备注:参数l无效,查了很多资料。好像现在没有这个参数了,可以改用下面这个命令查看内核是否支持lvs的ipvs模块
  # find /lib/modules/$(uname -r)/ -iname "**.ko*" | cut -d/ -f5-
  ....................前面省略...................
  kernel/net/netfilter/ipvs/ip_vs.ko
  kernel/net/netfilter/ipvs/ip_vs_dh.ko
  kernel/net/netfilter/ipvs/ip_vs_ftp.ko
  kernel/net/netfilter/ipvs/ip_vs_lblc.ko
  kernel/net/netfilter/ipvs/ip_vs_lblcr.ko
  kernel/net/netfilter/ipvs/ip_vs_lc.ko
  kernel/net/netfilter/ipvs/ip_vs_nq.ko
  kernel/net/netfilter/ipvs/ip_vs_pe_sip.ko
  kernel/net/netfilter/ipvs/ip_vs_rr.ko
  kernel/net/netfilter/ipvs/ip_vs_sed.ko
  kernel/net/netfilter/ipvs/ip_vs_sh.ko
  kernel/net/netfilter/ipvs/ip_vs_wlc.ko
  kernel/net/netfilter/ipvs/ip_vs_wrr.ko
  ....................后面省略...................
  看到有输出以上内容,说明内核支持lvs了,无需再编译内核了。
三.查看ipvsadm 程序是否被安装
  # ipvsadm
  -bash: ipvsadm: command not found
  输出以上信息表明未安装ipvsadm程序。下面通过yum的方式安装ipvsadm程序,不用考虑软件之间的依懒性。
  # yum -y install ipvsadm
  # ipvsadm
  IP Virtual Server version 1.2.1 (size=4096)
  Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port         Forward Weight ActiveConn InActConn
  安装完ipvsadm之后输出的信息。说明ipvsadm安装成功。
四.配置 IPVS
1.开启IP转发功能
  #echo 1 >/proc/sys/net/ipv4/ip_forward
  默认是0,关闭ip转发;这里需要开启,所以设置值为1。
2.配置重定向
  #echo "0" >/proc/sys/net/ipv4/ip_forward
  #echo "1" >/proc/sys/net/ipv4/conf/all/send_redirects
  #echo "1" >/proc/sys/net/ipv4/conf/default/send_redirects
  #echo "1" >/proc/sys/net/ipv4/conf/eth0/send_redirects
3.清除ipvsadm表
  #ipvsadm -C
4.使用ipvsadm安装LVS服务实例:
  ipvsadm -A -t vip:端口号 -s rr
5.增加二台内部web服务器
  ipvsadm -a -t vip:端口号 -r web1服务器IP:端口号 -m -w 1
  ipvsadm -a -t vip:端口号 -r web2服务器IP:端口号 -m -w 1
ipvsadm使用指南
1.名词解释
  virtual-service-address(VIP):虚拟服务器的 ip地址
  real-service-address(RIP):是指真实服务器的 ip地址
  scheduler:调度方法
2.ipvsadm的用法和格式如下
  ipvsadm -A|E -t|u|f virutal-service-address:port [-s scheduler] [-p] [-M netmask]
  ipvsadm -D -t|u|f virtual-service-address
  ipvsadm -C
  ipvsadm -R
  ipvsadm -S [-n]
  ipvsadm -a|e -t|u|f service-address:port -r real-server-address:port
  [-g|i|m] [-w weight]
  ipvsadm -d -t|u|f service-address -r server-address
  ipvsadm -L|l
  ipvsadm -Z [-t|u|f service-address]
  ipvsadm --set tcp tcpfin udp
  ipvsadm --start-daemon state [--mcast-interface interface]
  ipvsadm --stop-daemon
  ipvsadm -h
3.命令选项
  -A --add-service
  在内核的虚拟服务器表中添加一条新的虚拟服务器记录。也就是增加一台新的虚拟服务器。
  -E --edit-service
  编辑内核虚拟服务器表中的一条虚拟服务器记录。
  -D --delete-service
  删除内核虚拟服务器表中的一条虚拟服务器记录。
  -C --clear
  清除内核虚拟服务器表中的所有记录。
  -R --restore
  恢复虚拟服务器规则
  -S --save
  保存虚拟服务器规则,输出为-R选项可读的格式
  -a --add-server
  在内核虚拟服务器表的一条记录里添加一条新的真实服务器记录。也就是在一个虚拟服务器中增加一台新的真实服务器
  -e --edit-server
  编辑一条虚拟服务器记录中的某条真实服务器记录
  -d --delete-server
  删除一条虚拟服务器记录中的某条真实服务器记录
  -L|-l --list
  显示内核虚拟服务器表,输出对应文件/proc/net/ip_vs
  -Z --zero
  虚拟服务表计数器清零(清空当前的连接数量等)
  --set tcp tcpfin udp
  设置连接超时值
  --start-daemon
  启动同步守护进程。他后面可以是 master或 backup,用来说明 LVS Router是master或是backup。在这个功能上也可以采用keepalived的 VRRP功能。
  --stop-daemon
  停止同步守护进程
  -h --help
  显示帮助信息
  其他的选项::
  -t --tcp-service service-address
  说明虚拟服务器提供的是tcp的服务 or
  -u --udp-service service-address
  说明虚拟服务器提供的是udp的服务 or
  -f --fwmark-service fwmark
  说明是经过iptables标记过的服务类型。
  -s --scheduler scheduler
  使用的调度算法,有这样几个选项 rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq。默认的调度算法是:wlc.
  -p --persistent
  持久稳固的服务。这个选项的意思是来自同一个客户的多次请求,将被同一台真实的服务器处理,timeout的默认值为300秒。
  -r --real-server server-address
  真实的服务器
  -g --gatewaying
  指定LVS的工作模式为直接路由模式(也是LVS默认的模式)
  -i --ipip
  指定LVS的工作模式为隧道模式
  -m --masquerading
  指定LVS的工作模式为NAT模式
  -w --weight weight
  真实服务器的权值
  --mcast-interface interface
  指定组播的同步接口
  -c --connection
  显示LVS目前的连接。如:ipvsadm -L –,输出对应文件/proc/net/ip_conn
  --timeout
  显示tcp tcpfin udp的timeout值。如:ipvsadm -L --timeout
  --daemon
  显示同步守护进程状态
  --stats
  显示统计信息,输出对应文件/proc/net/ip_vs_stats
  --rate
  显示速率信息输出对应文件/proc/net/ip_vs_stats
  --sort
  对虚拟服务器和真实服务器排序输出
  --numeric -n
  输出IP地址和端口的数字形式



页: [1]
查看完整版本: 负载均衡集群LVS安装篇