18-Chef配置
本章节下载: 18-Chef配置 (244.08 KB)
Chef是开源的配置管理工具,用户使用Ruby语言将需要对设备进行的配置写成脚本,并保存到服务器中,再通过服务器把配置脚本下发到各网络设备,实现对网络设备的集中配置管理。
图1-1 Chef网络架构

如图1-1所示,Chef采用“服务器端/客户端”网络架构,由Chef server、Chef client和Workstation构成,各组件功能及含义如下:
Chef server用于对Chef client进行集中管理,其主要功能如下:
· 集中保存配置脚本(Cookbook),并根据用户要求将配置脚本下发到Chef client。
· 为Chef client和Workstation分别创建后缀为.pem的密钥文件。密钥文件分为用户密钥文件和组织密钥文件:
¡ 用户密钥文件:该文件用来保存Chef client/Workstation的用户认证信息,Chef client/Workstation与Chef server进行通信前,用户需要将该文件分别下载到Chef client/Workstation上,Chef server使用该文件验证Chef client/Workstation的合法性。
¡ 组织密钥文件:该文件用来保存用户所在组织的认证信息。用户需要将该文件分别下载到Chef client/Workstation中。为方便对不同的Chef client/Workstation设备进行区分管理,可以将具有同一类属性的Chef client/Workstation划分到同一个组织中。Chef client/Workstation与Chef server进行通信前,Chef server使用该文件验证用户所在组织的合法性。
Workstation提供了用户与Chef server交互的接口。用户需要在Workstation上创建、编辑配置脚本,并将配置脚本上传到Chef server。
Workstation可以与Chef server安装在同一台服务器上。
Chef client即为被Chef server管理的网络设备。Chef client从Chef server获取并运行配置脚本,配置脚本运行完成后,设备使用新下发的配置运行。
H3C设备中,Chef以Chef client方式运行,版本为12.3.0。
![]()
关于Chef server和Workstation的详细安装和配置,请参见Chef官方网站:https://www.chef.io/。
![]()
关于Chef支持的所有资源类型,请参见附录。
Chef使用Ruby语言定义配置项,各配置项的集合即为一个配置脚本,在Chef中,配置项叫做资源。
Chef划分了多个不同类型的资源,每个类型的资源都由名称、属性和动作构成,每个属性对应功能的一个配置,属性值即为该配置应达到的状态。在对Chef资源进行配置时,通过为不同属性赋值,从而指定设备应该达到的最终状态,而不需要关心如何达到这些状态。例如:用户只需要指定创建哪一个VLAN,而不需要关心如何创建该VLAN。如下以创建VLAN 2,并为该VLAN配置描述信息为例介绍Chef资源的构成:
netdev_vlan 'vlan2' do
vlan_id 2
description 'chef-vlan2'
action :create
end
在该例中,各字段含义如下:
· netdev_vlan表示资源类型。
· do与end为Ruby语言中函数的固定语法,所有Chef资源配置都需要符合该语法要求。
· vlan2为资源名称,每个资源都有唯一的资源名称,用于标示该资源。
· vlan_id和description表示资源属性。
¡ vlan_id 2表示创建VLAN ID为2的VLAN。
¡ description 'chef-vlan2'表示VLAN2的描述信息为“chef-vlan2”。
· action表示资源动作,Chef仅支持create和delete两种动作。
¡ create表示如果该Chef资源不存在,则创建这个资源;如果该Chef资源已存在,则按照最新资源配置要求修改该资源。create为Chef资源的缺省动作,如果配置Chef资源时,不指定action,则表示action取值为create。
¡ delete表示需要删除该资源。
Chef配置文件由用户手工配置,该文件中包含了Chef client执行Chef时输出日志的属性、Chef server和Chef client本地保存密钥文件的路径,以及Chef client本地保存资源文件的路径等。
启动Chef后,Chef client使用Chef配置文件中指定的本地密钥文件信息向Chef server发起认证请求。Chef server使用本地密钥文件与Chef client发送的密钥信息对比,如果双方密钥信息完全一致,则表示Chef client通过认证。Chef client通过认证后将把资源文件下载到Chef配置文件指定的本地资源文件保存路径中,并执行资源文件中的配置,同时输出相应的日志。
表1-1 Chef配置文件配置项描述表
|
配置项 |
值 |
说明 |
|
(可选)log_level |
:auto :debug :info :warn :error :fatal |
日志信息级别,缺省值为auto 日志严重等级由低到高依次为:debug、info、warn、error、fatal auto级别与warn级别相同 |
|
log_location |
STDOUT STDERR logfilepath |
日志输出方式: · STDOUT表示Chef标准日志输出方式。配置该参数后,通过third-part-process start命令下载资源时,将Chef配置过程中,配置执行成功的日志信息输出到指定文件中,执行失败的日志信息输出到配置终端 · STDERR表示Chef标准错误日志输出方式。配置该参数后,通过third-part-process start命令下载资源时,将Chef配置过程中,配置执行失败的日志信息输出到指定文件中,执行成功日志信息的输出到配置终端 · filepath表示将执行Chef过程中,所有配置日志都输出到设备指定的路径中。例如:将日志文件输出到flash:/cheflog/a.log 如果不指定任何参数,Chef标准日志和Chef标准错误日志都输出到配置终端 |
|
node_name |
client |
Chef client名称 在Chef中,该名称仅用于区别不同的Chef client,与设备名称(通过sysname命令配置)无关 |
|
chef_server_url |
https://localhost:port/organizations/ORG_NAME |
Chef server的URL以及Chef server上创建的组织的名称 localhost:port表示Chef server的名称或IP地址、以及端口号 ORG_NAME表示组织的名称 |
|
validation_key |
flash:/chef/validator.pem |
组织认证的密钥文件名称,以及设备本地保存密钥文件的路径 |
|
client_key |
flash:/chef/client.pem |
用户认证的密钥文件名称,以及设备本地保存密钥文件的路径 |
|
cookbook_path |
[ 'flash:/chef-repo/cookbooks' ] |
设备本地保存资源文件的路径 |
配置Chef功能前,用户必须先配置如下功能:
· 开启NETCONF over SSH功能:Chef server通过NETCONF over SSH方式向Chef client下发配置。关于NETCONF over SSH功能的详细配置请参见“网络管理和监控配置指导”中的“NETCONF”。
· 配置设备可以通过SSH登录:Chef server与Chef client使用SSH进行通信。关于SSH登录功能的详细配置请参见“基础配置指导”中的“登录设备”。
分别对Chef server、Chef client以及Workstation进行如下配置:
![]()
· 关于Chef server的详细配置方法,具体请参见Chef server的安装和使用指导。
· Chef server的Chef版本不能低于Chef client的Chef版本。
(1) 为Workstation和Chef client分别创建密钥文件。
(2) 创建并编辑Chef client的Chef配置文件。
![]()
关于Workstation的详细配置方法,具体请参见Workstation的安装和使用指导。
(1) 创建Workstation的本地工作目录。
(2) 创建保存Workstation Chef配置文件的目录
(3) 创建Workstation的Chef配置文件。
(4) 将Workstation的密钥文件从Chef server上下载到Workstation配置文件中指定的目录。
(5) 创建并编辑Chef资源文件。
(6) 将资源文件上传到Chef server。
(1) 将Chef client的密钥文件从Chef server上下载到设备的本地目录。该目录在Chef配置文件中配置。
(2) 将Chef配置文件从Chef server上下载到Chef client的本地目录。该文件的保存目录必须与third-part-process start命令--config参数指定的目录相同。
(3) 在设备上通过third-part-process start命令启动Chef。
表1-2 启动Chef
|
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
启动Chef |
third-part-process start name chef-client arg --config=filepath --runlist recipe[Directory] |
缺省情况下,Chef处于关闭状态 --config=filepath表示设备中Chef配置文件的路径及名称 --runlist recipe[Directory]表示配置设备所使用的资源目录名称 关于third-part-process start命令的详细介绍,请参见“网络管理和监控”中的“进程监控和维护” |
表1-3 关闭Chef
|
操作 |
命令 |
说明 |
|
进入系统视图 |
system-view |
- |
|
关闭Chef |
third-part-process stop pid pid-list |
执行display process all命令查看所有进程信息,“THIRD”字段标识为“Y”的进程为第三方进程,“PID”字段即为进程pid “COMMAND”字段为“chef-client /opt/ruby/b”的进程为Chef进程 关于third-part-process stop命令的详细介绍,请参见“网络管理和监控”中的“进程监控和维护” |
Chef client与Chef server相连,设备的IP地址和掩码如图1-2所示。
通过Chef在设备上创建ID为3的VLAN。
图1-2 Chef配置组网图

