超千个节点OpenStack私有云案例(1):CERN 5000+ 计算节点私有云

CERN:欧洲核子研究组织

本文根据以下几篇文章整理而来:

1. 系统

(1)系统规模,2015 年是 5000个计算节点

(2)2016年2月是 5500 个计算节点

(3)CERN 使用的 OpenStack 版本,基本上是延迟一个社区版本

(4)左边是当前正在运行的虚机的数量 16000 个,右边是被创建过的虚机的累计数量,超过 25 M。

(5)2015 年的总体结构:一个 region,2 个数据中心,26 个 Cell,全部使用 nova-network

在 2016 年2月,已经增长到了 33 个 Cell,而且在其中一个 Cell 中使用了 Neutron。

(6)系统架构:使用 nova-cell

(7)Nova cell 架构

(8)为什么要使用 Cell?

不同的用户有不同的需求,因此,在不同的Cell内部,可以使用不同的配置,包括 nova scheduler 等;Cell 还有助于缩小故障发生时候的影响域。

(9)Cell V1 的局限性

(10)Nova-cell 系统架构

两级 Cell 结构。只在 Nova Top Cell 上采用 HA,在 Child Cell controller 上不使用HA。

(11)每个 Child Cell 大概 200 个计算节点

(12)CERN 自己开发了 Cell 调度器

(13)如果将特定 project 的虚机调度到特定的 Child cell 上

(14)如何使用 AZ

(15)一开始只使用了一个 Child cell

在 2013 年的时候,只使用了一个 Cell,考虑到:(1)Nova Cell 的调度机制非常弱,只能随机调度,(2)想使用 host aggregate功能 (3)不能跨Cell 做 live migration。但是最后发现非常难于管理。

(16)他们就将其拆分为 9 个 Child cell

(17)Nova 做 block live migration 遇到的问题

(18)Nova kilo 版本与 Python 2.6 不兼容

(19)CERN 使用基于 nova-network 的 网络分段技术

(20)CERN 自己开发了一个 Network driver

(21)他们已经对 Neutron 做了大量的测试,已经在计划迁移(到2016年2月他们已经在一个Child cell 中使用 Neutron)

(22)Keystone

使用两个不同的 Keystone。Ceilometer 需要调用大量的 API,因此给它们一个专有的Keystone,免得影响用户使用 Keystone。

(23)Glance

Glance 服务运行在虚机中。之前,Glance registry 可以被别的 Glance API 使用,但是,这导致难于定位问题,因此,现在的 Glance registry 只和本地的 Glance API 通信。但是,Glance 不支持分 Project 设置 Quota,这对他们很重要。

(24)Cinder

使用了 3个 backend,两个 Ceph,一个 NetApp。目前没有 Ceph Cinder driver for hyper-v,所以他们使用了 NetApp,被 Hyper-V 虚机使用。

 

(25)Ceilometer

两套Ceilometer 基础 设施。一个保存 sample,meters 等,用于统计,数据保存在 Hbase 中,数据保存3个月。之前用 MogoDB,但是难于扩展。

另一个用于 alarming,它将 CPU sample 保存在 MongoDB 中,只保存几个小时。如果不分开的话,查询 alarming 非常慢。

 

(26)Rally

不仅用于 benchmarking 测试,还用于 FVT。

(27)新的挑战

2. 简单分析

2.1 CERN 对 Nova Cell 的看法

对大规模的部署,Nova Cell 有几个优势:

  • 对用户只有单端点可见(single endpoint to users)
  • 增加基础架构的可用性和弹性(increase the availability and resilience of the Infrastructure)
  • 避免超出 Nova 和其它外部模块(比如 DB,MQ 等)的上限 (avoid that Nova and external components (DBs, message brokers) reach their limits)
  • 隔离不同用户 (isolate different user cases)

但是,Cell 目前还是有不少的局限,如下的功能不能和 Nova Cell 一起使用:

  • Security Groups;
  • Manage aggregates on Top Cell;
  • Availability Zone support;
  • Server groups;
  • Cell scheduler limited functionality;

2.2 本人的一点看法

  • 使用现有的 OpenStack 来支持 5000 个计算节点,那是非常非常牛的事情!这可能是目前最大的 OpenStack 生产系统私有云部署规模!
  • 计算扩展性方面,使用 Nova cell 是一个解决方案,但是目前它的 V1 版本已经被冻结,V2 还在开发中,因此,要使用的话,需要做大量的开发和问题定位;而且,它还存在大量的局限性。
  • 网络扩展性方面,Neutron 的扩展性和稳定性依然问题很大,CERN 也在一步步尝试,期待他们使用 Neutron 的心得
  • 存储扩展性方面,Ceph 居然能做到支撑 30PB 的数据量,这也是非常非常牛的事情!
  • Ceilometer 扩展性方面,默认的扩展性和对系统的压力依然问题很大,CERN 做出了改进的非常好的示范
  • 谢谢 CERN 团队的超强工作和无私分享
