查看管理结点mgt的网卡信息,为mgt设置VIP

[root@mgt ~]# ifconfig
eth0      Link encap:Ethernet  HWaddr 5C:F3:FC:E9:61:78inet addr:192.168.253.100  Bcast:192.168.253.255  Mask:255.255.255.0inet6 addr: 2001:cc0:2034:253:5ef3:fcff:fee9:6178/64 Scope:Globalinet6 addr: fe80::5ef3:fcff:fee9:6178/64 Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1RX packets:19849 errors:0 dropped:0 overruns:0 frame:0TX packets:8129 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:2010431 (1.9 MiB)  TX bytes:4288209 (4.0 MiB)Interrupt:28 Memory:92000000-92012800eth1      Link encap:Ethernet  HWaddr 5C:F3:FC:E9:61:7Ainet addr:172.20.0.1  Bcast:172.20.0.255  Mask:255.255.255.0inet6 addr: 2001:cc0:2034:253:5ef3:fcff:fee9:617a/64 Scope:Globalinet6 addr: fe80::5ef3:fcff:fee9:617a/64 Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1RX packets:17998 errors:0 dropped:0 overruns:0 frame:0TX packets:21715 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:1596283 (1.5 MiB)  TX bytes:12926260 (12.3 MiB)Interrupt:40 Memory:94000000-94012800lo        Link encap:Local Loopbackinet addr:127.0.0.1  Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING  MTU:16436  Metric:1RX packets:5798104 errors:0 dropped:0 overruns:0 frame:0TX packets:5798104 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX bytes:803149634 (765.9 MiB)  TX bytes:803149634 (765.9 MiB)

发现mgt结点有2块网卡,eth0配置了外部IP,供其与局域网内部其他机器访问通信,eth01配置了内部IP,供其与各个计算节点之间访问通信。现在需要把mgt结点作为LVS的DirectorServer,需要在其上设置虚拟IP(VIP)。备注:若需要修改eth0的IP地址,可执行下面的命令(其他网卡参数修改类似):

[root@mgt ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

(1)新建directorserver.sh脚本,代码如下:

#!/bin/bash
setenforce 0
VIP=192.168.253.110
/sbin/ifconfig eth0:0 192.168.253.110 broadcast 192.168.253.110 netmask 255.255.255.255 up
/sbin/route add -host 192.168.253.110 dev eth0:0
sysctl -p

此时再次查看网卡信息,除了已有的eth0、eth1和lo之外,新增了eth0:0,即为虚拟IP地址:

[root@mgt zmq]# ifconfig
eth0:0    Link encap:Ethernet  HWaddr 5C:F3:FC:E9:61:78inet addr:192.168.253.110  Bcast:192.168.253.110  Mask:255.255.255.255UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1Interrupt:28 Memory:92000000-92012800

查看其路由表,发现新增了一条192.168.253.110在eth0设备上的理由转发规则:

[root@mgt zmq]# route
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.253.110 *               255.255.255.255 UH    0      0        0 eth0      //新增
172.20.0.0      *               255.255.255.0   U     0      0        0 eth1
192.168.253.0   *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1003   0        0 eth0
link-local      *               255.255.0.0     U     1004   0        0 eth1
default         192.168.253.254 0.0.0.0         UG    0      0        0 eth0

在director server结点上开启包转发功能:

[root@mgt zmq]# echo "1" >/proc/sys/net/ipv4/ip_forward

(2)在计算节点上设置VIP,计算节点为集群的realserver,绑定在每个节点的回环地址上。以node01为例:

[root@node01 ~]# ifconfig
//设备eth0绑定了外部IPeth0      Link encap:Ethernet  HWaddr 5C:F3:FC:E9:64:78inet addr:192.168.253.101  Bcast:192.168.253.255  Mask:255.255.255.0inet6 addr: 2001:cc0:2034:253:5ef3:fcff:fee9:6478/64 Scope:Globalinet6 addr: fe80::5ef3:fcff:fee9:6478/64 Scope:LinkUP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1RX packets:102834 errors:0 dropped:0 overruns:0 frame:0TX packets:111724 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:1000RX bytes:44921980 (42.8 MiB)  TX bytes:10122764 (9.6 MiB)Interrupt:28 Memory:92000000-92012800
//虚拟网卡eth0:0绑定了内部IP
eth0:0    Link encap:Ethernet  HWaddr 5C:F3:FC:E9:64:78inet addr:172.20.0.11  Bcast:172.20.0.255  Mask:255.255.255.0UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1Interrupt:28 Memory:92000000-92012800lo        Link encap:Local Loopbackinet addr:127.0.0.1  Mask:255.0.0.0inet6 addr: ::1/128 Scope:HostUP LOOPBACK RUNNING  MTU:16436  Metric:1RX packets:5359 errors:0 dropped:0 overruns:0 frame:0TX packets:5359 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:0RX bytes:348956 (340.7 KiB)  TX bytes:348956 (340.7 KiB)

执行脚本realserver.sh,脚本内容如下:

#!/bin/bash
setenforce 0
VIP=192.168.253.110
/sbin/ifconfig lo:0 192.168.253.110 broadcast 192.168.253.110 netmask 255.255.255.255 up
/sbin/route add -host 192.168.253.110 dev lo:0
echo "1" > /proc/sys/net/ipv4/conf/lo/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/lo/arp_announce
echo "1" > /proc/sys/net/ipv4/conf/all/arp_ignore
echo "2" > /proc/sys/net/ipv4/conf/all/arp_announce
sysctl -p

[root@node01 zmq]# ./realserver.sh
setenforce: SELinux is disabled
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key
error: "net.bridge.bridge-nf-call-iptables" is an unknown key
error: "net.bridge.bridge-nf-call-arptables" is an unknown key
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296

再次查看网卡信息:

[root@node01 zmq]# ifconfig
//新增了一条记录
lo:0      Link encap:Local Loopbackinet addr:192.168.253.110  Mask:255.255.255.255UP LOOPBACK RUNNING  MTU:16436  Metric:1

在每个计算节点上执行上述过程。注意:上述配置在每次重启network服务(命令:service network restart)后会失效。

(3)配置director server,执行脚本ipvsadm.sh,其内容为:

#/bin/hash
op=$1
MAP_PORT=9527
WEB_PORT=8080
AL_PORT=35569
TEST_PORT=80
LVS_SERVER_VIP=192.168.253.110
MODE=wrrhosts=(192.168.253.101 192.168.253.102 192.168.253.103 192.168.253.104 192.168.253.105)
WMap=(100 100 100 80 80)
WWeb=(100 100 100 80 80)
WAl=(100 100 100 80 80)
WTest=(1 1 1 1 1)ipvsadm -C
ipvsadm -A -t ${LVS_SERVER_VIP}:${MAP_PORT} -s ${MODE}
ipvsadm -A -t ${LVS_SERVER_VIP}:${WEB_PORT} -s ${MODE}
ipvsadm -A -t ${LVS_SERVER_VIP}:${AL_PORT} -s ${MODE}
if [ "$op" == test ]; thenipvsadm -A -t ${LVS_SERVER_VIP}:${TEST_PORT} -s ${MODE}
fi
i=0
while [ $i -lt ${#hosts[@]} ];
doipvsadm -a -t ${LVS_SERVER_VIP}:${MAP_PORT} -r ${hosts[$i]}:${MAP_PORT} -w ${WMap[$i]} -gipvsadm -a -t ${LVS_SERVER_VIP}:${WEB_PORT} -r ${hosts[$i]}:${WEB_PORT} -w ${WWeb[$i]} -gipvsadm -a -t ${LVS_SERVER_VIP}:${AL_PORT} -r ${hosts[$i]}:${AL_PORT} -w ${WAl[$i]} -g
if [ "$op" == test ]; thenipvsadm -a -t ${LVS_SERVER_VIP}:${TEST_PORT} -r ${hosts[$i]}:${TEST_PORT} -w ${WTest[$i]} -g
fii=$(( $i + 1))
doneipvsadm -Ln

可以看到:

[root@mgt zmq]# ./ipvsadm.sh
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags-> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.253.110:8080 wrr-> 192.168.253.101:8080         Route   100    0          0-> 192.168.253.102:8080         Route   100    0          0-> 192.168.253.103:8080         Route   100    0          0-> 192.168.253.104:8080         Route   80     0          0-> 192.168.253.105:8080         Route   80     0          0
TCP  192.168.253.110:9527 wrr-> 192.168.253.101:9527         Route   100    0          0-> 192.168.253.102:9527         Route   100    0          0-> 192.168.253.103:9527         Route   100    0          0-> 192.168.253.104:9527         Route   80     0          0-> 192.168.253.105:9527         Route   80     0          0
TCP  192.168.253.110:35569 wrr-> 192.168.253.101:35569        Route   100    0          0-> 192.168.253.102:35569        Route   100    0          0-> 192.168.253.103:35569        Route   100    0          0-> 192.168.253.104:35569        Route   80     0          0-> 192.168.253.105:35569        Route   80     0          0

(4)执行脚本lvsstatus.sh,可查看LVS转发状态,脚本为:

#!/bin/bash
echo "geohpc" | /usr/bin/sudo -S ipvsadm -L

结果如下图(共分发了1个绘图请求-端口9527,5个算法计算请求-端口35569):

学习笔记(2)——实验室集群LVS配置相关推荐

  1. Redis 学习笔记八:集群模式

    Redis 学习笔记八:集群模式 作者:Grey 原文地址: 博客园:Redis 学习笔记八:集群模式 CSDN:Redis 学习笔记八:集群模式 前面提到的Redis 学习笔记七:主从复制和哨兵只能 ...

  2. Hadoop学习笔记—13.分布式集群中节点的动态添加与下架

    Hadoop学习笔记-13.分布式集群中节点的动态添加与下架 开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如 ...

  3. ZooKeeper学习笔记(八):ZooKeeper集群写数据原理

    写数据原理 写流程直接请求发送给Leader节点 这里假设集群中有三个zookeeper服务端 ACK (Acknowledge character)即是确认字符,在数据通信中,接收站发给发送站的一种 ...

  4. 学习笔记(5)——实验室集群LVS监控Web界面配置

    症状:通过虚拟IP能访问到监控页面:http://192.168.253.110/ipvsadm.php,但是却无法读出LVS任务分发及集群负载信息. 打开ipvsadm.php页面,源码如下: &l ...

  5. ES学习笔记(二):集群配置与启动 --mac环境

    1 环境准备: 复制原有es文件,分别为三个文件夹:Node-8001,Node-8002,Node-8003 删除三个文件夹中的data文件,清除log文件 修改配置文件 1.1修改配置文件 配置文 ...

  6. Hadoop组件学习(一) —— 单点与集群的配置

    一.Hadoop核心组件 1.分布式文件存储系统HDFS(Hadoop Distributed File System) 2.资源管理系统YARN(Yet Another Resource Negot ...

  7. go-pitaya学习笔记(11) - 测试集群rpc

    学习笔记: 我家别墅靠大海/pitaya-learn 尝试集成功能:我家别墅靠大海/pitaya-game 如果你正在看此笔记,请你左边放笔记,右边放chatdemo的代码!! 我是按代码的顺序记的笔 ...

  8. 【删】【Kubernetes视频学习笔记】Kubernetes集群YAML文件详解

    文章目录 概述 YAML文件介绍 YAML概述 YAML 基本语法 YAML 支持的数据结构 对象 数组 YAML文件组成部分 控制器的定义 被控制的对象 属性说明 如何快速编写YAML文件 使用ku ...

  9. OpenSIPS学习笔记-cluster集群模块配置-dialog集群配置

    本章节中,笔者将进一步介绍关于OpenSIPS集群支持的另外一种常见的场景-dialog的集群.dialog集群是OpenSIPS在高并发环境中一定需要考虑的配置功能.通过集群部署方式,可以保证呼叫中 ...

最新文章

  1. luogu P4085 [USACO17DEC]Haybale Feast(尺取法 + 线段树)
  2. 科大星云诗社动态20211201
  3. HP DL360 G7安装esxi 6.0
  4. php k线 形态识别,趋势追踪,从设计交易系统开始(七)——形态识别,不只有K线...
  5. 修复windows脸部识别_如何在Windows 10中改善面部识别
  6. Ubantu键盘快捷键
  7. 【Nginx】通过反向代理配置本地图床功能
  8. 互联网产品 从设计到运营 这中间提高须要关注的站点
  9. javascript-阻止默认行为发生
  10. 软件工程网络15个人阅读作业2
  11. 【SpringMVC笔记】拦截器 + 文件上传下载
  12. python 读取excel 生成json 读取json
  13. iptables与Netfilter概念
  14. python 多重类继承__init__
  15. centos时钟同步
  16. SQL Server Management Studio(SSMS)对象资源管理器的使用以及查询分析器的使用
  17. R实现K-means
  18. 手把手教你设计短信验证码
  19. 解决ROS中运行launch文件报错ERROR: cannot launch node of type[xxx/xxx]:xxx的问题办法最全汇总
  20. Jetson Nano——使用JetCam官方库调用双CSI摄像头

热门文章

  1. 分治法的概念以及应用
  2. sqlserver如何实现多个数据库之间的实时同步?
  3. 相机标定之畸变矫正与反畸变计算
  4. css 怎样设置虚线,css生成可控虚线的方法
  5. FPGA中关于“后仿真正常,但上板测试出错”的问题
  6. 星巴克中国推出全新鲜萃滴滤咖啡;新加坡美食店金逗海外首店亮相上海;上海佛罗伦萨小镇二期启幕 | 美通社头条...
  7. 腾讯架构师教你如何100天系统地自学 Python?
  8. 在职研究生计算机专业好考么,计算机在职研究生好考吗?
  9. 开源应用架构之​Selenium WebDriver
  10. Python+Vue计算机毕业设计防SQL注入机制的在线音乐试听分享网站kf40t(源码+程序+LW+部署)