(1) 配置Chef server
# 创建Workstation的用户密钥文件admin.pem,具体参数如下:
· Workstation的用户名为Herbert George Wells。
· Email为[email protected]。
· 密码为123456。
$ chef-server-ctl user-create Herbert George Wells [email protected] 123456 –filename=/etc/chef/admin.pem
# 创建Workstation的组织密钥文件admin_org.pem,具体参数如下:
· 组织的简称为ABC,组织全称为ABC Technologies Co., Limited。
· 该组织与用户Herbert相关联。
$ chef-server-ctl org-create ABC_org "ABC Technologies Co., Limited" –association_user Herbert –filename =/etc/chef/admin_org.pem
# 创建Chef client的用户密钥文件client.pem,具体参数如下:
· Chef client用户名为Herbert George Wells。
· Emal为[email protected]。
· 密码为123456。
$ chef-server-ctl user-create Herbert George Wells [email protected] 123456 –filename=/etc/chef/client.pem
# 创建Chef client的组织密钥文件validator.pem,具体参数如下:
· 组织的简称为ABC,组织全称为ABC Co., Limited。
· 该组织与用户Herbert相关联。
$ chef-server-ctl org-create ABC "ABC Technologies Co., Limited" –association_user Herbert –filename =/etc/chef/validator.pem
# 创建并编辑Chef client的Chef配置文件chefclient.rb。
log_level :info
log_location STDOUT
node_name 'Herbert'
chef_server_url 'https://1.1.1.2:443/organizations/h3c'
validation_key 'flash:/chef/validator.pem'
client_key 'flash:/chef/client.pem'
cookbook_path [ 'flash:/chef-repo/cookbooks' ]
(2) 配置Workstation
# 创建Workstation的本地工作目录chef-repo。
$ mkdir /chef-repo
# 创建保存Workstation Chef配置文件的目录.chef。
$ mkdir –p /chef-repo/.chef
# 在/chef-repo/.chef目录下创建Workstation的Chef配置文件knife.rb,内容如下:
log_level :info
log_location STDOUT
node_name 'admin'
client_key '/root/chef-repo/.chef/admin.pem'
validation_key '/root/chef-repo/.chef/admin_org.pem'
chef_server_url 'https://chef-server:443/organizations/h3c'
使用TFTP或FTP将Workstation的密钥文件从Chef server下载到Workstation配置文件中的/chef-repo/.chef目录。
# 执行如下命令,创建名为“netdev”的资源目录。
$ knife cookbook create netdev
该命令执行成功后,将在当前目录下创建netdev资源目录,并在netdev资源目录下生成多个与该资源目录相关的文件和目录,其中,recipes目录即为保存资源文件的目录。
编辑recipes目录下名称为default.rb的资源文件,内容如下:
netdev_vlan 'vlan3' do
vlan_id 3
action :create
end
# 执行如下命令,将资源文件上传到Chef server。
$ knife cookbook upload –all
(3) 配置Chef client
在Chef client上配置设备通过SSH登录,并开启NETCONF over SSH功能。
使用TFTP或FTP将Chef配置文件chefclient.rb从Chef server上下载到Chef client的Flash根目录(该文件的保存目录必须与third-part-process start命令--config参数指定的目录相同)。
使用TFTP或FTP将密钥文件validator.pem和client.pem从Chef server上下载到设备的指定目录。本例中,目录为flash:/chef/。
# 在设备上启动Chef,指定设备中Chef配置文件的路径为Flash的根目录,文件名称为chefclient.rb。资源名称为netdev。
<ChefClient> system-view
[ChefClient] third-part-process start name chef-client arg --config=flash:/chefclient.rb --runlist recipe[netdev]
该命令执行成功后,Chef client将获取Chef server中的资源到本地,并运行该资源,实现对设备各功能的配置。
该资源用来创建、修改或删除VLAN,并配置VLAN的名称和描述信息。
表2-1 netdev_vlan资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
vlan_id |
VLAN的编号 |
索引 |
数据类型为无符号整型,取值范围为1~4094 |
|
description |
VLAN的描述信息 |
无 |
数据类型为字符串,取值为1~255个字符,区分大小写 |
|
vlan_name |
VLAN名称 |
无 |
数据类型为字符串,取值为1~32个字符,区分大小写 |
|
action |
下发该资源时所执行的动作 |
无 |
数据类型为符号,取值包括: · create:表示创建或修改VLAN · delete:表示删除VLAN 该属性的缺省值为create,如果配置Chef资源时,不指定action,则表示action取值为create |
创建VLAN2,并配置VLAN描述和VLAN名称为“vlan2”。
netdev_vlan 'vlan2' do
vlan_id 2
description 'vlan2'
vlan_name ‘vlan2’
end
该资源用来配置设备的名称,并指定设备与Chef server建立连接时使用的SSH用户名和密码。
表2-2 netdev_device资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
hostname |
设备名称 |
无 |
数据类型为字符串,取值为1~64个字符,不区分大小写 |
|
user |
SSH用户名 |
无 |
数据类型为字符串,取值为1~55个字符,区分大小写 |
|
passwd |
SSH用户密码 |
无 |
数据类型为字符串,区分大小写。非FIPS模式下,明文密码为1~63个字符;哈希密码为1~110个字符;密文密码为1~117个字符 |
|
action |
下发该资源时所执行的动作 |
无 |
数据类型为符号,取值包括: · create:表示建立设备与Chef server的NETCONF连接 · delete:表示建立设备与Chef server的NETCONF连接 该属性的缺省值为create,如果配置Chef资源时,不指定action,则表示action取值为create |
配置设备名称为ChefClient,并指定设备与Chef server建立连接时使用的SSH用户名为user,SSH用户密码为123456。
netdev_device 'device' do
hostname "ChefClient"
user "user"
passwd "123456"
end
该资源用来配置接口的属性。
表2-3 netdev_interfac资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
ifindex |
接口索引 |
索引 |
数据类型为整型 |
|
description |
接口的描述信息 |
无 |
数据类型为字符串,取值为1~255个字符,区分大小写 |
|
admin |
接口的管理状态 |
无 |
数据类型为字符串,取值包括: · up:接口的管理状态为开启 · down:接口的管理状态为关闭 |
|
speed |
接口速率 |
无 |
数据类型为字符串,取值包括: · auto:表示接口速率处于自协商状态 · 10m:表示接口速率为10Mbps · 100m:表示接口速率为100Mbps · 1g:表示接口速率为1Gbps · 10g:表示接口速率为10Gbps · 40g:表示接口速率为40Gbps · 100g:表示接口速率为100Gbps |
|
duplex |
以太网接口的双工模式 |
无 |
数据类型为字符串,取值包括: · full:全双工状态,接口在发送数据包的同时可以接收数据包 · half:半双工状态,接口同一时刻只能发送数据包或接收数据包 · auto:接口与对端接口的双工模式为自动协商 仅以太口接口支持该配置 |
|
linktype |
接口的链路类型 |
无 |
数据类型为字符串,取值包括: · access:配置接口的链路类型为Access类型 · trunk:配置接口的链路类型为Trunk类型 · hybrid:配置接口的链路类型为Hybrid类型 仅二层以太网接口支持该配置 |
|
portlayer |
以太网接口的工作模式 |
无 |
数据类型为字符串,取值包括: · bridge:配置以太网接口工作在二层模式 · route:配置以太网接口工作在三层模式 |
|
mtu |
三层以太网接口允许通过的MTU的大小 |
无 |
数据类型为整型,取值范围取决于接口的类型,单位为字节 仅三层以太网接口支持该配置 |
配置索引为2的以太网接口的如下属性:
· 接口的描述信息为ifindex2。
· 管理状态为开启。
· 接口速率为自动协商。
· 接口与对端接口的双工模式为自动协商。
· 端口的链路类型为Hybrid类型。
· 以太网接口工作在三层模式。
· 配置三层以太网接口允许通过的MTU的大小为1500。
netdev_interface 'ifindex2' do
ifindex 2
description 'ifindex2'
admin 'up'
speed 'auto'
duplex 'auto'
linktype 'hybrid'
portlayer 'route'
mtu 1500
end
该资源用来配置二层以太网接口的VLAN属性。
表2-4 netdev_l2_interface资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
ifindex |
接口索引 |
索引 |
数据类型为整型 |
|
pvid |
端口的缺省VLAN |
无 |
数据类型为整型,取值范围为1~4094 |
|
permit_vlan_list |
接口允许通过的VLAN列表 |
无 |
数据类型为字符串 VLAN的取值范围为1~4094 一次可以配置多个VLAN,各VLAN间使用逗号分隔。两个逗号之间可以是一个单独的VLAN,也可以是一个VLAN范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个VLAN范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 |
|
untagged_vlan_list |
端口在转发指定的VLAN报文时将去掉VLAN Tag |
无 |
数据类型为字符串 VLAN的取值范围为1~4094 一次可以配置多个VLAN,各VLAN间使用逗号分隔。两个逗号之间可以是一个单独的VLAN,也可以是一个VLAN范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个VLAN范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 同一个VLAN不能在untagged_vlan_list和tagged_vlan_list列中同时指定 |
|
转发指定的VLAN报文时将携带VLAN Tag |
无 |
数据类型为字符串 VLAN的取值范围为1~4094 一次可以配置多个VLAN,各VLAN间使用逗号分隔。两个逗号之间可以是一个单独的VLAN,也可以是一个VLAN范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个VLAN范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 同一个VLAN不能在untagged_vlan_list和tagged_vlan_list列中同时指定 |
修改索引为5的接口的缺省VLAN为2,允许ID为2~6的VLAN通过,ID为2、4、5、6的VLAN需要保留tag,ID为3的VLAN不带tag。
netdev_l2_interface 'ifindex5' do
ifindex 5
pvid 2
permit_vlan_list '2-6'
tagged_vlan_list '2,4-6'
untagged_vlan_list '3'
end
该资源用来创建、修改或删除聚合组。
表2-5 netdev_lagg资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
group_id |
聚合组ID |
索引 |
数据类型为整型 二层聚合组的组ID范围为1~1024 三层聚合组的组ID范围为16385~17408 |
|
linkmode |
聚合模式 |
无 |
数据类型为字符串,取值包括: · static:表示静态聚合 · dynamic:表示动态聚合 |
|
addports |
加入聚合组的接口列表 |
无 |
数据类型为字符串 一次可以配置多个接口索引,各接口索引间使用逗号分隔。两个逗号之间可以是一个单独的接口索引,也可以是一个接口索引范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个接口索引范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 同一个接口不能在addports和deleteports列中同时指定 |
|
deleteports |
从聚合组删除的接口列表 |
无 |
数据类型为字符串 一次可以配置多个接口索引,各接口索引间使用逗号分隔。两个逗号之间可以是一个单独的接口索引,也可以是一个接口索引范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个接口索引范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 同一个接口不能在addports和deleteports列中同时指定 |
|
action |
下发该资源时所执行的动作 |
无 |
数据类型为符号,取值包括: · create:表示创建或修改聚合组 · delete:表示删除聚合组 该属性的缺省值为create,配置Chef资源时,如果不指定action,则表示action取值为create |
创建ID为16386的聚合组,设置聚合组的模式为static,并将接口1、2、3加入聚合组,从聚合组中删除索引为8的接口。
netdev_lag 'lagg16386' do
group_id 16386
linkmode 'static'
addports '1-3'
deleteports '8'
end
该资源用来开启或关闭L2VPN功能。
表2-6 netdev_l2vpn资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
Enable |
开启或关闭L2VPN功能 |
无 |
数据类型为符号,取值包括: · true:表示开启L2VPN功能 · false:表示关闭L2VPN功能 该属性的缺省值为false,配置Chef资源时,如果不指定该属性,则表示取值为false |
在设备上开启L2VPN功能。
netdev_l2vpn 'l2vpn' do
enable true
end
该资源用来创建、修改或删除VSI。
表2-7 netdev_vsi资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
vsiname |
VSI的名称 |
索引 |
数据类型为字符串,取值为1~31个字符,区分大小写 |
|
admin |
开启或关闭VSI |
无 |
数据类型为字符串,取值包括: · up:表示开启VSI · down:表示关闭VSI 该属性的缺省值为up,如果配置Chef资源时,不指定admin,则表示取值为up |
|
action |
下发该资源时所执行的动作 |
无 |
数据类型为符号,取值包括: · create:表示创建或修改VSI · delete:表示删除VSI 该属性的缺省值为create,配置Chef资源时,如果不指定action,则表示action取值为create |
在设备上创建名为vsia的VSI,并设置为开启状态。
netdev_vsi 'vsia' do
vsiname 'vsia'
admin 'up'
end
该资源用来创建或删除隧道。
表2-8 netdev_vte资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
vte_id |
隧道 ID |
索引 |
数据类型为整型 |
|
mode |
隧道模式 |
无 |
数据类型为整型,取值包括: · 1:运行IPv4协议的GRE 隧道 · 2:运行IPv6协议的GRE 隧道 · 3:IPv4与IPv4之间的隧道 · 4:手动配置的IPv6到IPv4的隧道 · 5:IPv6到 IPv4的自动隧道 · 6:IPv6到IPv4 的6to4隧道 · 7:IPv6到IPv4的ISATAP隧道 · 8:用IPv6封装IPv6 或IPv4报文 · 9:基于UDP passenger协议和IPv4传输协议的DVPN隧道 · 10:基于GRE passenger协议和IPv4传输协议的DVPN隧道 · 11:基于UDP passenger协议和IPv6传输协议的DVPN隧道 · 12:基于GRE passenger协议和IPv6传输协议的DVPN隧道 · 13:CRLSP隧道 · 14:基于IPv4传输协议的组播GRE隧道 · 15:基于IPv6传输协议的组播GRE隧道 · 16:基于IPv4传输协议的IPsec隧道 · 17:基于IPv6传输协议的IPsec隧道 · 18:基于IPv4传输协议的EVI隧道 · 19:基于IPv6传输协议的EVI隧道 · 20:基于IPv4传输协议的EVI链路 · 21:基于IPv6传输协议的EVI链路 · 22:DS-Lite AFTR隧道 · 23:CRLSP自动隧道 · 24:基于UDP passenger协议和IPv4传输协议的VXLAN隧道 · 25:基于UDP passenger协议和IPv6传输协议的VXLAN隧道 创建隧道时必须指定隧道模式,且创建后不能再对该隧道模式进行修改 |
|
action |
下发该资源时所执行的动作 |
无 |
数据类型为符号,取值包括: · create:表示创建隧道 · delete:表示删除隧道 该属性的缺省值为create,配置Chef资源时,如果不指定action,则表示action取值为create |
创建ID为2、IPv6到 IPv4的自动隧道。
netdev_vte 'vte2' do
vte_id 2
mode 5
end
该资源用来创建、修改或删除VXLAN。
表2-9 netdev_vxlan资源属性描述表
|
列名 |
列描述 |
列类型 |
数据类型和限制 |
|
vxlan_id |
VXLAN ID |
索引 |
数据类型为整型,取值范围为0~16777215 |
|
vsiname |
VSI的名称 |
无 |
数据类型为字符串,取值为1~31个字符,区分大小写 创建VSI时必须指定该列,且该列在创建后不能修改 |
|
add_tunnels |
VXLAN与隧道接口关联 |
无 |
数据类型为字符串 隧道接口的编号 一次可以配置多个隧道接口编号,各接口编号间使用逗号分隔。两个逗号之间可以是一个单独的接口编号,也可以是一个接口编号范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个接口编号范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 同一个隧道接口的编号不能在add_tunnels和delete_tunnels中同时指定 |
|
delete_tunnels |
取消VXLAN与隧道接口关联 |
无 |
数据类型为字符串 隧道接口的编号 一次可以配置多个隧道接口编号,各接口编号间使用逗号分隔。两个逗号之间可以是一个单独的接口编号,也可以是一个接口编号范围。例如:1,2,3,5-8,10-20 使用连字符“-”分隔一个接口编号范围的开始和结束 字符串的结尾不能含有逗号,连字符“-”或空格 同一个隧道接口的编号不能在add_tunnels和delete_tunnels中同时指定 |
|
action |
下发该资源时所执行的动作 |
无 |
数据类型为符号,取值包括: · create:表示创建或修改VXLAN · delete:表示删除VXLAN 该属性的缺省值为create,配置Chef资源时,如果不指定action,则表示action取值为create |
创建ID为10的VXLAN,加入名为vsia的VSI,并将隧道接口2、4加入VXLAN,从VXLAN中删除1、3隧道接口。
netdev_vxlan 'vxlan10' do
vxlan_id 10
visname 'vsia'
add_tunnels '2,4'
delete_tunnels '1,3'
end
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
