在给XenServer配置网卡bonding时,需要在所有节点都添加到集群之后再进行,这也是来自Citrix的建议:“Citrix

recommends never joining
a host that already has a bond configured
on it to a pool”。用XenCenter连接XenServer

集群,通过界面操作对网卡进行bonding是很easy的,而要自动化完成这个功能,可通过调用xe命令去完成,但需要

对一些概念有了解。



对于一个XenServer集群,各个节点看到的逻辑网络应该是一样,否则VM迁移后网络就会出问题。比如原来这个VM

连接的是A网桥,迁移到另外的节点后没有同样的这么一个A网桥,VM就会不知所措。

假设我需要分别对eth0和eth2做bonding,eth1和eth3做bonding,那么首先我要创建两个网络,分别为bond02和

bond13,脚本(这些脚本都只在master节点运行)如下:

bond02_uuid=`xe network-create name-label=bond02`

bond13_uuid=`xe network-create name-label=bond13`



然后获取到集群中所有节点的host uuid:



host_uuids=`xe host-list|grep uuid|awk '{print $5}'`



循环对每个节点做bonding:



for host_uuid in $(echo $host_uuids | awk '{print;}')

do

 

    # 获取到eth0和eth2 的pif uuid

    host_eth0_pif=`xe pif-list host-uuid=$host_uuid device=eth0|grep -E '^uuid'|awk '{print $5}'`

    host_eth2_pif=`xe pif-list host-uuid=$host_uuid device=eth2|grep -E '^uuid'|awk '{print $5}'`



     # 对eth0和eth2做bonding,这里的network-uuid就是上面创建网络bond02后返回的uuid,每个节点都用它

    xe bond-create network-uuid=$bond02_uuid pif-uuids=$host_eth0_pif,$host_eth2_pif mode=lacp



    # 获取到eth1和eth3 的pif uuid

    host_eth1_pif=`xe pif-list host-uuid=$host_uuid device=eth1|grep -E '^uuid'|awk '{print $5}'`

    host_eth3_pif=`xe pif-list host-uuid=$host_uuid device=eth3|grep -E '^uuid'|awk '{print $5}'`



   # 对eth1和eth3做bonding,这里的network-uuid就是上面创建网络bond13后返回的uuid,每个节点都用它

    xe bond-create network-uuid=$bond13_uuid pif-uuids=$host_eth1_pif,$host_eth3_pif mode=lacp



done



“xe bond-create”命令中我指定的mode是lacp,关于这个需要了解的可移步这里

