配置 Heartbeat

一、环境准备

[root@master ~]# uname -r 
3.10.0-957.el7.x86_64
[root@master ~]# cat /etc/centos-release
CentOS Linux release 7.6.1810 (Core) 

IP地址规划

主机名IP地址
master192.168.1.120
slave192.168.1.123
虚拟ip地址192.168.1.200

二、规划图

 三、基础环境部署

master和slave上都操作

1.修改主机名

hostnamectl set-hostname master

hostnamectl set-hostname slave

2.修改/etc/hosts/

192.168.1.120 master
192.168.1.123 slave

3.关闭防火墙

# 立即关闭firewalld
systemctl stop firewalld
 
# 设置firewalld开启不启动
systemctl disable firewalld
 
# 查看firewalld的状态
systemctl status firewalld

4.关闭seLinux

# 临时关闭seLinux
setenforce 0
 
# 永久关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
 
# 查看seLinux
getenforce 

5.配置静态ip地址

vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE="Ethernet"
BOOTPROTO="static"
DEVICE="ens33"
NAME="ens33"
ONBOOT="yes"
IPADDR="192.168.1.120"
PREFIX=24
GATEWAY="192.168.1.1"
DNS1=114.114.114.114

TYPE="Ethernet"
BOOTPROTO="static"
DEVICE="ens33"
NAME="ens33"
ONBOOT="yes"
IPADDR="192.168.1.123"
PREFIX=24
GATEWAY="192.168.1.1"
DNS1=114.114.114.114

6.建立免密通道

ssh-keygen  -t rsa   # 一路回车
 
ssh-copy-id  -i id_rsa.pub root@master

ssh-copy-id  -i id_rsa.pub root@slave

7.同步时间

crontab -e
* */1 * * * /usr/sbin/ntpdate   cn.pool.ntp.org
 
#重启crond服务
service crond restart

四、部署Heartbeat

1.安装依赖关系

yum install -y gcc gcc-c++ autoconf automake libtool glib2-devel libxml2-devel bzip2 bzip2-devel e2fsprogs-devel libxslt-devel libtool-ltdl-devel asciidoc

2.创建用户和组

groupadd haclient
useradd -g haclient hacluster

3.下载软件包

wget http://www.xxshell.com/download/heartbeat/Reusable-Cluster-Components-glue.tar.gz
wget http://www.xxshell.com/download/heartbeat/resource-agents-3.9.6.tar.gz
wget http://www.xxshell.com/download/heartbeat/Heartbeat-3.0.tar.gz

4.安装Reusable-Cluster-Components-glue

#解压
tar -xzvf Reusable-Cluster-Components-glue.tar.gz

#进入 Reusable-Cluster-Components-glue
cd Reusable-Cluster-Components-glue

#执行脚本
./autogen.sh

#编译配置
./configure \
--prefix=/usr/local/heartbeat \
--with-daemon-user=hacluster \
--with-daemon-group=haclient \
--enable-fatal-warnings=no LIBS='/lib64/libuuid.so.1'

#编译安装
make && make install

#查看上一条命令的返回值,用来判断编译是否成功
echo $?

#返回到上一级目录
cd ..

5.安装resource-agents-3.9.6

#解压
tar -xzvf resource-agents-3.9.6.tar.gz

#进入resource-agents-3.9.6
cd resource-agents-3.9.6

#执行脚本
./autogen.sh 

#编译配置
./configure \
--prefix=/usr/local/heartbeat \
--with-daemon-user=hacluster \
--with-daemon-group=haclient \
--enable-fatal-warnings=no LIBS='/lib64/libuuid.so.1'

#编译安装
make && make install

#查看上一条命令的返回值,用来判断编译是否成功
echo $?

#返回到上一级目录
cd ..

6.安装Heartbeat-3.0

#解压
tar -xzvf Heartbeat-3.0.tar.gz

#进入Heartbeat-3.0
cd Heartbeat-3.0

#执行脚本
./bootstrap

#输出变量
export CFLAGS="$CFLAGS -I/usr/local/heartbeat/include -L/usr/local/heartbeat/lib"

#编译配置
./configure \
--prefix=/usr/local/heartbeat \
--with-daemon-user=hacluster \
--with-daemon-group=haclient \
--enable-fatal-warnings=no LIBS='/lib64/libuuid.so.1'

