簡體   English   中英

如何使用 Horizo​​n 或 Openstack 客戶端獲取 openstack 版本?

[英]How to get openstack version using Horizon or Openstack client?

如何使用 Horizo​​n 或 OpenStack 客戶端獲取 OpenStack 版本?

當我運行命令openstack --version ,我得到以下輸出:

openstack 3.15.0

現在從這里,我們如何獲得 openstack 的哪個版本,例如牛頓,千克?

另一個問題,如果我可以訪問 Horizo​​n dashbord,是否可以從 UI 獲取 openstack 的版本?

nova-manage --version將為您提供 OpenStack 版本。 輸出將是一個數字,對應於字母表中的字母。 例如,如果輸出是 18,那么它的 OpenStack ROCKY 版本,因為 18 對應於字母表中的第 18 個字母。

17- Queen 
18- Rocky
19- Stein

我認為值得注意的是,命令行中的openstack --version只會為您提供您正在查看的系統上的 openstack客戶端版本。 openstack host listnova service-list可能會讓您更好地了解 openstack 服務在您的 openstack 部署中運行的位置。

我不記得看到通過 Horizo​​n 查看特定 OpenStack 服務版本的方法。 從給定服務的主機(如 nova、neutron、cinder、keystone)上的命令行,您應該能夠列出已安裝的軟件包。

我認為規范安裝使用發行版的包管理器:

對於基於 yum 的系統,如 rhel 和 centos

sudo yum list installed | grep openstack
sudo yum list installed | grep nova

對於基於能力的系統

sudo dpkg -l | grep openstack
sudo dpkg -l | grep nova 

從那里,您必須交叉引用 OpenStack 文檔中的版本和版本。 例如,Nova 版本 14 將是 Newton 版本。 此處查看 nova 版本。 有關版本列表,請查看此處

OpenStack 中安裝的每個服務都是一個帶有版本的包。 所以通常我們會得到個別服務的版本。 例如要找到nova版本,然后,

 nova --version

如果你想知道所有與 nova 相關的軟件包,

pip list | grep nova

從上面,您將獲得 nova 客戶端和 nova 版本,然后在 ** https://releases.openstack.org/teams/nova.html 中搜索版本。 在這里,您將獲得根據 OpenStack 版本名稱隔離的版本。

從 openstack --version 命令獲取輸出並與以下內容進行比較。

Rocky 3.16.0 Queens 3.14.0 Pike 3.12.0 Ocata 3.8.1 Newton 3.2.0 Mitaka 2.3.0 Liberty 1.7.3 Kilo 1.0.6 Juno 0.4.1 Icehouse 0.3.1

未來版本請參考:https ://docs.openstack.org/releasenotes/python-openstackclient/

知道您使用的是哪個版本的 OpenStack 環境總是好的。 在 Liberty 版本之前,除 Swift 之外的所有項目都有一個基於年和月的版本。 從 Liberty 開始,所有組件都具有傳統的版本結構 XYZ,其中 X 在一個版本中始終相同。 以下是 Mitaka 的示例:
keystone-manage --version
9.0.0
nova-manage --version
13.0.0

這是 OpenStack Kilo 中使用的老式版本約定的示例:
keystone-manage --version
2015.1.0
nova-manage --version
2015.1.0
您也可以在頁面底部右上角的“管理”菜單中的“系統信息”選項卡上找到版本。 在表 11-2 中,列出了幾個最新的 OpenStack 版本。 表 11-2。 OpenStack 發布系列發布 初始發布日期 Juno 2014.2 2014 年 10 月 16 日 Kilo 2015.1 2015 年 4 月 30 日 Liberty Nova 12.0; 基石 8.0; 中子7.0; Swift 2.4 2015 年 10 月 15 日 三鷹新星 13.0; 基石 9.0; 中子8.0; 斯威夫特 2.6 2016 年 4 月 7 日牛頓新星 14.0; 基石 10.0; 中子9.0; Swift 2.8 2016 年 10 月 6 日(計划中)

來自 Openstack 文檔

如果您沒有權限(HTTP 錯誤 403)運行:

openstack service list
openstack host list

然后在您的租戶 RC 文件中找到OS_AUTH_URL地址中的“id”版本(您可以在 Horizo​​n 中的 Project > API Access 下下載 RC 文件)。

例如,這里我使用curljq來過濾 id 版本: https://my.openstack.redhat.com:13000/v3

$ curl https://my.openstack.redhat.com:13000/v3 | jq '.[] | .id'

"v3.10"

根據https://docs.openstack.org/api-ref/identity/v3/

我的 Openstack 版本是 3.10,也稱為“Queen”(或 RHOSP 13)。

在 RHOSP 中,您可以簡單地檢查控制器中的文件

# cat /etc/rhosp-release
Red Hat OpenStack Platform release 13.0.10 (Queens)

這將為您提供安裝的 openstack 的確切版本

nova-manage --version將為您提供 OpenStack 版本。 輸出將是一個數字,對應於字母表中的字母。 例如,如果輸出是 18,那么它的 OpenStack ROCKY 版本,因為 18 對應於字母表中的第 18 個字母。

可悲的答案是:你不能

如果您只是 OpenStack 設置的用戶並且無法訪問背板,則至少這是正確的,登錄到提供服務的實際服務器。 API 是訪問服務的唯一穩定方式。 每個服務可能有也可能沒有自己的 OpenStack 版本,它們不一定完全相同。

理論上,查找服務目錄應該可以完成您要求的工作,因為它包含 OpenStack 雲提供的每項服務的端點。 端點 URL 的一部分是端點版本。 不幸的是,這不一定與服務的模塊版本匹配。

查找目錄可以這樣完成:

openstack catalog list -c Endpoints -f json | jq '.[].Endpoints[]' | grep url| sort -u

(你明白了)。 也許這包括您正在尋找的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM