真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Openstack中keystone組件的作用是什么

今天就跟大家聊聊有關(guān)Openstack 中keystone組件的作用是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供天祝藏族自治網(wǎng)站建設(shè)、天祝藏族自治做網(wǎng)站、天祝藏族自治網(wǎng)站設(shè)計、天祝藏族自治網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、天祝藏族自治企業(yè)網(wǎng)站模板建站服務(wù),十年天祝藏族自治做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

User

User即用戶,他們代表可以通過keystone進行訪問的人或程序。Users通過認證信息(credentials,如密碼、API Keys等)進行驗證。

Tenant

Tenant即租戶,它是各個服務(wù)中的一些可以訪問的資源集合。例如,在Nova中一個tenant可以是一些機器,在Swift和Glance中一個tenant可以是一些鏡像存儲,在Quantum中一個tenant可以是一些網(wǎng)絡(luò)資源。Users默認的總是綁定到某些tenant上。

Role

Role即角色,Roles代表一組用戶可以訪問的資源權(quán)限,例如Nova中的虛擬機、Glance中的鏡像。Users可以被添加到任意一個全局的 或 租戶內(nèi)的角色中。在全局的role中,用戶的role權(quán)限作用于所有的租戶,即可以對所有的租戶執(zhí)行role規(guī)定的權(quán)限;在租戶內(nèi)的role中,用戶僅能在當前租戶內(nèi)執(zhí)行role規(guī)定的權(quán)限。

Service

Service即服務(wù),如Nova、Glance、Swift。根據(jù)前三個概念(User,Tenant和Role)一個服務(wù)可以確認當前用戶是否具有訪問其資源的權(quán)限。但是當一個user嘗試著訪問其租戶內(nèi)的service時,他必須知道這個service是否存在以及如何訪問這個service,這里通常使用一些不同的名稱表示不同的服務(wù)。在上文中談到的Role,實際上也是可以綁定到某個service的。例如,當swift需要一個管理員權(quán)限的訪問進行對象創(chuàng)建時,對于相同的role我們并不一定也需要對nova進行管理員權(quán)限的訪問。為了實現(xiàn)這個目標,我們應(yīng)該創(chuàng)建兩個獨立的管理員role,一個綁定到swift,另一個綁定到nova,從而實現(xiàn)對swift進行管理員權(quán)限訪問不會影響到Nova或其他服務(wù)。

Endpoint

Endpoint,翻譯為“端點”,我們可以理解它是一個服務(wù)暴露出來的訪問點,如果需要訪問一個服務(wù),則必須知道他的endpoint。因此,在keystone中包含一個endpoint模板(endpoint template,在安裝keystone的時候我們可以在conf文件夾下看到這個文件),這個模板提供了所有存在的服務(wù)endpoints信息。一個endpoint template包含一個URLs列表,列表中的每個URL都對應(yīng)一個服務(wù)實例的訪問地址,并且具有public、private和admin這三種權(quán)限。

