Huawei S系列交换机 Easydeploy 特性

参考

四. HW EasyDeploy

HW S系列交换机的初始化配置特性为"EasyDeploy",CE系列交换机的初始化配置特性为"ZTP",这里主要讲S系列交换机的"EasyDeploy"特性。
EasyDeploy特性的具体实现分为:

  • 1.通过Option参数或中间文件实现:即为早期版本(至少v2r3以前)中的Auto-Config的空配置设备部署的实现方式,可实现:
    • 1.前期完成设备的空配置部署
  • 2.通过Commander实现:HW S系列交换机特有特性,可实现:
    • 1.前期完成设备的空配置部署
    • 2.后期维护另可实现故障设备替换费空设备批量升级非空设备批量配置

EasyDeploy特性,通过Option参数或中间文件实现又细分为:

  • 1.通过Option参数实现:
    • 1.DHCP Server通过"option67"传递存储于文件服务器的配置文件名,路径等信息给client,指导其下载获取配置文件;
    • 2.如果DHCP Server指定了option67参数,待配置设备以option方式实现空配置部署;如果未指定option67参数,待配置设备以中间文件方式实现空配置部署。、;
    • 3.如果待配置设备较少,且不同设备加载相同的配置文件,则可以采用option方式。
  • 2.通过中间文件参数:
    • 1.DHCP Server通过"option146"传递存储于文件服务器的中间文件名
    • 2.且option146指定动作参数为"netfile";
    • 3.文件名最长64字节,支持字符0~9、a~z、A~Z、-、_,设置的文件名必须是“cfg”后缀;文件名非法时,默认文件为lswnet.cfg
    • 4.如果配置设备较多,且不同设备加载不同的配置文件,则可以采用中间文件方式。

本文以通过中间文件实现梳理EasyDeploy流程:

  • 1.在设置启用EasyDeploy功能后,交换机启动时如果发现没有配置文件,则进入EasyDeploy模式;
  • 2.处于缺省vlan的业务口从DHCP Server获取IP地址,TFTP Server地址与中间文件名后,便会从获取到的TFTP Server上读取对应的中间文件
  • 3.设备匹配中间文件中的MAC\ESN两项,匹配任意一项,便下载对应的系统文件,补丁文件,web网页文件及配置文件等;
  • 4.相关文件都下载成功后,EasyDeploy会自动指定设备下次启动的系统文件,补丁文件,web网页文件等与配置文件为刚下载的相关文件,然后自动重启;
  • 5.启动完成后,设备使用的系统文件及配置文件等即在EasyDeploy中指定的,EasyDeploy流程结束。

EasyDeploy特性通过中间文件实现,具体实现步骤如下:

4.1 (option) 设备准备

4.1.1 获取MAC\ESN信息

  • 1.命令获取:
    [Quideway]display easy-operation device-information
    System MAC: E097-9650-98A0
    Slot MAC            ESN                  Model               Device-Type Role
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
    0    E097-9650-98A0 210235316910E9000056 S5710-52C-EI        S5710-EI    Master
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
    
  • 2.设备出厂标签即有MAC\ESN信息。

4.1.2 确保设备无配置文件

  • 1.新出厂设备默认无配置文件;
  • 2.老旧设备可直接在普通用户模式下删除配置文件,如下:
    # 清空设备下次启动使用的配置文件内的内容,并取消指定系统下次启动时使用的配置文件
    <Quideway>reset saved-configuration
    
    # 删除配置文件,主要是*.cfg或*cfg.zip等,可在特权模式下通过"display startup"查看
    <Quideway>delete flash:/vrpcfg.zip
    
  • 3.注意:老旧设备删除配置文件重启时,务必不要保存配置

4.2 编辑中间文件与配置文件

4.2.1 中间文件

4.2.1.1 范例

假设一台待配置设备的MAC地址为E097-9650-98A0,ESN序列号为210235316910E9000056,对应这台设备应下载的版本文件名为s5710ei-v200r003c00spc300.cc,版本号信息为v200r003c00,补丁文件为s5710ei-v200r003sph005.pat,配置文件为s5710ei-v200r003c00spc300.cfg,Web网页文件为s5710ei-v200r003c00spc300.web.7z。则中间文件内容如下(中间文件中各配置项名称必须为小写):

