云计算

云计算技术:java

1、什么是云端,所谓云端须要两层理解
(1)服务不在本地,这一层能够理解为服务器
(2)它和普通的服务器是不同的,这些云端的服务器的资源是共享的,一旦一个服务器不能承受,将会把任务分配给其余机器。
python

2、云技术与其余技术的区别:
云技术可使用的语言有java,c++等。云技术的开发,并无发展什么新语言,而是在其余语言的基础上。好比Java语言。与其余技术,最显著的区别,不是在开发上,而是在于架构上,最显著的特色是分布式。
c++



云计算概述:web

云计算是一个资源池,它为咱们提供了诸如水、电、煤气同样的基础服务。算法

云计算是一种按使用量付费的模式,这种模式能够快速、高效地提供网络,服务器,存储,应用软件,服务等,咱们没必要关心如何实现,因此只需投入不多的管理工做,只需和服务供应商进行不多的交互。数据库

云计算从广义上能够分为以下几种模式:django

IaaS(基础设施即服务)、PaaS(平台即服务)、SaaS(软件即服务)swift

IaaS Amazon、阿里云、腾讯云提供的云主机即IaaS,咱们拿到的是一台机器,能够自定义操做系统。api

PaaS 面向开发者,直接给用户提供一个平台来运行用户的程序,早期的idc服务商卖的主机、新浪的sae、阿里云的云数据库等。服务器

SaaS 卖的是服务,好比腾讯企业邮箱、印象笔记等

openstack是目前比较流行的一个实现云计算平台的项目


官网 www.openstack.org

由NASA(美国国家航空航天局)和Rackspace合做研发并发起的,以Apache许可证受权的自由软件和开放源代码项目,用python语言开发,能够实现私有云或者公有云

主要有三个最基础组件:计算服务、网络服务、存储服务

wKiom1fnKdShZC2IAADhTUcfwxY505.png


openstack简介

发布版本  http://releases.openstack.org/,目前稳定版本为Liberty

OpenStack提供开放源码软件,创建公共和私有云。 OpenStack是一个社区和一个项目,以及开放源码软件,以帮助企业运行的虚拟计算或者存储云。 OpenStackd开源项目由社区维护,包括OpenStack计算(代号为Nova),OpenStack对象存储(代号为SWIFT),并OpenStack镜像服务(代号Glance)的集合。 OpenStack提供了一个操做平台,或工具包,用于编排云。




6个核心服务:

  • nova(计算中心,对比阿里云的ESC,支持kvm,xen等虚拟化技术)

  • keystone(认证中心)

  • neutron(网络服务中心)

  • swift(对象存储服务,存储图片,附件等文件,对比腾讯云的COS)

  • cinder(块存储服务,云盘)

  • glance(镜像管理中心)

wKiom1fnKmLzdwMUAACeFnsAllM309.png

openstack其余可选组件:

wKioL1fnKx2Cu_uBAAHEDqReUAg323.png-wh_50


openstack服务

服务名 项目名称 描述
Dashboard Horizon 基于openstack Api接口使用django开发的web管理
Compute Nova 经过虚拟化技术提供计算资源池
Networking Neutron 实现了虚拟机的网络资源管理
Object Storange Swift 对象存储
Block Storange Cinder 块存储
Identity Service Keystone 认证管理
Image Service Glance 提供虚拟镜像的注册和存储管理
Telemetry Ceilometer 提供监控和数据采集,计量服务





OpenStack中有两个守护进程:


接收和调解API调用的WSGI应用程序 (nova-api,glance-api等等)。

进行编排任务的工人守护进程(nova-compute, nova-network,,nova-schedule)。


OpenStack中还包含两个组件

消息队列服务和数据库。这两个组件方便异步编排复杂的任务经过消息传递和信息共享。


  • 终端用户经过nova-api 接口与Openstack 计算交互。

  • OpenStack计算守护进程经过队列的交换信息(行动)和数据库(信息)进行API请求。

  • OpenStack Glance是一个彻底独立的基础上设施。



openstack各个组件的介绍:


  • nova-api:是对外的接口。OpenStack 云计算的核心控制器(CloudController定义在trunk/nova/api/ec2/cloud.py)。它提供了一个为全部的API查询(OpenStack API或EC2 API)的端点,引起多数业务流程的活动(如运行一个实例),并实施一些政策(主要是配额检查)。

  • nova-schedule:根据当前资源使用状况,决定计算节点分布到哪台计算节点上。目前实现很薄,目前已支持插件方式扩展,方便后面可能有采用更复杂算法。

  • nova-compute:接收队列中的动做,而后执行一系列的系统命令(如启动KVM实例),同时更新数据库中的状态。

  • nova-volume:给虚拟机分配额外持久化的存储,管理持久卷到计算实例的建立,链接和分离。

  • nova-network:网络管理,给虚拟机分配网络和管理,使外部 PC 能够可直接访问。它接受队列中的网络任务,而后执行任务操纵网络(如设立桥接接口或更改iptables规则)。

  • queue:提供了一个守护进程之间传递消息的中央枢纽。当前由 RabbitMQ实现,理论上能够是Python的ampqlib支持的任何AMPQ消息队列。

  • SQL database:存储云基础设施的编译时和运行时的状态。这包括可用的实例类型,在使用中的实例,可用的网络和项目。


wKiom1fqDtviwc8mAAs_po0KeOI362.png

相关文章
相关标签/搜索