Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Private cloud and open stack

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Hier ansehen

1 von 93 Anzeige
Anzeige

Weitere Verwandte Inhalte

Diashows für Sie (17)

Ähnlich wie Private cloud and open stack (20)

Anzeige

Aktuellste (20)

Private cloud and open stack

  1. 1. 私 有 云 计 算 平 台 及OPENSTACK 西北工业大学 计算机学院 张晓 2020.3.18 Northwestern Polytechnical University西北工业大学 大数据存储与管理工信部重点实验室
  2. 2. 目录 Contents 01 02 03 04 私有云计算平台 OpenStack介绍 OpenStack管理与使用 OpenStack主要组件
  3. 3. 私有云计算平台 01 私有云和公有云有什么关系? 私有云和数据中心有什么区别?
  4. 4. 云计算技术 云计算是分布式计算、效用计算、虚拟化技术、Web服务、网格计算等技术的融 合和发展,其目标是用户通过网络能够在任何时间、任何地点最大限度地使用虚拟 资源池,处理大规模计算问题。 云是一些可以自我维护和管理的虚拟计算资源,通常为一些大型服务器集群,包括 计算服务器、存储服务器、宽带资源等等。 云计算是基于互联网的超级计算模式--即把存储于个人电脑、移动电话和其他设备 上的大量信息和处理器资源集中在一起,协同工作。在极大规模上可扩展的信息技 术能力向外部客户作为服务来提供的一种计算方式。 40多亿的移动电话一 2010 年 [数据来源: Nokia] 个人电脑和 笔记本电脑 企业电脑 和服务器PDA
  5. 5. 云计算的分类 从提供的服务类别分:  Infrastructure as a Service  Platform as a Service  Software as a Service 从设施的所有者来分: 公有云,如阿里云,腾讯云, 华为云,AWS, 微软Azure 私有云,企业内部管理和使 用。 混合云,核心业务在私有云, 弹性扩展至公有云 私有云 (数据中心 – 内部网) 公共云 (服务提供商 – 互连网) 混合云 (公共和私有)
  6. 6. 数 云计算对企业的意义 • 数据不通过网络传输、数据不出数据中心 • 减少需要开放的网络IP、端口安全 • 任何网络、任何设备均可以安全访问企业 应用灵活 • 提高后台资源利用率和管理便利 • 降低前端运维要求、提高工作效率高效 数据中心 Receiver Clients 支持数百种设备 LAN WAN ADSL 5G/4G
  7. 7. 公有云面临的问题 • 数据安全问题:目前云计算提供商并不提 供安全保障。例如,Amazon EC2 明确 建议使用额外的安全技术(加密,认证等) 来保障云服务中的数据。 • 数据隐私问题:数据传输和保存过程中, 是否被云计算公司员工查看或获取?是否 有恶意的第三方窃听或篡改? • 数据可靠性问题: • 如何确认数据还在云? • 如何确认云中的数据的完整性? • 如何确认云中的数据可以在确定时间内读取到? 私人信息 姓名: BYZ 帐号: 0405 … 余额: 20,000 … 云应用 (私人数据) Internet网 云应用 (被攻击的) 操作系统 云用户 数据库 私人信息 姓名: BYZ 帐号: 0405 … 余额: 20,000 … 否是 操作系统 (恶意)
  8. 8. 配置和部署私有云基础架构 • 数据中心面临的挑战 • 管理复杂:拥有多种类型的虚拟化软件, 我只能通过不同的管理工具使用它们。 • 权限划分:确保这些资源被分配给了正确 的人员。 • 安全管理:需要保护基础架构,确保只部 署了批准的操作系统。 • 快速部署:拥有多种类型的硬件,希望能 够通过简单的方法将它们呈现给应用程序 的拥有者。 • 将底层的基础架构、存储基础架构、存 储和网络基础架构、包括不同的虚拟化 软件,并将这些资源抽象到云。这些云 可以委派给特定的用户,并设定相应的 额度。 • 基于API的可二次开发 • 成本 • 设备与位置独立性 • 虚拟化 • 多租户 • 可靠性 • 可扩展性和弹性 • 性能 • 安全 • 维护
  9. 9. 数据中心转换到私有云 抽象化 异构 访问 控制 软件定义数据中心 将底层的网络、存储、 计算机等基础架构资 源抽象为云 创建跨微软、 VMware 和 Citrix 虚拟架构的云抽象层 通过委派自服务访问 云资源来管理资源的 利用和服务的创建 使用模板标准化应用 部署
  10. 10. 企业私有云技术路线 • 物理设备虚拟化 • 资源整合 • 资源按需使用 • 自动化管理 • 资源弹性调度 • 基于大集群的HA,DRS • 多数据中心整合 • 统一管理和运维 • 多级备份容灾 • SDN网络虚拟化 • 统一管理 • 资源最优配置 • 业务灵活迁移 Private Public Hybrid Cloud 私有云 虚拟化 分布式云数据中心 混合云 关注资源 逐渐关注业务 关注全局业务 灵活的业务驱动
  11. 11. 主流开源云平台发展趋势 社区参与人数 社区代码提交次数 社区参与机构数 1. IBMHP等公司放弃私有云管理平台,转向开放架构 2. 开源云管理平台四大主流:Openstack、CloudStack、OpenNebula、Eucalyptus,其中OpenStack架构活跃度最高,是众多机构和 个人的首选开源云平台 3. 各大主流云计算厂商都转向支持Openstack,获取广泛的生态支持
  12. 12. OpenStack介绍 02 OpenStack的起源和发展 OpenStack对标AWS
  13. 13. OpenStack是什么 OpenStack是一个美国国家航空航天局和Rackspace合 作研发的,以Apache许可证授权,并且是一个自由软件 和开放源代码项目。 OpenStack是一个云平台管理的项目,它不是一个软件。 这个项目由几个主要的组件组合起来完成一些具体的工作。 OpenStack通过一个web界面提供资源管理,通过一个 仪表板管理整个数据中心中的计算、存储等资源。
  14. 14. 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发展简史
  15. 15. The OpenStack Foundation 目标:对云架构和开源有相同理念的人一起协作,开放源码、开放式设计、开放式开发、 开放式社区,创造一个适应各种规模、能够普遍部署、满足公有和私有云需求的开源云计 算平台; (WindowPC、AndroidHANDSET、OpenStackSERVER) 三大委员会(董事会、技术委员会、社区委员会 ),几乎聚集所有IT和云计算巨头,享有话语权,进行目标和发展的引导 Board of Directors Tech Committee User committee 每6个月重新选举,各项目技术Leader,技术决策 社区建设,反馈社区意见制定战略和资金、资源、人员、成员管理 OpenStack开源社区介绍
  16. 16. 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
  17. 17. 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机构贡献情况
  18. 18. 增强运维功能,提供解决方案 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参与者的利益诉求
  19. 19. 单版本周期代码贡献总量达到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开发现状 社区开发活跃,版本周期稳定,规模持续增长
  20. 20. OpenStack用户群体迅速扩大,重量级用户大幅增加 OpenStack用户群体迅速扩大 本次调研周期内(2014年5月至11月),用户群体明显发展: • 在生产环境下部署OpenStack的用户:33% -〉46% • 电信行业用户的比例:6% -〉10% • 金融行业用户的比例:0.25% -〉2% • 使用最近两个发行版的用户比例达到 67% • 新兴项目在生产环境中的部署比例得到提升,如有9%的用户已经开始在生产环境 中使用DBaaS(Trove) 重量级代表性客户: • 宝马(制造业)、西班牙外换银行(金融业)、 时代华纳有线(媒体咨询)、欧洲高能物理研究 中心(科研)、富国银行、沃尔玛。 国内代表性用户: •广州超算中心(政务云等业务,天河2号,6400 节点)、携程网(呼叫中心等业务)、奇虎360 (系统补丁自动化测试等业务)、爱奇异(视频 转码等业务) 重量级企业用户大幅增加 OpenStack应用现状
  21. 21. From: OpenStack2014UserSurvey OpenStack部署情况调查
  22. 22. 架构开放 北向标准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?
  23. 23. Openstack 在云计算中的位置
  24. 24. • 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的发行版
  25. 25. · ··国内OpenStack用户
  26. 26. OpenStack使用 03 OpenStack基本概念? 管理员如何管理OpenStack? 用户如何使用OpenStack?
  27. 27. Internet Internet 映像管理 资源部署 服务目录 & 门户 服务管理 用量计量 & 计费 统计报表 资源性能管理 浏览器 用户 用户 物理系统云计算服务 虚拟系统 Telnet, ftp, ... 虚拟服务器 虚拟存储 虚拟服务器 网络 资源申请 资源访问 物理资源的转变 资源管理 浏览器 系统管理员 虚拟存储 虚拟服务器 服务器 网络 存储服务器和存储 刀片服务器 开放异构的硬件 OpenStack使用方式 管理员  创建资源池  创建用户  分配权限  分配配额 用户  申请资源  使用虚拟机  创建私有资源
  28. 28. OpenStack基本概念 项目(project),有时也称为租户(tenant)  一组资源的容器,包括CPU/内存/硬盘/IP地址等  每个项目可以使用的资源有限额,称之为配额(quotas)  一个项目中可以有多个用户 用户(user)  必须至少属于一个项目  可以同时属于多个项目 角色(role)  目前常用的主要就admin和member两种角色 虚拟机(instance)
  29. 29. OpenStack基本概念—存储 根硬盘(Root Disk)  操作系统根目录,在虚拟机创建时由模板确定  选择模板的根硬盘必须大于等于镜像的根硬盘  与虚拟机有相同的生命周期 瞬态硬盘(Ephemeral Disk)  在虚拟机创建时由模板确定  与虚拟机有相同的生命周期,需要格式化才能使用 永久硬盘(Volume)  独立于虚拟机的生命周期,需要格式化才能使用  具有更高的安全性
  30. 30. OpenStack登录 是用户名, 不是项目名
  31. 31. OpenStack操作 管理员操作  监控系统状态和资源使用情况  创建和维护项目  创建和维护用户  创建和维护模板(定制的虚拟机配置)  创建和维护虚拟机镜像 用户操作  创建网络  创建虚拟机  使用虚拟机 快速创建虚 机、网络、路 由。具体过程 与之前过程完 全一致 网络拓扑 位置 点击虚机 和网络可 以查看具 体信息
  32. 32. OpenStack中网络的概念 为了解决IP地址不足的问题, 使用VLNA,XVLN等技术使更 多的机器能连入。 虚拟机,网络接口 子网地址和子网 路由器 VLAN VxLAN 虚拟机 内部网络 (Networ k) 子网 (Subnet ) 路由器 (Router ) 内网地址 (fixed IP) 外部网络 (Networ k) 外网地址 (floating IP)
  33. 33. OpenStack主要组件 04 介绍OpenStack的主要组件
  34. 34. 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对象存储中
  35. 35. OpenStack中核心与非核心组件 核心组件 非核心组件
  36. 36. OpenStack架构
  37. 37. OpenStack项目 服务支撑 5% 存储 Storing Cinder Swift 网络 Neutron Quantum 计算 Compute Nova Glance 计费 Ceilometer 模版制作 Heat 数据库服务 Trove 裸机部署服务 Ironic 工作流服务 Convection Hadoop服务 sahara 身份认证 Keystone 管理界面 Horizon
  38. 38. 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层服务
  39. 39. 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 服务简介
  40. 40. OpenStack 组件的演进过程 Incubated  Integrated  Core: Ensures projects meet a high standard of usefulness and quality Grizzly: Havana: IceHouse:  OpenStack 服务随着版本节奏将逐步丰富和完善
  41. 41. 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
  42. 42. Openstack 的主要设计思路
  43. 43. KeyStone:用户和权限管理 为Nova(计算),Glance(镜 像),Swift(对象存 储),Cinder(块存 储),Neutron(网络)以及 Horizon(Dashboard)提 供认证服务
  44. 44. KeyStone • OpenStack Identity(Keystone)服务为运行OpenStack Compute上 的OpenStack云提供了认证和管理用户、帐号和角色信息服务, 并为对象存储提供授权服务 • 可以作为OpenStack的统一认证的组件 • 支持基于数据库的认证(SQLite3,MySQL以及PostgreSQL) • 支持基于Ldap认证,同样支持windows Active Directory 认证。 • 未来会支持外部认证体系oAuth,SAML,OpenID
  45. 45. Keystone作为Openstack的核心模块,为Nova(计 算),Glance(镜像),Swift(对象存储),Cinder(块 存储),Neutron(网络)以及Horizon(Dashboard)提 供认证服务 keystone
  46. 46. 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规定的权限。
  47. 47. Keystone基本概念  Service Service即服务,如Nova、Glance、Swift。根据前三个概念 (User,Tenant和Role)一个服务可以确认当前用户是否具有访问 其资源的权限。但是当一个user尝试着访问其租户内的service 时,他必须知道这个service是否存在以及如何访问这个service, 这里通常使用一些不同的名称表示不同的服务。
  48. 48. 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只在有效期内是有效的。
  49. 49. 各种概念之间关系解释 1、租户下,管理着一堆用户(人,或程序)。 2、每个用户都有自己的credentials(凭证)用 户名+密码或者用户名+API key,或其他凭证。 3、用户在访问其他资源(计算、存储)之前, 需要用自己的credential去请求keystone服务, 获得验证信息(主要是Token信息)和服务信息 (服务目录和它们的endpoint)。 4、用户拿着Token信息,就可以去访问特点的资 源了。
  50. 50. 访问验证流程
  51. 51. NOVA:虚拟机生成与管理 最核心的模块,负责计 算资源、调度、网络、 认证等。
  52. 52. Nova服务说明  Nova是整个OpenStack项目里面最核心的组件,相对比较复杂。负责计算资 源、调度、网络、认证等。  nova-api 负责接受和响应用户的API请求  nova-compute 负责instance实例的管理,和不同的hypervisor进行交互  nova-schedule 负责调度instance到具体的物理服务器  nova-conductor 模块,G版本新添加,和nova-compute部署在同一个节点 上,解决nova.conf配置文件里面数据库密码明文的问题 Nova是整个OpenStack项目里面最核心的组件,相对比 较复杂。负责计算资源、调度、网络、认证等。
  53. 53. Nova服务说明  nova-consoleauth 负责验证console proxy提供的用户token  nova-novncproxy, nova-xvpnvncporxy, 提供proxy访问instance vnc端口  nova-cert 管理x509证书  命令行  nova 用户和管理员命令行工具  nova-manage 管理员命令行工具  https://github.com/openstack/nova
  54. 54. Nova的架构
  55. 55. Nova处理过程
  56. 56. 请求一个虚拟机实例过程
  57. 57. Nova虚拟机的启动流程
  58. 58. Nova支持的虚拟化平台 Openstack 支持的 虚拟化技术 KVM LXC QEMU UML vSphere Xen http://docs.openstack.org/admin-guide-cloud/content/section_hypervisors.html
  59. 59. Nova Cell  OpenStack 在控制平面上的性能瓶颈主要在 Message Queue 和 Database 。  尤其是 Message Queue , 随着计算节点的增加 , 性能变的越来越差 。  为了应对这种情况 , Nova 很早之前提出来 nova-cell ( 以下以 cellv1 代替 ) 的解决 方案 。  目的是在把大的 OpenStack 集群分成小的单元 , 每个单元有自己的 Message Queue 和 Database。  以此来解决规模增加时引起的性能问题 。  而且不会向 Region 那样 , 把各个集群独立运行 。  在 cell 里面 ,Keystone、Neutron、Cinder、Glance 等资源还是共享的 。
  60. 60.  通过nova-cell 服务来在各个 cell 间传递消息。  架构复杂  案例: CERN( 欧洲原子能研究中心 )  cell v1 被标记为实验性质。  相关测试很少。  功能已经冻结,不会加入新的功能。  不严重的 Bug 根本不会去修复。 Nova Cell V1 简介
  61. 61. Nova Cell V2 简介 cell v2 自 Newton 版本引入 ,Ocata 版本变为必要组件 。 默认部署都会初始化一个单 cell 的架构 。 cell v2 的架构图如下:
  62. 62.  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 特点
  63. 63. Nova Cell V2 流程 当想要获取一个机器的详细信息时 : 1.nova-api 先从 instance_mappings 表拿到 instance 的 cell_id 2.再从 cell_mappings 表拿到所在 cell 的 DB connection 3.直接连接 cell 的 DB 拿到机器的详细信息
  64. 64. Nova Cell V2 计算节点自动发现  nova-compute服务上线后 ,不会自动加到nova-api的host_mappings里面 。  也不会加到nova-scheduler的调度中 。  需要手动运行nova-manage cell_v2 discover_hosts命令 。  在小型一些的环境上,推荐打开自动发现功能 。
  65. 65. Glance:虚拟机镜像的生成与管理 镜像服务,用来注册、 登陆和检索虚拟机镜 像。
  66. 66. Glance镜像服务 Glance是OpenStack镜像服务,用来 注册、登陆和检索虚拟机镜像。Glance服 务提供了一个REST API,使你能够查询虚 拟机镜像元数据和检索的实际镜像。通过 镜像服务提供的虚拟机镜像可以存储在不 同的位置,从简单的文件系统对象存储到 类似OpeenStack对象存储系统。
  67. 67. Glance与其他模块的关系 Horizon Image可视化 Swift 存储Image Keystone Image权限控制 Nova 调用Image Glance模块 (镜像功能)
  68. 68. Glance  glance-api 负责接受Image API请求,处理image查询和存储等  glance-registry 负责存储,处理和检索image的元数据(大小,类型等)  使用数据库来存储image文件的元数据  支持不同的存储仓库来存储image文件,包括swift,本地磁盘,RADOS 块设备,Amazon S3,HTTP https://github.com/openstack/glance Glance负责镜像文件的注册、查询和存储管理。
  69. 69. Cinder:块存储模块,类似云盘 块存储管理模块提供到 虚拟机的永久性块存储 卷.类似AWS的EBS块存 储服务,可用本地存储 替代
  70. 70. • 块存储管理模块(codenamed “Cinder”) 提供到虚拟机的永久性块存储卷.类 似AWS的EBS块存储服务 • 多个卷可以被挂载到单一虚拟机实例,同时卷可以在虚拟机实例间移动,单个 卷在同一时刻只能被挂载到一个虚拟机实例 • 块存储系统管理块设备到虚拟机的创建,挂载以及卸载. • 块设备卷完全与Openstack Compute集成,并支持云用户在Dashboard中管理 数据自己的存储. • 除了支持简单的Linux服务器本地存储之外,还支持众多的存储平台,包括 Ceph, NetApp, Nexenta, SolidFire, Zadara. • 快照管理提供了强大的在块存储上实现数据备份的功能可以用来作为引导卷使 用 • 块存储适合性能敏感性业务场景,例如数据库存储 大规模可扩展的文件系统或 服务器需要访问到块级裸设备存储. 块存储Cinder
  71. 71. Cinder的架构
  72. 72. Cinder如何支持典型存储 1.本地存储 对于本地存储,cinder-volume 可以使 用 LVM 驱动,该驱动当前的实现需要在 主机上事先用 LVM 命令创建一个 cinder-volumes 的卷组 , 当该主机接 受到创建卷请求的时候,cinder-volume 在该卷组 上创建一个逻辑卷, 并且用 openiscsi 将这个卷当作一个 iscsi tgt 给输出.当然还可以将若干主机的本 地存储用 sheepdog 虚拟成一个共享存 储,然后使用 sheepdog 驱动。 2.HP块存储
  73. 73. Cinder补充 Cinder主要核心是对卷的管理,允许对卷、卷的类型、卷的快照进 行处理。它并没有实现对块设备的管理和实际服务,而是为后端不 同的存储结构提供了统一的接口,不同的块设备服务厂商在 Cinder 中实现其驱动支持以与 OpenStack 进行整合。在 CinderSupportMatrix中可以看到众多存储厂商如 HP、NetAPP、 IBM、SolidFire、EMC 和众多开源块存储系统对 Cinder 的支持。
  74. 74. https://wiki.openstack.org/wiki/CinderSupportMatrix
  75. 75. Cinder服务组件  cinder-api 负责接受API请求,转发到指定cinder卷进行处理  cinder-volume 负责Cinder数据库的读写,通过和其他进程的交互,获得 块存储的状态等。支持的块存储包括 IBM,SolidFire,NetApp,Nexenta,Zadara,  GlusterFS,ISCSI等  cinder-scheduler 负责调度块存储的创建请求,可以有多个块存储服务商 Cinder负责块存储的管理,包括卷的创建、删除、快 照等。提供类似Amazon EBS的功能。
  76. 76. Swift对象存储  proxy server 代理服务器负责接受所有API请求,包括文件上传、修改 、目录 创建、删除等  Account server 管理account信息  Container server 管理container(可以理解为目录)和对象存储之间的映射  Object server 管理存储节点上的实际的objects(可以理解为文件) Swift 提供对象存储的功能。类似Amazon S3的功能。对象存储的核心是 将数据通路(数据读或写)和控制通路(元数据)分离,并且基于对象 存储设备(Object-based Storage Device,OSD)构建存储系统,每个对 象存储设备具有一定的智能,能够自动管理其上的数据分布。
  77. 77. Neutron :网络模块,提供软件定义网络的功能 定义网络接口,路由 器,网关,子网等,并 负责电文的路由和转 发。
  78. 78. Neutron服务模块层次 Neutron Drivers Neutron API 提供Openstack其他服务或 管理员及用户访问的接口 抽象层 网络资源抽象化,包括网络,子网, 端口及路由。将底层各种各样的网 络资源按照openstack定义的网络 描述规则化 Plug-in 通过Plug-in方式可以整合更多的高 级的功能以及与底层网络厂商的设 备实现更好的集成
  79. 79. Neutron 的关键概念 网络Network 一个L2二层网络单元 租户可通过Quantum/Neutron API 创建自己的网络 子网Subnet 一段IPV4/IPV6地址段 为Instance提供私网或公网地址 路由器Router 三层路由器 为租户的Instance提供路由功能 端口Port 虚拟交换机上的端口 管理Instance的网卡
  80. 80. 简单网络架构及解释 网络Agent Plug-in agent:本地虚拟交换配置 Dhcp agent:为tenant网络提供DHCP服务 L3 agent:提供l3/NAT转发功能,为tenant网络中的vm提供外网访问 Metering agent:提供l3流量监控和计量
  81. 81. 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代理服务
  82. 82. Openstack网络服务历程  OpenStack nova-network 网络模型 在 OpenStack 网络组件没有独立出来之前,OpenStack 最初的 nova-network 网络模型 单一网络平面 单一平面网络的缺 点: 存在单一网络瓶颈,缺乏可伸缩性 缺乏合适的多租户隔离
  83. 83. 虚拟机的数据流分析  OpenStack Neutron 网络模型 OpenStack nova-network 独立成为单独的组件 Neutron 后,形象的网络模型的 多平面网络、混合平面私有网络 多平面网络 通过私有网络实现每个租户 创建自己专属的网络区段
  84. 84. 网络类型 管理网:用于 OpenStack 各组件之间的内部通 信。 租户网:用于云部署中虚拟数据之间的通信。 存储网:主要访问存储数据。 公开网:公共网络,外部或 internet 可以访问的网 络。 部署网:通过部署工具部署云平台。
  85. 85. Horizon:Web接口的管理界面 为管理员和用户提供访 问接口。
  86. 86. Horizon Dashboard服务 在整个Openstack应用体系框架中,Horizon就是整个应用的入口。它提供了一个模块化 的,基于web的图形化界面服务门户。用户可以通过浏览器使用这个Web图形化界面来访 问、控制他们的计算、存储和网络资源,如启动实例、分配IP地址、设置访问控制等。 基于Django框架实现
  87. 87. OpenStack 依然处于快速发展过程中 Nova,Cinder,Neutron,Heat等核心模块依然在版本发布代码数占据显要位置。说明,OpenStack核心模板依然还不够稳定(比 如K版本Nova Scheduler可能在后续版本中分离出来),但是部分模块开始逐步稳定下来。
  88. 88. 功能分类 未实现的功能 操作维护 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商用存在的问题
  89. 89. BUSENESS ACTIVITY PLANNING THAN KS 感 谢 聆 听

×