可信虚拟网络功能通过扩展对可信来宾域的特权来为 vnet 设备分别分配定制的备用 MAC 地址和备用 VLAN ID。这些 MAC 地址和 VLAN ID 用于配置虚拟设备。在引入此功能之前,只能从 Logical Domains Manager 进行类似的分配。而且,备用 MAC 地址分配还要求托管虚拟网络设备的域处于绑定状态。此功能允许在虚拟网络设备上动态创建虚拟设备(如 VNIC 和 VLAN)。
要针对 vnet 设备使用可信虚拟网络功能,必须通过使用 Logical Domains Manager 在可信模式下创建或配置设备。默认情况下,会在可信模式处于禁用状态时创建 vnet 设备。
可信虚拟网络功能会以无缝方式支持实时迁移、服务域重新引导和多个服务域功能。
可以通过使用 ldm add-vnet 和 ldm set-vnet 命令来设置 custom=enable 属性。请注意,您应当为 custom/max-mac-addrs 和 custom/max-vlans 属性提供值,以确保针对指定的虚拟网络设备限制定制 MAC 地址和 VLAN 的数量。默认情况下,这两个属性值都设置为 4096。
可信虚拟网络功能至少需要 Oracle Solaris 11.3 SRU 8 OS。
具有定制虚拟网络设备的来宾域和具有相应虚拟交换机设备的服务域均需要最新级别的受支持系统固件。
要配置可信虚拟网络,必须指定以下信息:
custom-启用或禁用可信虚拟网络功能。此功能允许可信实体动态添加定制的备用 VLAN ID 和定制的备用 MAC 地址。
custom/max-mac-addrs-指定要在特定可信虚拟网络设备上配置的定制备用 MAC 地址的最大数量。
custom/max-vlans-指定要在特定可信虚拟网络设备上配置的定制备用 VLAN ID 的最大数量。
下面是针对可信虚拟网络功能的限制:
不能使用 Logical Domains Manager 来在给定的可信虚拟网络上配置备用 MAC 地址或 VLAN ID。
要修改定制或现有的备用 MAC 地址,此域必须处在绑定状态。
可以动态增加 custom/max-mac-addrs 和 custom/max-vlans 属性值。但是,域必须处在绑定状态才能减小这些属性值。
此外,在使用 ldm set-vnet 命令减小定制虚拟网络设备的最大 VLAN ID 和 MAC 地址数之前在虚拟网络设备上设置 custom=disable。
注意 - 此功能的有效用途是限制和控制这些属性。 |
请确保在减小定制的 VLAN ID 数或定制的备用 MAC 地址数之前,删除已经创建的任何 VNIC 和 VLAN 设备。否则,来宾域将具有无法配置而且必须手动删除的 VNIC。
dladm show-vnic -m 命令显示在指定的虚拟网络上配置的 MAC 地址和 VLAN ID。dladm show-vnic -m 命令显示在来宾域上使用的备用 MAC 地址和 VLAN ID。这与旧发行版不同,在旧发行版中,所有的备用 MAC 地址和 VLAN ID 都是在虚拟交换机上预配置的。
可信虚拟网络功能与 PVLAN 功能互斥。
Logical Domains Manager 在启用定制功能之前,尝试验证来宾域和服务域对可信虚拟网络功能的支持。如果来宾域未在运行,您可以启用可信虚拟网络功能,但前提是它受服务域支持。但是,如果来宾域不支持此功能,您必须设置 custom=disabled 才能重新启用非定制的备用 MAC 地址和 VLAN ID。
只有当目标服务域支持可信虚拟网络功能时,才能针对具有可信虚拟网络的域执行实时迁移。
本节包括的任务显示如何创建可信虚拟网络以及如何获取有关可信虚拟网络的信息。
可以使用 ldm add-vnet 或 ldm set-vnet 命令设置 custom 属性值,从而配置可信虚拟网络。请参见 ldm(1M) 手册页。
示例 48 创建可信虚拟网络可以使用下面的命令在 ldg1 域中的 primary-vsw0 虚拟交换机上创建可信虚拟网络 ldg1_vnet0。custom/max-mac-addrs 和 custom/max-vlans 属性使用默认值 4096。
primary# ldm add-vnet custom=enable ldg1_vnet0 primary-vsw0 ldg1 primary# ldm list -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:4096 MAX-CUSTOM-VLANS:4096 PRIORITY :-- COS :-- PROTECTION :--示例 49 针对现有的虚拟网络启用可信虚拟网络功能
下面的示例显示如何通过为 ldg1 域中的 ldg1_vnet0 虚拟网络设备设置 custom=enable 来启用可信虚拟网络功能。custom/max-mac-addrs 和 custom/max-vlans 属性使用默认值 4096。
primary# ldm set-vnet custom=enabled ldg1_vnet0 ldg1 primary# ldm list -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:4096 MAX-CUSTOM-VLANS:4096 PRIORITY :-- COS :-- PROTECTION :--示例 50 设置 custom/max-mac-addrs 和 custom/max-vlans 属性
下面的示例将 custom/max-vlans 属性值设置为 12,将 custom/max-mac-addrs 属性值设置为 13。
由于这些新的属性值小于以前的值,因此您无法动态更改这些设置。您只能针对处在绑定或非活动状态的域进行这些更改。
primary# ldm stop ldg1 primary# ldm set-vnet custom/max-vlans=12 custom/max-mac-addrs=13 ldg1_vnet0 ldg1 primary# ldm list -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:13 MAX-CUSTOM-VLANS:12 PRIORITY :-- COS :-- PROTECTION :--示例 51 重置 custom/max-mac-addrs 和 custom/max-vlans 属性
下面的示例显示如何通过指定 null 值来将 custom/max-mac-addrs 属性值重置为其默认值 4096。
当 custom=enabled,可以重置 custom/max-vlans 属性值或/和 custom/max-mac-addrs 属性值。
primary# ldm set-vnet custom/max-mac-addrs= ldg1_vnet0 ldg1 primary# ldm list -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:4096 MAX-CUSTOM-VLANS:12 PRIORITY :-- COS :-- PROTECTION :--示例 52 更改 custom/max-mac-addrs 和 custom/max-vlans 属性值
下面的示例显示如何增加 custom/max-vlans 属性值和减小 custom/max-mac-addrs 属性值。可以将 custom/max-vlans 属性值动态增加到 24,因为 24 大于以前的值 12。但是,由于您要将 custom/max-mac-addrs 的最大值从 4096 减小到 11,因此必须先停止该域。
primary# ldm set-vnet custom/max-vlans=24 ldg1_vnet0 ldg1 primary# ldm stop ldg1 primary# ldm set-vnet custom/max-mac-addrs=11 ldg1_vnet0 ldg1 primary# ldm list -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:11 MAX-CUSTOM-VLANS:24 PRIORITY :-- COS :-- PROTECTION :--示例 53 禁用可信虚拟网络功能
下面的示例显示如何在 ldg1 域中为 ldg1_vnet0 虚拟网络设备禁用 custom 属性。
primary# ldm set-vnet custom=disabled ldg1_vnet0 ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :disable PRIORITY :-- COS :-- PROTECTION :--
可以通过使用多个 Logical Domains Manager 列表子命令来获取有关可信虚拟网络设置的信息。请参见 ldm(1M) 手册页。
下面的示例使用 ldm list-domain -o network、ldm list-bindings 和 ldm list-constraints 命令显示有关可信虚拟网络配置的信息。
下面的示例显示如何使用 ldm list-domain 命令查看 ldg1 域的可信虚拟网络配置信息:
primary# ldm list-domain -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:11 MAX-CUSTOM-VLANS:24 PRIORITY :-- COS :-- PROTECTION :--
下面的示例显示如何使用 ldm list-domain 命令以可分析的形式查看 ldg1 域的可信虚拟网络配置信息:
primary# ldm list-domain -o network -p ldg1 VERSION 1.19 DOMAIN|name=ldg1| MAC|mac-addr=00:14:4f:f9:4b:d0 VNET|name=ldg1-vnet0|dev=network@1|service=primary-vsw0@primary|mac-addr=00:14:4f:fa:d7:5e|mode=|pvid=1|vid=|mtu=1500|linkprop=phys-state|id=1|alt-mac-addrs=|maxbw=|pvlan=|protection=|priority=|cos=|custom=enable|max-mac-addrs=11|max-vlans=24
下面的示例显示如何使用 ldm list-bindings 命令查看 ldg1 域的可信虚拟网络配置信息:
primary# ldm list-bindings -e -o network ldg1 ... NETWORK NAME SERVICE MACADDRESS PVID|PVLAN|VIDs ---- ------- ---------- --------------- ldg1-vnet0 primary-vsw0@primary 00:14:4f:fa:d7:5e 1|--|-- DEVICE :network@1 ID :1 LINKPROP :phys-state MTU :1500 MAXBW :-- MODE :-- CUSTOM :enable MAX-CUSTOM-MACS:11 MAX-CUSTOM-VLANS:24 PRIORITY :-- COS :-- PROTECTION :-- PEER MACADDRESS PVID|PVLAN|VIDs ---- ---------- --------------- primary-vsw0@primary 00:14:4f:f9:08:28 1|--|-- LINKPROP :-- MTU :1500 MAXBW :-- LDC :0x5 MODE :--
下面的示例显示如何使用 ldm list-bindings 命令以可分析的形式查看 ldg1 域的可信虚拟网络配置信息:
primary# ldm list-bindings -p ldg1 ... VNET|name=ldg1-vnet0|dev=network@1|service=primary-vsw0@primary|mac-addr=00:14:4f:fa:d7:5e|mode=|pvid=1|vid=|mtu=1500|linkprop=phys-state|id=1|alt-mac-addrs=|maxbw=|pvlan=|protection=|priority=|cos=|custom=enable|max-mac-addrs=11|max-vlans=24 |peer=primary-vsw0@primary|mac-addr=00:14:4f:f9:08:28|mode=|pvid=1|vid=|mtu=1500|maxbw=
下面的示例显示如何通过运行 ldm list-constraints -x 命令生成 XML:
primary# ldm list-constraints -x ldg1 ... <Section xsi:type="ovf:VirtualHardwareSection_Type"> <Item> <rasd:OtherResourceType>network</rasd:OtherResourceType> <rasd:Address>auto-allocated</rasd:Address> <gprop:GenericProperty key="vnet_name">ldg1-vnet0</gprop:GenericProperty> <gprop:GenericProperty key="service_name">primary-vsw0</gprop:GenericProperty> <gprop:GenericProperty key="pvid">1</gprop:GenericProperty> <gprop:GenericProperty key="linkprop">phys-state</gprop:GenericProperty> <gprop:GenericProperty key="custom">enable</gprop:GenericProperty> <gprop:GenericProperty key="max-mac-addrs">11</gprop:GenericProperty> <gprop:GenericProperty key="max-vlans">24</gprop:GenericProperty> <gprop:GenericProperty key="device">network@1</gprop:GenericProperty> <gprop:GenericProperty key="id">1</gprop:GenericProperty> </Item> </Section>