mac=E097-9650-98A0;vrpfile=s5710ei-v200r003c00spc300.cc;vrpver=v200r003c00;patchfile=s5710ei-v200r003sph005.pat;cfgfile=as5710ei-v200r003c00spc300.cfg;webfile=s5710ei-v200r003c00spc300.web.7z;
4.2.1.2 注意事项
  • 1.EasyDeploy特性中间文件以".cfg"为后缀,名字可自定义,文件名最长64字节,支持字符0~9、a~z、A~Z、-、_;文件名非法时,默认文件为lswnet.cfg
  • 2.当有多台设备需要配置时,中间文件的每行对应一台设备的配置信息,中间文件的大小不能超过1M;
  • 3.中间文件的配置项中,MAC地址与ESN序列号必选其一;配置文件为必选项,系统软件、Web网页文件与补丁文件为可选项,三者间没有顺序限制;
  • 4.如果中间文件的配置项中包含版本号信息,则必须要包含系统软件名称,并且要求系统软件的版本号与中间文件配置项中的版本号信息一致;
  • 5.中间文件中指定的系统软件、补丁文件、Web网页文件和配置文件路径不能超过48字符。
4.2.1.3 中间文件

验证中使用如下中间文件:

# 使用默认中间文件名"lswnet.cfg"创建中间文件
# 匹配esn序列号,只做初始化配置,不变更设备自带的系统软件,补丁文件,web网页文件等;
# 中间文件定义配置文件位于tftp根目录的"easy"目录下
cat << EOF >> lswnet.cfg
esn=0018-82C5-AA89;cfgfile=hw/s5710ei_easy.cfg;
EOF

4.2.2 配置文件

4.2.2.1 目录结构
# 创建目录及文件;
# 注意与中间文件定义的路径与文件名一致
mkdiir -p /tftp/easy ;touch /tftp/easy/s5710ei_easy.cfg

# 目录结构
tree /tftp/
/tftp/
├── easy
│   └── s5710ei_easy.cfg
└── lswnet.cfg
4.2.2.2 配置文件
cat /tftp/easy/s5710ei_easy.cfg 
!Software Version V200R003C00SPC300
#
sysname S5710
#
diffserv domain default
#
aaa
 authentication-scheme default
 authorization-scheme default
 accounting-scheme default
 domain default
 domain default_admin
 local-user admin password cipher %@%@Mv<@$P6NkW=:HaG^M-O#~|A*%@%@
 local-user admin privilege level 3
 local-user admin service-type ssh

#
undo interface Vlanif1
#
interface MEth0/0/1
 ip address 172.27.100.251 255.255.255.0
#
interface GigabitEthernet0/0/1
#
interface GigabitEthernet0/0/2
#
interface GigabitEthernet0/0/3
#                                         
interface GigabitEthernet0/0/4
#
interface GigabitEthernet0/0/5
#
interface GigabitEthernet0/0/6
#
interface GigabitEthernet0/0/7
#
interface GigabitEthernet0/0/8
#
interface GigabitEthernet0/0/9
#
interface GigabitEthernet0/0/10
#
interface GigabitEthernet0/0/11
#
interface GigabitEthernet0/0/12
#
interface GigabitEthernet0/0/13
#
interface GigabitEthernet0/0/14
#
interface GigabitEthernet0/0/15
#                                         
interface GigabitEthernet0/0/16
#
interface GigabitEthernet0/0/17
#
interface GigabitEthernet0/0/18
#
interface GigabitEthernet0/0/19
#
interface GigabitEthernet0/0/20
#
interface GigabitEthernet0/0/21
#
interface GigabitEthernet0/0/22
#
interface GigabitEthernet0/0/23
#
interface GigabitEthernet0/0/24
#
interface GigabitEthernet0/0/25
#
interface GigabitEthernet0/0/26
#
interface GigabitEthernet0/0/27
#                                         
interface GigabitEthernet0/0/28
#
interface GigabitEthernet0/0/29
#
interface GigabitEthernet0/0/30
#
interface GigabitEthernet0/0/31
#
interface GigabitEthernet0/0/32
#
interface GigabitEthernet0/0/33
#
interface GigabitEthernet0/0/34
#
interface GigabitEthernet0/0/35
#
interface GigabitEthernet0/0/36
#
interface GigabitEthernet0/0/37
#
interface GigabitEthernet0/0/38
#
interface GigabitEthernet0/0/39
#                                         
interface GigabitEthernet0/0/40
#
interface GigabitEthernet0/0/41
#
interface GigabitEthernet0/0/42
#
interface GigabitEthernet0/0/43
#
interface GigabitEthernet0/0/44
#
interface GigabitEthernet0/0/45
#
interface GigabitEthernet0/0/46
#
interface GigabitEthernet0/0/47
#
interface GigabitEthernet0/0/48
#
interface XGigabitEthernet0/0/1
#
interface XGigabitEthernet0/0/2
#
interface XGigabitEthernet0/0/3
#                                         
interface XGigabitEthernet0/0/4
#
interface NULL0
#
stelnet server enable
ssh user admin
ssh user admin authentication-type password
ssh user admin service-type all
#
user-interface con 0
 authentication-mode password
 set authentication password cipher %@%@5Dk^5ArqK")Y9AB1_QjL,LA^E%*3)}uSdWI4Xy*8Pvd<LAa,%@%@
