zoukankan      html  css  js  c++  java
  • openstack部署工具简介

    个人使用方面
    DevStack

    无疑,在可预见的未来时间内,DevStack仍将是众多开发者们的首选安装方式或工具。该方式主要是通过配置参数,执行shell脚本来安装一个OpenStack的开发环境。
    Github: https://github.com/openstack-dev/devstack
    Wiki: https://wiki.openstack.org/wiki/DevStack
    Rdo
    Rdo是由Red Hat开源的一款部署OpenStack的工具,同DevStack一样,支持单节点和多节点部署。但Rdo只支持CentOS系列的操作系统。需要注意的是,该项目并不属于OpenStack官方社区项目。
    Docs:https://www.rdoproject.org/install/quickstart

    手动部署
    手动部署all-in-one、multi-node、multi-HA-node环境。

    企业、团体方面
    Puppet
    Puppet由Ruby语言编写。应当说,Puppet是进入OpenStack自动化部署中的早期一批项目,历史还算悠久。目前,它的活跃开发群体们是Red hat、 Mirantis、UnitedStack等。
    Redhat自从收购Ansible之后,如今仍然保持强势劲头在Puppet
    OpenStack项目中的Commit数量和质量,其技术实力不容小觑;Mirantis出品的Fuel部署工具中,大量的模块代码便使用的是
    Puppet。就国内而言,UnitedStack是Puppet社区贡献和使用的最大用户。
    Github:
    https://github.com/openstack/puppet-keystone
    Governance:
    Wiki:
    https://wiki.openstack.org/wiki/Puppet

    Ansible
    是新近出现的自动化运维工具,已被Red Hat收购。基于Python开发,集合了众多运维工具(puppet、cfengine、chef、saltstack等)的优点,实现了批量系统配
    置、批量程序部署、批量运行命令等功能,它一方面总结了Puppet的设计上的得失,另一方面也改进了很多设计。比如是基于SSH方式工作,故而不需要在
    被控端安装客户端。使得在和OpenStack结合上没有历史包袱,更加能够轻装上阵,未来发展潜力不容小觑号称是“你一直寻找的下一代Iaas”的
    Zstack,使用到的部署工具也是基于Ansible。
    Openstack-ansible项目,最早是由老牌Rackspace公司在Launchpad官网上注册。
    在最新的Ansible OpenStack项目社区Commit贡献中,Rackspace也可谓是遥遥领先,而紧随其后的是Red Hat、国内九州云等公司。
    Github:https://github.com/openstack/openstack-ansible


    SaltStack
    也是一款开源的自动化部署工具,基于Python开发,实现了批量系统配置、批量程序部署、批量运行命令等功能,和Ansible也是挺相近的。不同之一
    是,由于SaltStack的master和minion认证机制和工作方式,需要在被控端安装minion客户端,在加之其他原因,自然和
    Ansible相比,其优缺点便很明显了。
    需要注意的是,使用Saltstack部署OpenStack,并不属于OpenStack社区项目。目前,主要还是处于用户自研自用的阶段。据笔者所知,目前国内的携程应该是使用Saltstack部署OpenStack规模最大的用户。
    Saltstack部署OpenStack示例:https://github.com/luckpenguin/saltstack_openstack
    Saltstack部署OpenStack模块:

    TripleO
    Tripleo
    项目最早由HP于2013.4在launchpad上注册BP。用于完成OpenStack的安装与部署。TripleO全称“OpenStack On

    OpenStack”,意思即为“云上云”,可以简单理解为利用OpenStack来部署OpenStack,即首先基于V2P(和P2V相反,也就是指
    虚拟机的镜像迁移到物理机上)的理念事先准备好一些OpenStack节点(计算、存储、控制节点)的镜像,然后利用已有openstack环境的裸机
    服务Ironic项目去部署裸机,软件安装部分的diskimage-builder,最后通过Heat项目和镜像内的DevOps工具(Puppet
    Or Chef)再在裸机上配置运行openstack。
    和其他部署工具不同的是,TripleO利用OpenStack本来的基础设施来部署OpenStack,基于Nova、 Neutron、Ironic和Heat,来自动化部署和伸缩OpenStack集群。

    当确切的说,TripleO项目属于当前OpenStack社区主推的“Big Tent”开发模式下的big tent
    project(OpenStack下的项目分为三种,core project: nova/neutron等核心项目,big tent
    project: 非核心项目,但也被OpenStack 基金会接受;第三种就是其它项目,只是放在OpenStack下,但是社区还没有接受)。
    在该项目的社区Commit贡献上,Red hat可谓是遥遥领先,而紧随其后的是IBM等公司。
    Wiki:https://wiki.openstack.org/wiki/TripleO

    Kolla
    在国内一些互联网资料上,常看到关于kolla是TripleO项目的一部分这样的描述,其实是不准确的。真实的是,Kolla项目起源于Tripleo项目,时至今日,与它没有任何关系(虽然它们的目标都是做自动化部署,但走的道路却不同)。比之于Tripleo和其他部署工具,Kolla走的是docker容器部署路线。
    kolla项目起源于TripleO项目,聚焦于使用docker容器部署OpenStack服务。该项目由Cisco于2014年9月提出,OpenStack的孵化项目。当前Kolla项目在Kollaglue
    repo提供了以下服务的docker镜像。 # docker search kollaglue
    Kolla的优势和使用场景,体现在如下几个方面:
    原子性的升级或者回退OpenStack部署;
    基于组件升级OpenStack;
    基于组件回退OpenStack;
    这里,我们予以拆分来理解:
    Kolla的最终目标是为OpenStack的每一个服务都创建一个对应的Docker Image,通过Docker
    Image将升级的粒度减小到Service级别,从而使升级时,对OpenStack影响能达到最小,并且一旦升级失败,也很容易回滚。升级只需要三步:Pull新版本的容器镜像,停止老版本的容器服务,然后启动新版本容器。回滚也不需要重新安装包了,直接启动老版本容器服务就行,非常方便。
    Kolla是通过Docker Compose来部署OpenStack集群的,现在主要是针对裸机部署的,所以在部署Docker Container时,默认的网络配置都是Host模式。
    首先,只需要通过一个命令就可以把管理节点部署完成,这个命令是调用Docker
    Compose来部署OpenStack的所有服务,然后我们可以在每一个计算节点上通过Docker
    Compose安装计算节点需要的服务,就能部署一个OpenStack集群。因为Kolla的Docker
    Image粒度很小,它针对每个OpenStack服务都有特定的Image,所以我们也可以通过Docker
    Run来操作某个具体的OpenStack服务。
    目前,我所在的公司九州云的一位同事近日获得提名成为Kolla项目Core。为OpenStack社区中增添了一份来自于中国的力量。

    Fuel
    是针对OpenStack生产环境目标
    (非开源)设计的一个端到端”一键部署“的工具,大量采用了Python、Ruby和JavaScript等语言。其功能含盖自动的PXE方式的操作系统安装,DHCP服务,Orchestration服务 和puppet 配置管理相关服务等,此外还有OpenStack关键业务健康检查和log
    实时查看等非常好用的服务。
    Fuel,这款让很多人即爱且痛的工具,在国内外都很盛名。爱的原因是,它确实很棒;痛的原因是,要想彻底掌握
    它,可不是一件容易事(各个模块集成度高、使用技术复杂)。既然提到Fuel,自然不能不提它的父母——Mirantis。Mirantis是一家技术实力非常雄厚的OpenStack服务集成商,他是社区贡献排名前5名中唯一一个靠OpenStack软件和服务盈利的公司。同时,Fuel的版本节奏也很快,平均每半年就能提供一个相对稳定的社区版。
    从和笔者接触到的一些情况来看,国内研究、使用Fuel的个人、群体还是为数不少的。不少国内OpenStack初创公司的安装包就是基于Fuel去修改的。
  • 相关阅读:
    TCP源码—连接建立
    TCP系列02—连接管理—1、三次握手与四次挥手
    TCP系列01—概述及协议头格式
    ubuntu软件管理apt与dpkg
    318. Maximum Product of Word Lengths
    317. Shortest Distance from All Buildings
    316. Remove Duplicate Letters
    315. Count of Smaller Numbers After Self
    314. Binary Tree Vertical Order Traversal
    313. Super Ugly Number
  • 原文地址:https://www.cnblogs.com/nineep/p/6795614.html
Copyright © 2011-2022 走看看