时间: 2024-10-05 04:58:54

超千个节点OpenStack私有云案例(1):CERN 5000+ 计算节点私有云的相关文章

openstack Q版部署-----nova服务配置-计算节点(6)

一.服务安装 yum install openstack-nova-compute -y 编辑/etc/nova/nova.conf文件并设置如下内容 [DEFAULT] enabled_apis = osapi_compute,metadata transport_url = rabbit://openstack:[email protected] my_ip = 10.1.80.111 use_neutron = True firewall_driver = nova.virt.firewa

S1_搭建分布式OpenStack集群_07 nova服务配置 (计算节点)

一.服务安装(计算节点)安装软件:# yum install openstack-nova-compute -y 编辑/etc/nova/nova.conf文件并设置如下内容:# vim /etc/nova/nova.conf[DEFAULT]enabled_apis = osapi_compute,metadatatransport_url = rabbit://openstack:[email protected]my_ip = 10.10.11.12use_neutron = Truefi

五,openstack之nova服务的安装(计算节点)

目录 openstack之nova服务的安装(计算节点) 一,计算节点安装部署nova 1,openstack安装服务的通用步骤 2,安装nova 3,修改nova的相关配置文件 4,确认计算节点是否支持虚拟机硬件加速 5,启动Compute服务及其相关服务,并将其配置为在系统启动时自动启动 6,查看程序启动状态 openstack之nova服务的安装(计算节点) 一,计算节点安装部署nova 1,openstack安装服务的通用步骤 1,创库授权 2,在keystone创建用户,关联角色 3,

中小企业openstack私有云布署实践【12.2 网络Neutron-controller节点配置(办公网环境)】

网络这一块推荐使用的是 Neutron--LinuxBirdge的Ha高可用,此高可用方案对Public作用不是很大,Public只用到DHCP,而Private则会用到L3 Agent,则此方案是有用的,但要关掉和牺牲一个L3 population的特性--抑制ARP报文广播.原因在下文的配置文件有说明,并因我们布的是私有云,不像公有云的多租户private网络数量之大,这个特性牺牲在中小私有云是可接受的. 一.首先登录controller1创建neutron数据库,并赋于远程和本地访问的权限

中小企业openstack私有云布署实践【13.2 网络Neutron-compute节点配置(办公网环境)】

所有compute节点 下载安装组件 # yum install openstack-neutron openstack-neutron-linuxbridge ebtables ipset -y 修改新增内核参数: vi /etc/sysctl.conf net.ipv4.conf.default.rp_filter=0 net.ipv4.conf.all.rp_filter=0 net.bridge.bridge-nf-call-iptables=1 net.bridge.bridge-nf

中小企业openstack私有云布署实践【11.1 计算nova - compute节点配置(科兴环境)】

这里我只使用kxcompute1节点配置为示例,其它节点的配置基本是一样的,只是声明的管理IP不同而已 计算节点 # yum install openstack-nova-compute sysfsutils 修改配置文件 vi /etc/nova/nova.conf [DEFAULT] vcpu_pin_set = 4-31 resume_guests_state_on_host_boot=True rpc_backend = rabbit auth_strategy = keystone m

OpenStack私有云部署

OpenStack简介 OpenStack(iaaS,基础设施即服务)是一个开源的项目,为用户提供了一个部署云计算的操作平台.在OpenStack管理下的云平台充分利用了底层的硬件资源,且平台更易于扩展和管理.OpenStack内部有多个项目,提供不同的服务,包括网络,计算,存储,虚拟化等各方面.其中核心的几个项目如下: Identity Service:Keystone(代码名称).认证平台,为其他服务提供身份认证,服务令牌的功能.还提供一个服务目录,每一个服务的添加都需要在Keystone中

中小企业openstack私有云布署实践【17 配置文件部份说明】

Nova部份 cpu_allocation_ratio = 4.0 物理 CPU 超售比例,默认是 16 倍,超线程也算作一个物理 CPU,需要根据具体负载和物理 CPU 能力进行综合判断后确定具体的配置.建议超售4倍,配置作用于controller有效 ram_allocation_ratio = 1.0 内存分配超售比例,默认是 1.5 倍,生产环境不建议开启超售.配置作用于controller有效,建议配置比例1:1,配合--禁用swap空间的内核参数 vcpu_pin_set = 4-$

OpenStack运维(二):计算节点的故障和维护

1.计划中的维护 举例:需要升级某一个计算节点的硬件配置,需要将计算节点上的虚拟机迁移后在对其进行操作,分为两种情况. 1.1 云系统使用了共享存储 a. 获取虚拟机列表:nova list --host compute01-node-Name --all-tenant b. 将每个虚拟机迁移至另一台计算节点:nova live-migration <uuid> compute02-node-Name c. 停止nova-compute服务:stop nova-compute d. 维护工作完