介绍 Wicked 网络管理

jopen 9年前

谈到汽车,很多人都是不折不扣的实用主义者:他们希望自己的车性能可靠,空间够大,而且耗油少。另一些人则对车的运行原理、引擎功率等非常感兴趣。

对于管理 SUSE Linux Enterprise Server 的网络配置而言,如果您属于第一类人,那么,您无需阅读下面的内容,因为 SUSE Linux Enterprise Server 可满足您的需求:它可靠、适应能力强且坚固耐用。但是,如果您对网络技术的兴趣是更为深层次的,请继续阅读下去。

深入了解 Wicked
简而言之,对于 SUSE Linux Enterprise Server 12,我们所做的是在不影响用户体验的前提下彻底改变网络接口的推出、监控和关闭方式。打个比方说,我们更换了汽车的引擎、轮胎和变速箱,只有车身没有改变。哦,方向盘仍然是原来的方向盘!

为了维持类似的体验,我们不希望用户必须立即记住新的命令集。因此,ifup、ifdown、ifstatus 和 ifprobe 这些常用的命令仍在原来的位置:在 /sbin 中。此外,我们确保 ifcfg 文件和一般的 sysconfig 保持为您用于指定网络配置的默认方式。但是,Wicked 与其他同类工具的相似性仅限于此,Wicked 在很大程度上是独一无二的。

Wicked 几乎是从头开始设计和构建的。是什么促使我们这样做?总所周知,网络领域发展非常迅速。一流的数据和云环境不断变化,而且,软件定义的网络以及众多物理设备和虚拟设备使得几乎任何人都可以实现重大的配置变更。这些高度复杂的网络需要能够灵活应对大规模变化的管理框架。此外,随着网络不断发展,该框架需要能够扩展,以处理新的设备类型、概念和配置。以上是促使我们开发 Wicked 的其中一些主要动力。但是,如果没有一些有趣的特点,例如热插拔、架构独立性和占用空间小,一个完整安装的模型又怎能算完美?就算您只是想要通过 DHCP 来配置 eth0,我们也能满足您的需求。

Wicked 利用允许我们定义诸如地址配置等方面的标准设施的客户端/服务器型号,以便于整个架构完美集成。我们希望将网络配置作为我们可提供的一项服务,进而着手采用分层方法来创建不同的 dbus 服务,从而处理设备特有的功能以及更为常用或共享的功能。堆叠这些服务使我们能够很好地处理网络堆栈不同级别的配置。我们选择了 C 语言作为我们编写这个功能集的主要语言,还纳入了 ifconfig、ip、brctl、vconfig 和 ethtool 等工具提供的功能种类。

我们是一家开放型企业,所以我们甚至会广播事件通知,以便相关应用程序可以发现系统何时增加了网络接口,何时增加了 IP 地址,接口或路由何时发生了变化,等等。

对于某些系统管理任务,我们创建了允许使用 shell 脚本来扩展 Wicked 的框架。这使我们可以使用一些现有工具来更新 DNS 设置等方面,还使管理员可以扩展 Wicked 以满足特定需求。为了提高灵活性,Wicked 还提供了一种新的配置文件格式,这种格式是结构化的富文本格式。目前,这种格式供我们内部在解析 sysconfig-style 配置时使用,但准备开放给外界使用,将会成为将来推出的服务包的默认格式。

Wicked 正等待您的试用。Wicked 随附 SUSE Linux Enterprise Server 12 和 SUSE Linux Enterprise Desktop 12。Wicked 还适用于版本 13.1 或更高版本的 openSUSE。我们诚邀您使用 Wicked,并希望您提供宝贵的反馈。您可以通过电子邮箱 wicked-devel@opensuse.org 联系我们。

有关 Wicked 的其他信息,包括基本使用方法、源代码和源代码包的位置以及邮件列表信息,可在我们的 Wiki 上找到。