Chef技术介绍

1 Chef

Chef是开源的配置管理工具。其实现机制为:用户使用Ruby语言将需要对设备进行的配置写成脚本,并保存到服务器中,再通过服务器把配置脚本下发到各网络设备,实现对网络设备的集中配置管理。

1.1  Chef网络架构

图1-1 Chef网络架构

 

1-1所示,Chef采用“服务器端/客户端”网络架构,由Chef serverChef clientWorkstation构成。

1.1.1  Chef server

Chef server用于对Chef client进行集中管理,其主要功能如下:

·              集中保存配置脚本(Cookbook),并根据用户要求将配置脚本下发到Chef client

·              Chef clientWorkstation分别创建后缀为.pem的密钥文件。

1.1.2  Workstation

Workstation提供了用户与Chef server交互的接口。用户需要在Workstation上创建、编辑配置脚本,并将配置脚本上传到Chef server

Workstation可以与Chef server安装在同一台服务器上。

1.1.3  Chef client

Chef client即为被Chef server管理的网络设备。Chef clientChef server获取并运行配置脚本,配置脚本运行完成后,设备使用新下发的配置运行。

H3C设备作为Chef client运行,支持版本12.3.0

1.2  Chef资源

Chef使用Ruby语言定义配置项,各配置项的集合即为一个配置脚本,在Chef中,配置项叫做资源。

Chef划分了多个不同类型的资源,每个类型的资源都由名称、属性和动作构成,每个属性对应功能的一个配置,属性值即为该配置应达到的状态。在对Chef资源进行配置时,通过为不同属性赋值,从而指定设备应该达到的最终状态,而不需要关心如何达到这些状态。

H3C定义了一系列Chef资源,Chef server可以在配置脚本中使用这些资源对设备进行配置。

附件下载

联系我们