public url可以被全局訪問(如http://compute.example.com),端口 5000

private url只能被局域網(wǎng)訪問(如http://compute.example.local),端口 5000

admin url被從常規(guī)的訪問中分離  端口:35357

Credentials

用于確認用戶身份的憑證。說白了就是“信物”,可以是:

(1):用戶名和密碼

(2):用戶名跟API Kye(秘鑰)              #(1)(2)用戶第一次確認身份的方法

(3):一個keystone分配的身份的token            #(3)用戶已經(jīng)確認身份后的方法 (token是有時間限制的)

Auhentication

(1):用戶身份驗證的過程。keystone服務(wù)通過檢查用戶的Credentials來確定用戶的身份

(2):第一次驗證身份是使用用戶名與密碼或者用戶名與API Key的形式。當用戶的Credentials被驗證后,keystone會給用戶分配一個Authentication token 供該用戶的后續(xù)請求操作(返回的token中就包含User的Role列表)

Token

(1):是一串數(shù)字字符串,當用戶訪問資源時需要使用的東西,在keystone中主要是引入令牌機制來保護用戶對資源的訪問,同時引入PKI、PKIZ、fernet、UUID其中一個隨機加密產(chǎn)生一串數(shù)字,對令牌加以保護

(2):token并不是長久有效的,是有時效性的,在有效的時間內(nèi)可以訪問資源。

Policy

(1):對于keystone service 來說,Policy就是一個JSON文件,rpm安裝默認是在/etc/keyston/policy.json。通過配置這個文件,keystone實現(xiàn)了對User基于Role的權(quán)限管理(User <-- Role(ACL) <--Policy)

(2):Policy就是用來控制User對Project(tenant)中資源的操作權(quán)限

Project(Tenant)

(1):Project(Tenant)是一個人或服務(wù)所擁有的資源集合。不同的Project之間資源是隔離的,資源可以設(shè)置配額

(2):Project(Tenant)中可以有多個User,每一個User會根據(jù)權(quán)限的劃分來使用Project(Tenant)中的資源

(3):User在使用Project(Tenant)的資源前,必須要與這個Project關(guān)聯(lián),并且制定User在Project下的Role,一個assignment(關(guān)聯(lián)) 即:Project-User-Role

Service 

即服務(wù),如Nova,Glace,等各個組件

Keystone管理對象之間的關(guān)系

Openstack 中keystone組件的作用是什么

在Openstack-M版本中就使用了Keystone-V3。V3在V2的基礎(chǔ)上引入了域和用戶組的概念,將 Tenant 改稱為 Project,V3將逐步替代V2。

V3的組織結(jié)構(gòu)

Openstack 中keystone組件的作用是什么

V3的改進

問題1:在Keystone V2中,資源分配是以Tenant為單位的,這不太符合現(xiàn)實世界中的層級關(guān)系。如一個公司在 Openstack中擁有兩個不同的項目,他需要管理兩個Tenant來分別對應(yīng)這兩個項目,并對這兩個Tenant中的用戶分別分配角色。由于在Tenant之上并不存在一個更高層的概念,無法對 Tenant 進行統(tǒng)一的管理,所以這給多 Tenant 的用戶帶來了不便。
解決:V3 利用 Domain 的概念實現(xiàn)真正的多租戶(multi-tenancy)架構(gòu),Domain 擔任 Project 的高層容器。云服務(wù)的客戶是 Domain 的所有者,他們可以在自己的 Domain 中創(chuàng)建多個 Projects、Users、Groups 和 Roles。通過引入 Domain,云服務(wù)客戶可以對其擁有的多個 Project 進行統(tǒng)一管理,而不必再向過去那樣對每一個 Project 進行單獨管理。
簡而言之,Domain的引入是為了將多個Project進行封裝,成為單一實體再交付給相應(yīng)的一個客戶使用。

問題2:在 Keystone V2中,用戶的權(quán)限管理是以每一個用戶為單位,需要對每一個用戶進行角色分配,并不存在一種對一組用戶進行統(tǒng)一管理的方案,這給系統(tǒng)管理員帶來了額外的工作和不便。
解決:V3引入了Group的概念,Group 是一組 Users 的容器,可以向 Group 中添加用戶,并直接給 Group 分配角色,那么在這個 Group 中的所有用戶就都擁有了 Group 所擁有的角色權(quán)限。通過引入 Group 的概念,Keystone V3 實現(xiàn)了對用戶組的管理,達到了同時管理一組用戶權(quán)限的目的。這與 V2 中直接向 User/Project 指定 Role 不同,使得對云服務(wù)進行管理更加便捷。
類比操作系統(tǒng)中的用戶組,是批量便捷操作的體現(xiàn)。

Keystone 和其它 OpenStack service之間的交互和協(xié)同工作:首先User向Keystone提供自己的Credentials(憑證:用于確認用戶身份的數(shù)據(jù),EG. username/password)。Keystone會從SQL Database中讀取數(shù)據(jù)對User提供的Credentials進行驗證,如驗證通過,會向User返回一個Token,該Token限定了可以在有效時間內(nèi)被訪問的 OpenStack API Endpoint和資源 。此后User所有的Request都會使用該Token進行身份驗證。如用戶向Nova申請?zhí)摂M機服務(wù),Nova會將User提供的Token發(fā)送給Keystone進行Verify驗證,Keystone會根據(jù)Token判斷User是否擁有執(zhí)行申請?zhí)摂M機操作的權(quán)限,若驗證通過那么Nova會向其提供相對應(yīng)的服務(wù)。其它Openstack和Keystone的交互也是如此。

Openstack 中keystone組件的作用是什么

看完上述內(nèi)容,你們對Openstack 中keystone組件的作用是什么有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。


分享標題:Openstack中keystone組件的作用是什么
分享地址:http://weahome.cn/article/jhshci.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部