相信大家对SDWAN已经不陌生了,目前也越来越多的客户在部署SDWAN,这里就不多说其他的了,直接切入正题,我们这里做一个简单的测试。使用EVE模拟vManage、vBond、vSmart、vEdge的上线过程。
备注:该操作中涉及的IP地址&拓扑等内容,均非现网环境,为测试使用!
1、EVE-NG环境中部署SDWAN镜像。
Cisco SDWAN 用到的镜像主要有控制器镜像:vManage、vSmart、vBond(vBond 和vEdge使用相同的镜像),路由器镜像有:vEdge、cEdge ,我们使用到的路由器镜像vEdge为vEdge Cloud,cEdge为CSR1000V。
这些镜像我们都可以在Cisco官方下载。
https://software.cisco.com/download/home/286320995/type
1.1、EVE-NG中添加SDWAN镜像
当镜像准备好之后,我们可以参考EVE-NG的官网镜像的添加。如下是EVE-NG提供参考的镜像,我们这里使用的20.3.3版本。

https://www.eve-ng.net/index.php/documentation/howtos/howto-add-cisco-viptela-images-set/
比较重要的是vManage的添加。因为为其运行需要另外100G的空间。(如下EVE-NG指南示例所示)

玩儿过EVE的小伙伴儿都应该知道,这些镜像应该存放在/opt/unetlab/addons/qemu目录,我们可以使用WinSCP等工具方便快捷的将镜像存放到该目录下。如下为最终效果(另外添加了WinServer和L3,L2 R&S设备)。
root@eve-ng:~# ls -lR /opt/unetlab/addons/qemu
/opt/unetlab/addons/qemu:
total 40
drwxr-xr-x 2 root root 4096 Sep 4 12:59 asav-941-200
drwxr-xr-x 2 root root 4096 Sep 10 11:17 csr1000vng-universalk9.17.03.03.Amsterdam
drwxr-xr-x 2 root root 4096 Sep 7 10:02 titanium-NX-OSv.7.3.0.D1.1
drwxr-xr-x 2 root root 4096 Sep 3 19:13 vios-15.5.3M
drwxr-xr-x 2 root root 4096 Sep 3 19:13 viosl2-15.2.4.55e
drwxr-xr-x 2 root root 4096 Sep 3 19:14 vtbond-20.3.3
drwxr-xr-x 2 root root 4096 Sep 3 19:14 vtedge-20.3.3
drwxr-xr-x 2 root root 4096 Sep 3 19:15 vtmgmt-20.3.3
drwxr-xr-x 2 root root 4096 Sep 3 19:15 vtsmart-20.3.3
drwxr-xr-x 2 root root 4096 Sep 7 10:01 winserver-2012r2-datacenter
/opt/unetlab/addons/qemu/asav-941-200:
total 152064
-rw-r--r-- 1 root root 155713536 Oct 9 2016 virtioa.qcow2
/opt/unetlab/addons/qemu/csr1000vng-universalk9.17.03.03.Amsterdam:
total 1387972
-rw-r--r-- 1 root root 1421279232 Apr 25 12:57 virtioa.qcow2
/opt/unetlab/addons/qemu/titanium-NX-OSv.7.3.0.D1.1:
total 209344
-rw-r--r-- 1 root root 214368256 Mar 29 2017 hda.qcow2
/opt/unetlab/addons/qemu/vios-15.5.3M:
total 124928
-rw-r--r-- 1 root root 127926272 Oct 24 2016 virtioa.qcow2
/opt/unetlab/addons/qemu/viosl2-15.2.4.55e:
total 94592
-rw-r--r-- 1 root root 96862208 Oct 24 2016 virtioa.qcow2
/opt/unetlab/addons/qemu/vtbond-20.3.3:
total 239680
-rw-r--r-- 1 root root 245432320 Aug 28 19:35 virtioa.qcow2
/opt/unetlab/addons/qemu/vtedge-20.3.3:
total 239680
-rw-r--r-- 1 root root 245432320 Aug 28 19:35 virtioa.qcow2
/opt/unetlab/addons/qemu/vtmgmt-20.3.3:
total 1645896
-rw-r--r-- 1 root root 1685192704 Aug 28 19:42 virtioa.qcow2
-rw-r--r-- 1 root root 198656 Sep 3 19:15 virtiob.qcow2
/opt/unetlab/addons/qemu/vtsmart-20.3.3:
total 239684
-rw-r--r-- 1 root root 245432320 Aug 28 19:34 virtioa.qcow2
/opt/unetlab/addons/qemu/winserver-2012r2-datacenter:
total 8868740
-rw-r--r-- 1 root root 9081585664 Jul 8 2017 hda.qcow2
root@eve-ng:~#
所有镜像上传完毕之后,注意使用命令修正权限。
# /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
1.2、设备初始化
1.2.1、部分拓扑展示(对应接口的IP):