XenServer网卡Bonding的更多相关文章

  1. linux下网卡bonding配置(转)

    linux下网卡bonding配置   章节 bonding技术 centos7配置bonding centos6配置bonding 一.bonding技术 bonding(绑定)是一种linux系统 ...

  2. 网卡bonding模式 - bond0、1、4配置

    网卡bonding模式 - bond0.1.4配置 网卡bonding简介 网卡绑定就是把多张物理网卡通过软件虚拟成一个虚拟的网卡,配置完毕后,所有的物理网卡的ip和mac将会变成相同的.多网卡同时工 ...

  3. Linux下的网卡Bonding

    1. 网卡Bonding一共有0-6七种mode,具体区别请自行搜索: 2. 建议通过nmtui命令在交互模式下配置,这样不会落下重要的字段,也不用去记忆到底有哪些字段: 3. 我的实验环境是VMWa ...

  4. linux下网卡bonding配置

    linux下网卡bonding配置   章节 bonding技术 centos7配置bonding centos6配置bonding 一.bonding技术 bonding(绑定)是一种linux系统 ...

  5. 为RAC私有网络配置网卡Bonding

    在RAC的安装部署过程中.并不不过简单的安装完毕了事.整个安装过程要考虑可能出现的单点问题,当中比較重要的是私有网络. 私有网络是RAC节点间通信的通道.包含节点间的网络心跳信息.Cache fusi ...

  6. Linux配置网卡、网卡会话、网卡bonding

    配置网卡  1.路径:  /etc/sysconfig/network-scripts/ifcfg-eno16777728 2.含义:HWADDR=00:0C:29:9C:D6:4D   Mac地址 ...

  7. 双网卡bonding

    网卡:计算机与外界局域网的连接是通过主机箱内插入一块网络接口板(或者是在笔记本电脑中插入一块PCMCIA卡).网络接口板又称为通信适配器或网络适配器(adapter)或网络接口卡NIC(Network ...

  8. Linux 网卡 bonding配置

    网卡 bonding配置 目录 网卡 bonding配置 一.bonding技术 bonding的七种工作模式 总结: 二.Centos7配置bonding 1.关闭和停止NetworkManager ...

  9. suse 12 双网卡bonding模式

    文章目录 工欲善其事,必先配静态ip 网卡bonding eth0 eth1 192.168.70.52 192.168.70.55 工欲善其事,必先配静态ip 重要的事情说三遍 修改配置之前,先备份 ...

随机推荐

  1. visual studio 的生成、重新生成、清理功能的说明

    生成 生成当前选中的项目,依赖的项目如果已经生成dll,则不生成,直接拷贝过来 重新生成 生成当前选中的项目,依赖的项目也会生成 清理 清除掉生成的dll和相关文件

  2. 纯干货!live2d动画制作简述以及踩坑

    本文来自网易云社区,转载务必请注明出处. 1. 概述 live2d是由日本Cybernoids公司开发,通过扭曲像素位置营造伪3d空间感的二维动画软件.官网下载安装包直接安装可以得到两种软件,分别是C ...

  3. mongodb权限机制以及扩展

    mongodb权限机制 启动权限机制之前要先在MONGODB中添加管理员账号: 1. 创建账号 重装安装一个mongodb,安装时添加一个 --auth参数: 先把安装好的从服务中删除掉(删除之后数据 ...

  4. 命令行-s的意思

    -s,signal,意思就是信号,一般是发送信号. 如: # 关闭 nginx -s stop;

  5. 九度oj 题目1073:杨辉三角形

    题目描述: 输入n值,使用递归函数,求杨辉三角形中各个位置上的值. 输入: 一个大于等于2的整型数n 输出: 题目可能有多组不同的测试数据,对于每组输入数据, 按题目的要求输出相应输入n的杨辉三角形. ...

  6. 学习系列 - 马拉车&扩展KMP

    Manacher(马拉车)是一种求最长回文串的线性算法,复杂度O(n).网上对其介绍的资料已经挺多了的,请善用搜索引擎. 而扩展KMP说白了就是是求模式串和主串的每一个后缀的最长公共前缀[KMP更像是 ...

  7. Mybatis 如何自动生成bean dao xml 配置文件 generatorconfig.xml (main()方法自动生成更快捷)

    最近项目要用到mybatis中间件,中间涉及到要对表结构生成bean,dao,和sqlconfig.xml 所以记录一下学习过程 首先是准备工作,即准备需要的jar包:我们的数据库mysql,所以驱动 ...

  8. 常州模拟赛d3t3 两只怪物心心相印

    题目背景 从前我是一位无名的旅人,旅途中我得到了某样东西:贤者之石.我因此得到悠久的时光和漂泊的生命.1897年冬天,我一时兴起舍弃了旅人的生活. 贤者之石创造出来的,是货真价实的黄金.我的名声传遍了 ...

  9. 【2018.10.20】noip模拟赛Day3 飞行时间

    今天模拟赛题目 纯考输入的傻逼题,用$scanf$用到思想僵化的我最终成功被$if$大法爆$0$了(这题只有一组$100$分数据). 输入后面那个$(+1/2)$很难$if$判断,所以我们要判两个字符 ...

  10. angular实时显示checkbox被选中的元素

    /** * Created by zh on 20/05/15. */ // Code goes here var iApp = angular.module("App", []) ...