Openstack l Open Stack is an open source

  • Slides: 43
Download presentation

Openstack 是什么? l Open. Stack is an open source infrastructure middleware for and application

Openstack 是什么? l Open. Stack is an open source infrastructure middleware for and application building private and public clouds. l Open. Stack is a cloud operating system that controls large pools of compute, storage, and networking resources throughout a datacenter. l Open. Stack is backed up by a global community of technologists, developers, researchers, corporations and cloud computing experts.

模块- Icehouse l Compute (Nova) l Object Storage (Swift) l Image Service (Glance) l

模块- Icehouse l Compute (Nova) l Object Storage (Swift) l Image Service (Glance) l Identity (Keystone) l Dashboard (Horizon) l Networking (Neutron) l Block Storage (Cinder) l Telemetry (Telemetry) l Orchestration (Heat) l Database Service (Trove) l Data processing (Sahara*) l Bare metal (Ironic*) l Queue service (Marconi*) l Key management (Barbican*) l DNS Services (Designate*) l Common Libraries (Oslo) 重用了各种开源技术

Iaa. S 架构 Billing System API Orchestration API User Dashboard Portal/Catal og Admin API

Iaa. S 架构 Billing System API Orchestration API User Dashboard Portal/Catal og Admin API 展�� Orchestrati on Schedulin g Policy Image Registry Logging ���(控制) Monitoring Identity Compute 运�支撑 Volume Network �源� 运�管理

Iaa. S 架构——Openstack模块对应 Billing Telemetry System OSAPI API(s) Orchestration API Heat User Dashboard Horizon

Iaa. S 架构——Openstack模块对应 Billing Telemetry System OSAPI API(s) Orchestration API Heat User Dashboard Horizon Portal/Catal og Horizon Presentation Orchestrati on All Services Scheduling All Services Policy All Services Image Registry Glance Admin API OS API(s) Logging Telemetry Logic (Control) Monitoring Telemetry Identity Keystone Compute Nova Integration Volume Cinder Network Neutron Resources Openstack架构和目前云计算架构类似,而且覆盖大部分功能 Management

松耦合架构 模块化:独立部署使用 nova-network-》Quantum-》Neutron Nova-volume-》Cinder,……

松耦合架构 模块化:独立部署使用 nova-network-》Quantum-》Neutron Nova-volume-》Cinder,……

Horizon (门户) Open. Stack Identity API Heat Open. Stack Network API HTTP(S) l 提供了图形化的用户和管理员门户

Horizon (门户) Open. Stack Identity API Heat Open. Stack Network API HTTP(S) l 提供了图形化的用户和管理员门户 l 基于Django的开源MVC的Web 开发框架实现,Python实现 l api package访问其他模块的API l Horizon模块化的,可以单独部署 Horizon Database Open. Stack Image API Open. Stack Block Storage API Open. Stack Compute API

Horizon (门户) 13

Horizon (门户) 13

Nova (Compute) Open. Stack Compute API �算�源的控制器( nova-api安装在管理�点) nova-api (OS, EC 2, Admin) Open.

Nova (Compute) Open. Stack Compute API �算�源的控制器( nova-api安装在管理�点) nova-api (OS, EC 2, Admin) Open. Stack Image API nova-compute nova-console vnc/vmrc cinder-api cinder-scheduler nova-cert / object store nova-conductor libvrt, Xen. API, etc 不提供虚�化功能,集成了主流的开源虚�化技�( nova-computer amqp安 hypervisor 装在�算�点) nova Queue database nova-consoleauth Open. Stack Identity API nova-volume/cinder nova-scheduler nova-network volume provider �虚�机提供了一个高度可伸�的管理框架( nova-scheduler) (i. SCSI, etc) Network Provider Neutron Agent cinder-volume

Nova (Compute) Open. Stack计算部件Nova: 基于计算沃云服务: l API Server(nova-api) l 弹性云主机 l 消息队列(rabbit-mq server) l

Nova (Compute) Open. Stack计算部件Nova: 基于计算沃云服务: l API Server(nova-api) l 弹性云主机 l 消息队列(rabbit-mq server) l 弹性负载均衡 l 运算 作站(nova-compute) l 弹性扩展 l 网络控制器(nova-network) l 自动化部署 l 卷管理(nova-volume) l …… l 调度器(nova-scheduler) 16

Swift (Object Storage 对象存储) Client Access Open. Stack Object API Open. Stack Identity API

