Loading...

vSphere的网络

网络8个月前发布 刘丰源
121 0 0

ESXi 网卡点灯(亮灯)定位

有的时候,我们需要根据报错信息去定位物理网卡位置,此时可以使用 ethtool 的亮灯功能。

首先找到网卡名。网卡名可以在 VC > ESXi 主机 > 配置 > 网络 > 物理适配器 里找到。也可以通过命令行找到:
esxcli network nic list

找到网卡名后,就可以 ssh 到 ESXi,使用 ethtool 命令来亮灯了:
ethtool -p vmnic3 [20]

虚拟交换机的概念

虚拟交换机是vSphere中的一个功能组件,其功能与物理交换机相似。
物理机通过网线或光纤连接到物理交换机的端口,而虚拟机通过虚拟网卡连接到虚拟交换机的虚拟端口。

  • Virtual switches connect VMs to the physical network.
  • They provide connectivity between VMs on the same ESXi host or on different ESXi hosts.
  • They also support VMkernel services, such as vSphere vMotion migration, iSCSI, NFS, and access to the management network.

虚拟交换机端口类型
虚拟交换机上可以有如下三种端口:

  • Uplink ports: 关联物理网卡

    ESXi主机物理网卡是虚拟交换机与物理交换机的连接通道。
    在vSphere中将ESXi主机物理网卡称作“上行链路”。
  • VM port groups(连接到虚拟机网卡,这些端口是二层端口,不能配置IP地址)

    端口组:具有一定数量的虚拟交换机端口的集合,每个虚拟端口可以连接到(一台虚拟机的)一块虚拟网卡。端口组有名称、端口数量、端口属性(VLAN ID等)。简单来说,在一台虚拟交换机中可以有多个端口组,每个端口组可以具有不同的VLAN ID,对应物理网络不同的VLAN。为虚拟机分配网络属性时选择网卡关联的端口组。
  • VMkernel port: For IP storage, vSphere vMotion migration, vSphere Fault Tolerance, vSAN, vSphere Replication, and the ESXi management network.(通常我们称为管理端口,这些端口上可以配置IP地址[三层])

    VMKernel网络层提供到ESXi主机的连接,并处理 IP 存储, vSphere vMotion, FT, vSAN等其他服务的标准系统流量。

生产中,建议VMkernel与虚拟机端口组使用不同的上行链路,可以使用不同交换机的上行链路,也可以使用相同交换机的不同的上行链路,且上行链路做好绑定。

在物理网卡充足的情况下,我们甚至可以将 VMkernel 网络、端口组网络各自进一步细分,使用不同的上行链路(对应到不同的物理网卡上)。

Port groups 与 VLANs

虚拟交换机通过VLAN实现逻辑隔离。

ESXi provides VLAN support by assigning a VLAN ID to a port group.

打标记有三种方法:

  • Virtual Switch Tagging (VST)
  • External Switch Tagging (EST)
  • Virtual Guest Tagging (VGT)
    VST是用得最多的一种方式,下面简单介绍一下。

vSphere的网络
数据包从 vNIC 出去时,还没有打 tag,数据包从 vNIC 出去后,被 VMkernel 截获到,虚拟交换机会对数据包打 tag,然后再通过虚拟交换机找到 uplink 端口,再由物理网卡将数据包传给物理交换机(三层),物理交换机的端口要设置为 trunk 口。数据包回去的时候,在离开虚拟机交换机时,会把 tag 去掉。可以在虚拟交换机配置中,对端口组关联标签(VLAN ID)。

EST 是指在物理交换机上打tag。
VGT是指在虚拟机发送数据包时打上 tag。
这两种方式,都要注意在虚拟交换机上不要设置 VLAN ID,即None(0)。
这两种方式知道这些就行了,不用深究。

虚拟交换机类型

VMWare 虚拟化中有两种类型的虚拟机:

  • 标准交换机
  • 分布式交换机
    标准交换机(基于主机)

Virtual switch that is configured for a single host
即在一个ESXi主机上创建的交换机,并不会同步到其它ESXi主机上,需要手动多次配置

  • 分布式交换机(基于VC)
    Virtual switch that is configured for an entire data center.
    Up to 2000 hosts can be attached to the same distributed switch.
    The configuration is consistent across all attached hosts.
    Hosts must either have an Enterprise Plus license or belong to a vSAN cluster.

  • 两种类型的共同属性:
    Layer 2 switch、VLAN segmentation (802.1Q tagging)、IPv6 support、NIC teaming、Outbound traffic shaping、Cisco Discovery Protocol (CDP)。

  • 分布式交换机有但标准交换机没有的特性(VCP超纲):
    Inbound traffic shaping, VM network port block, Private VLANs, Load-based teaming, Data center level management, vSphere vMotion migration of virtual networking state, Per-port policy settings, Port state monitoring of network statistics, NetFlow, Port mirroring, Access to NSX-T port groups, Link Layer Discovery Protocol(LLDP)

