雲計算

雲計算技術: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

相關文章
相關標籤/搜索