Swift (Object Storage 对象存储) Client Access Open. Stack Object API Open. Stack Identity API swift-proxy account container object l 分布式对象存储服务 l 可提供虚机镜像存储 l 完全独立的一个服务模块 l 三层逻辑结构: Account/Container/Object (账户/容器/对象) l account DB container DB object store l l 账户:相当于租户,用来做顶 层的隔离机制 容器:类似文件夹或目录 对象:由元数据和内容两部分 组成

Glance (Image Service 镜像) Open. Stack Image API l 种存储中,如AWS S 3、Swift、 glance-api Open.

Glance (Image Service 镜像) Open. Stack Image API l 种存储中,如AWS S 3、Swift、 glance-api Open. Stack Identity API HDFS…… Storage Interface(s) glance-registry glance database 独立模块,可将镜像存储到多 l 快照管理 l 不能进行镜像的制作

Keystone (认证服务) Open. Stack Identity API l 提供了用户信息管理和完成各个模 块认证服务。 Keystone (service & Admin APIs)

Keystone (认证服务) Open. Stack Identity API l 提供了用户信息管理和完成各个模 块认证服务。 Keystone (service & Admin APIs) l l token backend (kvs, memcache) catalog backend (kvs, sql, etc) policy backend (rules, custom) identity backend (kvs, pam, sql) 用户信息管理:user/tenant基 本信息,tenant管理 认证服务:登录认证,各个组 件API的权限控制 User 住宾馆的人 Credentials 身份证 Authentication 认证你的身份证 Token 房卡 Tenant 宾馆 Service 宾馆可以提供的服务类别,比如,饮食 类,娱乐类 Endpoint 具体的一种服务,比如吃烧烤,打羽毛 球 Role VIP 等级,VIP越高,享有越高的权限

Neutron (网络管理) Open. Stack Network API l IP资源管理:DHCP l 网络连接管理:实现网络虚拟 neutron–server 化和Naa. S,即虚拟网络连接和 网络的访问控制

Neutron (网络管理) Open. Stack Network API l IP资源管理:DHCP l 网络连接管理:实现网络虚拟 neutron–server 化和Naa. S,即虚拟网络连接和 网络的访问控制 Neutron agents Queue Neutron database Open. Stack Identity API Neutron Plugin(s) l 插件式(plugin):主流厂家 软硬件网络设备适配

Cinder (Block Storage) Open. Stack Block Storage API l 存储方案 cinder-api l Open. Stack

Cinder (Block Storage) Open. Stack Block Storage API l 存储方案 cinder-api l Open. Stack Identity API Cinder-volume提供存储适配, 各存储厂家和方案通过driver cinder-volume 方式提供 Cinder database volume provider (i. SCSI, etc) 类似AWS的EBS,提供持久化 cinder-scheduler l 通过消息机制实现存储的创建、 挂载、回收、快照控制

Other projects : Telemetry, Heat, Trove

Other projects : Telemetry, Heat, Trove

Telemetry (aka Ceilometer, Metering) Push/Polling Inputs Telemetry Collector Telemetry Agents l 主要的目标是监控和计量 l 通过REST接口存取收集数据,

Telemetry (aka Ceilometer, Metering) Push/Polling Inputs Telemetry Collector Telemetry Agents l 主要的目标是监控和计量 l 通过REST接口存取收集数据, 存储在数据库或者JSON/XML Open. Stack Identity API Database 文件中 Telemetry API l Telemetry Data Telemetry Evaluator Alarm Queue Telemetry. Notifier Telemetry notifications 发布和告警功能

Heat (Auto. Scale) HOT template Heat Client for API Calls Open. Stack Identity API

Heat (Auto. Scale) HOT template Heat Client for API Calls Open. Stack Identity API l Heat是云应用编程的脚本语言 l Heat是Open. Stack. API的延伸 l 与Horizon集成,模板的上传, Heat-API 参数的添加等 l Ceilometer Alarms Trove、Sahara都支持Heat) Heat-engine l Heat database Heat是云应用演进的引擎( 支持AWS的Cloud Formation 模板(XML/yaml) OS Services Nova, Neutron, Glance, etc. l 与监控结合,可实现自动扩展

Trove(数据库) Trove-api Open. Stack Identity API Trove Task Mananger Trove database volume provider (i.

Trove(数据库) Trove-api Open. Stack Identity API Trove Task Mananger Trove database volume provider (i. SCSI, etc) Message Queue Trove Conductor l datastore管理 l Instance管理 l configuration管理 l database管理 l user管理 l replication管理 l backup管理 l cluster管理 33