SlideShare une entreprise Scribd logo
1  sur  93
私 有 云 计 算 平 台
及OPENSTACK
西北工业大学 计算机学院
张晓
2020.3.18
Northwestern Polytechnical University西北工业大学
大数据存储与管理工信部重点实验室
目录
Contents
01
02
03
04
私有云计算平台
OpenStack介绍
OpenStack管理与使用
OpenStack主要组件
私有云计算平台
01 私有云和公有云有什么关系?
私有云和数据中心有什么区别?
云计算技术
云计算是分布式计算、效用计算、虚拟化技术、Web服务、网格计算等技术的融
合和发展,其目标是用户通过网络能够在任何时间、任何地点最大限度地使用虚拟
资源池,处理大规模计算问题。
云是一些可以自我维护和管理的虚拟计算资源,通常为一些大型服务器集群,包括
计算服务器、存储服务器、宽带资源等等。
云计算是基于互联网的超级计算模式--即把存储于个人电脑、移动电话和其他设备
上的大量信息和处理器资源集中在一起,协同工作。在极大规模上可扩展的信息技
术能力向外部客户作为服务来提供的一种计算方式。
40多亿的移动电话一 2010
年 [数据来源: Nokia]
个人电脑和
笔记本电脑
企业电脑
和服务器PDA
云计算的分类
从提供的服务类别分:
 Infrastructure as a Service
 Platform as a Service
 Software as a Service
从设施的所有者来分:
公有云,如阿里云,腾讯云,
华为云,AWS, 微软Azure
私有云,企业内部管理和使
用。
混合云,核心业务在私有云,
弹性扩展至公有云
私有云
(数据中心 – 内部网)
公共云
(服务提供商 – 互连网)
混合云
(公共和私有)
数
云计算对企业的意义
• 数据不通过网络传输、数据不出数据中心
• 减少需要开放的网络IP、端口安全
• 任何网络、任何设备均可以安全访问企业
应用灵活
• 提高后台资源利用率和管理便利
• 降低前端运维要求、提高工作效率高效
数据中心
Receiver Clients
支持数百种设备
LAN WAN ADSL 5G/4G
公有云面临的问题
• 数据安全问题:目前云计算提供商并不提
供安全保障。例如,Amazon EC2 明确
建议使用额外的安全技术(加密,认证等)
来保障云服务中的数据。
• 数据隐私问题:数据传输和保存过程中,
是否被云计算公司员工查看或获取?是否
有恶意的第三方窃听或篡改?
• 数据可靠性问题:
• 如何确认数据还在云?
• 如何确认云中的数据的完整性?
• 如何确认云中的数据可以在确定时间内读取到?
私人信息
姓名: BYZ
帐号:
0405 …
余额: 20,000
…
云应用
(私人数据)
Internet网
云应用
(被攻击的)
操作系统
云用户
数据库
私人信息
姓名: BYZ
帐号: 0405 …
余额: 20,000
…
否是
操作系统
(恶意)
配置和部署私有云基础架构
• 数据中心面临的挑战
• 管理复杂:拥有多种类型的虚拟化软件,
我只能通过不同的管理工具使用它们。
• 权限划分:确保这些资源被分配给了正确
的人员。
• 安全管理:需要保护基础架构,确保只部
署了批准的操作系统。
• 快速部署:拥有多种类型的硬件,希望能
够通过简单的方法将它们呈现给应用程序
的拥有者。
• 将底层的基础架构、存储基础架构、存
储和网络基础架构、包括不同的虚拟化
软件,并将这些资源抽象到云。这些云
可以委派给特定的用户,并设定相应的
额度。
• 基于API的可二次开发
• 成本
• 设备与位置独立性
• 虚拟化
• 多租户
• 可靠性
• 可扩展性和弹性
• 性能
• 安全
• 维护
数据中心转换到私有云
抽象化 异构 访问 控制
软件定义数据中心
将底层的网络、存储、
计算机等基础架构资
源抽象为云
创建跨微软、
VMware 和 Citrix
虚拟架构的云抽象层
通过委派自服务访问
云资源来管理资源的
利用和服务的创建
使用模板标准化应用
部署
企业私有云技术路线
• 物理设备虚拟化
• 资源整合
• 资源按需使用
• 自动化管理
• 资源弹性调度
• 基于大集群的HA,DRS
• 多数据中心整合
• 统一管理和运维
• 多级备份容灾
• SDN网络虚拟化
• 统一管理
• 资源最优配置
• 业务灵活迁移
Private Public
Hybrid
Cloud
私有云
虚拟化 分布式云数据中心
混合云
关注资源
逐渐关注业务
关注全局业务
灵活的业务驱动
主流开源云平台发展趋势
社区参与人数 社区代码提交次数 社区参与机构数
1. IBMHP等公司放弃私有云管理平台,转向开放架构
2. 开源云管理平台四大主流:Openstack、CloudStack、OpenNebula、Eucalyptus,其中OpenStack架构活跃度最高,是众多机构和
个人的首选开源云平台
3. 各大主流云计算厂商都转向支持Openstack,获取广泛的生态支持
OpenStack介绍
02 OpenStack的起源和发展
OpenStack对标AWS
OpenStack是什么
OpenStack是一个美国国家航空航天局和Rackspace合
作研发的,以Apache许可证授权,并且是一个自由软件
和开放源代码项目。
OpenStack是一个云平台管理的项目,它不是一个软件。
这个项目由几个主要的组件组合起来完成一些具体的工作。
OpenStack通过一个web界面提供资源管理,通过一个
仪表板管理整个数据中心中的计算、存储等资源。
OpenStack项目由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目。
2012年OpenStack基金会成立,成为第2大开源基金会至今(仅次于Linux基金会)
版本周期:每年发布2个主版本(4月和10月各发布一个),主版本发布后会进行多次小版本更新,小版本更新以修正BUG为主。
版本命名规则:每个主版本系列以字母表顺序(A~Z)命名,以年份及当年内的排序做版本号,如 Kilo 2015.1.0
2014.4
IceHouse
2014.10
Juno
2015.4
Kilo
2015.10
Liberty
OpenStack发展简史
The OpenStack Foundation
目标:对云架构和开源有相同理念的人一起协作,开放源码、开放式设计、开放式开发、
开放式社区,创造一个适应各种规模、能够普遍部署、满足公有和私有云需求的开源云计
算平台; (WindowPC、AndroidHANDSET、OpenStackSERVER)
三大委员会(董事会、技术委员会、社区委员会 ),几乎聚集所有IT和云计算巨头,享有话语权,进行目标和发展的引导
Board of Directors Tech Committee User committee
每6个月重新选举,各项目技术Leader,技术决策 社区建设,反馈社区意见制定战略和资金、资源、人员、成员管理
OpenStack开源社区介绍
http://www.openstack.org/foundation/companies/
1. Platinum Members(8) 2. Gold Members(16) 3. Corporate Sponsors(32)
4. Supporting Organizations(136)
 主要玩家集中在铂金、金牌会员,深度参与(三大委员会、较多人参与社区开发)
