OpenStack Liberty High Availability 概述和指导-第二部分

      本文由 Avishay Trager 和 Shimshon Zimmerman编写。
      在第一部分我们主要描述了OpenStack Liberty 高可用性的基本知识。在本文我们聚焦于HA模式和OpenStack Liberty版本的OpenStack服务。

专用硬件节点

      我们将开始与一个配置即服务以隔离方式运行在专用节点。隔离配置的两个主要好处是服务之间的资源冲突最小化,节点故障对系统的影响有限;因此他们更容易管理。缺点是过度采购和操作开销额外节点不充分的利用。在这里,我们描述了不同的节点类型和每个OpenStack最低推荐节点数:

OpenStack director/master 节点

      这节点是可选的,但是强烈建议使用一个专用的服务器来存储主配置,编排OpenStack安装和管理安装的云平台。许多OpenStack部署工具要求一个专用的服务器作为OpenStack director/master节点。

Controller节点

      一个高可用OpenStack部署应该拥有至少三个controller节点。controller节点主要负责运行服务如下:

  • 所有OpenStack服务除nova-compute外负责运行用户工作负载(VMs或容器)。请根据OpenStack High Availability Guide 安装和配置OpenStack服务。
  • 数据库服务,如MariaDB/MySQL和Galera(法定人数所需奇数节点)。
  • 消息队列服务,如RabbitMQ。
  • ntp或chrony-OpenStack服务和其他外部组件,如Ceph,需要高度时间精确,因此在所有节点之间应该时刻时间同步。
          部署超过三个控制器节点和在它们之间传播服务是可能的,但是三个通常就足以处理数百个计算节点。

Compute节点

      Compute节点用户工作负载运行,通过nova-compute实例管理它们。至少拥有两个计算节点才允许进行迁移/疏散工作负载从一个故障节点到一个活跃节点。

Storage 节点

      Storage节点运行部署存储软件包含基于卷软件、镜像和对象存储如Ceph或Swift(而不是存储设备)。Ceph要求至少三个Ceph监控实例安装在controller节点,并至少需要2-3个专用节点安装Ceph OSD实例(至少尽可能多的节点配置副本的数量)。Swift我们推荐至少两个Swift代理实例和至少三个专用Swift存储节点。Swift代理实例可以安装在controller节点,但可能会消耗大量的CPU负载和网络资源。

其他节点

      你或许想安装测量服务和它的数据库在专用服务器上,因为它可以很好用来监控现有的集群。另一个例子是一个专用服务器(或服务器)OpenStack数据库。

融合部署

      如上所述,专用节点运行指定服务是非常简单的因为可以减少资源之间使用竞争和减少故障节点的影响,但是它导致节点无法充分利用。使用专用的节点模型为基础,我们可以考虑给节点多个角色。
      如果总隔离的一个极端,总会聚在另一端。这里,控制服务或许运行在任意节点,每个节点运行用户工作负载和存储服务。这种类型的部署是最具成本效益的,但最难以管理。必须特别注意,这样每个服务系统中得到足够的资源以防止退化。例如Ceph在某些情况下可以使用大量的RAM和CPU,使他们无法工作负载。我们建议保留某种形式的资源,如Linux cgroups当追求这样的架构时。

Avoid common Pitfalls with OpenStack, click here

OpenStack服务的HA

Compute(Nova)

实例高可用

      从Liberty开始,Nova允许从检测到故障节点后转移客户机。“mark host down”方法添加到了Nova API。这种方法允许外部工具像Pacemaker或Consul通知Nova主机关闭的快于一个标准的周期性任务检测它。之后,一个客户机开始转移。

Storage(Cinder)

卷迁移API

      卷迁移的API允许移动两个后端之间的卷及其数据的方式对用户是透明的和工作负载。有两个层次的存储支持这个特性:“generic”和“specialized”。随着Liberty发布,generic方法在任何存储后端都可以工作。在Liberty之间,支持受限于iSCSI和FC后端。注意generic方法只支持Nova的libvirt驱动。在这种方法中,被复制的数据通过附加卷的VM进行流动,或一个Cinder节点不附加卷。某些卷后端支持specialized流,在某些情况下,存储后端处理数据迁移(一般如果两个池之间的迁移是在同一存储后端)。

卷复制API

      卷复制的API允许使用OpenStack Cinder管理存储后端块级别复制功能。尽管在Liberty中取得了一些进步支持卷复制,设计和实现还有待最后确认。

网络(Neutron)

Neutron HA模式

OpenStack网络支持以下HA模式:

  • ML2 插件和Open vSwitch(OVS)的虚拟路由冗余协议(VRRP)
  • ML2 插件和Linux bridges的虚拟路由冗余协议(VRRP)
  • 分布式虚拟路由(DVR)支持扁平和VLAN外部网络,VXLAN和GRE项目网络(从Juno版开始)和VLAN项目网络(从Kilo版开始)
分布式DHCP代理

      Neutron DHCP代理内在支持HA,要求达到高可用需要每个网络超过一个DHCP代理。

分布式元数据代理

      Neutron元数据代理不支持内建HA。OpenStack Liberty之前,使元数据服务高可用你不得不使用元数据代理在active/passive模式下。在Liberty中可以运行分布式元数据代理在active/active模式下。

新LBaaS实现

      新的LBaaS实现现在基于operator-grade可伸缩负载均衡Octavia并且不再是实验。

编排(Heat)

每个资源状态的持久性模式

      在OpenStack Liberty版本中,引入了一个新的可选模式持续每个资源状态状态在堆栈更新过程中。这提高了容错性和Heat引擎中可以从故障中恢复。有一个计划在即将到来的OpenStack发布中实现新自动恢复特性。

共享文件系统(Manila)

共享迁移

      共享迁移允许你迁移一个共享文件从一个主机池到另一个主机池并且可以在不同后端之间进行迁移。

容器(Magnum)

支持多主机Kubernetes

      多主机Kubernetes支持提供高可用Kubernetes使用Magnum超过1个主机节点数。

Kubernetes与Neutron 负载均衡

      Kubernetes现在与Neutron负载平衡器集成。

容器化服务(Kolla)

Kolla项目添加到OpenStack大租户在Liberty版本周期中。Kolla提供Docker容器OpenStack服务和Ansible playbooks。因此容器和部署工具是一个快速和可伸缩方法安装OpenStack。Kolla在30分钟内可以安装数百个高考用OpenStack Liberty集群。
      不管你用什么方式部署OpenStack,一个高可用性(HA)软件架构上运行将对你的成功至关重要。确保您的部署通过简化流程的“开箱即用”的云解决方案。


原文:http://www.stratoscale.com/blog/openstack/openstack-liberty-high-availability-overview-and-guidelines-part-2/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值