大型网站技术基石之 OpenStack
我们知道虚拟化能够充分的利用资源,带来各种各样的好处。 当一个网站不大,只需要四五台机器就可以支撑的时候,可以采用手工的方式虚拟机,但是当网站流量很高,需要成千上万台机器的时候,那就非常不方便了。 这时候,云计算管理平台OpenStack就显出作用了。
云计算
先来说一下云计算的基本概念:
云服务分类:
IaaS:基础设施即服务,就像阿里云主机那样,直接提供虚拟机的就是IaaS。
PaaS:平台即服务,就像新浪SAE那样,提供虚拟空间的那种就可以算是Paas,只提供一个环境平台,用户需要上传代码才能提供服务.
SaaS:软件即服务,例如有道云笔记,百度。
公有云:公有云就像国家电网,为所有人提供服务。然而公有云的隐私问题,比较难以解决,所以对数据安全要求高的话,还是别用。国内有阿里云、腾讯云这类厂商。
私有云:私有云就像一个工厂自己建立的发电厂,自己发电自己用。成本较高。一般是政府部门和实力强悍的公司拥有。
混合云:混合云综合了公有云和私有云的优劣,可以把私密数据放在私有云里面,不怎么私密的放在公有云里面,然而技术要求比较复杂啊。
CaaS:OpenStack 创业公司EasyStack提出并演示的Cloud as a Service(云既服务)。以满足中大规模企业级用户对云计算安全的要求、服务级别和品质的要求、对兼顾隔离控制和灵活弹性的要求、对成本和业务弹性的要求,这些都可以在CaaS里找到答案
OpenStack概述
OpenStack是云计算事实上的标准。OpenStack是一个由Rackspac云解决方案公司和美国航空航天局(NASA)合作开发推出的经Apache2.0许可授权并以Python语言为基础的完全开源项目;该项目最初的设计目的是用来存储海量图片和空间视频等信息的云计算管理软件,OpenStack迅速发展成一整套综合的开源云计算项目。
OpenStack不提供虚拟化技术,而是对虚拟化进行管理,它兼容几乎所有主流虚拟化技术,例如KVM、Xen、VMware、ESX、QEMU,,通过Libvirt虚拟层来对这些虚拟化技术进行包装,Libvirt统一了虚拟化工具API接口供上层调用,OpenStack还完全支持Amazon AWS的EC2 API和S3 API,OpenStack的这种对虚拟化技术较全面支持的特点使它能够广泛地部署。
OpenStack是云计算laaS开源解决方案组件,按照我的理解,云平台主要由以下四种层次。上一章讲的属于第二层次,而OpenStack属于第三层和第四层。
OpenStack架构
Openstack主要有以下几个组件。
他们之间的关系如下:
各组件之间都是松耦合的,他们之间采用Restful接口进行通信。
Nova
Nova是OpenStack核心组件,其他很多组件都是从Nova项目分割出来的,都是为Nova服务的,OpenStack虚拟机实例生命周期的所有活动都由Nova处理。这样使得Nova成为一个负责管理计算资源、网络、认证、所需可扩展性的平台。但是,Nova自身并没有提供任何虚拟化能力,相反它使用libvirt API来与被支持的Hypervisors交互(Xen,KVM等等)。Nova 通过一个与Amazon Web Services(AWS)EC2 API兼容的web services API来对外提供服务,还支持基于消息的异步通信方式。
Nova 云架构包括以下主要组件:
API Server (nova-api):接受处理客户端请求。
Message Queue (rabbit-mq server):Nova内部组件采用RabbitMQ消息队列进行通信,对各组件解耦非常有用。
Compute Workers (nova-compute):核心组件,虚拟机管理。
Network Controller (nova-network):处理主机地网络配置。
Volume Worker (nova-volume):用来管理基于LVM(Logical Volume Manager)的实例卷。Volume Workers有卷的相关功能,例如新建卷、删除卷、为实例附加卷,为实例分离卷。
Scheduler (nova-scheduler):nova调度子服务,当客户端想Nova请求创建虚拟机的时候,该服务决定在哪个地方创建。
Horizon
Horizon就是一个控制面板,网页形式的。便于对云计算系统的管理。
Keystone
Keystone是openstack的认证权限管理组件,使openstack能够安全可靠的工作,每个组件都要在keystone进行注册。所以,该组件在安装Openstack时候是最先安装的。
Glance
Glance是虚拟机镜像管理组件,注意,这个只是虚拟机镜像管理,并不能存储镜像,而是将镜像存储在swift或者普通磁盘上
本文转自d1net(转载)

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
理解云计算备份与灾难恢复
如今,云计算和用户生态系统有一个新的转变,IT的转化创造了一个独特的“数据需求”环境。这意味着有放在这些工作负荷的详细的信息工作和更大的恢复需求。IT管理人员负责管理他们的备份系统,并必须准备好他们的灾难恢复策略。适当的恢复方法是至关重要的,特别是对正常运行时间要求更高的组织。 现代基于云计算的备份解决方案的一个固有优势是恢复速度和数据的可靠性。此外,从云平台上看,经常发现其他类型的备份解决方案有一些性能问题,例如磁带,需要加载,卸载,并在寻找过程中找到并恢复数据。有些系统可能甚至加载磁带插入驱动器需要长达四分钟的时间。这就是为什么使用基于云计算的备份解决方案通常被看作是灾难恢复解决方案的一部分的原因。当设计一个云就绪灾难恢复策略时,重要的是要了解企业现有的数据需求。 在这里,有几个重要的环境因素需要考虑: ·恢复时间目标。在使用基于云计算的备份解决方案时,管理员可以快速、高效地恢复数据。然而,当分析一个数据恢复方案时,一个组织必须建立他们的数据恢复时间目标,这并不总是意味着一个普通的数字。根据不同的数据集,复原时间目标(RTO)可以是不同的。例如,一个高度利用数据库可以具有5分钟的复...
- 下一篇
云主机磁盘性能测试
磁盘IO是云主机的重要指标,可以按照负载情况分成照顺序读写,随机读写两大类。fio 是测试磁盘性能的最佳工具:1、测试顺序读性能fio --filename=/home/test -iodepth=64-ioengine=libaio--direct=1--rw=read--bs=1m--size=2g--numjobs=4--runtime=10 --group_reporting --name=test-read2、测试顺序写性能fio -filename=/home/test -iodepth=64-ioengine=libaio-direct=1-rw=write-bs=1m-size=2g-numjobs=4-runtime=20 -group_reporting -name=test-write3、测试随机读性能fio -filename=/home/test -iodepth=64-ioengine=libaio-direct=1-rw=randread-bs=4k-size=2G-numjobs=64-runtime=20 -group_reporting -name=...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2整合Redis,开启缓存,提高访问速度