提交代码 解决Bug数 社区发言
http://http://bitergia.com/public/reports/openstack/2013_04_grizzly/
OpenStack开源社区介绍
国内参与企业:
 铂金会员(2/8): 华为,腾讯云
 金牌会员(9/18): 中国移动,中国电信,中国联通,中兴,浪潮,H3C,九州云等
Platinum $500,000 / year
Gold $50,000 ~ $200,000 / year
Corporate $25,000 /year
Startup $10,000 /year
Diablo ,Sep 2011 Essex ,Apr 2012 Folsom ,Sep 2012
Grizzly,Apr 2013 Havana,Oct 2013 Icehouse,2015
从Diablo到IceHouse的OpenStack贡献来看,Redhat、RackSpace、HP、IBM,Mirantis 等厂商在社区贡献上投入积极
OpenStack机构贡献情况
增强运维功能,提供解决方案
Horizon Dashboard
Nova Compute
Cinder Block
Storage
Keystone
Authentication
Swift Object Storage
Glance Image Mgmt
Quantum Network
REST API
Ceilometer
计量
Heat
服务编排
RedDwar
数据库
Burrow
消息队列
…
虚拟化、基础设施接入,带动产品销售
Burrow
消息队列
虚拟化
• KVM
• Xen Server/XCP
• Hyper-V
• ESX/ESXi
存储
• Netapp
• IBM
• HP
• SolidFire
• Zadara
• Nexenta
• Dell
• EMC
网络
•Nicira
•Open-vSwitch
•Cisco
•Linux Bridge
•NEC
•Ryu
•BigSwitch
•Floodlight
•Midonet
•Extreme Networks
•Ruijie Networks
•Brocade
•Mellanox
自动化安装部署 监控、告警、报表
Openstack系统HA
(客户化)
发放、计费
大规模调度
Dell、Cisco、ALU、Ericsson、IBM、Rackspace、HP …
Redhat、SUSE、Cannonical、Mirantis、Piston、Nebula …
 越来越多互联网、电商用户基于Openstack自建云服务,有较
大规模(<10000 Hosts)上线
 Openstack聚焦提供有竞争力的开放云服务平台,吸引众多业务上互补的优势产品,强强联合形成多样化的解决方案和生态圈
 其他企业和运营商也已开始对Openstack解决方案进行小规模测试