安全(security)

  • 混杂模式(Promiscuous mode):You can allow a virtual switch or port group to forward all traffic regardless of the destination. 接收所有数据流量,故障诊断和监控(即抓包处理),默认是拒绝。
  • MAC地址更改(MAC address changes):You can accept or reject inbound traffic when the MAC address is altered by the guest.
  • 伪传输(Forged transmits):You can accept or reject outbound traffic when the MAC address is altered by the guest.
    在虚拟机属性里可以看到网卡的MAC 地址,这个 MAC 地址我们称为 initial MAC,在虚拟机操作系统内,我们可以看到网卡的 MAC 地址,这个MAC 地址我们称为 excutive MAC。正常来说,这两个MAC地址是一样的。如果这两个地址不一样,就涉及到后两种策略。

7.0 之前的版本,后两种关于MAC的安全策略默认都是 Accept。
从7.0开始,默认变为了 Reject。

流量调整(流量整形)(Traffic shaping)

Network traffic shaping is a mechanism for limiting a virtual machine's consumption of available network bandwidth.

Average rate, peak rate, and burst size are configurable.
vSphere的网络
红色线表示实时流量,小于平均流量,迸发。

流量整形,标准交换机只能支持外发流量(Outbound)。

绑定和故障切换(Teaming and failover)

对于标准交换机:
点击ESXi主机 --> 配置 --> 网络 --> 虚拟交换机
找到相关标准交换机名,点击 "编辑" ,可以看到3种策略。

  • Load balancing
    • Use explicit failover order(此时在故障切换顺序列表中指定活动适配器和备用适配器,建议均使用一块网卡即可)
    • Route based on originating virtual port(默认):假如我们有4个虚拟机,每个虚拟机一张网卡(对应交换机的一个端口上),上行链路有3张物理网卡,则,第1台虚拟机的网卡从第1张物理网卡出去的,同理,第2台虚拟机从第2张物理网卡出去,第3台虚拟机从第3张物理网卡出去,第4台虚拟机从第1张物理网卡出去。虚拟交换机会使用轮循的方式将物理网卡与虚拟机的网卡对应的交换机端口关联起来,并固定下来。在虚拟机网卡和物理机网卡不变的情况下,这种关系也不会发生改变。
    • Source MAC Hash:只要虚拟机网卡的MAC地址不变,则通过HASH算法算出的值就不会变化,那么,与其关联的物理网卡就不会变化。如果网卡算出的HASH值不一样,则可能被分配到其它物理网卡上。较之上面的方法,有额外的计算开销。
    • Source and Destination IP Hash:如果仅仅是基于 vritual port ID,则虚拟机的网卡总是跟某张物理网卡关联,加入 Destination后,即使用是虚拟机的同一张网卡发出的数据包,但是因为目标IP不一样,也可能通过不同的物理网卡出去。

vSphere 网络规划原则

下面介绍的是一些被认可的原则。

  • 管理与生产分离:即用于管理ESXi主机的网络,以及用于生产环境中、负责虚拟机对外流量的网络要分离。最低要求是逻辑分离,管理网络使用一个VLAN,生产网络使用其它的一个或多个VLAN。如果ESXi主机网口数量充足,管理网络与业务网络建议使用不同的上行链路口。
    冗余的原则:无论是管理,还是生产,每个物理网络连接(即上行链路适配器)必须是冗余的。一般是2个网卡,多了也无意义。

  • 负载平衡:不可否认,在虚拟化的数据中心中,由于同时有多个虚拟机的存在,主机的物理网卡,要比普通的未采用虚拟化的物理服务器承担更多的网络流量。如果这些网络流量加在一起,超过了单块网卡的负载能力,那网络的性能会下降。所以,在使用多个网卡时,除了考虑到冗余功能外,还考虑到负载平衡能力。为了提供比单个物理网卡更高的带宽,可以将主机多个网卡进行聚合,以提供更高的带宽,但这需要物理交换机的支持。
    vSphere的网络
    基于 load-based teaming 也需要交换机配置 LACP 802.3 ad.

  • Network failure detection

    • Link status only: 网卡坏了,线没连上等物理故障
    • Beacon probing(信标探测): 通过发送探针包的方式来做一些逻辑探测
  • Notify switch
    通知物理交换机更新ARP表,去掉故障网卡

  • Failback(故障恢复)
    主好了后,是否切回主

在 port group level 上面配置的策略可以覆盖 standard switch level 上配置的策略。

  • 网络流量控制
    标准交换机没有 Q0S 的功能,只有分布式交换机才有。

  • VMkernel
    Vmkernel也可以使用分布式交换机的端口组:

© 版权声明

相关文章

暂无评论

暂无评论...