1.2.2、vManage
开启vManage,设备启动后,点击设备开始进行配置。输入默认用户名和密码admin/admin后,需要设置新的admin用户的密码。可以保持默认的admin/admin(即依然输入admin作为密码)。进入vmanage 系统后,需要初始化额外添加的100GB硬盘,选择1回车。等待加载完成,重新进入系统即可,如下所示。
viptela 20.3.3.1
vmanage login: admin
Password:
Welcome to viptela CLI
admin connected from 127.0.0.1 using console on vmanage
You must set an initial admin password.
Password:
Re-enter password:
Available storage devices:
vdb 100GB
hdc 3GB
1) vdb
2) hdc
Select storage device to use:1
Would you like to format vdb?(y/n)y
...
vManage的基础配置:
主要有三部分:①system下内容;②VPN0配置(必选配置);③VPN512配置(虽然实际情况用的不一定多,但是这里还是用于为了和物理机互通,故配置了该内容)
vManage# show running-config
system
host-name vManage
system-ip 1.1.1.1
site-id 1
admin-tech-on-failure
sp-organization-name sdwan
organization-name sdwan
vbond 10.1.2.2
...
vpn 0
interface eth1
ip address 10.1.2.1/24
tunnel-interface
allow-service all
allow-service dhcp
allow-service dns
allow-service icmp
allow-service sshd
allow-service netconf
no allow-service ntp
no allow-service stun
allow-service https
!
no shutdown
!
ip route 0.0.0.0/0 10.1.2.254
!
vpn 512
interface eth0
ip address 10.22.2.91/24
no shutdown
!
ip route 10.123.123.0/24 10.22.2.98
!
1.2.3、VManage GUI
这里输入https://10.22.2.91 即可进入vManage GUI界面。

接下来需要完成的是Organization Name确认、vBond地址确认,这里使用了WinServer AD CS颁发的证书。这里是设置完成的情况(Windows Server安装证书服务器以及申请证书的操作这里就不演示了)

1.2.4、vBond和vSmart初始化
vBond和vSmart的初始化配置如下:
vBond# show running-config
system
host-name vBond
system-ip 2.2.2.2
site-id 1
admin-tech-on-failure
no route-consistency-check
organization-name sdwan
vbond 10.1.2.2 local
...
!
vpn 0
interface ge0/0
ip address 10.1.2.2/24
ipv6 dhcp-client
tunnel-interface
encapsulation ipsec
allow-service all
no allow-service bgp
allow-service dhcp
allow-service dns
allow-service icmp
allow-service sshd
allow-service netconf
no allow-service ntp
no allow-service ospf
no allow-service stun
allow-service https
!
no shutdown
!
ip route 0.0.0.0/0 10.1.2.254
!
vpn 512
interface eth0
ip address 10.22.2.92/24
ipv6 dhcp-client
no shutdown
!
ip route 10.123.123.0/24 10.22.2.98
!
vSmart的配置:
vSmart# show running-config
system
host-name vSmart
system-ip 3.3.3.3
site-id 1
admin-tech-on-failure
organization-name sdwan
vbond 10.1.2.2
...
vpn 0
interface eth1
ip address 10.1.2.3/24
tunnel-interface
allow-service all
allow-service dhcp
allow-service dns
allow-service icmp
allow-service sshd
allow-service netconf
no allow-service ntp
no allow-service stun
!
no shutdown
!
ip route 0.0.0.0/0 10.1.2.254
!
vpn 512
interface eth0
ip address 10.22.2.93/24
no shutdown
!
ip route 10.123.123.0/24 10.22.2.98
!
1.2.5、vBond和vSmart设备上线
在configuration>devices界面的Controller界面添加vBond和vSmart,操作内容一致。

接下来完成的操作,就是生成CSR文件,到证书服务器上申请证书,然后安装证书。