•Production : Best Buy, Bloomberg, NASA, Cisco WebEx, Comcast, CERN, HP, NeCTAR,
PayPal, Rackspace and Samsung
OpenStack参与者的利益诉求
单版本周期代码贡献总量达到6.6M,贡献者超过1900人
1.1
0.3 0.4
1.5
2.3 2.1 2.1
4.3
5.4
6.6
0
500
1000
1500
2000
2500
0
2
4
6
8
A B C D E F G H I J
百万
LOC Contributors
Juno版本周期:
• 共提交661万行代码
• 1947名贡献者参与开发
15 18 18 43 69
109
158
225
284
406
447
0
100
200
300
400
500
A B C D E F G H I J Now
~30X
已发布第12个版本Liberty ,项目增加迅速,生态系统迅速扩展
模块数量增长迅速,迄今已增长接近30倍
OpenStack开发现状
社区开发活跃,版本周期稳定,规模持续增长
OpenStack用户群体迅速扩大,重量级用户大幅增加
OpenStack用户群体迅速扩大
本次调研周期内(2014年5月至11月),用户群体明显发展:
• 在生产环境下部署OpenStack的用户:33% -〉46%
• 电信行业用户的比例:6% -〉10%
• 金融行业用户的比例:0.25% -〉2%
• 使用最近两个发行版的用户比例达到 67%
• 新兴项目在生产环境中的部署比例得到提升,如有9%的用户已经开始在生产环境
中使用DBaaS(Trove)
重量级代表性客户:
• 宝马(制造业)、西班牙外换银行(金融业)、
时代华纳有线(媒体咨询)、欧洲高能物理研究
中心(科研)、富国银行、沃尔玛。
国内代表性用户:
•广州超算中心(政务云等业务,天河2号,6400
节点)、携程网(呼叫中心等业务)、奇虎360
(系统补丁自动化测试等业务)、爱奇异(视频
转码等业务)
重量级企业用户大幅增加
OpenStack应用现状
From:
OpenStack2014UserSurvey
OpenStack部署情况调查
架构开放
北向标准OpenStack API,生态系统丰富
不会绑定到一个厂家
Apache License,允许随意商业集成
异构接入能力强
南向异构接入强。异构hypervisor
(KVM/XEN/Vmware/LXC), 异构存储, 异构网络,异
构物理设备
可扩展性好
较容易定制化增加新模块和服务(如新的虚拟化引擎)
级联后可构建大规模的云
参与者众多,发展迅猛,行业默认云平台
Bug响应快,每六个月发布一个版本
参与社区的企业300+,开发人员20000+3rd
Network
3rd
Hypervisor
3rd
Storage
3rd DC
Management
MANO/BOSS
3rd Guest OS &
Applications
Nova Cinder Neutron
Heat
OpenStack +
OpenStack:架构开放、扩展性良好、支持多厂商基础设施的统一平台
为什么需要OpenStack?
Openstack 在云计算中的位置
• RED HAT ENTERPRISE LINUX OPENSTACK PLATFORM
• UBUNTU OPENSTACK
• SUSE CLOUD
• MIRANTIS OPENSTACK
• ORACLE OPENSTACK FOR ORACLE LINUX
• RACKSPACE PRIVATE CLOUD SOFTWARE
• IBM CLOUD MANAGER WITH OPENSTACK
• HP HELION OPENSTACK® COMMUNITY EDITION
OpenStack的发行版
· ··国内OpenStack用户
OpenStack使用
03 OpenStack基本概念?
管理员如何管理OpenStack?
用户如何使用OpenStack?
Internet
Internet
映像管理
资源部署
服务目录 & 门户
服务管理
用量计量 & 计费
统计报表
资源性能管理
浏览器
用户
用户
物理系统云计算服务
虚拟系统
Telnet, ftp, ...
虚拟服务器
虚拟存储
虚拟服务器
网络
资源申请
资源访问 物理资源的转变
资源管理
浏览器
系统管理员
虚拟存储
虚拟服务器
服务器
网络
存储服务器和存储
刀片服务器
开放异构的硬件
OpenStack使用方式
管理员
 创建资源池
 创建用户
 分配权限
 分配配额
用户
 申请资源
 使用虚拟机
 创建私有资源
OpenStack基本概念
项目(project),有时也称为租户(tenant)
 一组资源的容器,包括CPU/内存/硬盘/IP地址等
 每个项目可以使用的资源有限额,称之为配额(quotas)
 一个项目中可以有多个用户
用户(user)
 必须至少属于一个项目
 可以同时属于多个项目
角色(role)
 目前常用的主要就admin和member两种角色
虚拟机(instance)
OpenStack基本概念—存储
根硬盘(Root Disk)
 操作系统根目录,在虚拟机创建时由模板确定
 选择模板的根硬盘必须大于等于镜像的根硬盘
 与虚拟机有相同的生命周期
瞬态硬盘(Ephemeral Disk)
 在虚拟机创建时由模板确定
 与虚拟机有相同的生命周期,需要格式化才能使用
永久硬盘(Volume)
 独立于虚拟机的生命周期,需要格式化才能使用
 具有更高的安全性
OpenStack登录
是用户名,
不是项目名
OpenStack操作
管理员操作
 监控系统状态和资源使用情况
 创建和维护项目
 创建和维护用户
 创建和维护模板(定制的虚拟机配置)
 创建和维护虚拟机镜像
用户操作
 创建网络
 创建虚拟机
 使用虚拟机
快速创建虚
机、网络、路
由。具体过程
与之前过程完
全一致
网络拓扑
位置
点击虚机
和网络可
以查看具
体信息
OpenStack中网络的概念
为了解决IP地址不足的问题,
使用VLNA,XVLN等技术使更
多的机器能连入。
虚拟机,网络接口
子网地址和子网
路由器
VLAN
VxLAN
虚拟机
内部网络
(Networ
k)
子网
(Subnet
)
路由器
(Router
)
内网地址
(fixed
IP)
外部网络
(Networ
k)
外网地址
(floating
IP)
OpenStack主要组件
04 介绍OpenStack的主要组件
OpenStack概念架构
 Horizon(Dashboard)与其他主要模块的关联(包
括
Nova,Cinder,Glance,Swift,Neutron,keystone)
 通过Ceilometer(监控功能)可以监控的模
块(包括Nova,Glance,Cinder,Neutron)
 Keystone(身份验证功能)模块可以对其他模块
进行相应操作进行身份及权限验证(包括
Nova,Glance,Cinder,Swift,Neutron,Ceilometer
)
VM
 Nova为VM提供计算资源
 Glance为VM提供镜像
 Cinder为VM提供块存储资源
 Neutron为VM提供网络资源及网络连接
 Cinder连接VM后所产生的数据可以备份到Swift
对象存储中
 Glance提供镜像可以保存在Switf对象存储中
