云計(jì)算是一種采用按量付費(fèi)的模式,基于虛擬化技術(shù),將相應(yīng)計(jì)算資源(如網(wǎng)絡(luò)、存儲(chǔ)等)池化后,提供便捷的、高可用的、高擴(kuò)展性的、按需的服務(wù)(如計(jì)算、存儲(chǔ)、應(yīng)用程序和其他 IT 資源)。
-
自主服務(wù):可按需的獲取云端的相應(yīng)資源(主要指公有云);
-
網(wǎng)路訪問:可隨時(shí)隨地使用任何聯(lián)網(wǎng)終端設(shè)備接入云端從而使用相應(yīng)資源。
-
資源池化:
-
快速彈性:可方便、快捷地按需獲取和釋放計(jì)算資源。
-
按量計(jì)費(fèi):
-
私有云:云平臺(tái)資源只給某個(gè)單位、或某部分用戶內(nèi)部使用。
-
公有云:云平臺(tái)資源開放給社會(huì)公眾服務(wù)。
-
社區(qū)云:云平臺(tái)資源給幾個(gè)固定的單位內(nèi)使用。
-
混合云:兩個(gè)或兩個(gè)以上不同類型的云平臺(tái)。
-
IaaS:基礎(chǔ)設(shè)施即服務(wù),云服務(wù)商將IT系統(tǒng)的基礎(chǔ)設(shè)施(如計(jì)算資源、存儲(chǔ)資源、網(wǎng)絡(luò)資源)池化后作為服務(wù)進(jìn)行售賣;
-
PaaS:平臺(tái)即服務(wù),云服務(wù)商將IT系統(tǒng)的平臺(tái)軟件層(數(shù)據(jù)庫、OS、中間件、運(yùn)行庫)作為服務(wù)進(jìn)行售賣;
-
SaaS:軟件即服務(wù),云服務(wù)商將IT系統(tǒng)的應(yīng)用軟件層作為服務(wù)進(jìn)行售賣。
-
云服務(wù)消費(fèi)者:租賃云服務(wù)產(chǎn)品的個(gè)人或者單位組織;
-
云服務(wù)提供商:提供云服務(wù)產(chǎn)品的個(gè)人或者單位組織;
-
云服務(wù)代理商:向消費(fèi)者銷售云服務(wù)并獲取一定傭金的個(gè)人或者單位組織;
-
云計(jì)算審計(jì)員:針對(duì)云計(jì)算安全性、云計(jì)算性能等進(jìn)行獨(dú)立評(píng)估的第三方個(gè)人或者單位組織;
-
云服務(wù)承運(yùn)商:在云服務(wù)提供商和消費(fèi)者之間提供連接媒介,以便把云計(jì)算服務(wù)產(chǎn)品從云服務(wù)提供商轉(zhuǎn)移到云服務(wù)消費(fèi)者手中,如中國(guó)電信。
-
常見的虛擬化廠商及其相應(yīng)的產(chǎn)品?
VMware:
虛擬化平臺(tái)產(chǎn)品:ESXi,管理工具:VMware vCenter套件(包括vCenter Server),VMware vCloud(主要管理公有云)。
RedHat:KVM,及基于KVM的虛擬化套件RHV
思杰:XEN
微軟:
虛擬化平臺(tái)產(chǎn)品:Virtual PC、Hyper-V,管理工具:System Center 2016.
Oracle:Oracle VM Server(集成XEN+Linux內(nèi)核)
云計(jì)算:IT能力服務(wù)化,按需使用,按量計(jì)費(fèi),多租戶隔離,是一個(gè)系統(tǒng)的輕量級(jí)管理控制面。
虛擬化:環(huán)境隔離,資源復(fù)用,降低隔離損耗,提升運(yùn)行性能,提供高級(jí)虛擬化特性。
虛擬化是實(shí)現(xiàn)云計(jì)算的技術(shù)支撐之一,但并非云計(jì)算的核心關(guān)注點(diǎn)。
OpenStack、Apache CloudStack
-
私有云相對(duì)于公有云有哪些優(yōu)勢(shì)?
-
數(shù)據(jù)安全性更高;
-
可節(jié)省上云遷移過程中的大量成本;
-
業(yè)務(wù)快速部署,縮短業(yè)務(wù)周期;
-
降低企業(yè)成本,自主可控。
-
在OpenStack高可用架構(gòu)中,controller節(jié)點(diǎn)為什么通常至少有3個(gè)節(jié)點(diǎn)?
由MySQL的多主集群決定,通常情況下,openstack集群的數(shù)據(jù)庫:mysql集群部署在controller節(jié)點(diǎn)。
軟件定義網(wǎng)絡(luò)(Software Defined Network, SDN ),指通過軟件定義網(wǎng)絡(luò),是網(wǎng)絡(luò)虛擬化的一種實(shí)現(xiàn)方式.
SDN的主要技術(shù)特點(diǎn)體現(xiàn)在3方面:
-
轉(zhuǎn)發(fā)與控制分離。SDN具有轉(zhuǎn)發(fā)與控制分離的特點(diǎn),采用SDN控制器實(shí)現(xiàn)網(wǎng)絡(luò)拓?fù)涞氖占⒙酚傻挠?jì)算、流表的生成及下發(fā)、網(wǎng)絡(luò)的管理與控制等功能;而網(wǎng)絡(luò)層設(shè)備僅負(fù)責(zé)流量的轉(zhuǎn)發(fā)及策略的執(zhí)行。通過這種方式可使得網(wǎng)絡(luò)系統(tǒng)的轉(zhuǎn)發(fā)面和控制面獨(dú)立發(fā)展,轉(zhuǎn)發(fā)面向通用化、簡(jiǎn)單化發(fā)展,成本可逐步降低;控制面可向集中化、統(tǒng)一化發(fā)展,具有更強(qiáng)的性能和容量。
-
控制邏輯集中。轉(zhuǎn)發(fā)與控制分離之后,使得控制面向集中化發(fā)展??刂泼娴募谢?,使得SDN控制器擁有網(wǎng)絡(luò)的全局靜態(tài)拓?fù)?,全網(wǎng)的動(dòng)態(tài)轉(zhuǎn)發(fā)表信息,全網(wǎng)絡(luò)的資源利用率,故障狀態(tài)等。因此,SDN控制器可實(shí)現(xiàn)基于網(wǎng)絡(luò)級(jí)別的統(tǒng)一管理、控制和優(yōu)化,更可依托全局的拓?fù)涞膭?dòng)態(tài)轉(zhuǎn)發(fā)信息幫助實(shí)現(xiàn)快速的故障定位和排除,提高運(yùn)營(yíng)效率。
-
網(wǎng)絡(luò)能力開放化。SDN還有一個(gè)重要特征是支持網(wǎng)絡(luò)能力開放化。通過集中的SDN控制器實(shí)現(xiàn)網(wǎng)絡(luò)資源的統(tǒng)一管理、整合以及虛擬化后,采用規(guī)范化的北向接口為上層應(yīng)用提供按需分配的網(wǎng)絡(luò)資源及服務(wù),進(jìn)而實(shí)現(xiàn)網(wǎng)絡(luò)能力開放。這樣的方式打破了現(xiàn)有網(wǎng)絡(luò)對(duì)業(yè)務(wù)封閉的問題,是一種突破性的創(chuàng)新。
一個(gè)開源云操作系統(tǒng)內(nèi)核,用于構(gòu)建云平臺(tái),主要實(shí)現(xiàn)以下五個(gè)主要特點(diǎn):
-
資源抽象:OpenStack將各類硬件資源,通過虛擬化與軟件定義的形式,抽象成虛擬的資源池;
-
資源調(diào)度:OpenStack根據(jù)管理員/用戶的需求,將資源池中的資源分配給不同的用戶,承載不同的應(yīng)用;
-
應(yīng)用生命周期管理:OpenStack可以提供初步的應(yīng)用部署/撤銷、自動(dòng)規(guī)模調(diào)整等功能;
-
系統(tǒng)運(yùn)維:OpenStack可以提供一定的系統(tǒng)監(jiān)控能力;
-
人機(jī)交互:OpenStack提供人機(jī)接口,外界可通過API、CLI或圖形界面的方式與OpenStack進(jìn)行交互。
-
Horzon組件:提供一個(gè)Web前端控制臺(tái),從而實(shí)現(xiàn)通過web管理云平臺(tái),建云主機(jī),分配網(wǎng)絡(luò),配安全組等。
-
Nova組件:負(fù)責(zé)響應(yīng)虛擬機(jī)創(chuàng)建請(qǐng)求、調(diào)度、銷毀云主機(jī)。
-
Neutron組件:提供云計(jì)算的網(wǎng)絡(luò)虛擬化技術(shù),為OpenStack其他服務(wù)提供網(wǎng)絡(luò)連接服務(wù)。為用戶提供接口,可以定義Network、Subnet、Router,配置DHCP、DNS、負(fù)載均衡、L3服務(wù),網(wǎng)絡(luò)支持GRE、VLAN。插件架構(gòu)支持許多主流的網(wǎng)絡(luò)廠家和技術(shù),如OpenvSwitch。以上為三大核心組件。
-
Swift組件:用于在大規(guī)??蓴U(kuò)展系統(tǒng)中通過內(nèi)置冗余及高容錯(cuò)機(jī)制實(shí)現(xiàn)對(duì)象存儲(chǔ)的系統(tǒng),允許進(jìn)行存儲(chǔ)或者檢索文件。可為Glance提供鏡像存儲(chǔ),為Cinder提供卷備份服務(wù)。
-
Cinder組件:為運(yùn)行實(shí)例提供穩(wěn)定持久化的數(shù)據(jù)塊存儲(chǔ)服務(wù),如創(chuàng)建卷、刪除卷,在實(shí)例上掛載和卸載卷。
-
Keystone組件:為OpenStack其他服務(wù)提供身份驗(yàn)證、服務(wù)規(guī)則和服務(wù)令牌的功能,管理Domains、Projects、Users、Groups、Roles。
-
Glance組件:為云主機(jī)提供不同系統(tǒng)鏡像,支持多種虛擬機(jī)鏡像格式(AKI、AMI、ARI、ISO、QCOW2、Raw、VDI、VHD、VMDK),有創(chuàng)建上傳鏡像、刪除鏡像、編輯鏡像基本信息的功能。
-
Ceilometer組件:能把OpenStack內(nèi)部發(fā)生的幾乎所有的事件都收集起來,然后為計(jì)費(fèi)和監(jiān)控以及其它服務(wù)提供數(shù)據(jù)支撐。
-
Heat組件:提供了一種通過模板定義的協(xié)同部署方式,實(shí)現(xiàn)云基礎(chǔ)設(shè)施軟件運(yùn)行環(huán)境(計(jì)算、存儲(chǔ)和網(wǎng)絡(luò)資源)的自動(dòng)化部署。
-
OpenStack中什么服務(wù)通常運(yùn)行在控制節(jié)點(diǎn)?
-
以下服務(wù)通常運(yùn)行在控制節(jié)點(diǎn):
-
認(rèn)證服務(wù)(Keystone)
-
鏡像服務(wù)(Glance)
-
Nova服務(wù),如Nova API、Nova Scheduler和Nova DB
-
塊存儲(chǔ)和對(duì)象存儲(chǔ)服務(wù)(Cinder、Swift)
-
Ceilometer服務(wù)
-
MariaDB/MySQL和RabbitMQ服務(wù)
-
網(wǎng)絡(luò)(Neutron)和網(wǎng)絡(luò)代理的管理服務(wù)
-
編排服務(wù)(Heat)
-
OpenStack中什么服務(wù)通常運(yùn)行在計(jì)算節(jié)點(diǎn)?
-
Nova計(jì)算
-
網(wǎng)絡(luò)服務(wù),比如OVS
-
OpenStack中的Domain,project,user,role,token 的概念和關(guān)系?
Domain:表示 project 和 user 的集合,在公有云或者私有云中常常表示一個(gè)客戶
Group:一個(gè)domain 中的部分用戶的集合
Project:IT基礎(chǔ)設(shè)施資源的集合,比如虛機(jī),卷,鏡像等
Role:角色,表示一個(gè) user 對(duì)一個(gè) project resource 的權(quán)限
Token:一個(gè) user 對(duì)于某個(gè)目標(biāo)(project 或者 domain)的一個(gè)有限時(shí)間段內(nèi)的身份令牌
為哈密等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及哈密網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、哈密網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
-
OpenStack中計(jì)算節(jié)點(diǎn)上虛擬機(jī)默認(rèn)保存路徑在哪?
虛擬機(jī)存儲(chǔ)在計(jì)算節(jié)點(diǎn)的/var/lib/nova/instances目錄。
-
OpenStack中Glance鏡像的默認(rèn)保存路徑在哪?
因?yàn)镚lance服務(wù)運(yùn)行在控制節(jié)點(diǎn)上,所以Glance鏡像都被存儲(chǔ)在控制節(jié)點(diǎn)的/var/lib/glance/images目錄。
-
OpenStack創(chuàng)建虛擬機(jī)的命令是什么?
openstack server create --flavor {flavor-name} --image {Image-Name-Or-Image-ID} --nic net-id={Network-ID} --security-group {Security_Group_ID} –key-name {Keypair-Name} <VM_Name>
-
OpenStack虛擬機(jī)啟動(dòng)過程?
-
界面或命令行通過RESTful API向keystone獲取認(rèn)證信息。
-
keystone通過用戶請(qǐng)求認(rèn)證信息,并生成auth-token返回給對(duì)應(yīng)的認(rèn)證請(qǐng)求。
-
界面或命令行通過RESTful API向nova-api發(fā)送一個(gè)boot instance的請(qǐng)求(攜帶auth-token)。
-
nova-api接受請(qǐng)求后向keystone發(fā)送認(rèn)證請(qǐng)求,查看token是否為有效用戶和token。
-
keystone驗(yàn)證token是否有效,如有效則返回有效的認(rèn)證和對(duì)應(yīng)的角色(注:有些操作需要有角色權(quán)限才能操作)。
-
通過認(rèn)證后nova-api和數(shù)據(jù)庫通訊。
-
初始化新建虛擬機(jī)的數(shù)據(jù)庫記錄。
-
nova-api通過rpc.call向nova-scheduler請(qǐng)求是否有創(chuàng)建虛擬機(jī)的資源(Host ID)。
-
nova-scheduler進(jìn)程偵聽消息隊(duì)列,獲取nova-api的請(qǐng)求。
-
nova-scheduler通過查詢nova數(shù)據(jù)庫中計(jì)算資源的情況,并通過調(diào)度算法計(jì)算符合虛擬機(jī)創(chuàng)建需要的主機(jī)。
-
對(duì)于有符合虛擬機(jī)創(chuàng)建的主機(jī),nova-scheduler更新數(shù)據(jù)庫中虛擬機(jī)對(duì)應(yīng)的物理主機(jī)信息。
-
nova-scheduler通過rpc.cast向nova-compute發(fā)送對(duì)應(yīng)的創(chuàng)建虛擬機(jī)請(qǐng)求的消息。
-
nova-compute會(huì)從對(duì)應(yīng)的消息隊(duì)列中獲取創(chuàng)建虛擬機(jī)請(qǐng)求的消息。
-
nova-compute通過rpc.call向nova-conductor請(qǐng)求獲取虛擬機(jī)消息。(Flavor)
-
nova-conductor從消息隊(duì)隊(duì)列中拿到nova-compute請(qǐng)求消息。
-
nova-conductor根據(jù)消息查詢虛擬機(jī)對(duì)應(yīng)的信息。
-
nova-conductor從數(shù)據(jù)庫中獲得虛擬機(jī)對(duì)應(yīng)信息。
-
nova-conductor把虛擬機(jī)信息通過消息的方式發(fā)送到消息隊(duì)列中。
-
nova-compute從對(duì)應(yīng)的消息隊(duì)列中獲取虛擬機(jī)信息消息。
-
nova-compute通過keystone的RESTfull API拿到認(rèn)證的token,并通過HTTP請(qǐng)求glance-api獲取創(chuàng)建虛擬機(jī)所需要鏡像。
-
glance-api向keystone認(rèn)證token是否有效,并返回驗(yàn)證結(jié)果。
-
token驗(yàn)證通過,nova-compute獲得虛擬機(jī)鏡像信息(URL)。
-
nova-compute通過keystone的RESTfull API拿到認(rèn)證k的token,并通過HTTP請(qǐng)求neutron-server獲取創(chuàng)建虛擬機(jī)所需要的網(wǎng)絡(luò)信息。
-
neutron-server向keystone認(rèn)證token是否有效,并返回驗(yàn)證結(jié)果。
-
token驗(yàn)證通過,nova-compute獲得虛擬機(jī)網(wǎng)絡(luò)信息。
-
nova-compute通過keystone的RESTfull API拿到認(rèn)證的token,并通過HTTP請(qǐng)求cinder-api獲取創(chuàng)建虛擬機(jī)所需要的持久化存儲(chǔ)信息。
-
cinder-api向keystone認(rèn)證token是否有效,并返回驗(yàn)證結(jié)果。
-
token驗(yàn)證通過,nova-compute獲得虛擬機(jī)持久化存儲(chǔ)信息。
-
nova-compute根據(jù)instance的信息調(diào)用配置的虛擬化驅(qū)動(dòng)來創(chuàng)建虛擬機(jī)。
-
OpenStack中如何顯示用戶的網(wǎng)絡(luò)命名空間列表?
# ip netns list
-
OpenStack中如何執(zhí)行網(wǎng)絡(luò)命名空間內(nèi)的命令?
假設(shè)我們想在 qdhcp-a51635b1-d023-419a-93b5-39de47755d2d 網(wǎng)絡(luò)命名空間中執(zhí)行 ifconfig 命令,可以執(zhí)行如下命令。
命令格式 : ip netns exec {network-space} <command>:
# ip netns exec qdhcp-a51635b1-d023-419a-93b5-39de47755d2d "ifconfig"
-
OpenStack中Glance服務(wù)如何使用命令上傳和下載鏡像?
# openstack image create --disk-format qcow2 --container-format bare --public --file {Name-Cloud-Image}.qcow2 <Cloud-Image-Name> #上傳
# glance image-download --file <Cloud-Image-Name> --progress <Image-ID> #下載
-
OpenStack中如何將虛擬機(jī)從異常狀態(tài)置為活動(dòng)狀態(tài)?
# nova reset-state --active {Instance_id}
-
OpenStack中如何獲取浮動(dòng)IP列表?
# openstack ip floating list | grep None | head -10
-
OpenStack中如何在特定可用區(qū)特定計(jì)算節(jié)點(diǎn)創(chuàng)建虛擬機(jī)?
# openstack server create --flavor m1.tiny --image cirros --nic net-id=e0be93b8-728b-4d4d-a272-7d672b2560a6 --security-group NonProd_SG --key-name linuxtec --availability-zone NonProduction:compute-02 nonprod_testvm
-
OpenStack中如何獲取特定計(jì)算節(jié)點(diǎn)虛擬機(jī)列表?
命令格式: openstack server list –all-projects –long -c Name -c Host | grep -i {Compute-Node-Name}:
# openstack server list --all-projects --long -c Name -c Host | grep -i compute-0-19
-
OpenStack中如何查看虛擬機(jī)的控制臺(tái)日志?
# openstack console log show {Instance-id}
-
OpenStack中如何獲取控制臺(tái)的URL?
# openstack console url show {Instance-id}
-
OpenStack中如何創(chuàng)建Cinder/Block存儲(chǔ)卷?
# openstack image list | grep -i cirros #獲取鏡像列表
| 89254d46-a54b-4bc8-8e4d-658287c7ee92 | cirros | active |
# cinder create --image-id 89254d46-a54b-4bc8-8e4d-658287c7ee92 --display-name cirros-bootable-vol 8 #使用cirros鏡像創(chuàng)建8G啟動(dòng)卷
-
OpenStack中如何列出所有創(chuàng)建的項(xiàng)目或用戶?
# openstack project list --long
-
OpenStack中如何顯示服務(wù)端點(diǎn)(endpoint)列表?
OpenStack 服務(wù)端點(diǎn)被分為 3 類:
-
公共端點(diǎn)
-
內(nèi)部端點(diǎn)
-
管理端點(diǎn)
使用如下 OpenStack 命令來查看各種 OpenStack 服務(wù)端點(diǎn):
# openstack catalog list
可通過以下命令來顯示特定服務(wù)端點(diǎn)(比如說 keystone)列表:
# openstack catalog show keystone
-
OpenStack控制節(jié)點(diǎn)按什么步驟重啟nova服務(wù)?
# service nova-api restart
# service nova-cert restart
# service nova-conductor restart
# service nova-consoleauth restart
# service nova-scheduler restart
-
OpenStack中已存在的安全組SG,如何添加規(guī)則?
# neutron security-group-rule-create --protocol <tcp or udp> --port-range-min <port-number> --port-range-max <port-number> --direction <ingress or egress> --remote-ip-prefix <IP-address-or-range> Security-Group-Name
-
OpenStack中如何查看控制節(jié)點(diǎn)和計(jì)算節(jié)點(diǎn)的OVS橋配置?
# ovs-vsctl show
-
OpenStack中計(jì)算節(jié)點(diǎn)的集成橋(br-int)的作用是什么?
集成橋(br-int)對(duì)來自和運(yùn)行在計(jì)算節(jié)點(diǎn)上的實(shí)例的流量執(zhí)行 VLAN 標(biāo)記和取消標(biāo)記。
數(shù)據(jù)包從實(shí)例的 n/w 接口發(fā)出使用虛擬接口 qvo 通過 Linux 橋(qbr)。qvb 接口是用來連接 Linux 橋的,qvo 接口是用來連接集成橋的。集成橋上的 qvo 端口有一個(gè)內(nèi)部 VLAN 標(biāo)簽,這個(gè)標(biāo)簽是用于當(dāng)數(shù)據(jù)包到達(dá)集成橋的時(shí)候貼到數(shù)據(jù)包頭部的。
-
OpenStack中計(jì)算節(jié)點(diǎn)的隧道橋(br-tun)的作用是什么?
隧道橋(br-tun)根據(jù) OpenFlow 規(guī)則將 VLAN 標(biāo)記的流量從集成網(wǎng)橋轉(zhuǎn)換為隧道 ID。
隧道橋允許不同網(wǎng)絡(luò)的實(shí)例彼此進(jìn)行通信。隧道有利于封裝在非安全網(wǎng)絡(luò)上傳輸?shù)牧髁?,它支持兩層網(wǎng)絡(luò),即 GRE 和 VXLAN。
-
OpenStack中外部OVS橋(br-ex)的作用是什么?
外部OVS網(wǎng)橋轉(zhuǎn)發(fā)來往網(wǎng)絡(luò)的流量,以允許外部訪問實(shí)例。br-ex 連接物理接口比如 eth3,這樣用戶網(wǎng)絡(luò)的浮動(dòng) IP 數(shù)據(jù)從物理網(wǎng)絡(luò)接收并路由到用戶網(wǎng)絡(luò)端口。
-
OpenStack中的各組件之間通信機(jī)制?
OpenStack中有至少兩種通信機(jī)制, RESTful API和RPC調(diào)用。
RESTFUL API是一套架構(gòu)約束條件和原則
-
所有事物都定義了ID。openstack中每個(gè)資源都有唯一的UUID
-
所有事物都鏈接在一起。在openstack中將資源的ID放在URL中。
-
使用標(biāo)準(zhǔn)的方法。比如說GET是查詢資源,POST是添加資源,PUT是更新資源等等。
-
使用RESTful API架構(gòu),實(shí)現(xiàn)的目標(biāo)
-
客戶端與服務(wù)端的獨(dú)立性: 在公共接口不變的情況下,客戶端和服務(wù)端的代碼可以獨(dú)立開發(fā)。
-
無狀態(tài)性: 用戶的狀態(tài)保存在客戶端,服務(wù)端不再保存用戶的狀態(tài)??蛻舳讼蚍?wù)端發(fā)送請(qǐng)求時(shí),必須發(fā)送所有的數(shù)據(jù),包括用戶狀態(tài)。
-
統(tǒng)一的接口: RESTful API的URL格式需要遵守統(tǒng)一的規(guī)范??梢越档涂蛻舳?a title="服務(wù)器" target="_blank" >服務(wù)器的耦合度,使得編碼更加簡(jiǎn)單。
-
消息僅限于文本
-
客戶端與服務(wù)端采取同步機(jī)制,當(dāng)發(fā)送http請(qǐng)求時(shí)客戶端需要等待服務(wù)器的響應(yīng)
-
客戶端與服務(wù)器雖然可以獨(dú)立開發(fā),但也存在耦合??蛻舳吮仨氁婪?wù)器的地址才可以正常工作。
其他
-
REST是面向資源的,資源通過URL暴露
-
REST本身可以利用HTTP的一些特征,如HTTP動(dòng)詞、狀態(tài)碼、HTTP報(bào)頭等
RPC協(xié)議,即遠(yuǎn)程過程調(diào)用(Remote Procedure Call Protocol)
RPC采用AMQP協(xié)議實(shí)現(xiàn)進(jìn)程間通信。openstack中采用rabbitmq和qpid。
AMQP:高級(jí)消息隊(duì)列,基于消息的中間件提供的開放的應(yīng)用層標(biāo)準(zhǔn)協(xié)議。能夠有效地支持各種通信模型或者報(bào)文傳送方面的應(yīng)用。
-
特點(diǎn):二進(jìn)制的應(yīng)用層通信協(xié)議,進(jìn)城之間對(duì)稱的異步通信協(xié)議,消息格式,一系列標(biāo)準(zhǔn)化的但可拓展的消息能力(訂閱者和發(fā)布者,兩個(gè)節(jié)點(diǎn)無需知道對(duì)方是什么節(jié)點(diǎn),也不用管對(duì)方節(jié)點(diǎn)怎么去處理發(fā)送的消息,擁有過濾器可以修改訂閱者的接收內(nèi)容)
-
組成:發(fā)布者,中間件(消息的存儲(chǔ)、交換和路由),訂閱者
-
流程:發(fā)布者將消息發(fā)送到中間件,中間件將消息存儲(chǔ)到消息隊(duì)列中,最后訂閱者從消息隊(duì)列中獲取消息。
-
nova中使用rabbitmq實(shí)現(xiàn)RPC調(diào)用
-
客戶端(發(fā)布者)無需知道服務(wù)器(訂閱者)的位置
-
客戶端與服務(wù)器無需同步運(yùn)行。客戶端可以先發(fā)RPC調(diào)用,然后存儲(chǔ)在消息隊(duì)列中。
-
遠(yuǎn)程調(diào)用的隨機(jī)均衡性,當(dāng)客戶端發(fā)起RPC調(diào)用時(shí),可以隨機(jī)選擇一個(gè)服務(wù)器來處理消息
-
OpenStack中根據(jù)權(quán)限不同網(wǎng)絡(luò)可分為幾種?
Provider network:管理員創(chuàng)建的和物理網(wǎng)絡(luò)有直接映射關(guān)系的虛擬網(wǎng)絡(luò)。
Tenant network:租戶普通用戶創(chuàng)建的網(wǎng)絡(luò),物理網(wǎng)絡(luò)對(duì)創(chuàng)建者透明,其配置由Neutron根據(jù)管理員在系統(tǒng)中的配置決定。
-
OpenStack中根據(jù)網(wǎng)絡(luò)類型不同網(wǎng)絡(luò)可分為幾種?
Flat network:基于不使用 VLAN 的物理網(wǎng)絡(luò)實(shí)現(xiàn)的虛擬網(wǎng)絡(luò)。每個(gè)物理網(wǎng)絡(luò)最多只能實(shí)現(xiàn)一個(gè)虛擬網(wǎng)絡(luò)。
local network(本地網(wǎng)絡(luò)):一個(gè)只允許在本服務(wù)器內(nèi)通信的虛擬網(wǎng)絡(luò),不進(jìn)行跨服務(wù)器的通信。主要用于單節(jié)點(diǎn)上測(cè)試。
VLAN network(虛擬局域網(wǎng)) :基于物理 VLAN 網(wǎng)絡(luò)實(shí)現(xiàn)的虛擬網(wǎng)絡(luò)。共享同一個(gè)物理網(wǎng)絡(luò)的多個(gè) VLAN 網(wǎng)絡(luò)是相互隔離的,甚至可以使用重疊的 IP 地址空間。每個(gè)支持 VLAN network 的物理網(wǎng)絡(luò)可以被視為一個(gè)分離的 VLAN trunk,它使用一組獨(dú)占的 VLAN ID。有效的 VLAN ID 范圍是 1 到 4094。
GRE network (通用路由封裝網(wǎng)絡(luò)):一個(gè)使用 GRE 封裝網(wǎng)絡(luò)包的虛擬網(wǎng)絡(luò)。GRE 封裝的數(shù)據(jù)包基于 IP 路由表來進(jìn)行路由,因此 GRE network 不和具體的物理網(wǎng)絡(luò)綁定。
VXLAN network(虛擬可擴(kuò)展網(wǎng)絡(luò)):基于 VXLAN 實(shí)現(xiàn)的虛擬網(wǎng)絡(luò)。同 GRE network 一樣, VXLAN network 中 IP 包的路由也基于 IP 路由表,也不和具體的物理網(wǎng)絡(luò)綁定。
-
OpenStack網(wǎng)絡(luò)中OpenFlow規(guī)則的作用是什么?
OpenFlow 規(guī)則是一種機(jī)制,這種機(jī)制定義了一個(gè)數(shù)據(jù)包如何從源到達(dá)目的地。OpenFlow 規(guī)則存儲(chǔ)在 flow 表中。flow 表是 OpenFlow 交換機(jī)的一部分。
當(dāng)一個(gè)數(shù)據(jù)包到達(dá)交換機(jī)就會(huì)被第一個(gè) flow 表檢查,如果不匹配 flow 表中的任何入口,那這個(gè)數(shù)據(jù)包就會(huì)被丟棄或者轉(zhuǎn)發(fā)到其他 flow 表中。
-
OpenStack網(wǎng)絡(luò)中OpenFlow交換機(jī)的信息(比如端口、表編號(hào)、緩存編號(hào)等)如何查看?
假如我們要顯示 OpenFlow 交換機(jī)的信息(br-int),需要執(zhí)行如下命令:
# ovs-ofctl show br-int
-
OpenStack網(wǎng)絡(luò)中如何顯示交換機(jī)的所有Flow入口?
可以使用命令 ovs-ofctl dump-flows 來查看交換機(jī)的 flow 入口。
假設(shè)我們想顯示 OVS 集成橋(br-int)的所有 flow 入口,可以使用如下命令:
# ovs-ofctl dump-flows br-int
-
OpenStack中Neutron代理是什么?如何顯示所有Neutron代理?
OpenStack Neutron 服務(wù)器充當(dāng)中心控制器,實(shí)際網(wǎng)絡(luò)配置是在計(jì)算節(jié)點(diǎn)或者網(wǎng)絡(luò)節(jié)點(diǎn)上執(zhí)行的。Neutron 代理是計(jì)算節(jié)點(diǎn)或者網(wǎng)絡(luò)節(jié)點(diǎn)上進(jìn)行配置更新的軟件實(shí)體。Neutron 代理通過 Neuron 服務(wù)和消息隊(duì)列來和中心 Neutron 服務(wù)通信。
可通過如下命令查看 Neutron 代理列表:
# openstack network agent list -c ‘Agent type’ -c Host -c Alive -c State
-
OpenStack中CPU Pinning指什么?
CPU Pinning 是指為某個(gè)虛擬機(jī)保留物理核心。它也稱為 CPU 隔離或處理器關(guān)聯(lián)。有兩個(gè)目的:
-
它確保虛擬機(jī)只能在專用核心上運(yùn)行;
-
它還確保公共主機(jī)進(jìn)程不在這些核心上運(yùn)行。
我們也可以認(rèn)為 Pinning 是物理核心到一個(gè)用戶虛擬 CPU(vCPU)的一對(duì)一映射。
-
常見的OpenStack環(huán)境中的網(wǎng)絡(luò)部署有哪些?
-
外部網(wǎng)絡(luò)(External network):數(shù)據(jù)中心 Intranet,從這里分配浮動(dòng)IP地址。
-
OpenStack 內(nèi)部網(wǎng)絡(luò):
-
管理網(wǎng)絡(luò)(management network):提供 OpenStack 各個(gè)組件之間的內(nèi)部通信,以及 API 訪問端點(diǎn)(Endpoint)。為安全考慮,該網(wǎng)絡(luò)必須限制在數(shù)據(jù)中心之內(nèi)。
-
API 網(wǎng)絡(luò):其實(shí)這不是一個(gè)單獨(dú)的網(wǎng)絡(luò),而是包含在外部和內(nèi)部網(wǎng)絡(luò)中。API 的 Endpoint 包括 publicurl 和 internalurl,其中,publicurl 包含的是 externa network 的 IP 地址,internal network 包含的是 management network IP 地址。為了簡(jiǎn)單起見,提供給內(nèi)外網(wǎng)絡(luò)訪問的API的 publicurl 和 internalurl 相同,而只給內(nèi)部網(wǎng)絡(luò)訪問的 API 只使用 internalurl。
-
數(shù)據(jù)網(wǎng)絡(luò)(data network):除管理網(wǎng)絡(luò)以外的其它網(wǎng)絡(luò),往往還可以細(xì)分為下面幾種。它們可以合為一種,也可以從性能方面考慮分離出一種或幾種作為單獨(dú)的網(wǎng)絡(luò)。
-
租戶網(wǎng)絡(luò)(Tenant network):提供虛機(jī)在計(jì)算節(jié)點(diǎn)之間,以及計(jì)算節(jié)點(diǎn)和網(wǎng)絡(luò)節(jié)點(diǎn)之間的通信。同樣這也是數(shù)據(jù)中心的內(nèi)部網(wǎng)絡(luò)。
-
存儲(chǔ)訪問網(wǎng)絡(luò)(storage access network):訪問存儲(chǔ)的網(wǎng)絡(luò)。
-
存儲(chǔ)后端網(wǎng)絡(luò)(storage backend network):比如 Ceph 和 Swift 集群用于后端數(shù)據(jù)復(fù)制的網(wǎng)絡(luò)。
-
Neutron實(shí)現(xiàn)了哪些層次的網(wǎng)絡(luò)隔離?
租戶之間的網(wǎng)絡(luò)是三層隔離的,即使通過VR也無法通信,若需要通信必須走物理網(wǎng)絡(luò)
一個(gè)租戶內(nèi)的不同網(wǎng)絡(luò)之間二層隔離的,需要通過 VR 做三層連通
一個(gè)網(wǎng)絡(luò)內(nèi)的不同子網(wǎng)也是二層隔離的,需要通過 VR 做三層連通
Neutron提供數(shù)據(jù)網(wǎng)絡(luò)與外部網(wǎng)絡(luò)的隔離性,默認(rèn)情況下,所有虛機(jī)通往外網(wǎng)的流量全部走網(wǎng)絡(luò)節(jié)點(diǎn)上的 L3 agent,內(nèi)部的固定IP被轉(zhuǎn)化為外部的浮動(dòng)IP地址。
-
相同組租戶的的虛擬機(jī)位于不同宿主機(jī)之間的通訊?
相同組租戶的的虛擬機(jī)位于同一個(gè)宿主機(jī)之間的通訊?
不同租戶之間的虛擬機(jī)之間的通訊?
參考:http://www.mamicode.com/info-detail-1485454.html
參考:https://www.sdnlab.com/13000.html
DevStack,Rdo ,SaltStack ,Ansible ,TripleO
-
簡(jiǎn)述塊存儲(chǔ)、文件存儲(chǔ)及對(duì)象存儲(chǔ)的區(qū)別及各自特點(diǎn)?
|
塊存儲(chǔ) |
文件存儲(chǔ) |
對(duì)象存儲(chǔ) |
使用方式 |
塊存儲(chǔ)主要是將裸磁盤空間整個(gè)映射給主機(jī)使用的。 |
文件存儲(chǔ)可直接提供給主機(jī)使用,從而實(shí)現(xiàn)文件的上傳和下載,且無需對(duì)文件存儲(chǔ)再進(jìn)行格式化。 |
基于網(wǎng)絡(luò)的數(shù)據(jù)存取服務(wù),可通過網(wǎng)絡(luò)隨時(shí)存儲(chǔ)和調(diào)用包括文本、圖片、音頻和視頻等在內(nèi)的各種非結(jié)構(gòu)化數(shù)據(jù)文件。 |
典型設(shè)備 |
RAID、DISK、DAS、SAN |
HDFS、RGFS |
SWIFT、OSS |
優(yōu)點(diǎn) |
1. 通過RAID與LVM等手段,對(duì)數(shù)據(jù)提供了保護(hù); 2. 可將多塊廉價(jià)的硬盤組合為一個(gè)大容量的邏輯盤對(duì)外提供服務(wù),提高了容量; 3. 多塊磁盤進(jìn)行組合,能實(shí)現(xiàn)并行寫入,提升了讀寫效率; 4. 當(dāng)塊存儲(chǔ)采用SAN架構(gòu)組網(wǎng)時(shí),傳輸速度以及封裝協(xié)議的原因,使得傳輸速度和讀寫效率得到提升。 |
1. 成本低廉,普通以太網(wǎng)即可實(shí)現(xiàn),無需其他專用設(shè)備; 2. 方便文件共享。 |
1. 兼具塊存儲(chǔ)和文件存儲(chǔ)的優(yōu)點(diǎn)。 |
缺點(diǎn) |
1. 當(dāng)塊存儲(chǔ)采用SAN架構(gòu)組網(wǎng)時(shí),需要額外光纖通道卡及光纖交換機(jī),增加成本; 2. 在非集群環(huán)境中,塊存儲(chǔ)裸盤映射給主機(jī),其他節(jié)點(diǎn)無法使用,從而無法實(shí)現(xiàn)主機(jī)之間數(shù)據(jù)的共享; 3. 當(dāng)塊存儲(chǔ)作為某主機(jī)裸設(shè)備格式化之后,不利于不同操作系統(tǒng)主機(jī)(不同文件格式)間的數(shù)據(jù)共享。 |
1. 基于以太網(wǎng),讀寫速率低,傳輸速率慢。 |
1. 不兼容現(xiàn)有模式,應(yīng)用形態(tài)需要重新開發(fā)。 |
接口 |
Driver |
POSIX |
Restful API |
-
通常高可用(High Availability)可通過哪兩個(gè)維度衡量,各自含義是什么?
RTO(Recovery Time Objective):RTO指服務(wù)恢復(fù)的時(shí)間,最佳的情況是 0,即服務(wù)立即恢復(fù);最壞是無窮大,即服務(wù)永遠(yuǎn)無法恢復(fù);
RPO(Recovery Point Objective):RPO 指切換時(shí)向前恢復(fù)的數(shù)據(jù)的時(shí)間長(zhǎng)度,0 意味著使用同步的數(shù)據(jù),大于 0 意味著有數(shù)據(jù)丟失,如“RPO=1 d”指恢復(fù)時(shí)使用一天前的數(shù)據(jù),那么一天之內(nèi)的數(shù)據(jù)就丟失了。因此,恢復(fù)的最佳情況是 RTO = RPO = 0,幾乎無法實(shí)現(xiàn)。
-
高可用(High Availability)根據(jù)服務(wù)節(jié)點(diǎn)角色分為哪兩類?
Active/Passive HA:集群包括兩個(gè)角色節(jié)點(diǎn)簡(jiǎn)稱主備。在此配置下,系統(tǒng)采用主和備用節(jié)點(diǎn)提供服務(wù),系統(tǒng)只在主節(jié)點(diǎn)上提供服務(wù)。在主節(jié)點(diǎn)故障時(shí),備節(jié)點(diǎn)上的服務(wù)被啟動(dòng)來替代主節(jié)點(diǎn)提供的服務(wù)。典型地,如采用 Pacemaker 來控制主備設(shè)備之間的切換,并提供一個(gè)虛機(jī) IP 來提供服務(wù)。
Active/Active HA:集群只包括兩個(gè)節(jié)點(diǎn)時(shí)簡(jiǎn)稱雙活,包括多節(jié)點(diǎn)時(shí)成為多主(Multi-master)。在此配置下,系統(tǒng)在集群內(nèi)所有服務(wù)器上運(yùn)行同樣的負(fù)載。以數(shù)據(jù)庫為例,對(duì)一個(gè)實(shí)例的更新,會(huì)被同步到所有實(shí)例上。如采用負(fù)載均衡軟件HAProxy 來提供服務(wù)的虛擬 IP。
-
衡量容災(zāi)系統(tǒng)的重要指標(biāo)是什么,且容災(zāi)可分為幾個(gè)級(jí)別?
RPO(Recovery Point Objective):指當(dāng)災(zāi)難發(fā)生時(shí)允許丟失的數(shù)據(jù)量;
RTO(Recovery Time Object):指系統(tǒng)恢復(fù)的時(shí)間。
RPO 與 RTO 越小,系統(tǒng)的可用性就越高,成本投資也越大。
級(jí)別 |
定義 |
RTO |
RPO |
數(shù)據(jù)級(jí) |
指通過建立異地容災(zāi)中心,對(duì)數(shù)據(jù)進(jìn)行遠(yuǎn)程備份,在災(zāi)難發(fā)生之后要確保原有的數(shù)據(jù)不會(huì)丟失或者遭到破壞。但在數(shù)據(jù)級(jí)容災(zāi)這個(gè)級(jí)別,發(fā)生災(zāi)難時(shí)應(yīng)用是會(huì)中斷的。 在數(shù)據(jù)級(jí)容災(zāi)方式下,所建立的異地容災(zāi)中心相當(dāng)于一個(gè)遠(yuǎn)程的數(shù)據(jù)備份中心。 數(shù)據(jù)級(jí)容災(zāi)的恢復(fù)時(shí)間比較長(zhǎng),但是相比其他容災(zāi)級(jí)別來講它的費(fèi)用比較低,且構(gòu)建實(shí)施相對(duì)簡(jiǎn)單。 |
RTO最長(zhǎng)(若干天),因?yàn)闉?zāi)難發(fā)生時(shí),需要重新部署機(jī)器,利用備份數(shù)據(jù)恢復(fù)業(yè)務(wù)。 |
最低 |
應(yīng)用級(jí) |
在數(shù)據(jù)級(jí)容災(zāi)的基礎(chǔ)之上,在備份站點(diǎn)同樣構(gòu)建一套相同的應(yīng)用系統(tǒng),通過同步或異步復(fù)制方式,可保證關(guān)鍵應(yīng)用在允許的時(shí)間范圍內(nèi)恢復(fù)運(yùn)行,盡可能減少災(zāi)難帶來的損失,讓用戶基本感受不到災(zāi)難的發(fā)生,從而使系統(tǒng)所提供的服務(wù)是完整的、可靠的和安全的。 |
RTO中等(若干小時(shí)) |
中等。異地可搭建一樣的系統(tǒng),或者精簡(jiǎn)系統(tǒng)。 |
業(yè)務(wù)級(jí) |
全業(yè)務(wù)的災(zāi)備,除了必要的IT相關(guān)技術(shù),還要求具備全部的基礎(chǔ)設(shè)施。其大部分內(nèi)容是非IT系統(tǒng)(如電話、辦公地點(diǎn)等),當(dāng)大災(zāi)難發(fā)生后,原有的辦公場(chǎng)所都會(huì)受到破壞,除了數(shù)據(jù)和應(yīng)用的恢復(fù),更需要一個(gè)備份的工作場(chǎng)所能夠正常的開展業(yè)務(wù)。 |
RTO最小(若干分鐘或者秒) |
最高 |
https://www.imdb.com/list/ls085332179/
https://www.imdb.com/list/ls085332117/
https://www.imdb.com/list/ls085332135/
https://www.imdb.com/list/ls085332167/
https://www.imdb.com/list/ls085332124/
https://www.imdb.com/list/ls085332147/
https://www.imdb.com/list/ls085332197/
https://www.imdb.com/list/ls085332193/
https://www.imdb.com/list/ls085332188/
https://www.imdb.com/list/ls085332302/
分享名稱:OpenStack及云計(jì)算(面試)常見問題
URL網(wǎng)址:http://jinyejixie.com/article36/ghoppg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、網(wǎng)站營(yíng)銷、網(wǎng)站維護(hù)、企業(yè)建站、網(wǎng)頁設(shè)計(jì)公司、自適應(yīng)網(wǎng)站
廣告
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源:
創(chuàng)新互聯(lián)