当证书申请完成之后,在vManage上安装证书,选择对应文件即可。

安装完成之后,如下所示。


1.2.6、vEdge上线
vEdge上线之前,需要导入edge list,且Edge设备需要安装根证书文件。
这里提到的edge list,可以理解为允许接入SDWAN的edge设备的白名单,是必须要上传的。
定义WAN Edge list文件:
我们可以通过Cisco官网(英文)Smart licensing页面https://software.cisco.com/找到Network Plug and Play点击Manage devices。

进入Plug and Play Connect页面后,点击右上角选择进入相应的Virtual Account。在这里我们可以看到Controller Profiles的选项,添加进去添加。

点击添加Add Profiles,然后进行Add Controller Profile操作。

Next之后可以填写Profiles的名字,组织名字和控制器信息。
注意:如果是多租户部署的情况下,需要将Multi-Tenancy选择为Yes.

设置完成之后,进行下一步,根据对应填写要求完成Step3和Step4,这里就不再补充截图。
Profiles完成之后,生成文件如下:

我们可以点击Provisioning File下载该文件,最后是一个.viptela后缀的文件,接下来需要在vManage上导入该文件。

选中下载的.viptela后面的edge list文件,然后点击Upload

上传完成之后示例如下:接下来要完成的就是vEdge设备的上线。

vEdge设备配置:
vedge需要完成如下的配置。
Center-vEdge# show run
system
host-name Center-vEdge
system-ip 4.4.4.4
site-id 1
admin-tech-on-failure
no route-consistency-check
organization-name sdwan
vbond 10.1.2.2
...
vpn 0
interface ge0/0
ip address 10.1.2.4/24
ipv6 dhcp-client
tunnel-interface
encapsulation ipsec
color biz-internet
allow-service all
no allow-service bgp
allow-service dhcp
allow-service dns
allow-service icmp
no allow-service sshd
no allow-service netconf
no allow-service ntp
no allow-service ospf
no allow-service stun
allow-service https
!
no shutdown
!
ip route 0.0.0.0/0 10.1.2.254
!
vpn 512
interface eth0
ip address 10.22.2.94/24
ipv6 dhcp-client
no shutdown
!
ip route 10.123.123.0/24 10.22.2.98
!
安装根证书:首先从FTP上将根证书下载下来,然后进行安装。
Center-vEdge# request download vpn 512 ftp://10.22.2.96/certnew.cer
Center-vEdge# request root-cert-chain install home/admin/certnew.cer
完成基础配置、安装根证书之后。先尝试ping控制器地址,确保与3台控制器的联通性正常。同时检查设备的时间,确保设备时间与CA证书的时间同步,否则会影响设备上线。
Center-vEdge# ping 10.1.2.1
Ping in VPN 0
PING 10.1.2.1 (10.1.2.1) 56(84) bytes of data.
64 bytes from 10.1.2.1: icmp_seq=1 ttl=64 time=17.0 ms
^C
--- 10.1.2.1 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 17.011/17.011/17.011/0.000 ms
Center-vEdge# ping 10.1.2.2
Ping in VPN 0
PING 10.1.2.2 (10.1.2.2) 56(84) bytes of data.
64 bytes from 10.1.2.2: icmp_seq=1 ttl=64 time=38.2 ms
^C
--- 10.1.2.2 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 38.210/38.210/38.210/0.000 ms
Center-vEdge# ping 10.1.2.3
Ping in VPN 0
PING 10.1.2.3 (10.1.2.3) 56(84) bytes of data.
64 bytes from 10.1.2.3: icmp_seq=1 ttl=64 time=9.81 ms
^C
--- 10.1.2.3 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 9.814/9.814/9.814/0.000 ms
由于这里是vEdge设备,所以我们还需要进行激活操作。
vEdge激活操作
在刚才伤处的Edge list中,选择Generate Bootstrap Configuration,并使用默认的选项,然后点击OK,在生成的信息中,可以看到uuid和otp,这个就是我们激活设备时使用的chassis number和token.


vEdge设备激活操作及最终上线:
Center-vEdge# request vedge-cloud activate chassis-number x token y
稍候片刻,vEdge经过生成证书请求文件,vManage签发证书给vEdge后,vEdge将正式上线。此时在vManage上我们看到的情况就是如下内容了:

后续就可以开始完成更多的操作了~