#编译安装
make && make install

#查看上一条命令的返回值,用来判断编译是否成功
echo $?

五、HeartBeat配置

master上操作

1.复制HeartBeat包中doc下列文件到指定目录

cp doc/{ha.cf,haresources,authkeys} /usr/local/heartbeat/etc/ha.d/

2.编辑ha.cf配置文件

vim /usr/local/heartbeat/etc/ha.d/ha.cf

# 全部注释(文件里还有2行需要注释)
# 添加以下配置
# ipfail文件路径可能不同,使用 find 查找 --》find / -name 'ipfail'

debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 1
deadtime 10
warntime 5
initdead 60
udpport 694
ucast ens33 192.168.1.123   # 主要网卡名字(我的是ens33)和IP地址(slave的ip地址)
auto_failback on
node master   # 节点名字(master)
node slave    # 节点名字(slave)
ping 192.168.1.1  # 网关
respawn hacluster /usr/local/heartbeat/libexec/heartbeat/ipfail
配置文件参数

debugfile  /var/log/ha-debug:heartbeat的调试信息。
logfile /var/log/ha-log: heartbeat的日志文件。
keepalive 1: 心跳的时间间隔,默认时间单位为秒s。
deadtime 10:心跳超时时间,超过该则认为对方已经失效。
warntime 5: 超出该时间间隔未收到对方节点的心跳,则发出警告并记录到日志中。
initdead 60:在某系统上,系统启动或重启之后需要经过一段时间网络才能正常工作,该选项用于解决这种情况产生的时间间隔,取值至少为deadtime的2倍。
udpport 694:设置广播通信使用的端口,694为默认使用的端口号。
ucast ens33 192.168.1.123:设置单播对方机器心跳检测的网卡和IP。
auto_failback on:heartbeat的两台主机分别为主节点和从节点。主节点在正常情况下占用资源并运行所有的服务,遇到故障时把资源交给从节点由从节点运行服务。在该选项设为on的情况下,一旦主节点恢复运行,则自动获取资源并取代从节点,否则不取代从节点。
respawn heartbeat /usr/lib/heartbeat/ipfail:指定与heartbeat一同启动和关闭的进程,该进程被自动监视,遇到故障则重新启动。最常用的进程是ipfail,该进程用于检测和处理网络故障,需要配合ping语句指定的ping node来检测网络连接。如果你的系统是64bit,请注意该文件的路径。

3.编辑haresources

vim /usr/local/heartbeat/etc/ha.d/haresources

#在第一行添加以下内容
master 192.168.1.200/24/ens33
配置文件介绍

192.168.1.200:虚拟IP
24:子网掩码
ens33:网卡名称
master 192.168.1.200/24/ens33  [进程名称]    还可以添加进程名称,用来同时监控服务器与进程

4.编辑authkeys,配置加密参数并附加权限

vim /usr/local/heartbeat/etc/ha.d/authkeys

#在最后添加加密参数
auth 2       # 表示使用id为2的验证,下边需要定义一个2的验证算法
2 md5 hello  # id为2的验证加密为md5,并添加密码。





#给authkeys配置权限
chmod 600 /usr/local/heartbeat/etc/ha.d/authkeys

5.拷贝以上3个配置文件到slave服务器上

scp /usr/local/heartbeat/etc/ha.d/{ha.cf,haresources,authkeys} root@slave:/usr/local/heartbeat/etc/ha.d/


[root@master Heartbeat-3.0]# scp /usr/local/heartbeat/etc/ha.d/{ha.cf,haresources,authkeys} root@slave:/usr/local/heartbeat/etc/ha.d/
ha.cf                                                 100%   11KB   7.4MB/s   00:00    
haresources                                           100% 5933     5.0MB/s   00:00    
authkeys                                              100%  664   669.3KB/s   00:00  

slave上操作

编辑ha.cf配置文件,其他配置文件不用操作

vim /usr/local/heartbeat/etc/ha.d/ha.cf


debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
keepalive 1
deadtime 10
warntime 5
initdead 60
udpport 694
ucast ens33 192.168.1.120    # 修改这个ip地址(masterIP地址)
auto_failback on
node master
node slave
ping 192.168.1.1
respawn hacluster /usr/local/heartbeat/libexec/heartbeat/ipfail

master和slave上操作

1、配置网卡支持文件

mkdir -pv /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/

cp /usr/lib/ocf/lib/heartbeat/ocf-* /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/

ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/* /usr/local/heartbeat/lib/heartbeat/plugins/RAExec/
ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/* /usr/local/heartbeat/lib/heartbeat/plugins/

#注意:一般启动时会报错因为 ping和ucast这些配置都需要插件支持 需要将lib64下面的插件软连接到lib目录 才不会抛出异常。


[root@master Heartbeat-3.0]# mkdir -pv /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/
mkdir: 已创建目录 "/usr/local/heartbeat/usr"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib/ocf"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib/ocf/lib"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/"

[root@master Heartbeat-3.0]# cp /usr/lib/ocf/lib/heartbeat/ocf-* /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/
[root@master Heartbeat-3.0]# ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/* /usr/local/heartbeat/lib/heartbeat/plugins/RAExec/
"/usr/local/heartbeat/lib/heartbeat/plugins/RAExec/*" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/*"

[root@master Heartbeat-3.0]# ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/* /usr/local/heartbeat/lib/heartbeat/plugins/
"/usr/local/heartbeat/lib/heartbeat/plugins/HBauth" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/HBauth"
"/usr/local/heartbeat/lib/heartbeat/plugins/HBcomm" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/HBcomm"
"/usr/local/heartbeat/lib/heartbeat/plugins/quorum" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/quorum"
"/usr/local/heartbeat/lib/heartbeat/plugins/tiebreaker" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/tiebreaker"


[root@slave Heartbeat-3.0]# mkdir -pv /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/
mkdir: 已创建目录 "/usr/local/heartbeat/usr"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib/ocf"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib/ocf/lib"
mkdir: 已创建目录 "/usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/"

[root@slave Heartbeat-3.0]# cp /usr/lib/ocf/lib/heartbeat/ocf-* /usr/local/heartbeat/usr/lib/ocf/lib/heartbeat/

[root@slave Heartbeat-3.0]# ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/* /usr/local/heartbeat/lib/heartbeat/plugins/RAExec/
"/usr/local/heartbeat/lib/heartbeat/plugins/RAExec/*" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/RAExec/*"
[root@slave Heartbeat-3.0]# ln -svf /usr/local/heartbeat/lib64/heartbeat/plugins/* /usr/local/heartbeat/lib/heartbeat/plugins/
"/usr/local/heartbeat/lib/heartbeat/plugins/HBauth" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/HBauth"
"/usr/local/heartbeat/lib/heartbeat/plugins/HBcomm" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/HBcomm"
"/usr/local/heartbeat/lib/heartbeat/plugins/quorum" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/quorum"
"/usr/local/heartbeat/lib/heartbeat/plugins/tiebreaker" -> "/usr/local/heartbeat/lib64/heartbeat/plugins/tiebreaker"

2.启动heartbeat服务

# 设置heartbeat开机启动
[root@master Heartbeat-3.0]# systemctl enable heartbeat
Created symlink from /etc/systemd/system/multi-user.target.wants/heartbeat.service to /usr/lib/systemd/system/heartbeat.service.

#启动heartbeat服务
[root@master Heartbeat-3.0]# systemctl start heartbeat

#查看heartbeat进程
[root@master Heartbeat-3.0]# ps aux|grep heartbeat
root      38885  0.3  0.4  57852  8776 ?        SLs  12:42   0:00 heartbeat: master control process
root      38887  0.0  0.4  57780  8700 ?        SL   12:42   0:00 heartbeat: FIFO reader
root      38888  0.0  0.4  57848  8772 ?        SL   12:42   0:00 heartbeat: write: ucast ens33
root      38889  0.0  0.4  57848  8772 ?        SL   12:42   0:00 heartbeat: read: ucast ens33
root      38890  0.0  0.4  57852  8776 ?        SL   12:42   0:00 heartbeat: write: ping 192.168.1.1
root      38891  0.0  0.4  57852  8776 ?        SL   12:42   0:00 heartbeat: read: ping 192.168.1.1
haclust+  38914  0.0  0.0  42028  1816 ?        S    12:42   0:00 /usr/local/heartbeat/libexec/heartbeat/ipfail
root      39248  0.0  0.0   9960   976 ?        S    12:43   0:00 /bin/sh /usr/lib/ocf/resource.d//heartbeat/IPaddr start
root      39249  0.0  0.0  14188   776 ?        S    12:43   0:00 /usr/local/heartbeat/libexec/heartbeat/send_arp -i 500 -r 10 -p /usr/local/heartbeat/var/run/resource-agents/send_arp-192.168.1.0 ens33 192.168.1.0 auto 192.168.1.0 ffffffffffff
root      39279  0.0  0.0 112824   988 pts/0    S+   12:43   0:00 grep --color=auto heartbeat

#查看heartbeat端口
[root@master Heartbeat-3.0]# netstat -anplut|grep heartbeat
udp        0      0 0.0.0.0:47754           0.0.0.0:*                           38888/heartbeat: wr 
udp        0      0 0.0.0.0:694             0.0.0.0:*                           38888/heartbeat: wr 


# 设置heartbeat开机启动
[root@slave Heartbeat-3.0]# systemctl enable heartbeat
Created symlink from /etc/systemd/system/multi-user.target.wants/heartbeat.service to /usr/lib/systemd/system/heartbeat.service.

#启动heartbeat服务
[root@slave Heartbeat-3.0]# systemctl start heartbeat

#查看heartbeat进程
[root@slave Heartbeat-3.0]# ps aux|grep heartbeat
root      38297  0.5  0.4  57852  8776 ?        SLs  12:42   0:00 heartbeat: master control process
root      38299  0.0  0.4  57780  8700 ?        SL   12:42   0:00 heartbeat: FIFO reader
root      38300  0.1  0.4  57848  8772 ?        SL   12:42   0:00 heartbeat: write: ucast ens33
root      38301  0.0  0.4  57848  8772 ?        SL   12:42   0:00 heartbeat: read: ucast ens33
root      38302  0.0  0.4  57852  8776 ?        SL   12:42   0:00 heartbeat: write: ping 192.168.1.1
root      38303  0.0  0.4  57852  8776 ?        SL   12:42   0:00 heartbeat: read: ping 192.168.1.1
haclust+  38307  0.3  0.0  42028  1808 ?        S    12:42   0:00 /usr/local/heartbeat/libexec/heartbeat/ipfail
root      38344  0.0  0.0 112824   988 pts/0    S+   12:43   0:00 grep --color=auto heartbeat

#查看heartbeat端口
[root@slave Heartbeat-3.0]# netstat -anplut|grep heartbeat
udp        0      0 0.0.0.0:40535           0.0.0.0:*                           38300/heartbeat: wr 
udp        0      0 0.0.0.0:694             0.0.0.0:*                           38300/heartbeat: wr 

3.查看ip

[root@master Heartbeat-3.0]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:47:95:eb brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.120/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet 192.168.1.200/24 brd 192.168.1.255 scope global secondary ens33:1
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe47:95eb/64 scope link 
       valid_lft forever preferred_lft forever

[root@master Heartbeat-3.0]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.120  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fe47:95eb  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:47:95:eb  txqueuelen 1000  (Ethernet)
        RX packets 53705  bytes 61355759 (58.5 MiB)
        RX errors 0  dropped 144  overruns 0  frame 0
        TX packets 33101  bytes 4697581 (4.4 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


ens33:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.200  netmask 255.255.255.0  broadcast 192.168.1.255
        ether 00:0c:29:47:95:eb  txqueuelen 1000  (Ethernet)

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 60  bytes 5006 (4.8 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 60  bytes 5006 (4.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


[root@slave Heartbeat-3.0]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:e0:3d:59 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.123/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fee0:3d59/64 scope link 
       valid_lft forever preferred_lft forever

[root@slave Heartbeat-3.0]# ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.123  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::20c:29ff:fee0:3d59  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:e0:3d:59  txqueuelen 1000  (Ethernet)
        RX packets 63498  bytes 80662487 (76.9 MiB)
        RX errors 0  dropped 123  overruns 0  frame 0
        TX packets 34035  bytes 4360522 (4.1 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 70  bytes 6112 (5.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 70  bytes 6112 (5.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

六、测试

1、验证vip漂移

1.master上关闭heartbeat服务

[root@master Heartbeat-3.0]# service heartbeat stop
Stopping heartbeat (via systemctl):                        [  OK  ]

[root@master Heartbeat-3.0]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:47:95:eb brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.120/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe47:95eb/64 scope link 
       valid_lft forever preferred_lft forever

2.slave上查看是否有vip

[root@slave Heartbeat-3.0]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:e0:3d:59 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.123/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet 192.168.1.200/24 brd 192.168.1.255 scope global secondary ens33:0
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fee0:3d59/64 scope link 
       valid_lft forever preferred_lft forever

3.master上启动heartbeat服务

[root@master Heartbeat-3.0]# service heartbeat start
Starting heartbeat (via systemctl):                        [  OK  ]

4.master上查看vip是否回来

[root@master Heartbeat-3.0]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:47:95:eb brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.120/24 brd 192.168.1.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet 192.168.1.200/24 brd 192.168.1.255 scope global secondary ens33:1
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe47:95eb/64 scope link 
       valid_lft forever preferred_lft forever

5.windows上查看MAC地址漂移

win+r 输入cmd

C:\Users\wei>ping 192.168.1.120

正在 Ping 192.168.1.120 具有 32 字节的数据:
来自 192.168.1.120 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.120 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.1.120 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.1.120 的回复: 字节=32 时间=1ms TTL=64

192.168.1.120 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 1ms,平均 = 0ms

C:\Users\wei>ping 192.168.1.123

正在 Ping 192.168.1.123 具有 32 字节的数据:
来自 192.168.1.123 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.123 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.1.123 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.1.123 的回复: 字节=32 时间=1ms TTL=64

192.168.1.123 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 1ms,平均 = 0ms

C:\Users\wei>ping 192.168.1.200

正在 Ping 192.168.1.200 具有 32 字节的数据:
来自 192.168.1.200 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.1.200 的回复: 字节=32 时间=2ms TTL=64
来自 192.168.1.200 的回复: 字节=32 时间=1ms TTL=64
来自 192.168.1.200 的回复: 字节=32 时间=2ms TTL=64

192.168.1.200 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 2ms,平均 = 1ms

C:\Users\wei>arp -a

接口: 192.168.1.103 --- 0xf
  Internet 地址         物理地址              类型
  192.168.1.1           f0-eb-d0-8c-77-6e     动态
  192.168.1.107         44-d8-78-63-54-5e     动态
  192.168.1.120         12-63-8b-ce-c7-91     动态
  192.168.1.123         12-63-8b-ce-c7-91     动态
  192.168.1.200         00-0c-29-47-95-eb     动态
  192.168.1.221         00-0c-29-62-e8-d0     动态
  192.168.1.255         ff-ff-ff-ff-ff-ff     静态
  224.0.0.2             01-00-5e-00-00-02     静态
  224.0.0.22            01-00-5e-00-00-16     静态
  224.0.0.251           01-00-5e-00-00-fb     静态
  224.0.0.252           01-00-5e-00-00-fc     静态
  238.238.238.238       01-00-5e-6e-ee-ee     静态
  239.255.255.250       01-00-5e-7f-ff-fa     静态
  255.255.255.255       ff-ff-ff-ff-ff-ff     静态

2、WEB应用测试(nginx或httpd)

演示httpd

1.安装

yum install -y httpd

2.启动

systemctl enable httpd

systemctl start httpd

3.浏览器上查看

http://192.168.1.120/

http://192.168.1.123/

http://192.168.1.200/

4.修改index.html页面

# master上操作
#进入存放页面的文件夹
cd /usr/share/httpd/noindex/

#复制首页(备份)
cp index.html index.html.bak

#编辑首页
vim index.html

welcome to  master  index

#slave上操作
#进入存放页面的文件夹
cd /usr/share/httpd/noindex/

#复制首页(备份)
cp index.html index.html.bak

#编辑首页
vim index.html

welcome to  slave  index

5.再次访问

http://192.168.1.120/

http://192.168.1.123/

http://192.168.1.200/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

韩未零

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值