天道酬勤,学无止境

bond

Microsoft Bond 架构演变最佳实践(Microsoft Bond schema evolution best practices)

问题 Microsoft Bond 是否有一些关于架构如何随时间演变的最佳实践? 我想确保我们遵循最佳实践,以便我们有两种方式的兼容性(即允许我们的 Bond 类型将旧版本演变为当前版本,以及允许从新版本转换回旧版本的向后兼容性)。 我没有看到文档中专门解决了这个问题(例如 https://microsoft.github.io/bond/manual/bond_cs.html 或 https://microsoft.github.io/bond/manual/compiler.html#idl -syntax ),尽管其他序列化框架(例如 Avro)在其文档中明确详细说明了这一点。 就其价值而言,我们正在使用 .NET (C#/F#) 编写,并打算最初使用 CompactBinaryWriter 和 CompactBinaryReader 格式。 例如,我想像这些方面的一些指导: 字段的名称可以随时间变化,因为字段序号用于字段解析,而不是直接使用名称(SimpleJSON 除外)。 我相信这是真的,是吗? 添加新的“必填”字段需要您为该字段提供默认值删除新版本中的字段是可以的,前提是旧版本分配了默认值更改字段的类型怎么样? 例如,字段可以从版本 1 中的字符串字段更改为版本 2 中的 int64 吗? 它可以从字符串更改为自定义联合(带有可选字段的自定义类型)吗? 还有其他建议吗

2021-06-27 19:28:52    分类:技术分享    bond

服务器网络配置

1.1 单网卡配置vi /etc/sysconfig/network-scripts/ifcfg-eth0 NAME=eth0 DEVICE=eth0 ONBOOT=yes USERCTL=no BOOTPROTO=static IPADDR=10.0.0.10 NETMASK=255.255.255.0 GATEWAY=10.0.0.2541.2 单网卡vlan配置vi /etc/sysconfig/network-scripts/ifcfg-eth1 NAME=eth1 DEVICE=eth1 ONBOOT=yes USERCTL=no BOOTPROTO=staticvi /etc/sysconfig/network-scripts/ifcfg-eth1.400 DEVICE=eth1.400 BOOTPROTO=none ONBOOT=yes IPADDR=10.4.95.239 NETMASK=255.255.224.0 VLAN=yes MTU=15001.3 双网卡配置bond注:配置bong的是需要修改网卡的名字网卡5和网卡7做的bond 0_mode4,并且配置IPmv ifcf-eth5 ifcfg-bond-slave-eth5 [root@172e18e211e20 network-scripts.bak]# vi ifcfg-bond-slave-eth5

2021-06-02 02:49:33    分类:博客    bond   vlan

Red Hat Virtualization以及Linux网卡bond七种模式详解

1、绑定介绍绑定(bond) 是由多个网卡组合成的、一个单一的、由软件定义的网络设备。因为一个绑定是由多个网卡组成的,因此它可以提供比单一网卡更高的网络传输速度,并提供了更好的网络容错功能(绑定只有在所有的网卡都出现问题时才会停止工作)。但是,绑定设备有一个限制:绑定必须由相同型号的网卡组成。绑定设备的数据包传输算法是由绑定的模式所决定的。注意:模式 1、2、3 和 4 支持虚拟机网络(使用网桥)和非虚拟机网络(无网桥);模式 0、5 和 6 只支持非虚拟机网络(无网桥)。2、绑定模式Red Hat Virtualization 使用 Mode 4 作为默认的模式,它同时也支持以下绑定模式:模式 0(round-robin policy)(平衡抡循环策略)传输的数据包会顺序使用网卡。它会首先使用绑定中的第一个有效的网卡,最后使用最后一个网卡。模式 0 提供了网络容错和网络负载均衡的功能,但它不能和网桥一起使用,因此与虚拟机逻辑网络不兼容。特点:负载均衡---所有链路处于负载均衡状态,轮询方式往每条链路发送报文,基于per packet方式发送。传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1....一直循环下去,直到最后一个传输完毕)。在一个双网卡绑定的机器上ping一个地址,你会发现两个网卡都有流量发出。负载到两条链路上,说明是基于per

2021-06-01 22:12:26    分类:博客    bond   rhev   rhevh   rhev

Linux Bond mode 参数说明

