配置vSphere群集使用Nexus 1000v虚拟交换机
CloudStack支持在VMware vSphere环境中使用Cisco Nexus 1000v dvSwitch (分布式虚拟交换机)。本章节能帮助你配置vSphere群集使用Nexus 1000v虚拟交换机。关于创建vSphere群集的更多信息,请参考 “VMware vSphere安装和配置”
关于Cisco Nexus 1000v分布式虚拟交换机
Cisco Nexus 1000V虚拟交换机是一个内置软件程序的虚拟机。它能跨越多个运行VMware ESXi 4.0或更高版本的主机部署。Nexus虚拟交换机包括两个组件:Virtual Supervisor Module (VSM)和 Virtual Ethernet Module (VEM)。VSM是一个管理交换机的虚拟设备。它单独控制多个VEM。VSM安装在每台VMware ESXi服务器当中提供包转发功能。它为每个虚拟机提供单独的交换机接口。VSM-VEM架构与物理交换机的管理机制(单独或者高可用模式)和多线卡架构类似。
Nexus 1000v交换机使用vEthernet端口配置文件为虚拟机提供简单的网络。它有两种类型的端口配置文件:Ethernet端口配置文件和vEthernet端口配置文件。Ethernet端口配置文件应用到物理上联端口-ESXi服务器上面的物理网卡的端口。vEthernet端口配置文件关联到ESXi服务器上运行的虚拟机的虚拟网卡。端口配置文件可以帮助网络管理员快速的为其他虚机定义同样的网络策略。VSM创建的Ethernet端口策略在vCenter服务器上显示为端口组。
先决条件和指南
本章节探讨了在CloudStack中使用Nexus虚拟交换机的先决条件与指南。在配置Nexus虚拟交换机之前,请确保你的系统符合下列条件:
在vCenter中配置ESXi(ESXi 4.1或更高)群集。
CloudStack只能管理存在当前vCenter数据中心管理之下的每一个群集。
Cisco Nexus 1000v虚拟交换机安装在vCenter数据中心所包含的群集主机。这将确保CloudStack不必处理跨现存虚拟交换机之间的虚拟网卡或网络的动态迁移。如何安装Nexus 1000v VSM和VEM 模块,请参考 Cisco Nexus 1000V Installation and Upgrade Guide。
Nexus 1000v VSM不能部署在由CloudStack管理的vSphere主机上。
当每个VSM实例的VEM模块达到最大数量时,需要在添加额外的VSM实例之前引入更多的ESXi主机。每个VSM实例的VEM模块数量限制为64个。
CloudStack期望ESXi主机的管理网络被配置在标准的vSwitch之上并且在标准的vSwitch中搜索该网络。因此,确保在配置期间不要把管理网络迁移到Nexus 1000v上。
所有信息在ref:`nexus-vswift-preconf`中:
Nexus 1000v虚拟交换机预配置
准备工作清单
要顺利配置 Nexus 1000v交换机,请在开始之前收集下列信息:
vCenter凭证
Nexus 1000v VSM IP地址
Nexus 1000v VSM 凭证
以太网端口配置文件名称
vCenter凭证清单
需要vCenter以下信息:
Nexus vSwitch要求 | 值 | 备注 |
---|---|---|
vCenter IP | vCenter IP地址 | |
HTTPS端口号 | 443 | 默认配置使用443端口;如果需要,可以更改为其他端口。 |
vCenter用户ID | 拥有管理员权限的vCenter用户。在CloudStack中配置虚拟交换时需要提供vCenter用户ID。 | |
vCenter 密码 | 上述vCenter用户的密码。在CloudStack中配置虚拟交换机时需要提供vCenter用户密码。 |
网络配置清单
打开CloudStack管理界面,请在Nexus dvSwitchde 详情标签页中的Nexus 配置网络界面指定下列信息:
控制端口组VALN ID
控制端口组的VLAN ID。控制VLAN用于VSM与VEM之间通讯。
管理端口组VLAN ID
管理端口组的VLAN ID。对应管理VLAN接口mgmt0,用于设置和维护VSM与VMware vCenter服务器之间的连接。
数据端口组VLAN ID
数据端口组的 VLAN ID。数据VLAN转发从VEM到VSM相关的数据包。
注解
用于控制,数据和管理端口组可以在同一VLAN。
更多信息,请参考 Cisco Nexus 1000V 入门指南.
VSM配置清单
你需要下列的VSM配置参数:
管理员用户名和密码
管理员用户名和密码用于连接VSM appliance。当配置Nexus虚拟交换机时,必须指定这些凭证。
管理 IP
VSM appliance的IP地址。 当配置Nexus虚拟交换机时在虚拟交换机的IP地址区域输入的IP地址。
SSL
应该设置为启用。总是启用SSL。在VSM安装期间通常会启用SSH功能。尽管如此仍需检查是否能够使用SSH连接到VSM,如果不能无法连接,CloudStack到VSM的连接会失败。
创建端口配置文件
无论创建简单或者高级区域,确保你总是在安装完VSM之后,创建区域之前,创建一个VSM的Ethernet配置文件。
创建Ethernet端口配置文件用于表示物理网络或高级区域配置中trunk所有的VLANs网络,VLANs包括来宾网VLANs,本征VLAN以及VSM的数据/控制/管理VLANs。
为基础区域配置的Ethernet端口配置文件不会trunk来宾VLANs,因为在基础区域中,来宾VMs无法通过它们的网络接口获得所属的VLANs。
在Nexus 1000v虚拟交换机上配置的以太网端口配置文件,不应该使用在它的VLANS系统设置中,或者使用在其他任何VLANS配置以及打算使用在CloudStack环境中的虚拟机或者虚拟机资源的配置。
你无须创建任何vEthernet端口配置文件-CloudStack会在VM部署期间创建。
请确保你为每种CloudStack流量类型创建了所需的端口配置文件,如管理流量,来宾流量,存储流量和公共流量。在区域创建期间配置的物理网络跟Ethernet应该是一一对应的关系。
关于创建端口配置文件的更多信息,请参考 Cisco Nexus 1000V 端口配置指南。
分配物理网络适配器
分配ESXi主机上的对应每个物理网络的网卡适配器到端口配置文件。在vCenter群集中的每个ESXi主机上,观察分配到每个端口配置文件的物理网络并记下配置文件的名字。在创建zone期间,当你配置物理网络的时候,这个映射信息能帮助你。这些Ethernet端口配置文件的名字就是随后你在配置zone的时候,配置物理网络时所要输入的不同流量对应的VMware流量标签。配置物理网络所需的更多信息,请参考 “Configuring a vSphere Cluster with Nexus 1000v Virtual Switch”。
添加VLAN范围
决定CloudStack所使用的公共VLAN,系统VLAN和来宾VLAN。确保你添加他们到端口配置文件数据库。对应每个物理网络,为端口配置文件添加VLAN范围。在VSM命令提示符下,运行 switchport trunk allowed vlan
例如:
- switchport trunk allowed vlan 1,140-147,196-203
在这个示例下,添加的VLANs是1,140-147和196-203
你同样在该交换机中添加所有的公共和管理VLANs或VLAN范围。这个范围是你在区域中指定的VLAN范围。
注解
在你运行vlan命令之前,确保Nexus 1000v虚拟交换机中启用了配置模式。
例如:
如果你想在交换机中使用VLAN 200,运行下面的命令:
- vlan 200
如果你想在交换机中使用VLAN范围1350-1750,请运行下面的命令:
- vlan 1350-1750
参考特定产品版本的Cisco Nexus 1000V 命令参考。
在CloudStack中启用Nexus虚拟交换机。
为了使CloudStack启用部署Nexus,你必须在CloudStack UI中全局设置页面设置vmware.use.nexus.vswitch参数为true。只有这个参数设置为 “true”并且重启了管理服务器,你才可以看见Nexus虚拟交换机的相关页面,CloudStack在AddTrafficTypeCmd, UpdateTrafficTypeCmd和 AddClusterCmd API的调用中会忽略Nexus虚拟交换机的指定参数。
除非CloudStack全局配置中的”vmware.use.nexus.vswitch”设置为”true”,否则CloudStack会默认使用VMware标准vSwitch。在本版本中,CloudStack不支持在标准vSwitch和Nexus 1000v虚拟交换机的混合环境中配置虚拟网络。只能支持单一的标准vSwitch或Nexus 1000v虚拟交换机部署。
在CloudStack中配置Nexus 1000v虚拟交换机
可以在创建区域时,通过添加必要的资源用于配置Nexus dvSwitch。
区域创建完成后,如果你想在区域中创建其他同样使用Nexus 1000v虚拟交换机的群集时,使用添加群集选项。关于创建群集的更多信息,请参见 “添加群集: vSphere”。
在所有的情况下,配置Nexus虚拟交换机时必须指定下列参数:
参数 | 描述 |
---|---|
群集名称 | 输入在vCenter中创建的群集名称。比如,”cloud.cluster”。 |
vCenter 主机 | 输入已经部署了Nexus虚拟交换机的vCenter主机名或IP。 |
vCenter用户名 | 输入CloudStack连接到vCenter所使用的用户名。这个用户必须拥有所有管理员权限。 |
vCenter 密码 | 输入上面用户的密码。 |
vCenter数据中心 | 输入群集所属的vCenter数据中心名称。比如, “cloud.dc.VM”。 |
Nexus dvSwitch IP 地址 | Nexus 1000v虚拟交换机VSM组件的IP地址。 |
Nexus dvSwitch 用户名 | 连接至VSM appliance的admin名称。 |
Nexus dvSwitch 密码 | 上面指定的admin用户所对应的密码。 |
移除Nexus虚拟交换机
在使用了Nexus虚拟交换机的vCenter数据中心中,确认你在对应的群集中删除了所有的主机。
使用管理员登录到CloudStack管理界面。
在左侧导航栏中,选择基础架构。
在基础架构页面,点击群集中的查看所有。
选择你想要移除虚拟交换机的群集。
在dvSwitch标签页中,点击虚拟交换机的名字。
在详细页面中,点击删除Nexus dvSwitch的图标。
在确认对话框中点击确定。