首页 存档 技术 查看内容

15个私有云上的DevOps 开源工具 DevOps Tools

2018-3-30 13:00 |来自: 互联网 409 0

摘要:   在可维护性,可靠性,效率和安全性方面,DevOps为私有云在改进操作流程方面发挥着重要的作用。私有云是一个由许多硬件和软件组件组成的复杂系统。对于任何支持的企业组织,操作流程的自动化和文档记录,规划变更 ...

  在可维护性,可靠性,效率和安全性方面,DevOps为私有云在改进操作流程方面发挥着重要的作用。私有云是一个由许多硬件和软件组件组成的复杂系统。对于任何支持的企业组织,操作流程的自动化和文档记录,规划变更和跟踪应用的更新都是强制性的要求。

  同样的方法也适用于云计算的工作负载量。此外DevOps的实践也成为开发者和QA团队事实上的标准,特别是当使用私有云作为开发或目标平台时。当然,并不是所有的云操作方面都可以用DevOps来实践。例如,许多硬件相关的操作不匹配--你不能用一个软件工具,去物理的连接服务器上的硬件开关(?本人注:服务器的IPMI是可以做到远程控制呀。)--但即使在这种情况下,你仍可使用DevOps工具和实践来验证连通性和记录网络配置过程。也为不断增长的软件定义网络(SDN)的需求提供了一个机会,让DevOps在新的领域得以发展。

我们将回顾私有云几种类别上的15个DevOps工具

  在这篇文章中,我们将在几个类别中讨论15个针对私有云的DevOps工具。这几些工具类别的分选主要是人为合成的,在由工具提供的功能之间没有严格的边界,并且在某些情况下,这里所提到的工具可以做更多范畴假设。最后,这里的一些工具没有根据具体的规则去分类,所以如果我们忘记了你认为应该包括的工具,只需给我们发个消息,我们将会讨论这个工具,并在下一次综述时将其纳入其中。

DevOps Tools

配置管理工具(Configuration management tools

  配置管理工具自动完成日常操作,系统管理任务,当建立复杂的系统时,最大限度地减少人为错误。配置管理工具允许你定义的配置作为代码。(“Infrastructure as a code” 的方式)。它可以让你追踪配置基线之间的变化(又称为配置版本控制),有效的应用它们并在必要时进行回滚更改操作。此外操作流程,如部署或发布管理可以记录并验证。

  使用案例:私有云初始化部署和配置,将更改应用到私有云,应用具体的部署和配置。


Chef

  Chef的配置文件使用领域专用语言(DSL)的“配方”(以.rb 为文件扩展名)。多个配方也可以整合到一个菜谱(cookbook)中。该配方定义了资源及其状态,例如:应该安装的软件包,该文件应存在,服务应该运行,等等。Chef验证所有定义的资源是否应具有指定的状态,如果必要,任何资源的实际状态如果与指定的状态不同,那么则应用更改。这允许你写幂等的配方,意味着你可以多次应用相同的配方,如果所有定义的资源都具有指定的状态,那么Chef 将不会更改任何内容。Chef可以在 服务器/客户端 模式中使用,也可在独立的模式下运行。在任何情况下,Chef 应安装要配置的节点或VM上。

  Chef 客户端是用Ruby语言编写的,Chef 服务器是用Ruby 和Erlang语言编写的。许可:2.7版本以后的使用 Apache License,之前版本使用 GNU General Public License。

Chef 菜谱的示例:

include_recipe "apt"
 
 package 'nginx' do
  action :install
 end
 
 service 'nginx' do
  action [ :enable, :start ]
 end

Puppet

  Puppet的配置文件使用特殊的领域专用语言,它们被称为Puppet 清单(以.pp 为文件扩展名)。Puppet 可以使用独立的模式或者 服务器/客户端 模式。Puppet 客户端(agent)应该安装要配置的每个节点或VM上。Puppet客户端 通过一个名为Facter的工具收集Puppet服务器上的配置更改要求,并生成特定与服务器的目录,其应用的配置更改都会记录下来。
Puppet 可以用来配置 类unix系统或 Windows节点/虚拟机。

  Puppet 是用Ruby 语言编写。许可:Apache License.

Puppet 清单 的示例:

service { 'nginx':
  ensure =
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

相关分类

返回顶部