linux系统下bond mode参数说明:(mode=4 在交换机支持LACP时推荐使用,其能提供更好的性能和稳定性) 0-轮询模式,所绑定的网卡会针对访问以轮询算法进行平分。 1-高可用模式,运行时只使用一个网卡,其余网卡作为备份,在负载不超过单块网卡带宽或压力时建议使用。 2-基于HASH算法的负载均衡模式,网卡的分流按照xmit_hash_policy的TCP协议层设置来进行HASH计算分流,使各种不同处理来源的访问都尽量在同一个网卡上进行处理。 3-广播模式,所有被绑定的网卡都将得到相同的数据,一般用于十分特殊的网络需求,如需要对两个互相没有连接的交换机发送相同的数据。 4-802.3ab负载均衡模式,要求交换机也支持802.3ab模式,理论上服务器及交换机都支持此模式时,网卡带宽最高可以翻倍(如从1Gbps翻到2Gbps) 5-适配器输出负载均衡模式,输出的数据会通过所有被绑定的网卡输出,接收数据时则只选定其中一块网卡。如果正在用于接收数据的网卡发生故障,则由其他网卡接管,要求所用的网卡及网卡驱动可通过ethtool命令得到speed信息。 6-适配器输入/输出负载均衡模式,在”模式5″的基础上,在接收数据的同时实现负载均衡,除要求ethtool命令可得到speed信息外,还要求支持对网卡MAC地址的动态修改功能。 以下是摘抄自RedHat官方的详细解释 (原文链接

2021-05-19 09:18:59    分类:博客    linux   mode   bond   Linux&Script

linux多网卡绑定聚合-Bond详细完整版

Linux Bonding一、什么是bondingLinux bonding 驱动提供了一个把多个网络接口设备捆绑为单个的网络接口设置来使用,用于网络负载均衡及网络冗余二、bonding应用方向1、网络负载均衡对 于bonding的网络负载均衡是我们在文件服务器中常用到的,比如把三块网卡,当做一块来用,解决一个IP地址,流量过大,服务器网络压力过大的问题。 对于文件服务器来说,比如NFS或SAMBA文件服务器,没有任何一个管理员会把内部网的文件服务器的IP地址弄很多个来解决网络负载的问题。如果在内网 中,文件服务器为了管理和应用上的方便,大多是用同一个IP地址。对于一个百M的本地网络来说,文件服务器在多 个用户同时使用的情况下,网络压力是极大的,特别是SAMABA和NFS服务器。为了解决同一个IP地址,突破流量的限制,毕竟网线和网卡对数据的吞吐量 是有限制的。如果在有限的资源的情况下,实现网络负载均衡,最好的办法就是 bonding 2、网络冗余对于服务器来说,网络设备的稳定也是比较重要的,特别是网卡。在生产型的系统中,网卡的可靠性就更为重要了。在生产型的系统中,大多通过硬件设备的冗余来提供服务器的可靠性和安全性,比如电源。bonding 也能为网卡提供冗余的支持。把多块网卡绑定到一个IP地址,当一块网卡发生物理性损坏的情况下,另一块网卡自动启用,并提供正常的服务,即

2021-05-12 08:37:52    分类:博客    bond   详细   完整版   【linux系统配置】

Microsoft Bond schema evolution best practices

Does Microsoft Bond have some best practices on how schemas evolve over time? I want to make certain we follow best practices such that we have 2 way compatibility (i.e. allowing our Bond types to evolve older versions to the current version, as well as backward compatibility allowing conversion from a newer version back to an older version). I don't see this addressed specifically in the documentation (e.g. https://microsoft.github.io/bond/manual/bond_cs.html nor https://microsoft.github.io/bond/manual/compiler.html#idl-syntax ), though other serialization frameworks such as Avro have this

2021-05-08 23:12:57    分类:问答    bond

自动做bond的脚本

#!/bin/bash # 先备份原来的网卡配置文件 find /etc/sysconfig/network-scripts/ -type f -name "ifcfg*"|xargs cp -t /tmp # 定义要使用的变量 network_file_path=/etc/sysconfig/network-scripts bond_IP=192.168.1.200 bond_gateway=192.168.1.254 # 要绑定的网卡 bond_dev1=enp4s0f0 bond_dev2=enp4s0f1 # 首先新建一个bond的配置文件 cat > $network_file_path/ifcfg-bond0 <<END DEVICE=bond0 BONDING_OPTS="miimon=100 mode=0" TYPE=Bond BONDING_MASTER=yes BOOTPROTO=none NAME=bond0 IPADDR=$bond_IP NETMASK=255.255.255.0 #GATEWAY=$bond_gateway MTU=9000 ONBOOT=yes END # 修改第一块网卡的配置 cat > ${network_file_path}/ifcfg-$bond_dev1 <<END TYPE=Ethernet NAME=$bond_dev1

2021-04-19 23:17:32    分类:博客    bond   bond脚本

Linux网卡bond的七种模式详解

像Samba、Nfs这种共享文件系统,网络的吞吐量非常大,就造成网卡的压力很大,网卡bond是通过把多个物理网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡,具体的功能取决于采用的哪种模式。 一、bond的七种模式介绍:1、mode=0(balance-rr)(平衡抡循环策略)链路负载均衡,增加带宽,支持容错,一条链路故障会自动切换正常链路。交换机需要配置聚合口,思科叫port channel。特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降2、mode=1(active-backup)(主-备份策略)这个是主备模式,只有一块网卡是active,另一块是备用的standby,所有流量都在active链路上处理,交换机配置的是捆绑的话将不能工作,因为交换机往两块网卡发包,有一半包是丢弃的。特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。此模式只提供了容错能力

2021-03-26 20:33:42    分类:博客    bond   linux网卡   Linux基础