本文介紹如何在Ubuntu 14.04 LTS 上安裝Juno版的 Keystone , 我們采用的是手動安裝的方式, 同時僅針對OpenStack的身份與訪問管理系統(tǒng)Keystone. 事實上OpenStack不同服務(wù)之間提供了非常高的一致性, 對Keystone安裝的把握能夠幫助理解如何部署OpenStack.
本文分別介紹了利用操作系統(tǒng)的包管理機制和利用源代碼安裝. 源碼安裝時還可以讓Keystone運行在一個獨立的虛擬環(huán)境中. 本文對應(yīng)的系統(tǒng)環(huán)境是 已經(jīng)安裝了Python 2.7.x 的 Ubuntu.
?
身份數(shù)據(jù)庫
Keystone的身份數(shù)據(jù)庫可以使用SqLite和MySQL等存儲后端, 如果選擇特定的數(shù)據(jù)庫, 應(yīng)該在使用Keystone前安裝這些目標(biāo)數(shù)據(jù)庫, 并為Keystone專門建表建庫. 這里以使用MySQL為例.
安裝MySQL, 過程中會要求設(shè)置根用戶口令.
$ apt-get
install
mysql-server python-mysqldb
?
為Keystone創(chuàng)建用戶和數(shù)據(jù)庫.
$ mysql -uroot - p $ RootPass > create database keystone; > grant all on keystone.* to ' keystone ' @ ' localhost ' identified by ' KeystonePass ' ; > quit
? 如果采用SqLite作為存儲后端, 只需要在后續(xù)配置Keystone時設(shè)置驅(qū)動和存儲文件即可.
一. 包安裝Keystone
OpenStack儼然已經(jīng)成為Ubuntu, RedHat等系統(tǒng)廠商的寵兒, 這些系統(tǒng)提供商對這個項目的支持方便了用戶的部署, 利用Ubuntu的包管理工具, 我們可以非常容易地部署OpenStack的任意項目. 由于包安裝的方式極為簡便, 我們需要確保的就是在Ubuntu的云存檔種獲得我們需要版本的OpenStack組件.
添加 Juno 版 OpenStack的存檔庫(Icehouse 等版本的操作類似):
$ sudo add-apt-repository cloud- archive:juno Ubuntu Cloud Archive for OpenStack Juno More info : https: // wiki.ubuntu.com/ServerTeam/CloudArchive Press [ENTER] to continue or ctrl-c to cancel adding it
...
?
接著更新安裝包列表:
$
sudo
apt-get update
?
事實上此時已經(jīng)可以安裝Juno 版 OpenStack的任意組件了:
$ sudo apt-get install keystone
?
? 二. 源碼安裝Keystone
安裝git,用來下載源碼:
$ sudo apt-get install git
?
獲取源碼, 會在當(dāng)前 shell 的工作目錄下生成一個名為"keystone"的目錄用來同步源碼, 也可以更改路徑和目錄名, 具體參考Git clone指令.
$ git clone https: // github.com/openstack/keystone
?
OpenStack基本基于Python實現(xiàn), 依賴的大多數(shù)項目都可以從Python的包目錄Pypi上獲取, 但是根據(jù)具體的操作系統(tǒng), 有一些依賴關(guān)系是無法使用Python的包管理解決的, 所以我們需要在安裝Keystone的代碼前先滿足這些依賴.
$ sudo apt-get install python-dev libxml2-dev libxslt1- dev \ libsasl2 -dev libsqlite3-dev libssl-dev libldap2-dev libffi-dev
從Pypi上獲取Python包需要借助pip或easy_install, 這里以pip為例, 安裝pip .
$ wget https: // bootstrap.pypa.io/get-pip.py $ python get-pip.py
?
虛擬環(huán)境安裝
接下來就可以從源碼安裝Keystone了, 如果要在虛擬的Python環(huán)境中運行它, 執(zhí)行這兩條指令, 否則查看 "非虛擬環(huán)境安裝" .
$ cd keystone
$ python tools
/install_venv.py
?
上述命令將在keystone/.venv目錄下安裝Keystone的虛擬運行環(huán)境, 通過下面的命令啟動或關(guān)閉虛擬運行環(huán)境:
$ source .venv/bin/
activate
#開啟
$ deactivate
#關(guān)閉
?
非虛擬環(huán)境安裝
如果不想在虛擬環(huán)境下運行Keystone:
$ sudo pip install - r requirements.txt #安裝Keystone運行依賴 $ python setup.py develop #將keystone鏈入Python的本地包
?
驗證安裝完成
至此源碼安裝完成, 在虛擬環(huán)境下:
$ source .venv/bin/
activate
$ python
?
或在非虛擬環(huán)境下:
$ python
?
在Python的交互界面中import keystone, 看看是否成功, 如果沒有異常, 說明keystone已經(jīng)被正確安裝了.
>>>
import
keystone >>>
? 這些工作也可以寫成腳本執(zhí)行, 雖然針對的只是Keystone, 但安裝的邏輯和流程同樣適用于OpenStack的其他項目.
安裝完成的Keystone并不能運行, 接下來需要對其進(jìn)行配置和初始化, 下一篇隨筆將介紹 如何配置Keystone .
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
