提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
转帖|行业资讯|编辑:王香|2017-04-12 11:20:40.000|阅读 1016 次
概述:私有云是一个由许多硬件和软件组件组成的复杂系统。对于任何支持的企业组织,操作流程的自动化和文档记录、规划变更以及跟踪应用的更新都是强制性的要求。在可维护性,可靠性,效率和安全性方面,DevOps为私有云在改进操作流程方面发挥着重要的作用。在这篇文章中,我们将在几个类别中讨论15个针对私有云的DevOps工具。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
配置管理工具(Configuration management tools)
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 清单(以.pp 为文件扩展名)。Puppet 可以使用独立的模式或者 服务器/客户端 模式。Puppet 客户端(agent)应该安装要配置的每个节点或VM上。Puppet客户端 通过一个名为Facter的工具收集Puppet服务器上的配置更改要求,并生成特定与服务器的目录,其应用的配置更改都会记录下来,Puppet 可以用来配置 类unix系统或 Windows节点/虚拟机。
Puppet 是用Ruby 语言编写。许可:Apache License.
Puppet 清单 的示例:
service { 'nginx': ensure => running, enable => true, }
Absible 使用 模块(Modules)来定义配置任务。模块可以用标准脚本语言(Python,Bash,Ruby,等等)编写,这是一个很好的做法,使每个模块幂等。Ansible剧本(YAML语言编写)角色映射到 节点/虚拟机上,以对这些节点/虚拟机 进行编排有序的执行。Ansible支持ad-hoc任务:管理任务(不必幂等)以在多个节点/虚拟机上执行。Ansible具有无代理架构:你不需要在配置的节点/虚拟机上安装Ansible(然而,这些节点必须安装python环境),Ansible 通过SSH或者通过PowerShell(Windows机器)从单个控制机器上配置管理节点/虚拟机,并且能够支持并行配置多个节点。Ansible 可以用来配置 类unix系统或 Windows节点/虚拟机。
Ansible 使用Python 语言编写。许可:GNU General Public License.
Ansible playbook 示例:
- name: Install nginx yum: name=nginx state=present- name: restart nginx service: name=nginx state=restarted enabled=yes
Salt(又叫SaltStack)同时支持服务器/客户端 和无代理模式。在后一种情况下,Salt 使用SSH连接到受管理的节点/虚拟机。Salt 使用以Python编写的执行模块,其中包含函数以定义配置任务。另外 Salt 支持ad-hoc 命令。Salt 状态文件(以.sls 为文件扩展名)以YAML格式定义幂等任务。
Salt 使用Python 语言编写。许可:Apache License.
Salt 状态描述文件示例:
nginx: pkg.installed
裸机配置工具(Bare-metal provisioning tools)
Cobbler使用 DHCP服务器来处理引导服务器并将其引导到TFTP服务器,在那里它可以下载作为PXE引导文件和带有操作系统的可引导映像。然后 Cobbler使用Linux的 Kickstart(用于基于Red Hat的操作系统)或Pressed(用于基于Debian的操作系统)安装方法进行无人值守的操作系统安装和配置。由配置文件来自定义要配置的系统,Cobbler支持多个配置文件。一旦节点被配置,Cobbler应确保该节点被引导到预配置的操作系统而不是PXE。Cobbler包含 命令行客户端和Web客户端。
Cobbler 使用Python语言编写。许可:GNU General Public License.
Ironic 是一个OpenStack项目,它使用PXE配置裸机服务器和 IPMI以打开/关闭机器。Ironic 包含Ansible Playbooks(bifrost项目),以独立模式安装和运行Ironic,无需其它OpenStack 组件。Ironic还包含命令行客户端和Web客户端。
Ironic 使用Python 语言编写。License: GNU Affero General Public License
编排工具(Orchestration tools)
MCollective 是构建服务器编排和并行工作执行系统的框架,而不是一个工具。MCollective 支持分散库存和自动发现。MCollective 服务端 应安装在 被管理节点/虚拟机,而MCollective 客户端应安装在控制机上。MCollective使用代理插件来扩展其功能。MCollective 服务器和客户端不直接通信,而是在发布/订阅模式中使用中间件系统(通常是RabbitMQ)。这允许MCollective客户端向 MCollective 服务器发送广播请求,也支持直接请求/回复。
MCollective 使用Ruby语言编写. 许可: Apache License
Juju允许你将复杂的应用程序部署到多个云平台和裸机服务器上。Juju使用charms来定义代理的行为,charm hooks是要执行的实际任务(如:安装软件,启动或停止服务等)。Charms 还定义了与其它charms 的关系。Charm hooks 可以用任何语言来实现。还有配置管理工具,如Ansible,Chef,Puppet 可以在hook里面做服务器配置管理。Charm bundle 允许你将一组charms,它们的属性和关系导出到YAML文件中。然后,这个 bundle可以导入到另一个Juju环境中,以准确的部署已部署的应用程序。Juju包含 命令行客户端和web客户端。
Juju 使用Go语言编写。许可:GNU Affero General Public License, GNU Lesser General Public License.
Apache Brooklyn 允许你使用基于策略的自动化来建模,监控和管理应用程序。对于建模,Apache Brooklyn 使用蓝图(blueprint)的概念,它根据组件、配置、关系和部署场景来定义应用程序。蓝图使用YAML文件编写。Apache Brooklyn支持许多应用程序,开箱即用。并具有Web UI来部署,监视和管理应用程序。此外,Apache Brooklyn支持许多位置部署,包括云平台和现有节点。相同的蓝图可以用于将应用程序部署到不同的位置。Policies 根据应用程序传感器的读数定义对应用程序的无人值守更改。
Apache Brooklyn 使用Java, Javascript, Groovy语言编写. 许可: Apache License.
Cloudify 允许你在YAML文件中定义应用程序配置、服务和依赖关系。这样的文件称为蓝图.Cloudify 采用蓝图作为输入,可以部署和管理应用程序。Cloudify 支持多种云计算平台和虚拟化环境。蓝图还定义了应用程序的生命周期。对于应用程序部署阶段,Cloudify支持配置管理工具,如Chef和Puppet。
Cloudify 使用Python 语言编写。许可:Apache License.
Docker Machine 是一个工具,它允许你在提供的节点上安装Docker(见下文),之后可以远程的管理这样的节点。
Docker Machine 使用Go语言编写。许可:Apache License.
持续集成工具 (Continuous integration tools)
Jenkins
Jenkins 是一个具有许多插件的自动化服务器。用于构建,测试和自动化部署应用程序。通常Jenkins用作软件开发的CI/CD工具。Jenkins 的作业(构建)可以由各种触发器启动。例如提交代码到版本控制系统,按计划事件,通过访问特定URL构建或者在完成其它构建之后进行触发。
Jenkins 使用Java 语言编写. 许可: MIT License.
Docker 允许你将具有所有依赖关系的应用程序软件打包到容器中,这可以很轻松的部署在基于Linux的平台上。在非Linux 平台上Docker使用一个虚拟机来运行容器。
Docker 使用Go 语言编写。 许可:Apache License 2.0
监控和日志记录(Monitoring and logging)
Zabbix
Zabbix是一个为应用服务,网络服务和硬件监控提供的解决方案。Zabbix 将收集的数据存储在关系数据库中,如MySQL,PostgreSQL等。Zabbix 允许你监控简单的服务,如HTTP服务。Zabbix agent端可以安装在Windows和 类Unix服务器上,用来检视系统参数,如CPU 负载,内存和磁盘利用率等。另外,agent可用于监视标准服务和自定义应用程序。Zabbix也支持通过SNMP、SSH等方式,无需在要监视的服务器上安装代理。
Zabbix 使用C, PHP,Java 语言编写. 许可: GNU General Public License version 2.
ELK 是Elasticsearch,Logstash,Kibana软件的组合,它是用于记录,日志分析,日志搜索和可视化的完整工具。Elasticsearch是基于Apache Lucene的搜索工具。Logstash是用于收集,解析和存储日志的工具,可以通过Elasticsearch对其进行索引。Logstash 支持许多数据源,解析器和过滤器。Logstash通常与Lumberjack(一种工具)结合使用。该工具提供其 syslog实现,并可将本地日志事件转发到Logstash中。当通过网络发送日志时,Lumberjack使用SSL对日志进行加密。Logstash 和Elastcsearch都支持 HA配置,没有单点故障,以确保所有日志都存储在远程。Kibana 是Elasticsearch的可视化插件。
Elasticsearch, Logstash 使用Java 编写. Kibana 使用JavaScript 编写. Lumberjack 使用C语言编写. License: Apache License 2.0.
以上就是今天给大家介绍的DevOps 开源工具,鉴于强大的功能和贡献,DevOps正在更多地被人们关注,希望以上内容能够对你有所帮助。
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
通过提供强大的3D CAD数据访问工具并适用于桌面、移动和Web的高级环境3D可视化发动机,HOOPS在提升造船设计和制造流程的效率方面发挥了重要作用。
HOOPS Luminate在汽车行业中的应用具有广泛的潜力和深远的影响。它通过提供高效的3D可视化、虚拟装配与拆解、性能分析、客户定制等功能,帮助汽车制造商在设计、生产和销售过程中提升效率、降低成本并提高产品质量。
在不断发展的软件开发世界中,使工具和框架与最新的平台版本保持同步至关重要,欢迎查阅~
全球航运业对国际贸易至关重要,全球 90% 以上的商品通过海运运输。准确监控和控制这些集装箱的移动对于维持高效的供应链至关重要。手动输入集装箱号码是这一程序的关键部分,它带来了相当大的挑战,例如人为错误和效率低下。
专业的.NET Office套件,涵盖office文档创建、编辑、转换、管理和OCR内容识别等操作
Spire.Doc for .NETSpire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET 类库。
Spire.XLS for .NETSpire.XLS for .NET是专业.NET Excel组件,快速完成对Excel各类编程操作
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