linux系统多网卡热备实现高并发负载均衡
#nmcli实现bonding
#先停止NetworkManager
service NetworkManager stop
chkconfig NetworkManager off //开机自启动 关闭
#虚拟主机网卡类型要一致选(桥接)模式:
#添加bonding接口:
nmcli con add type bond con-name mybond0 ifname bond0 mode active-backup
#生成的配置文件路径:
cd /etc/sysconfig/network-scripts
#配置文件名称:
ifcfg-mybond0
#如果要设置静态IP地址,修改配置文件内:
BOOTPROTO=dhcp 修改为:BOOTPROTO=static
新增静态ip地址:IPADDR=172.20.37.200
子网掩码:PREFIX=16
#新增bond0的机制及模式(Mode 1 (active-backup): 活动-备份(主备)策略,只有一个slave被激活,当且仅当活动的slave接口失败时才会激活其他slave.为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见)
BONDING_OPTS="miimon=100 mode=1"
#添加从属网卡接口(我的网卡端口名称为:ens33/ens34):
nmcli con add type bond-slave ifname ens33 master bond0
nmcli con add type bond-slave ifname ens34 master bond0
#生成的配置文件路径:
cd /etc/sysconfig/network-scripts
#配置文件名称:
ifcfg-bond-slave-ens33
ifcfg-bond-slave-ens34
#重新加载网卡:
nmcli con reload
#检查bond0的链接信息:
nmcli con
#如有多余链接端口(非bond0的从属接口,直接关闭):
[root@localhost network-scripts 10:51:15]#nmcli con
NAME UUID TYPE DEVICE
mybond0 e9660986-e80b-40b2-938b-2c0b1e093a8a bond bond0
virbr0 d172ee2f-c59c-4128-9867-ee7e8a2e60c8 bridge virbr0
bond-slave-ens33 c5330bec-dd78-4991-81ba-7ffbb8740493 ethernet ens33
bond-slave-ens34 ec9a5f9e-d7b8-4411-b813-8d7a3c407282 ethernet ens34
bond-slave-ens38 4aa576a2-aef3-4852-8e2d-a5876cfff407 ethernet ens38
ens33 cda2e0f9-5936-4cf3-b32d-59846c30cbd5 ethernet --
ens34 61294f12-63bb-45d0-8fc3-6c6a977e0777 ethernet --
#例入:ens33、ens34及virbr0属于多余,直接down,命令:
nmcli con down ens33
#修改路径/etc/sysconfig/network-scripts/下的ens33和ens34的配置文件
#ifcfg-ens33和ifcfg-ens34文件内开机自启参数的:
ONBOOT="yes" 改修: ONBOOT="no"
#启动绑定,先启动从属接口
nmcli con up bond-slave-ens34
nmcli con up bond-slave-ens33
#启动绑定的mybond0
nmcli con up mybond0
#启动网络服务:
centos6/7:service network restart
centos8:systemctl restart NetworkManager
#配置完成查看bondo参数:
cat /proc/net/bonding/bond0
#删除bond网络
1.nmcli connection delete bond0 删除bond0
2.nmcli connection delete eth0 删除eth0
3.nmcli connection delete eth1 删除eth1
4.rmmod bonding(很重要)
#重启reboot
方法二:
在/etc/sysconfig/network-scripts/目录下建立ifcfg-bond0文件:
DEVICE=bond0
USERCTL=no
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.100.17
NETMASK=255.255.255.0
GATEWAY=192.168.100.1
TYPE=UnKnown
BONDING_OPTS="miimon=80 mode=0"
记得ifcfg-eth0和ifcfg-eth1文件记得备份出来,用于恢复:
然后分别修改ifcfg-eth0文件,如下:
DEVICE="eth0"
ONBOOT="yes"
BOOTPROTO=none:
MASTER=bond0
SLAVE=yes
USERCTL=no
在把ifcfg-eth1文件修改如下:
DEVICE="eth1"
ONBOOT="yes"
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
USERCTL=no
在/etc/modprobe.d/目录下建立bonding.conf文件,文件内容如下:
alias bond0 bonding
执行modprobe bonding
然后重启网络
service network restart
此命令查看绑定情况
cat/proc/net/bonding/bond0
网卡绑定解除:
删除ifcfg-bond0,/etc/modprobe.d/bonding.conf
修改ifcfg-eth0和ifcfg-eth0为绑定之前的样子
rmmod bonding(很重要)
service network restart
linux系统多网卡热备实现高并发负载均衡的更多相关文章
- Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)
原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.ne ...
- Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)-转帖篇
原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.ne ...
- 千万级高并发负载均衡软件HAproxy
1负载均衡产品介绍 基于硬件的负载均衡设备例如F5,Big-IP,基于软件的负载均衡产品HAproxy,LVS,nginx在这些软件产品中,又分为基于操作系统的软负载实现和基于第三方应用的软负载实现. ...
- 高并发负载均衡——nginx与lvs
一.企业级web项目架构 一.企业级web项目架构图 二.架构分析 客户端通过企业防火墙发送请求 在App服务器如tomcat接收客户端请求前,面对高并发大数据量访问的企业架构,会通过加入负载均衡主备 ...
- Django高并发负载均衡
1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...
- Django 高并发负载均衡
1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...
- 千万级高并发负载均衡软件haproxy配置文件详解
balance roundrobin #轮询方式 balance source #将用户IP经过hash计算后,使同一IP地址的所有请求都发送到同一固定的后 ...
- 关于磁盘冗余阵列、热备、群集、负载均衡、云计算、F5、Nginx等的概念和基本原理
在系统部署实施过程中,客户往往会关注系统的可用性方面的指标. 对于一个具备高可用性的系统来说, 多机部署方案是必不可少的. 我们这个知识分享,就从多个不同层面来介绍多机部署方案. ---------- ...
- 年终培训关于磁盘冗余阵列、热备、群集、负载均衡、云计算、F5、Nginx等的概念和基本原理
在系统部署实施过程中,客户往往会关注系统的可用性方面的指标. 对于一个具备高可用性的系统来说, 多机部署方案是必不可少的. 我们这个知识分享,就从多个不同层面来介绍多机部署方案. ---------- ...
随机推荐
- [译]如何取消本地的git commit提交?
git reset HEAD~1 原文来源:https://stackoverflow.com/questions/4850717/how-to-cancel-a-local-git-commit
- [Bayes] MCMC (Markov Chain Monte Carlo)
不错的文章:LDA-math-MCMC 和 Gibbs Sampling 可作为精进MCMC抽样方法的学习材料. 简单概率分布的模拟 Box-Muller变换原理详解 本质上来说,计算机只能生产符合均 ...
- net ads join 和net rpc join命令的区别
要将主机加入Active Directory(AD),请输入: #net ads加入-U administrator 输入管理员密码:Passw0rd 使用短域名 - SAMDOM 加入'M1'到dn ...
- Postgresql中的large object
1.初识postgresql large object 一位同事在对使用pg_dump备份出来的文件(使用plain格式)进行恢复时,觉得速度非常慢,让我分析一下是什么原因. 我拿到他的.bak文件, ...
- npm包的语义版本控制(Semantic Versioning of Packages)
本文删改自Node.js 8 the Right Way Part I Chapter 3 npm 使用语义版本控制(SemVer)来寻找包的最佳可用兼容版本. 以安装测试框架mocha为例 $ ...
- Oracle VM VirtualBox安装配置虚拟机Redhat7.6
首先,准备好材料,需要下载Oracle VM VirtualBox.Oracle19C的安装包.Redhat7.6镜像 下面列出地址: Oracle VM VirtualBox安装包:链接:https ...
- 经典例题(Python)
经典例题 if嵌套 1.用户输入账号2.用户输入密码3.判断用户的账号是不是alex4.如果账号是alex在继续判断密码是不是alexdsb5.账号和密码都正确提示用户alex就是一个dsb6.如果账 ...
- 如何为非常不确定的行为(如并发)设计安全的 API,使用这些 API 时如何确保安全
原文:如何为非常不确定的行为(如并发)设计安全的 API,使用这些 API 时如何确保安全 .NET 中提供了一些线程安全的类型,如 ConcurrentDictionary<TKey, TVa ...
- 监听EF执行的sql语句及状态
1.监听EF执行sql的方式 db.Database.Log += c => Console.WriteLine($"sql:{c}"); SQL Server Profil ...
- JS获取时间差
Date.parse(String string)转为毫秒数进行比较