变形金刚外传0x01:全新的NSX-T2.4

简介: 在去年上海的vForum大会上,VMware隆重介绍了NSX DC家族中的NSX-T产品;身边不少朋友都开始关注这个可能会带来变革的新事物。其实NSX-T在国外已经有不少的案例,也算不上是爆炸性的新东西了,只是大家对这个产品的了解还比较模糊。

在去年上海的vForum大会上,VMware隆重介绍了NSX DC家族中的NSX-T产品;身边不少朋友都开始关注这个可能会带来变革的新事物。其实NSX-T在国外已经有不少的案例,也算不上是爆炸性的新东西了,只是大家对这个产品的了解还比较模糊。

前不久VMware发布了全新的NSX-T2.4版本,在我看来,这次发布不亚于VCSA6.5带来的震撼;借此机会,我也在实验室搭建了一套用于演示NSX-T常用功能的环境;从本篇起,我将通过若干实验,从技术上向各位展示这个划时代的VMware网络与安全产品。

本系列的标题是“变形金刚”,这是什么鬼?

其实NSX DC产品主要就是NSX-V与NSX-T,其中N代表Network网络,S代表Security安全;这一点熟悉NSX-V的朋友一定不陌生。在NSX Manager(后文简称NSXMGR)与vCenter Server(后文简称VC)注册集成后,管理员通过Web Client访问VC,就可以看到Network and Security网络与安全选项。NSX-V的V代表NSX for vSphere,它只适用于VMware的Hypervisor,也就是我们常说的vSphere Server,或者说ESXi;由于NSX-V与VC之间的紧密结合,在没有VC的环境或者其他异构环境(如KVM、容器等)使用场景中,显得无能为力(这个产品可能在2021年EOS,突然有点心疼)NSX-T的T,其实就是Transformer的缩写,也就是变形金刚的意思;这不是望文生义,实际上,NSX的研发人员,都是用某一个汽车人的名字来命名,如NSX-T2.0版本据说就是“大黄蜂”。不过既然叫变形金刚,那我就揣测一下研发人员想要表达的含义,或许就是说NSX-T或者NSX DC产品,能适应任意应用、任意平台和任意云吧。

本系列将延续一步步实现SDDC系列的风格,我会和大家一起一步步部署基于NSX-T2.4产品的演示环境,其中也会涉及到2个异构的Hypervisor:ESXi与KVM。

由于NSX-T2.4的版本比较新,在部署的时候我遇到了不少问题;因此在本系列的开篇,我想先向各位展示,如何准备兼容NSX-T2.4的ESXi和KVM主机。

在此,我要特别感谢VMware高级讲师-寇雪旭老师,在我学习和工作过程中,给予我的帮助。在与寇老师交流技术的过程中,成长并学到了许多;寇老师的技术能力非常强,而且有非常丰富的实践经验,如果各位有机会参加VMware的培训,一定要好好向大拿取经。


0x01-01:VMware ESXi6.7环境准备

  • 建议使用部署一台Linux操作系统(如CentOS7),作为iSCSI目标服务器,提供所有ESXi6.7主机的共享存储使用
  • image.png

我的环境中,一共部署了4台ESXi6.7虚拟机模拟4台ESXi服务器;每台服务器分配2x2vCPU、16GB内存(至少8GB以上)、通过iSCSI协议挂载2个共享数据存储、4块vmnic;其中标准交换机vSwitch0上联由vmnic0和vmnic1承载,用于承载ESXi管理流量、vMotion流量、iSCSI流量和管理网络VLAN流量;4台服务器分别两两组成计算集群和管理与边界集群。

image.png

  • 截止笔者部署演示环境,VMware最新的vSphere6.7安装镜像默认无法兼容NSX-T2.4的部署,需要安装ESXi6.7.0-201901001.zip这个Patch Release;建议各位通过VC自带的Update Manager(后文简称VUM),为所有的ESXi主机进行修补程序升级操作。
  • 具体的操作流程并不复杂,各位可以参考我的演示:
  • 上传修补程序到VUM

image.png

image.png

  • 创建一个Baseline基准,要求关联的ESXi必须安装ESXi6.7.0-201901001.zip Patch Release

image.png

  • 将集群内的ESXi主机进入到维护模式后,通过VUM进行修复程序安装image.png
  • image.png
  • 可以看到,修复前最新的ESXi6.7版本为6.7.0.10302608
    image.png
  • 修复后的版本为6.7.0.11675023,这是NSX-T2.4兼容的最小版本

image.png

  • 与NSX-V部署相类似,NSX-T也会有类似主机准备的阶段;在安装修复补丁后,应该可以在目标ESXi主机安装NSX-T的VIB;此处,请各位暂时忽略如何去实现,我会在后续的分享中详细说明

image.png

  • 在实际的生产环境中,ESXi肯定不会有内存不足的情况出现;在实验环境中,我是通过虚拟机版本的ESXi模拟实际的服务器,可能会出现内存不足,导致NSX VIB安装失败的情况;因此我建议同样采用虚拟机版本ESXi的朋友,在ESXi的系统交换设置后,勾选“可以使用数据存储”,添加本地存储作为系统交换分区,以支持在内存不足的情况下,完成NSX VIB的安装

