加入收藏 | 设为首页 | 会员中心 | 我要投稿 网站开发网_盐城站长网 (https://www.0515zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长百科 > 正文

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

发布时间:2021-01-14 11:37:13 所属栏目:站长百科 来源:网络整理
导读:副标题#e# 《15个私有云上的 DevOps 开源工具》要点: 本文介绍了15个私有云上的 DevOps 开源工具,希望对您有用。如果有疑问,可以联系我们。 在可维护性,可靠性,效率和安全性方面,DevOps 为私有云在改进操作流程方面发挥着重要的作用.私有云是一个由许多

Ironic?是一个OpenStack项目,它使用PXE配置裸机服务器和 IPMI以打开/关闭机器.Ironic 包含 Ansible Playbooks(bifrost项目),以独立模式安装和运行 Ironic,无需其它 OpenStack 组件.Ironic 还包含命令行客户端和 Web 客户端.

Ironic 使用 Python 语言编写.License:GNU Affero General Public License.

3. 编排工具(Orchestration tools)

编排作为配置工具的元级.

使用方案:初始化部署和配置私有云,自动扩展.

3.1 MCollective

MCollective?是构建服务器编排和并行工作执行系统的框架,而不是一个工具.MCollective 支持分散库存和自动发现.

MCollective 服务端 应安装在 被管理节点/虚拟机,而 MCollective 客户端应安装在控制机上.MCollective 使用代理插件来扩展其功能.

MCollective 服务器和客户端不直接通信,而是在发布/订阅模式中使用中间件系统(通常是RabbitMQ).这允许 MCollective 客户端向 MCollective 服务器发送广播请求,也支持直接请求/回复.

MCollective 使用Ruby语言编写. 许可:Apache License.

3.2 Juju

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

3.3 Apache Brooklyn

Apache Brooklyn?允许你使用基于策略的自动化来建模,监控和管理应用程序.对于建模,Apache Brooklyn 使用蓝图(blueprint)的概念,它根据组件、配置、关系和部署场景来定义应用程序.蓝图使用 YAML 文件编写.

Apache Brooklyn 支持许多应用程序,开箱即用.并具有 Web UI 来部署,监视和管理应用程序.此外,Apache Brooklyn 支持许多位置部署,包括云平台和现有节点.

相同的蓝图可以用于将应用程序部署到不同的位置.Policies?根据应用程序传感器的读数定义对应用程序的无人值守更改.

Apache Brooklyn 使用 Java,Javascript,Groovy 语言编写.许可: Apache License.

3.4 Cloudify

Cloudify?允许你在 YAML 文件中定义应用程序配置、服务和依赖关系.这样的文件称为蓝图.Cloudify 采用蓝图作为输入,可以部署和管理应用程序.

Cloudify 支持多种云计算平台和虚拟化环境.蓝图还定义了应用程序的生命周期.对于应用程序部署阶段,Cloudify 支持配置管理工具,如Chef和Puppet.

Cloudify 使用 Python 语言编写.许可:Apache License.

3.5 Docker Machine

Docker Machine?是一个工具,它允许你在提供的节点上安装 Docker(见下文),之后可以远程的管理这样的节点.

Docker Machine 使用Go语言编写.许可:Apache License.

4. 持续集成工具 (Continuous integration tools)

使用案例:从开发到生产,在内部云开发、安装和应用程序运行的统一平台 .

4.1?Jenkins

Jenkins?是一个具有许多插件的自动化服务器.用于构建,测试和自动化部署应用程序.通常Jenkins用作软件开发的 CI/CD 工具.Jenkins 的作业(构建)可以由各种触发器启动.例如提交代码到版本控制系统,按计划事件,通过访问特定 URL 构建或者在完成其它构建之后进行触发.

Jenkins 使用 Java 语言编写. 许可:MIT License.

4.2?Docker

Docker?允许你将具有所有依赖关系的应用程序软件打包到容器中,这可以很轻松的部署在基于 Linux 的平台上.在非 Linux 平台上 Docker 使用一个虚拟机来运行容器.

Docker 使用 Go 语言编写. 许可:Apache License 2.0.

5. 监控和日志记录(Monitoring and logging)

使用案例:从私有云服务和应用程序整合日志,监控分布式服务和应用程序.

5.1 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.

5.2 Elasticsearch,Logstash,Kibana (ELK)

(编辑:网站开发网_盐城站长网 )

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!