OpenStack中核心与非核心组件
核心组件
非核心组件
OpenStack架构
OpenStack项目
服务支撑
5%
存储
Storing
Cinder
Swift
网络
Neutron
Quantum
计算
Compute
Nova
Glance
计费
Ceilometer
模版制作
Heat
数据库服务
Trove
裸机部署服务
Ironic
工作流服务
Convection
Hadoop服务
sahara
身份认证 Keystone
管理界面 Horizon
OpenStack 项目分层
服务 功能
Horizon Portal
Nova 计算服务
Neutron 网络服务
Swift 对象存储
Cinder 块存储
Keystone 鉴权
Glance 镜像服务
Ceilometer 监控
Heat 业务编排
Trove 数据库服务
Sahara 大数据服务
截至Juno版本,OpenStack共有11个integrated projects,基本涵盖了IaaS层常用的服务类型,部分系统管理相
关服务,和少数流行的PaaS层服务。
Nova Cinder NeutronGlance
Keystone
Horizon
Heat
Swift
Ceilometer
SaharaTrove
Database Message Queue基础公共组件
IaaS层服务
系统管理服务
PaaS层服务
Service Project name Description
Dashboard Horizon
Provides a web-based self-service portal to interact with underlying OpenStack services, such as launching an
instance, assigning IP addresses and configuring access controls.
Compute Nova
Manages the lifecycle of compute instances in an OpenStack environment. Responsibilities include spawning,
scheduling and decomissioning of machines on demand.
Networking Neutron
Enables network connectivity as a service for other OpenStack services, such as OpenStack Compute.
Provides an API for users to define networks and the attachments into them. Has a pluggable architecture
that supports many popular networking vendors and technologies.
Object Storage Swift
Stores and retrieves arbitrary unstructured data objects via a RESTful, HTTP based API. It is highly fault
tolerant with its data replication and scale out architecture. Its implementation is not like a file server with
mountable directories.
Block Storage Cinder
Provides persistent block storage to running instances. Its pluggable driver architecture facilitates the
creation and management of block storage devices.
Identity Service Keystone
Provides an authentication and authorization service for other OpenStack services. Provides a catalog of
endpoints for all OpenStack services.
Image Service Glance
Stores and retrieves virtual machine disk images. OpenStack Compute makes use of this during instance
provisioning.
Telemetry Service Ceilometer Monitors and meters the OpenStack cloud for billing, benchmarking, scalability, and statistical purposes.
Orchestration Service Heat
Orchestrates multiple composite cloud applications by using either the native HOT template format or the
AWS CloudFormation template format, through both an OpenStack-native REST API and a CloudFormation-
compatible Query API.
OpenStack 服务简介
OpenStack 组件的演进过程
Incubated  Integrated  Core:
Ensures projects meet a high standard of usefulness and quality
Grizzly:
Havana:
IceHouse:
 OpenStack 服务随着版本节奏将逐步丰富和完善
Your Applications
Foundation Services
Compute
Amazon EC2
Auto Scale
Storage
Amazon S3
Amazon EBS
Amazon StorageGateway
Database
Amazon RDS
Amazon SimpleDB
Amazon ElastiCache
Amazon DynamoDB
Networking
Amazon VPC
Elastic Load Balancing
Amazon Route 53
AWS Direct Connect
Management & Administration
Application Platform Services
Content Distribution
Amazon CloudFront
Application Svcs
Simple Workflow Service
CloudSearch
Amazon SNS, SQS, SES
Parallel Processing
Elastic MapReduce
Libraries & SDKs
Java, PHP, Python,
Ruby, .NET
Identity & Access
AWS IAM
Identity Federation
Consolidated Billing
Web Interface
Management Console
Monitoring
Amazon CloudWatch
Deployment & Automation
AWS Elastic Beanstalk
AWS CloudFormation
AWS Global Infrastructure
Regions
Availability Zones
Edge Locations
Nova
Swift
Cinder
Keystone
Dashboard
Heat
Ceilometer
Trove
Glance Neatron
Burrow
对照AWS看,OpenStack前期聚焦核心云基础服务,现逐渐向应用平台和管理服务发展;OpenStack项目从孵化到正式发布需经过
两个版本周期(共一年),基于其开源、社区活跃程度,及短周期版本节奏,新特性成熟可用很快
Heat
OpenStack的能力布局
Ceilometer
Openstack 的主要设计思路
KeyStone:用户和权限管理
为Nova(计算),Glance(镜
像),Swift(对象存
储),Cinder(块存
储),Neutron(网络)以及
Horizon(Dashboard)提
供认证服务
KeyStone
• OpenStack Identity(Keystone)服务为运行OpenStack Compute上
的OpenStack云提供了认证和管理用户、帐号和角色信息服务,
并为对象存储提供授权服务
• 可以作为OpenStack的统一认证的组件
• 支持基于数据库的认证(SQLite3,MySQL以及PostgreSQL)
• 支持基于Ldap认证,同样支持windows Active Directory 认证。
• 未来会支持外部认证体系oAuth,SAML,OpenID
Keystone作为Openstack的核心模块,为Nova(计
算),Glance(镜像),Swift(对象存储),Cinder(块
存储),Neutron(网络)以及Horizon(Dashboard)提
供认证服务
keystone
Keystone基本概念
 User
User即用户,他们代表可以通过keystone进行访问的人或程序。Users通过认证信息
(credentials,如密码、API Keys等)进行验证。
 Tenant (project)
Tenant即租户,它是各个服务中的一些可以访问的资源集合。例如,在Nova中一个
tenant可以是一些机器,在Swift和Glance中一个tenant可以是一些镜像存储,在Neutron中
一个tenant可以是一些网络资源。Users默认的总是绑定到某些tenant上。
 Role
