OpenStack云第一天
OpenStack是一个美国国家航空航天局和Rackspace合作研发的,以Apache许可证授权,并且是一个自由软件和开放源代码项目。
OpenStack是一个云平台管理的项目,这个项目由几个主要的组件组合起来完成一些具体的工作。
OpenStack作为基础设施即服务(简称IaaS)资源的通用前端。OpenStack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。
本文翻译自OpenStack官方网页的介绍:http://www.openstack.org/,后期有时间会在第二天文档中翻译安装与部署指南。
1. 关于OpenStack
OpenStack是通过数据中心控制大量的计算,存储与网络资源的云操作系统,管理员通过控制台进行所有的管理,通过Web接口为授权用户提供资源。
接下来我们分别了解一下compute(计算),storage(存储),networking(网络)与dashborad(控制台)。
2. OpenStack Compute
OpenStack Compute提供与管理大量网络虚拟机实例。
OpenStack云操作系统允许企业和服务供应商通过提供与管理大量网络虚拟机来定制灵活的计算资源,你可以开发自己的云应用程序并通过APIs访问这些计算资源,或是管理员简单地通过Web接口访问。计算架构被设计与标准硬件之上。
架构灵活
OpenStack为用户设计自己的云提供了足够的灵活性,OpenStack不需要专门的硬件与软件,并且可以与传统的系统或第三方技术相结合。它被设计用来自动化管理计算资源群组并可以与大多数虚拟化技术协同工作,比如HPC。
在虚拟化环境中,管理员经常会使用一个或多个hypervisor来部署OpenStack Compute。KVM和XenServer就是hypervisor非常流行的选择,建议大多数人选择这种解决方案。如果用户需要减小虚拟化开销来达到 更高的效果与性能的话,Linux容器技术LXC也是被支持的一种解决方案。另外对于不同的hypervisor,OpenStack支持ARM或其他替 换架构。
使用案例:
服务提供商可以提供IaaS给客户
IT部门可以为公司或项目组提供云服务
配合Hadoop之类的工具进行大数据运算
矩阵运算,满足web与应用程序从高到低的不同需求
高性能运算处理大量、集中的工作负载
3. OpenStack Storage
OpenStack Storage为服务器或应用程序提供对象与块存储功能。
除了传统企业级存储技术外,现在很多公司为了满足不同的性能与价格需求,他们需要更多样的存储技术。OpenStack支持对象记忆块存储技术,来满足不同的开发需求。
对象存储是性价比很高、可扩展的存储技术。它为我们提供了完全分布式的,可通过API访问的存储平台,这种存储平台可以直接整合到应用中去,或是用 来备份,打包与保留数据。块存储为外部存储提供对计算实例公开并与之连接,可与企业存储平台更好的集成提供更高的性能,如NetApp,Nexenta或 SolidFire。
对象存储功能
OpenStack提供了冗余、可扩展的对象存储,满足云计算存储PE级别数据的要求。
对象存储不是传统的分解系统,它是用来存储像虚拟机镜像,图片,邮件,打包或备份之类的静态数据。没有主控点使得对象存储可以提供更好的扩展性、冗余性和巩固性。
对象与文件在数据中心服务器中被写入到多个磁盘中,通过OpenStack软件确保数据的响应与完整性。
可以简单地通过添加服务器横向扩展云存储。当服务器或磁盘损坏时,OpenStack会从云中的其他活动节点响应数据请求。由于OpenStack通过软件确保数据的响应与分布,你可以用便宜的磁盘与服务器来替代昂贵的设备。
对象存储功能
OpenStack仍然为计算实例提供块级别存储设备。
块存储系统负责管理服务器块设备的创建、添加与删除。块存储卷完全整合于OpenStack Compute并且在控制面板中云用户可以管理他们自己的存储。
使用Linux存储服务器,这种统一的存储结构被大多数存储平台所支持包括Ceph,NetApp,Nexenta以及SolidFire。
块存储适合于对性能敏感的解决方案,如存储数据库、可扩展的文件系统,或为服务器提供原始数据块访问的存储。
快照管理为块存储提供了强大的数据备份功能。快照可以用来还原或创建一个新的块存储卷。
4. OpenStack Networking
OpenStack Networking:可插入的、可扩展的、通过API驱动的网络与IP网络系统。
如今数据中心的网络所包含的设备比以往任何时候否多,网络设备、存储设备、安全设备更进一步划分为虚拟机与虚拟网络。IP地址、路由配置与安全策略 会快速地增长至百万级别。传统的网络管理技术不再适合与下一代网络的扩展性以及自动管理属性。与此同时用户则希望获得更多的控制以及快速服务的灵活性。
OpenStack Networking是一个可插入、可扩展并使用API驱动的网络与IP地址管理系统,像其他云操作系统一样,它可以被管理员或用户用来提升现有数据中心资产的价值。OpenStack Networking确保部署云时网络不会出现瓶颈或某些限制因素,还可以为用户提供真正意义上的自助服务,用户可以通过他们自己的网络配置管理网络。