image.png

  • 除此以外,如果有朋友发现虚拟机版本ESXi启动紫屏,请编辑该虚拟机设置,将固件引导从默认的EFI修改成BIOS,并取消勾选“安全引导”选项

image.png

如果各位朋友跟着我的节奏,完成了上述几处特殊配置,相信ESXi服务器的安装与网络基本设置不会成为阻挡学习NSX-T2.4部署的绊脚石。详细的安装步骤,也可以参考“一步步实现SDDC--学习平台环境的搭建(1)”。


0x01-02:基于Ubuntu16.04的KVM环境准备

较之ESXi6.7的环境准备,对于没接触过KVM的朋友可能会在这里遇到一些困难;VMware官方网站上列有NSX-T在KVM环境部署的安装配置手册,大家可以查阅参考,VMware的官方手册写得非常详细;在这里,我强调几点容易忽略的地方:

  • 创建Ubuntu虚拟机的时候,需要开启硬件虚拟化,支持CPU VT-X
    注:如果是物理机,需要在BIOS开启CPU VT-X

image.png

  • 为Ubuntu分配至少2个网卡,其中Eth0将用于Ubuntu管理地址;Eth1用于业务网络(Geneve封装)

image.png

  • 为了便于统一管理,选择将三块网络适配器,ens160、ens192和ens224分别改名为Eth0、Eth1和Eth2
  • 编辑/etc/default/grub配置文件,修改如下字段:
    GRUB_CMDLINE_LINUX="net.ifnames=0 biosdevname=0"

image.png

  • 更新启动项
    # grub-mkconfig -o /boot/grub/grub.cfg
    # reboot

image.png

  • 验证主机是否支持虚拟化,即CPU是否支持vt-x
    运行以下命令,结果不为1,说明已经开启了vt-x
    # egrep -c '(vmx|svm)' /proc/cpuinfo

image.png

  • 初始化网络后,安装cpu-checker,用以验证KVM安装环境是否已经就绪
    运行命令,检查KVM安装环境是否已经就绪
    # kvm-ok

image.png

  • 根据VMware官方文档,需要在Ubuntu KVM主机上安装如下软件包
    #apt-get install -y qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils virtinst virt-manager virt-viewer libguestfs-tools
  • 在我实际的部署过程中,参考了国外大拿的推荐,建议各位可以跟着我一把梭
    # apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils virtinst virt-manager virt-viewer libguestfs-toolslibunwind8  libgflags2v5  libgoogle-perftools4  traceroute  python-mako  python-simplejson  python-unittest2  python-yaml  python-netaddr  libprotobuf9v5  libboost-chrono1.58.0  libgoogle-glog0v5  dkms  libboost-date-time1.58.0  libleveldb1v5  libsnappy1v5  python-gevent  python-protobuf  ieee-data  libyaml-0-2  python-linecache2  python-traceback2  libtcmalloc-minimal4  python-greenlet  python-markupsafe  libboost-program-options1.58.0

image.png

  • 检查服务器的KVM服务是否正常运行
    # /etc/init.d/qemu-kvm status

image.png

  • 更新/etc/network/interfaces设置,以下给出一个参考示例:
    注:对于KVM只安装NSXMGR-T等场景,不需要添加eth1或者eth2,作为Geneve网络承载网卡

image.png

  • 创建桥接配置文件
    # vim /var/lib/libvirt/images/bridge.xml

image.png

  • 设置并启动桥接
    # virsh net-define /var/lib/libvirt/images/bridge.xml
    # virsh net-start bridge

image.png

image.png

  • 设置桥接自动启动
    # virsh net-autostart bridge

image.png

  • 在KVM主机完成NSX主机准备后,可以看到多了vtep0.0接口

image.png

image.png

上述步骤是NSX-T2.4部署前的准备工作,在完成若干ESXi6.7和Ubuntu KVM安装与基本设置后,我们将开启NSX-T的学习之旅,最终各位可以看到的主机传输节点包括:

  • VC管理的2台ESXi6.7服务器:
    注意:管理与边界集群的ESXi6.7主机不属于“主机传输节点”

image.png

  • 独立部署的2台KVM服务器:

image.png

那么,如何来安装部署NSXMGR,并实现主机节点的准备工作呢?我会在后一篇分享中向大家演示。

相关文章
|
Android开发 开发者
校园网有救了
正确打开校园网的方式
353 0
校园网有救了
中美破冰!NASA主动要求在嫦娥四号上搭载美方信标机
我国探月工程四期和深空探测工程已全面拉开序幕。
681 0
「镁客早报」Facebook建太阳能发电厂为数据中心供电;马斯克概念验证隧道将面向公众开放
Facebook建太阳能发电厂为数据中心供电;苹果新款手机被迫砍单,富士康或将裁员。
338 0
|
存储 新能源 流计算
孙正义否认5分钟决定投马云;果冻有家,房联网概念的平台化应用
孙正义否认5分钟决定投马云;果冻有家,房联网概念的平台化应用
496 0
|
测试技术 数据安全/隐私保护 网络架构
下一篇
DataWorks