Role即角色,Roles代表一组用户可以访问的资源权限,例如Nova中的虚拟机、Glance
中的镜像。Users可以被添加到任意一个全局的或租户的角色中。在全局的role中,用户的
role权限作用于所有的租户,即可以对所有的租户执行role规定的权限;在租户内的role
中,用户仅能在当前租户内执行role规定的权限。
Keystone基本概念
 Service
Service即服务,如Nova、Glance、Swift。根据前三个概念
(User,Tenant和Role)一个服务可以确认当前用户是否具有访问
其资源的权限。但是当一个user尝试着访问其租户内的service
时,他必须知道这个service是否存在以及如何访问这个service,
这里通常使用一些不同的名称表示不同的服务。
Keystone基本概念
• Endpoint
Endpoint,翻译为“端点”,我们可以理解它是一个服务暴露出来的访
问点,如果需要访问一个服务,则必须知道他的endpoint。因此,在
keystone中包含一个endpoint模板,这个模板提供了所有存在的服务
endpoints信息。一个endpoint template包含一个URLs列表,列表中的每个
URL都对应一个服务实例的访问地址,并且具有public、private和admin这
三种权限。public url可以被全局访问(如http://compute.example.com),
private url只能被局域网访问(如http://compute.example.local),admin
url被从常规的访问中分离。
• Token
Token是访问资源的钥匙。它是通过Keystone验证后的返回值,在之后
的与其他服务交互中只需要携带Token值即可。每个Token都有一个有效
期,Token只在有效期内是有效的。
各种概念之间关系解释
1、租户下,管理着一堆用户(人,或程序)。
2、每个用户都有自己的credentials(凭证)用
户名+密码或者用户名+API key,或其他凭证。
3、用户在访问其他资源(计算、存储)之前,
需要用自己的credential去请求keystone服务,
获得验证信息(主要是Token信息)和服务信息
(服务目录和它们的endpoint)。
4、用户拿着Token信息,就可以去访问特点的资
源了。
访问验证流程
NOVA:虚拟机生成与管理
最核心的模块,负责计
算资源、调度、网络、
认证等。
Nova服务说明
 Nova是整个OpenStack项目里面最核心的组件,相对比较复杂。负责计算资
源、调度、网络、认证等。
 nova-api 负责接受和响应用户的API请求
 nova-compute 负责instance实例的管理,和不同的hypervisor进行交互
 nova-schedule 负责调度instance到具体的物理服务器
 nova-conductor 模块,G版本新添加,和nova-compute部署在同一个节点
上,解决nova.conf配置文件里面数据库密码明文的问题
Nova是整个OpenStack项目里面最核心的组件,相对比
较复杂。负责计算资源、调度、网络、认证等。
Nova服务说明
 nova-consoleauth 负责验证console proxy提供的用户token
 nova-novncproxy, nova-xvpnvncporxy, 提供proxy访问instance vnc端口
 nova-cert 管理x509证书
 命令行
 nova 用户和管理员命令行工具
 nova-manage 管理员命令行工具
 https://github.com/openstack/nova
Nova的架构
Nova处理过程
请求一个虚拟机实例过程
Nova虚拟机的启动流程
Nova支持的虚拟化平台
Openstack
支持的
虚拟化技术
KVM
LXC
QEMU UML
vSphere
Xen
http://docs.openstack.org/admin-guide-cloud/content/section_hypervisors.html
Nova Cell
 OpenStack 在控制平面上的性能瓶颈主要在 Message Queue 和 Database 。
 尤其是 Message Queue , 随着计算节点的增加 , 性能变的越来越差 。
 为了应对这种情况 , Nova 很早之前提出来 nova-cell ( 以下以 cellv1 代替 ) 的解决
方案 。
 目的是在把大的 OpenStack 集群分成小的单元 , 每个单元有自己的 Message
Queue 和 Database。
 以此来解决规模增加时引起的性能问题 。
 而且不会向 Region 那样 , 把各个集群独立运行 。
 在 cell 里面 ,Keystone、Neutron、Cinder、Glance 等资源还是共享的 。
 通过nova-cell 服务来在各个 cell 间传递消息。
 架构复杂
 案例: CERN( 欧洲原子能研究中心 )
 cell v1 被标记为实验性质。
 相关测试很少。
 功能已经冻结,不会加入新的功能。
 不严重的 Bug 根本不会去修复。
Nova Cell V1 简介
Nova Cell V2 简介
cell v2 自 Newton 版本引入 ,Ocata 版本变为必要组件 。
默认部署都会初始化一个单 cell 的架构 。
cell v2 的架构图如下:
 api 和 cell 有了明显的边界 。 api 层面只需要数据库 , 不需要 Message Queue。
 nova-api 现在依赖 nova_api 和 nova_cell0 两个数据库 。
 nova-scheduler 服务只需要在 api 层面上安装 ,cell 不需要参数调度 。
 通过placement服务,实现了一次调度就可以确定到具体在哪个 cell 的哪台机器上启
动
 cell里面只需要安装nova-compute和nova-conductor服务,和其依赖的 DB 和 MQ。
 所有的 cell 变成一个扁平架构。比之前的多层父子架构要简化很多 。
 api上面服务会直接连接cell的MQ和DB,所以不需要类似nova-cell这样子的额外服务
存在 。
 性能上有及大的提升
Nova Cell V2 特点
Nova Cell V2 流程
当想要获取一个机器的详细信息时 :
1.nova-api 先从 instance_mappings 表拿到 instance 的 cell_id
2.再从 cell_mappings 表拿到所在 cell 的 DB connection
3.直接连接 cell 的 DB 拿到机器的详细信息
Nova Cell V2 计算节点自动发现
 nova-compute服务上线后 ,不会自动加到nova-api的host_mappings里面 。
 也不会加到nova-scheduler的调度中 。
 需要手动运行nova-manage cell_v2 discover_hosts命令 。
 在小型一些的环境上,推荐打开自动发现功能 。
Glance:虚拟机镜像的生成与管理
镜像服务,用来注册、
登陆和检索虚拟机镜
像。
Glance镜像服务
Glance是OpenStack镜像服务,用来
注册、登陆和检索虚拟机镜像。Glance服
务提供了一个REST API,使你能够查询虚
拟机镜像元数据和检索的实际镜像。通过
镜像服务提供的虚拟机镜像可以存储在不
同的位置,从简单的文件系统对象存储到
类似OpeenStack对象存储系统。
Glance与其他模块的关系
Horizon
Image可视化
Swift
存储Image
Keystone
Image权限控制
Nova
调用Image
Glance模块
(镜像功能)
Glance
 glance-api 负责接受Image API请求,处理image查询和存储等
 glance-registry 负责存储,处理和检索image的元数据(大小,类型等)
 使用数据库来存储image文件的元数据
 支持不同的存储仓库来存储image文件,包括swift,本地磁盘,RADOS
块设备,Amazon S3,HTTP
https://github.com/openstack/glance
Glance负责镜像文件的注册、查询和存储管理。
Cinder:块存储模块,类似云盘
块存储管理模块提供到
虚拟机的永久性块存储
卷.类似AWS的EBS块存
储服务,可用本地存储
替代
• 块存储管理模块(codenamed “Cinder”) 提供到虚拟机的永久性块存储卷.类
似AWS的EBS块存储服务
• 多个卷可以被挂载到单一虚拟机实例,同时卷可以在虚拟机实例间移动,单个
卷在同一时刻只能被挂载到一个虚拟机实例
• 块存储系统管理块设备到虚拟机的创建,挂载以及卸载.
• 块设备卷完全与Openstack Compute集成,并支持云用户在Dashboard中管理
数据自己的存储.
• 除了支持简单的Linux服务器本地存储之外,还支持众多的存储平台,包括
Ceph, NetApp, Nexenta, SolidFire, Zadara.
• 快照管理提供了强大的在块存储上实现数据备份的功能可以用来作为引导卷使
用
• 块存储适合性能敏感性业务场景,例如数据库存储 大规模可扩展的文件系统或
服务器需要访问到块级裸设备存储.
块存储Cinder
Cinder的架构
Cinder如何支持典型存储
1.本地存储
对于本地存储,cinder-volume 可以使
用 LVM 驱动,该驱动当前的实现需要在
主机上事先用 LVM 命令创建一个
cinder-volumes 的卷组 , 当该主机接
受到创建卷请求的时候,cinder-volume
在该卷组 上创建一个逻辑卷, 并且用
openiscsi 将这个卷当作一个 iscsi
tgt 给输出.当然还可以将若干主机的本
地存储用 sheepdog 虚拟成一个共享存
储,然后使用 sheepdog 驱动。
2.HP块存储
Cinder补充
Cinder主要核心是对卷的管理,允许对卷、卷的类型、卷的快照进
行处理。它并没有实现对块设备的管理和实际服务,而是为后端不
同的存储结构提供了统一的接口,不同的块设备服务厂商在
Cinder 中实现其驱动支持以与 OpenStack 进行整合。在
CinderSupportMatrix中可以看到众多存储厂商如 HP、NetAPP、
IBM、SolidFire、EMC 和众多开源块存储系统对 Cinder 的支持。
https://wiki.openstack.org/wiki/CinderSupportMatrix
Cinder服务组件
 cinder-api 负责接受API请求,转发到指定cinder卷进行处理
 cinder-volume 负责Cinder数据库的读写,通过和其他进程的交互,获得
块存储的状态等。支持的块存储包括
IBM,SolidFire,NetApp,Nexenta,Zadara,
 GlusterFS,ISCSI等
 cinder-scheduler 负责调度块存储的创建请求,可以有多个块存储服务商
Cinder负责块存储的管理,包括卷的创建、删除、快
照等。提供类似Amazon EBS的功能。
Swift对象存储
 proxy server 代理服务器负责接受所有API请求,包括文件上传、修改 、目录
创建、删除等
 Account server 管理account信息
 Container server 管理container(可以理解为目录)和对象存储之间的映射
 Object server 管理存储节点上的实际的objects(可以理解为文件)
Swift 提供对象存储的功能。类似Amazon S3的功能。对象存储的核心是
将数据通路(数据读或写)和控制通路(元数据)分离,并且基于对象
存储设备(Object-based Storage Device,OSD)构建存储系统,每个对
象存储设备具有一定的智能,能够自动管理其上的数据分布。
Neutron :网络模块,提供软件定义网络的功能
定义网络接口,路由
器,网关,子网等,并
负责电文的路由和转
发。
Neutron服务模块层次
Neutron
Drivers
Neutron API
提供Openstack其他服务或
管理员及用户访问的接口
抽象层
网络资源抽象化,包括网络,子网,
端口及路由。将底层各种各样的网
络资源按照openstack定义的网络
描述规则化
Plug-in
通过Plug-in方式可以整合更多的高
级的功能以及与底层网络厂商的设
备实现更好的集成
Neutron 的关键概念
网络Network
一个L2二层网络单元
租户可通过Quantum/Neutron API 创建自己的网络
子网Subnet
一段IPV4/IPV6地址段
为Instance提供私网或公网地址
路由器Router
三层路由器
为租户的Instance提供路由功能
端口Port
虚拟交换机上的端口
管理Instance的网卡
简单网络架构及解释
网络Agent
Plug-in agent:本地虚拟交换配置
Dhcp agent:为tenant网络提供DHCP服务
L3 agent:提供l3/NAT转发功能,为tenant网络中的vm提供外网访问
Metering agent:提供l3流量监控和计量
Neutron服务说明
模块 功能 说明
neutron-server API服务
neutron-*(l2)-agent 网桥、安全组等 每网络/计算结点一个
neutron-dhcp-agent Dhcp服务 可多个
neutron-l3-agent Router/防火墙 可多个
neutron-vpn-agent Router/防火墙/vpn 可多个
neutron-lbaas-agent 负载均衡 可多个
neutron-metadata-agent Metadata代理服务
Openstack网络服务历程
 OpenStack nova-network 网络模型
在 OpenStack 网络组件没有独立出来之前,OpenStack 最初的 nova-network
网络模型
单一网络平面
单一平面网络的缺
点:
存在单一网络瓶颈,缺乏可伸缩性
缺乏合适的多租户隔离
虚拟机的数据流分析
 OpenStack Neutron 网络模型
OpenStack nova-network 独立成为单独的组件 Neutron 后,形象的网络模型的
多平面网络、混合平面私有网络
多平面网络 通过私有网络实现每个租户
创建自己专属的网络区段
网络类型
管理网:用于 OpenStack 各组件之间的内部通
信。
租户网:用于云部署中虚拟数据之间的通信。
存储网:主要访问存储数据。
公开网:公共网络,外部或 internet 可以访问的网
络。
部署网:通过部署工具部署云平台。
Horizon:Web接口的管理界面
为管理员和用户提供访
问接口。
Horizon Dashboard服务
在整个Openstack应用体系框架中,Horizon就是整个应用的入口。它提供了一个模块化
的,基于web的图形化界面服务门户。用户可以通过浏览器使用这个Web图形化界面来访
问、控制他们的计算、存储和网络资源,如启动实例、分配IP地址、设置访问控制等。
基于Django框架实现
OpenStack 依然处于快速发展过程中
Nova,Cinder,Neutron,Heat等核心模块依然在版本发布代码数占据显要位置。说明,OpenStack核心模板依然还不够稳定(比
如K版本Nova Scheduler可能在后续版本中分离出来),但是部分模块开始逐步稳定下来。
功能分类 未实现的功能
操作维护 1. OpenStack 自动部署
2. VDC管理
3. App虚拟化部署
4. 硬件和虚拟化资源管理
5. 即插即用容量扩展
6. 升级和回退
业务连续性 1. App实时故障检测
2. App可靠性 (Backup.Disater Recovery)
3. OpenStack & VM 故障检测和恢复
可扩展性 1. OpenStack可管理的计算节点数量
2. 多数据中心
性能 1. 数据面app虚拟化
2. 内部VMs 通讯性能
3. 存储性能
集成能力 1. 多供应商集成Multi-vendor Integration
2. 企业级认证集成
网络管理 1. 虚拟拓扑管理
2. 物理和逻辑拓扑映射
开源OpenStack距离商用还有差距,不适用直接在生产环境中使用。
开源OpenStack商用存在的问题
BUSENESS ACTIVITY PLANNING
THAN
KS
感 谢 聆 听

Contenu connexe

Tendances

OpenStack Quantum项目介绍和演示
OpenStack Quantum项目介绍和演示OpenStack Quantum项目介绍和演示
OpenStack Quantum项目介绍和演示
OpenCity Community
 
Cloud Computing Introduction
Cloud Computing IntroductionCloud Computing Introduction
Cloud Computing Introduction
guest90f660
 

Tendances (16)

99cloud training material
99cloud training material99cloud training material
99cloud training material
 
Iresearch 2013-2014年中国云计算蓝皮书简版
Iresearch 2013-2014年中国云计算蓝皮书简版Iresearch 2013-2014年中国云计算蓝皮书简版
Iresearch 2013-2014年中国云计算蓝皮书简版
 
Oracle cloud 云介绍及测试账户申请
Oracle cloud 云介绍及测试账户申请Oracle cloud 云介绍及测试账户申请
Oracle cloud 云介绍及测试账户申请
 
FIT2CLOUD:云管理及DevOps协作平台
FIT2CLOUD:云管理及DevOps协作平台FIT2CLOUD:云管理及DevOps协作平台
FIT2CLOUD:云管理及DevOps协作平台
 
今日如何建立一个安全的私有云
今日如何建立一个安全的私有云今日如何建立一个安全的私有云
今日如何建立一个安全的私有云
 
构建企业私有云、开启服务新里程——基于Dcos的PAAS实践
构建企业私有云、开启服务新里程——基于Dcos的PAAS实践构建企业私有云、开启服务新里程——基于Dcos的PAAS实践
构建企业私有云、开启服务新里程——基于Dcos的PAAS实践
 
TibaMe 課程 - OpenStack 技術實作 (爆滿加開第五期)
TibaMe 課程 - OpenStack 技術實作 (爆滿加開第五期)TibaMe 課程 - OpenStack 技術實作 (爆滿加開第五期)
TibaMe 課程 - OpenStack 技術實作 (爆滿加開第五期)
 
OpenStack Quantum项目介绍和演示
OpenStack Quantum项目介绍和演示OpenStack Quantum项目介绍和演示
OpenStack Quantum项目介绍和演示
 
A10 networks產品與核心價值介紹 2014-03-04
A10 networks產品與核心價值介紹 2014-03-04A10 networks產品與核心價值介紹 2014-03-04
A10 networks產品與核心價值介紹 2014-03-04
 
大数据漫谈-bilibili
大数据漫谈-bilibili大数据漫谈-bilibili
大数据漫谈-bilibili
 
Dell
DellDell
Dell
 
FIT2CLOUD - 打造自己的持续交付平台
FIT2CLOUD - 打造自己的持续交付平台FIT2CLOUD - 打造自己的持续交付平台
FIT2CLOUD - 打造自己的持续交付平台
 
Hadoop development in China Mobile Research Institute
Hadoop development in China Mobile Research InstituteHadoop development in China Mobile Research Institute
Hadoop development in China Mobile Research Institute
 
Azure Container Registry(preview)x Web App On Linux(preview)
Azure Container Registry(preview)x Web App On Linux(preview)Azure Container Registry(preview)x Web App On Linux(preview)
Azure Container Registry(preview)x Web App On Linux(preview)
 
Cloud Computing Introduction
Cloud Computing IntroductionCloud Computing Introduction
Cloud Computing Introduction
 
云计算与开源 刘黎明 世纪互联
云计算与开源  刘黎明  世纪互联云计算与开源  刘黎明  世纪互联
云计算与开源 刘黎明 世纪互联
 

Similaire à Private cloud and open stack

美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010
Jiang Zhu
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
colderboy17
 
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 061103 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
ikewu83
 
Service oriented computing and cloud computing
Service oriented computing and cloud computingService oriented computing and cloud computing
Service oriented computing and cloud computing
志銘 劉志銘
 
Pm 04 华胜天成openstack实践汇报-20120808
Pm 04 华胜天成openstack实践汇报-20120808Pm 04 华胜天成openstack实践汇报-20120808
Pm 04 华胜天成openstack实践汇报-20120808
OpenCity Community
 
Eucalyptus安装及实例映像制作
Eucalyptus安装及实例映像制作Eucalyptus安装及实例映像制作
Eucalyptus安装及实例映像制作
liangxiao0315
 
基于云计算平台的移动Iptv系统设计及负载均衡技术研究
基于云计算平台的移动Iptv系统设计及负载均衡技术研究基于云计算平台的移动Iptv系统设计及负载均衡技术研究
基于云计算平台的移动Iptv系统设计及负载均衡技术研究
liangxiao0315
 
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
Yiwei Ma
 

Similaire à Private cloud and open stack (20)

美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010美国云计算发展现状及趋势-2010
美国云计算发展现状及趋势-2010
 
云计算可信评估方法研究
云计算可信评估方法研究云计算可信评估方法研究
云计算可信评估方法研究
 
Train.IO 【第六期-OpenStack 二三事】
Train.IO 【第六期-OpenStack 二三事】Train.IO 【第六期-OpenStack 二三事】
Train.IO 【第六期-OpenStack 二三事】
 
Portfolio
PortfolioPortfolio
Portfolio
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
 
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
腾讯 马志强 虚拟化环境下 网络 朋务器 平台的协作经验
 
03 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 061103 李实恭-乘云之势以智致远 0611
03 李实恭-乘云之势以智致远 0611
 
Service oriented computing and cloud computing
Service oriented computing and cloud computingService oriented computing and cloud computing
Service oriented computing and cloud computing
 
Pm 04 华胜天成openstack实践汇报-20120808
Pm 04 华胜天成openstack实践汇报-20120808Pm 04 华胜天成openstack实践汇报-20120808
Pm 04 华胜天成openstack实践汇报-20120808
 
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp微服務架構 導入經驗分享 吳剛志 - Community Open Camp
微服務架構 導入經驗分享 吳剛志 - Community Open Camp
 
Eucalyptus安装及实例映像制作
Eucalyptus安装及实例映像制作Eucalyptus安装及实例映像制作
Eucalyptus安装及实例映像制作
 
Big Data Technology - Cloud Computing
Big Data Technology - Cloud ComputingBig Data Technology - Cloud Computing
Big Data Technology - Cloud Computing
 
《云计算入门指南》
《云计算入门指南》《云计算入门指南》
《云计算入门指南》
 
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
20141128(刘胜)UTC2014分布式和云服务的思考与实践——支付清算行业分布式架构的探索
 
基于云计算平台的移动Iptv系统设计及负载均衡技术研究
基于云计算平台的移动Iptv系统设计及负载均衡技术研究基于云计算平台的移动Iptv系统设计及负载均衡技术研究
基于云计算平台的移动Iptv系统设计及负载均衡技术研究
 
2015中国软件技术大会-开放云介绍
2015中国软件技术大会-开放云介绍2015中国软件技术大会-开放云介绍
2015中国软件技术大会-开放云介绍
 
Hello openstack 2014
Hello openstack 2014Hello openstack 2014
Hello openstack 2014
 
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍
 
天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011天涯论坛的技术进化史-Qcon2011
天涯论坛的技术进化史-Qcon2011
 
从网格计算到云计算
从网格计算到云计算从网格计算到云计算
从网格计算到云计算
 

Private cloud and open stack