LINUX集群部署LVS

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目标 IP 相比带有较少活跃连接的服务器分派较多的请求。 带有复制调度的基于地区的最少连接调度 目标 IP 相比带有较少活跃连接的服务器分派较多的请求。 目标散列调度 通过在静态散列表中查看目标 IP 来给真正服务器分派请求。 源散列调度 通过在静态散列表中查看源 IP 来给真正服务器分派请求。 5 LVS 的选路方法 使用网络地址转换(Network Address Translation)或 NAT 选路(NAT routing)来 进行 LVS 集群。 6 LVS 工作视图
浮动 IP 地址绑定的网络设备 Re-entry Time 失效重新加载真正服务器的时间 Service Timeout 失效剔除真正服务器的时间 Quiesce server 防止了新服务器在进入群集的大量连接 Load monitoring tool 监视各个真正服务器的载量 Scheduling 调度算式 Persistence 连接超时前所允许经过的不活跃期间的秒数 Persistence Network Mask 限制某个特定子网的持续性的子网掩码。 5 REAL SERVER Name 真正服务器 Address 真正服务器的 IP Weight 主机权值 6 同步配置文件 scp /etc/sysconfig/ha/lvs.cf n.n.n.n:/etc/sysconfig/ha/lvs.cf scp /etc/sysconfig/iptables n.n.n.n:/etc/sysconfig/ 四 LVS 部署 1 路由转发 vi /etc/sysctl.conf net.ipv4.ip_forward = 1 sysctl –p 2 iptables 标记
3 脚本内容 # Do not remove the following line, or various programs # that require network functionality will fail. 127.0.0.1 localhost.localdomain localhost 192.168.70.1 node01 192.168.70.2 node02 192.168.70.3 node03 192.168.70.4 node04 192.168.70.5 node05 192.168.70.6 node06 192.168.70.100 data01 192.168.70.200 data02 192.168.70.254 master 192.168.70.253 slaver
第二部分 LVS Linux Virtual Server 负载均衡集群 一 LVS Linux Virtual Server 概述 1 基本构成图
2 基本概念 对于使用某个提供的服务的外界用户(如网站或数据库程序)来说,Linux 虚拟服 务器(LVS)群集似乎是一个服务器。事实上,该用户使用的是一对冗余 LVS 路由器之 后的两个或多个服务器的群集。 LVS 群 集 至 少 包 括 两 层 。 第 一 层 由 一 对 配 置 相 似 的 Linux 机 器 或 群 集 成 员 (cluster members)组成。这些机器之一充当 LVS 路由器(LVS router),它用来把 来自互联网的请求转到群集。第二层包含一个叫做真实服务器(real servers)的机器 群集。 3 技术特征 高可用性群集(High-availability clustering)使用多个机器来为某个服务或某 组服务提交额外的可靠性。 负载均衡群集(Load-balance clustering)使用特殊的选路技术来给一组服务器 分配任务。 4 LVS 调度算式 循环调度 把每项请求按顺序在真正服务器中循环分派。 加权循环调度 每项请求按顺序在真正服务器中循环分派,但是给能力较大的服务器分派较多的作业。 加权最少连接法(默认) 能力相比带有较少活跃连接的服务器分派较多的请求。 基于地区的最少连接调度
Deny from all Allow from 127.0.0.1 4 启用分组转发 /etc/sysctl.conf 中的 net.ipv4.ip_forward = 0 这一行改为: net.ipv4.ip_forward = 1 5 分配防火墙标记
iptables -t mangle -A PREROUTING -p tcp -d n.n.n.n/32 --dport 80 -j MARK --set-mark 80
heartbeat_port = 539 keepalive = 6 deadtime = 18 network = nat nat_router = 192.168.70.254 eth1 debug_level = NONE virtual [server_coolh] { active = 1 address = 211.144.137.131 eth0:1 vip_nmask = 255.255.255.224 fwmark = 81 port = 80 send = "GET / HTTP/1.0\r\n\r\n" expect = "HTTP" use_regex = 0 load_monitor = none scheduler = wlc protocol = tcp timeout = 12 reentry = 30 quiesce_server = 0 server [node01] { address = 192.168.70.11 active = 1 weight = 1 } server [node02] { address = 192.168.70.21 active = 1 weight = 1 } server [node03] { address = 192.168.70.31 active = 1 weight = 1 } server [node04] { address = 192.168.70.41 active = 1 weight = 1 } server [node05] { address = 192.168.70.51 active = 1
iptables -t mangle -A PREROUTING -p tcp -d 211.144.137.131/32 --dport 80 -j MARK --set-mark 81 iptables -t mangle -A PREROUTING -p tcp -d 211.144.137.232/32 --dport 80 -j MARK --set-mark 82 iptables -t mangle -A PREROUTING -p tcp -d 211.144.137.233/32 --dport 80 -j MARK --set-mark 83 iptables -t mangle -A PREROUTING -p tcp -d 211.144.137.234/32 --dport 80 -j MARK --set-mark 84 iptables -t mangle -A PREROUTING -p tcp -d 211.144.137.235/32 --dport 80 -j MARK --set-mark 85 3 配置 lvs.cf serial_no = 40 primary = 211.144.137.130 primary_private = 211.144.137.130 service = lvs backup_active = 0 backup = 0.0.0.0 heartbeat = 1
三 Piranha 配置工具 1 登陆 打开 http://localhost:3636 2 GLOBAL SETTINGS Primary server public IP 主 LVS 节点的可公开选路的真正 IP 地址 Primary server private IP 主 LVS 节点上的另一个网络接口的真正 IP 地址 NAT Router IP 浮动 IP 地址 NAT Router netmask 子网掩码 NAT Router device 浮动 IP 地址的网络接口的设备名称 3 REDUNDANCY 备份 LVS 路由器节点 Redundant server public IP 备份 LVS 路由器节点的公共真正 IP 地址。 Redundant server private IP 备份节点的专用真正 IP 地址。 Heartbeat Interval (seconds) 设置为心跳之间的时间 Assume dead after (seconds) 备份 LVS 路由器节点失效转移的时间。 Heartbeat runs on port 主 LVS 节点的心跳通信端口 4 VIRTUAL SERVERS Name 虚拟服务器名称。 Application port 监听端口号 Protocol UDP 或 TCP Virtual IP Address 虚拟服务器的浮动 IP 地址。 Virtual IP Network Mask 虚拟服务器子网掩码。 Firewall Mark 防火墙标记 Device
7 LVS 群集的部件 pulse 这是启动和 LVS 路由器相关的所有其它守护进程的控制进程。 lvs lvs 守护进程被 pulse 调用后就会在活跃 LVS 路由器上运行。ipvsadm 该服务共享内核中的 IPVS 路由表。 nanny nanny 监视运行在活跃 LVS 路由器上的守护进程。 二 配置 LVS 1 Piranha 配置工具设置口令 piranha-passwd 2 启动 Piranha 配置工具服务 service piranha-gui start 3 限制对 Piranha 配置工具的使用 /etc/sysconfig/ha/web/secure/.htaccess Order deny,allow
LINUX 集群部署
邱波
2005-6-24
Biblioteka Baidu
第一部部分 公共部分 一 系统环境 1 Linux OS 系统版本 RHEL AS3 UPDATES 4 安装方式 最小安装 系统内核 2.4.21-27.0.4 二 服务组件 1 LVS 套件 主机名 master slaver 服务包 piranha-0.7.10-2 ipvsadm-1.21-9 依赖包 httpd-2.0.46-46 php-4.3.2-23 curl-7.10.6-6 2 GFS 套件 主机名 node01 node02 node03 node04 node05 node06 data01 data02 服务包 GFS GFS-modules-smp 依赖包 perl-Net-Telnet-3.03-1.1 3 MySQL CLUSTER 套件 主机名 master slaver node01 node02 node03 node04 node05 node06 data01 data02 服务包 MySQL-bench-4.1.12-0 MySQL-ndb-management-4.1.12-0 MySQL-server-4.1.12-0 MySQL-client-4.1.12-0 MySQL-embedded-4.1.12-0 MySQL-ndb-extra-4.1.12-0 MySQL-ndb-storage-4.1.12-0 MySQL-shared-4.1.12-0 MySQL-devel-4.1.12-0 MySQL-Max-4.1.12-0 MySQL-ndb-tools-4.1.12-0 依赖包 perl-DBI-1.32-9 4 WWW 套件 主机名 node01 node02 node03 node04 node05 node06 服务包 httpd-2.0.46-46 php-4.3.2-23 php-mysql-4.3.2-23 依赖包 curl-7.10.6-6 三 基本配置 1 主机名 master slaver node01 node02 node03 node04 node05 node06 data01 data02 2 配置文件 /etc/hosts
相关文档
最新文档