首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux下的双网卡绑定bond0 em1 em2

    大家好,又见面了,我是你们的朋友全栈君。一、什么是bonding Linux bonding 驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余 二、bonding应用方向 1、网络负载均衡 对于bonding的网络负载均衡是我们在文件服务器中常用到的,比如把三块网卡,当做一块来用,解决一个IP地址,流量过大,服务器网络压力过大的问题。对于文件服务器来说,比如NFS或SAMBA文件服务器,没有任何一个管理员会把内部网的文件服务器的IP地址弄很多个来解决网络负载的问题。如果在内网中,文件服务器为了管理和应用上的方便,大多是用同一个IP地址。对于一个百M的本地网络来说,文件服务器在多 个用户同时使用的情况下,网络压力是极大的,特别是SAMABA和NFS服务器。为了解决同一个IP地址,突破流量的限制,毕竟网线和网卡对数据的吞吐量是有限制的。如果在有限的资源的情况下,实现网络负载均衡,最好的办法就是 bonding 2、网络冗余 对于服务器来说,网络设备的稳定也是比较重要的,特别是网卡。在生产型的系统中,网卡的可靠性就更为重要了。在生产型的系统中,大多通过硬件设备的冗余来提供服务器的可靠性和安全性,比如电源。bonding 也能为网卡提供冗余的支持。把多块网卡绑定到一个IP地址,当一块网卡发生物理性损坏的情况下,另一块网卡自动启用,并提供正常的服务,即:默认情况下只有一块网卡工作,其它网卡做备份 三、bonding实验环境及配置 1、实验环境 系统为:CentOS,使用2块网卡(em1、em2 ==> bond0)来实现bonding技术 2、bonding配置 第一步:先查看一下内核是否已经支持bonding 1)如果内核已经把bonding编译进内核,那么要做的就是加载该模块到当前内核;其次查看ifenslave该工具是否也已经编译 modprobe -l bond* 或者 modinfo bonding modprobe bonding lsmod | grep ‘bonding’ echo ‘modprobe bonding &> /dev/null’ >> /etc/rc.local(开机自动加载bonding模块到内核) which ifenslave 注意:默认内核安装完后就已经支持bonding模块了,无需要自己手动编译 2)如果bonding还没有编译进内核,那么要做的就是编译该模块到内核 (1)编译bonding tar -jxvf kernel-XXX.tar.gz cd kernel-XXX make menuconfig 选择 ” Network device support ” -> ” Bonding driver support “ make bzImage make modules && make modules_install make install (2)编译ifenslave工具 gcc -Wall -O -I kernel-XXX/include ifenslave.c -o ifenslave 第二步:主要有两种可选择(第1种:实现网络负载均衡,第2种:实现网络冗余) 例1:实现网络冗余(即:mod=1方式,使用em1与em2) (1)编辑虚拟网络接口配置文件(bond0),并指定网卡IP vi /etc/sysconfig/network-scripts/ifcfg-bond0 DEVICE=bond0 ONBOOT=yes BOOTPROTO=static IPADDR=192.168.0.254 BROADCAST=192.168.0.255 NETMASK=255.255.255.0 NETWORK=192.168.0.0 GATEWAY=192.168.0.1 USERCTL=no TYPE=Ethernet 注意:建议不要指定MAC地址 vi /etc/sysconfig/network-scripts/ifcfg-em1 DEVICE=em1 BOOTPROTO=none ONBOOT=yes USERCTL=no MASTER=bond0 SLAVE=yes 注意:建议不要指定MAC地址 vi /etc/sysconfig/network-scripts/ifcfg-em2 DEVICE=em2 BOOTPROTO=none ONBOOT=yes USERCTL=no MASTER=bond0 SLAVE=yes 注意:建议不要指定MAC地址 (2)编辑模块载入配置文

    02

    项目开发过程中什么是开发环境、测试环境、生产环境、UAT环境、仿真环境?「建议收藏」

    项目开发过程中什么是开发环境、测试环境、生产环境、UAT环境、仿真环境? 最近在公司项目开发过程中总用到测试环境,生产环境和UAT环境等,然而我对环境什么的并不是很理解它的意思,一直处于开发阶段,出于好奇,本人搜集了自己所了解的一些知识分享给各位,如果有不齐全的地方,请在评论下方留言! 一、开发环境:开发环境是程序猿们专门用于开发的服务器,配置可以比较随意, 为了开发调试方便,一般打开全部错误报告。通俗的讲,项目尚且在编码阶段,我们的代码一般在开发环境中,不会在生产环境中,生产环境组成:操作系统 ,web服务器 ,语言环境。 二、测试环境:一般是克隆一份生产环境的配置,一个程序在测试环境工作不正常,那么肯定不能把它发布到生产机上。通常指项目测试,修改bug阶段。 三、生产环境:是指正式提供对外服务的,一般会关掉错误报告,打开错误日志。可以理解为包含所有的功能的环境,任何项目所使用的环境都以这个为基础,然后根据客户的个性化需求来做调整或者修改。通俗的讲,项目数据前端后台已经跑通,部署在服务器上之后,有客户使用,访问,就是网站正式运行了。 三个环境也可以说是系统开发的三个阶段:开发->测试->上线,其中生产环境也就是通常说的真实环境。 执行步骤:开发完成,测试环境测试,保证程序没有问题后,再上传到生产环境中。 四、UAT环境:UAT,(User Acceptance Test),用户接受度测试 即验收测试,所以UAT环境主要是用来作为客户体验的环境。 五、仿真环境:顾名思义,是和真正使用的环境一样的环境(即已经出售给客户的系统所在环境,也成为商用环境),所有的配置,页面展示等都应该和商家正在使用的一样,差别只在环境的性能方面。 系统内部集成测试(System Integration Testing) :SIT 用户验收测试(User Acceptance Testing) :UAT SIT在前,UAT在后,UAT测完才可以上线。 SIT是集成测试,UAT是验收测试。从时间上看,UAT要在SIT后面,UAT测试要在系统测试完成后才开始。从测试人员看,SIT由公司的测试员来测试,而UAT一般是由用户来测试。

    03
    领券