user-interface vty 0 4
 authentication-mode aaa
 protocol inbound ssh
user-interface vty 16 20
#
return

4.3 配置DHCP Server

具体配置请见2.1.2 DHCP服务器安装配置章节,注意事项:

  • 1.DHCP Server需要能向待部署设备的缺省vlanif分发IP地址,即部署中对接的是加入缺省vlan的业务口
  • 2.HW S系列交换机从DHCP Server的option 150获取TFTP Server地址,而非一般操作系统自动部署的option 66,针对linux中开源的isc-dhcp-server,option 150需要提前定义;
  • 3.HW S系列交换机从DHCP Server的option 146获取中间文件名,针对linux中开源的isc-dhcp-server,option 146需要提前定义;
  • 4.保证待部署设备与TFTP Server能通信;
  • 5.如果DHCP&TFTP Server与被部署的交换机在不同subnet,则中间网络设备需要具备DHCP中继功能与三层路由功能。
# 相对于Centec交换机,HW S系列交换机对DHCP服务器多了两项配置,如下:
# 对 "option netfile code 146" 进行定义;
# 使用 "option netfile "easydeploy.cfg""向交换机传递中间文件名字
cat /etc/dhcp/dhcpd.conf 

ddns-update-style none; # interim为DNS互动更新模式,ad-hoc为特殊DNS更新模式,none为不支持动态更新模式
ignore client-updates; # 忽略客户端更新
option time-offset -18000; # Eastern Standard Time
default-lease-time 21600; # The default is 43200 seconds
max-lease-time 43200; # If not defined, the default maximum lease time is 86400
option tftp-server-address code 150 = ip-address; # isc-dhcp-server中并没有"tftp-server-address"的option参数,需要提起指定
option netfile code 146 = string; # 华为s系列交换机easydeploy特性,采用中间文件部署方式时,dhcp服务器需要通过option146(且定义为"netfile")传递中间文件名字,而isc-dhcp-server中并没有相关的option参数,需要提起指定

subnet 100.64.191.0 netmask 255.255.255.0 {
        range 100.64.191.101 100.64.191.200;
        option routers 100.64.191.1; # 如果在二层网络下操作,是否设置网关并不重要
 
        option tftp-server-address 100.64.191.10; # 一般交换机的自动配置使用option150指向tftp服务器,务必提前确认
        option netfile "easydeploy.cfg"; # 华为s系列交换机easydeploy特性,通过option146传递"netfile"参数;centec固定读取 "smartdeploy.xml" 文件,不用特别指定并传递中间文件名

}

4.4 触发EasyDeploy工作

触发EasyDeploy工作的必要条件是:

  • 1.确保设备无配置文件
    • 1.新出厂设备默认无配置文件;
    • 2.老旧设备可直接在普通用户模式下删除配置文件,如下:
    # 清空设备下次启动使用的配置文件内的内容,并取消指定系统下次启动时使用的配置文件
    <Quideway>reset saved-configuration
    
    # 删除配置文件,主要是*.cfg或*cfg.zip等,可在特权模式下通过"display startup"查看
    <Quideway>delete flash:/vrpcfg.zip
    
    • 3.注意:老旧设备删除配置文件重启时,务必不要保存配置
  • 2.重启,启动完成后,EasyDeploy功能开始工作。

4.5 EasyDeploy特性通过中间文件实现的注意事项

  • 1.EasyDeploy特性不支持IPv6场景和VPN网络场景;
  • 2.在空配置设备部署和故障设备替换场景中,如果通过Console口登录到待配置设备,则此设备会停止EasyDeploy流程,切换至正常运行状态;
  • 3.在空配置设备部署和故障设备替换场景中,只有加入缺省VLAN的业务口支持EasyDeploy功能;
  • 4.通过Option或中间文件方式只适用于空配置设备部署场景,对网络设备没有后期维护的功能,如果对后期维护有要求,建议通过Commander的方式实现。
posted @ 2019-06-03 15:54  Netonline  阅读(1675)  评论(0编辑  收藏  举报