1. 程式人生 > >OpenStack Ocata 安裝(二)安裝身份驗證(Keystone)服務

OpenStack Ocata 安裝(二)安裝身份驗證(Keystone)服務

11、安裝身份驗證(Keystone)服務:

OpenStack標識服務為管理身份驗證、授權和服務目錄提供了單一的整合點。標識服務通常是使用者與使用者互動的第一個服務

建立該服務的資料庫和資料庫管理賬戶:

controller#

mysql -uroot -p123

CREATE DATABASE keystone;

GRANT ALL PRIVILEGES ON keystone.* TO'keystone'@'localhost' \

IDENTIFIED BY 'keystone';

GRANT ALL PRIVILEGES ON keystone.* TO'keystone'@'%' \

IDENTIFIED BY 'keystone';

exit

配置keystone的配置檔案

controller#

vi /etc/keystone/keystone.conf

[database]

connection = mysql+pymysql://keystone:keystone@controller/keystone

[token]

provider = fernet

同步(寫入)資料庫

controller#

su -s /bin/sh -c "keystone-managedb_sync" keystone

初始化金鑰儲存庫:

controller#

keystone-manage fernet_setup--keystone-user keystone --keystone-group keystone

keystone-manage credential_setup--keystone-user keystone --keystone-group keystone

引導身份服務,設定admin使用者(管理使用者)和密碼

controller#

keystone-manage bootstrap--bootstrap-password admin\

--bootstrap-admin-urlhttp://controller:35357/v3/ \

--bootstrap-internal-urlhttp://controller:5000/v3/ \

--bootstrap-public-urlhttp://controller:5000/v3/ \

--bootstrap-region-id RegionOne

12、安裝httpd服務:

配置web伺服器(HTTPd)

controller#

vi /etc/httpd/conf/httpd.conf

ServerName controller

把keystone的虛擬主機檔案連結的http的配置目錄下

ln -s/usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

開機自啟動和啟動服務

controller#

systemctl enable httpd.service

systemctl restart httpd.service

13、keystone的建立以及驗證操作:

配置管理使用者的環境變數

controller#

export OS_USERNAME=admin

export OS_PASSWORD=admin

export OS_PROJECT_NAME=admin

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_DOMAIN_NAME=Default

exportOS_AUTH_URL=http://controller:35357/v3

export OS_IDENTITY_API_VERSION=3

建立一個域、專案、使用者和角色:

controller#


openstack project create --domain default \

--description "Service Project"service

 openstack project create --domain default \

--description "Demo Project" demo

 openstack user create --domain default \

--password-prompt demo

下一步輸入建立的demo使用者的密碼

 openstack role create user

將使用者角色新增到演示專案和使用者:

controller#

openstack role add --project demo --userdemo user

編輯 的/etc/keystone/keystone-paste.ini檔案,並從[public_api]、[admin_api]、[api_v3]段刪除admin_token_auth引數。禁止臨時認證機制。

驗證操作

controller#

unset OS_AUTH_URL OS_PASSWORD

openstack --os-auth-urlhttp://controller:35357/v3 \

--os-project-domain-name default--os-user-domain-name default \

--os-project-name admin --os-username admintoken issue

輸入admin使用者的密碼,正確會有輸出。

 openstack --os-auth-urlhttp://controller:5000/v3 \

--os-project-domain-name default--os-user-domain-name default \

--os-project-name demo --os-username demotoken issue

輸入demo使用者的密碼,正確會有輸出。

建立客戶機環境OpenStack指令碼(admin和demo使用者的環境指令碼):

controller#

vi admin.sh

export OS_PROJECT_DOMAIN_NAME=Default

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_NAME=admin

export OS_USERNAME=admin

export OS_PASSWORD=admin

exportOS_AUTH_URL=http://controller:35357/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

vi demo.sh

export OS_PROJECT_DOMAIN_NAME=Default

export OS_USER_DOMAIN_NAME=Default

export OS_PROJECT_NAME=demo

export OS_USERNAME=demo

export OS_PASSWORD=demo

exportOS_AUTH_URL=http://controller:5000/v3

export OS_IDENTITY_API_VERSION=3

export OS_IMAGE_API_VERSION=2

使用source命令匯入腳本里的環境變數以及檢視keystone認證詳情

controller#

source admin

openstack token issue