設置時間同步:node
對於openstack來講,時間同步很是重要,因此必定要保證全部服務的時間一直,下面對世界作同步:python
timedatectl list-timezones|grep Shanghai 查看時區 timedatectl set-timezone Asia/Shanghai 設置時區 timedatectl set-local-rtc yes 把 boolean 替換成yes則表示使用本地時間,替換成no則表示是UTC時間 ntpdate time1.aliyun.com 同步時間
啓動數據庫服務mysql
[root@linux-node1 ~]# systemctl enable mariadb.service 設置開機自啓動 Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service. [root@linux-node1 ~]# systemctl start mariadb.service 啓動數據庫 [root@linux-node1 ~]# mysql_secure_installation 初始化並設置密碼 NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] y New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] y ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] y ... Success! By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] y ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
配置rabbitMQ消息隊列
linux
[root@linux-node1 ~]# systemctl enable rabbitmq-server.service #設置開機啓動 Created symlink from /etc/systemd/system/multi-user.target.wants/rabbitmq-server.service to /usr/lib/systemd/system/rabbitmq-server.service. [root@linux-node1 ~]# systemctl start rabbitmq-server.service #啓動消息隊列 [root@linux-node1 ~]# rabbitmqctl add_user openstack openstack #給消息隊列增長openstack用戶和密碼 Creating user "openstack" ... [root@linux-node1 ~]# rabbitmqctl set_permissions openstack ".*" ".*" ".*" #給openstack設置消息隊列的權限 Setting permissions for user "openstack" in vhost "/" ... [root@linux-node1 ~]# rabbitmq-plugins list #查看消息隊列插件 Configured: E = explicitly enabled; e = implicitly enabled | Status: * = running on rabbit@linux-node1 |/ [ ] amqp_client 3.6.5 [ ] cowboy 1.0.3 [ ] cowlib 1.0.1 [ ] mochiweb 2.13.1 [ ] rabbitmq_amqp1_0 3.6.5 [ ] rabbitmq_auth_backend_ldap 3.6.5 [ ] rabbitmq_auth_mechanism_ssl 3.6.5 [ ] rabbitmq_consistent_hash_exchange 3.6.5 [ ] rabbitmq_event_exchange 3.6.5 [ ] rabbitmq_federation 3.6.5 [ ] rabbitmq_federation_management 3.6.5 [ ] rabbitmq_jms_topic_exchange 3.6.5 [ ] rabbitmq_management 3.6.5 [ ] rabbitmq_management_agent 3.6.5 [ ] rabbitmq_management_visualiser 3.6.5 [ ] rabbitmq_mqtt 3.6.5 [ ] rabbitmq_recent_history_exchange 1.2.1 [ ] rabbitmq_sharding 0.1.0 [ ] rabbitmq_shovel 3.6.5 [ ] rabbitmq_shovel_management 3.6.5 [ ] rabbitmq_stomp 3.6.5 [ ] rabbitmq_top 3.6.5 [ ] rabbitmq_tracing 3.6.5 [ ] rabbitmq_trust_store 3.6.5 [ ] rabbitmq_web_dispatch 3.6.5 [ ] rabbitmq_web_stomp 3.6.5 [ ] rabbitmq_web_stomp_examples 3.6.5 [ ] sockjs 0.3.4 [ ] webmachine 1.10.3 [root@linux-node1 ~]# rabbitmq-plugins enable rabbitmq_management #加載消息隊列的管理插件 The following plugins have been enabled: mochiweb webmachine rabbitmq_web_dispatch amqp_client rabbitmq_management_agent rabbitmq_management Applying plugin configuration to rabbit@linux-node1... started 6 plugins. [root@linux-node1 ~]# systemctl restart rabbitmq-server.service #重啓消息隊列服務
消息隊列服務驗證web
[root@linux-node1 ~]# lsof -i :15672 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME beam.smp 6370 rabbitmq 53u IPv4 37357 0t0 TCP *:15672 (LISTEN) 在瀏覽器中輸入:192.168.56.11:15672,使用guest 帳號和guest密碼登陸
keystone認證服務sql
Keystone在N版已是V3版本。在Keystone中主要涉及如下幾個概念:數據庫
User:使用服務的用戶,能夠是人,服務或者系統,只要是使用了openstack服務的對象均可以稱爲用戶apache
project(tenant)租戶,能夠理解爲一我的,項目或者組織擁有的資源的合集。在一個租戶中能夠擁有不少個用戶,這些用戶能夠根據權限的劃分使用租戶中的資源bootstrap
Role:角色,用於分配操做的權限。角色能夠被指定給用戶,使得該用戶得到角色對應的操做權限vim
Token:認證成功後,keystone會生成一串比特值或者字符串,用來做爲訪問資源的令牌,token中有可訪問資源的範圍和有效時間
Keystone V3 作出了許多變化和改進,咱們選取其中較爲重要的進行闡述:
將 Tenant 改稱爲 Project
引入 Domain 的概念
引入 Group 的概念
將 Tenant 改成 Project 並在其上添加 Domain 的概念,這更加符合現實世界和雲服務的映射。
V3 利用 Domain 實現真正的多租戶(multi-tenancy)架構,Domain 擔任 Project 的高層容器。雲服務的客戶是 Domain 的全部者,他們能夠在本身的 Domain 中建立多個 Projects、Users、Groups 和 Roles。經過引入 Domain,雲服務客戶能夠對其擁有的多個 Project 進行統一管理,而沒必要再向過去那樣對每個 Project 進行單獨管理。
Group 是一組 Users 的容器,能夠向 Group 中添加用戶,並直接給 Group 分配角色,那麼在這個 Group 中的全部用戶就都擁有了 Group 所擁有的角色權限。經過引入 Group 的概念,Keystone V3 實現了對用戶組的管理,達到了同時管理一組用戶權限的目的。這與 V2 中直接向 User/Project 指定 Role 不一樣,使得對雲服務進行管理更加便捷。
建立庫及用戶
在數據庫中建立庫和用戶(這裏爲了方便會把後面用到cinder,glance ,neutron,等服務的帳號一併建立到數據庫中
CREATE DATABASE keystone; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone'; GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone'; CREATE DATABASE glance; GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance'; GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance'; CREATE DATABASE nova; GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'nova'; GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'nova'; CREATE DATABASE nova_api; GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'nova'; GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'nova'; CREATE DATABASE neutron; GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'neutron'; GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'neutron'; CREATE DATABASE cinder; GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'cinder'; GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder';
執行過程:
[root@linux-node1 ~]# mysql -uroot -p Enter password: #用初始化時候設置的密碼 MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> CREATE DATABASE glance; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY 'glance'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY 'glance'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> CREATE DATABASE nova; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' IDENTIFIED BY 'nova'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' IDENTIFIED BY 'nova'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> CREATE DATABASE nova_api; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' IDENTIFIED BY 'nova'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' IDENTIFIED BY 'nova'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> CREATE DATABASE neutron; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'localhost' IDENTIFIED BY 'neutron'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON neutron.* TO 'neutron'@'%' IDENTIFIED BY 'neutron'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> CREATE DATABASE cinder; Query OK, 1 row affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' IDENTIFIED BY 'cinder'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' IDENTIFIED BY 'cinder'; Query OK, 0 rows affected (0.00 sec) MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | cinder | | glance | | information_schema | | keystone | | mysql | | neutron | | nova | | nova_api | | performance_schema | +--------------------+ 9 rows in set (0.00 sec)
[root@linux-node1 ~]# grep -n '^[a-z]' /etc/keystone/keystone.conf 640:connection = mysql+pymysql://keystone:keystone@192.168.56.11/keystone 1472:servers = 192.168.56.11:11211 # memcache服務地址 2655:provider = fernet #配置令牌 2665:driver = memcache #選擇driver爲memcache默認是sql
su -s /bin/sh -c"keystone-manage db_sync" keystone
驗證初始化是否成功:
[root@linux-node1 ~]# mysql -h 192.168.56.11 -ukeystone -pkeystone -e "use keystone;show tables;" +------------------------+ | Tables_in_keystone | +------------------------+ | access_token | | assignment | | config_register | | consumer | | credential | | endpoint | | endpoint_group | | federated_user | | federation_protocol | | group | | id_mapping | | identity_provider | | idp_remote_ids | | implied_role | | local_user | | mapping | | migrate_version | | nonlocal_user | | password | | policy | | policy_association | | project | | project_endpoint | | project_endpoint_group | | region | | request_token | | revocation_event | | role | | sensitive_config | | service | | service_provider | | token | | trust | | trust_role | | user | | user_group_membership | | whitelisted_config | +------------------------+
安裝memcached
yuminstall memcached python-memcached vim/etc/sysconfig/memcached [root@linux-node1 ~]# cat /etc/sysconfig/memcached PORT="11211" USER="memcached" MAXCONN="1024" CACHESIZE="64" OPTIONS="-l 192.168.56.11,::1"
經過keystone-manage生成token認證必要的信息:
[root@linux-node1 keystone]# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone [root@linux-node1 keystone]# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone [root@linux-node1 keystone]# keystone-manage bootstrap --bootstrap-password admin \ > --bootstrap-admin-url http://192.168.56.11:35357/v3/ \ > --bootstrap-internal-url http://192.168.56.11:35357/v3/ \ > --bootstrap-public-url http://192.168.56.11:5000/v3/ \ > --bootstrap-region-id RegionOne
配置apache服務
[root@linux-node1 keystone]# vim/etc/httpd/conf/httpd.conf #編輯配置文件, 95 ServerName 192.168.56.11:80 配置軟鏈接 [root@linux-node1 keystone]# ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/ 啓動服務: [root@linux-node1 keystone]# systemctl enable httpd.service Created symlink from /etc/systemd/system/multi-user.target.wants/httpd.service to /usr/lib/systemd/system/httpd.service. [root@linux-node1 keystone]# systemctl start httpd.service [root@linux-node1 keystone]# [root@linux-node1 keystone]# lsof -i :80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME httpd 22891 root 4u IPv6 59157 0t0 TCP *:http (LISTEN) httpd 22902 apache 4u IPv6 59157 0t0 TCP *:http (LISTEN) httpd 22906 apache 4u IPv6 59157 0t0 TCP *:http (LISTEN) httpd 22907 apache 4u IPv6 59157 0t0 TCP *:http (LISTEN) httpd 22908 apache 4u IPv6 59157 0t0 TCP *:http (LISTEN) httpd 22909 apache 4u IPv6 59157 0t0 TCP *:http (LISTEN) 配置環境變量: 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 export OS_AUTH_URL=http://192.168.56.11:35357/v3 export OS_IDENTITY_API_VERSION=3 安裝openstack客戶端,若是不安裝是沒有openstack命令的 yum install -y python-openstackclient 安裝完畢執行如下命令驗證: [root@linux-node1 keystone]# openstack user list #查看用戶列表 +----------------------------------+-------+ | ID | Name | +----------------------------------+-------+ | b84c1614b79b40278e02bd6ed034cc6f | admin | +----------------------------------+-------+ [root@linux-node1 keystone]# openstack role list #查看權限列表 +----------------------------------+-------+ | ID | Name | +----------------------------------+-------+ | 9b0ba78cf70048efa8659220a3cebd06 | admin | +----------------------------------+-------+ [root@linux-node1 keystone]# openstack project list #查看項目列表 +----------------------------------+-------+ | ID | Name | +----------------------------------+-------+ | 7ae0fb7deb5342d885a07c2c890a1ff4 | admin | +----------------------------------+-------+ [root@linux-node1 keystone]# openstack endpoint list #查看端點列表 +---------------+-----------+--------------+--------------+---------+-----------+------------------+ | ID | Region | Service Name | Service Type | Enabled | Interface | URL | +---------------+-----------+--------------+--------------+---------+-----------+------------------+ | 65f66a71d4624 | RegionOne | keystone | identity | True | internal | http://192.168.5 | | 2a0a80a0de1b6 | | | | | | 6.11:35357/v3/ | | 503929 | | | | | | | | 71f801be8bc54 | RegionOne | keystone | identity | True | admin | http://192.168.5 | | 7aca380c81b79 | | | | | | 6.11:35357/v3/ | | 6b240a | | | | | | | | b1caff56f31f4 | RegionOne | keystone | identity | True | public | http://192.168.5 | | dfabe5a8418c6 | | | | | | 6.11:5000/v3/ | | 5e2839 | | | | | | | +---------------+-----------+--------------+--------------+---------+-----------+------------------+
建立項目:
[root@linux-node1 keystone]# openstack project create --domain default --description "Service Project" service +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | Service Project | | domain_id | default | | enabled | True | | id | 7f240473406147b99463f32b876bf69d | | is_domain | False | | name | service | | parent_id | default | +-------------+----------------------------------+
這裏生成的結果除了id和我不同,其餘的差很少同樣
查看是否建立成功
[root@linux-node1 keystone]# openstack project list +----------------------------------+---------+ | ID | Name | +----------------------------------+---------+ | 7ae0fb7deb5342d885a07c2c890a1ff4 | admin | | 7f240473406147b99463f32b876bf69d | service | +----------------------------------+---------+
建立demo項目:
[root@linux-node1 keystone]# openstack project create --domain default --description "Demo Project" demo +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | Demo Project | | domain_id | default | | enabled | True | | id | 9b913d25891849baa55b21d837e9b63d | | is_domain | False | | name | demo | | parent_id | default | +-------------+----------------------------------+
驗證是否建立成功:
[root@linux-node1 keystone]# openstack project list +----------------------------------+---------+ | ID | Name | +----------------------------------+---------+ | 7ae0fb7deb5342d885a07c2c890a1ff4 | admin | | 7f240473406147b99463f32b876bf69d | service | | 9b913d25891849baa55b21d837e9b63d | demo | +----------------------------------+---------+
建立用戶
[root@linux-node1 keystone]# openstack user create --domain default --password-prompt demo User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | f0c69bad72b54e0daef92c2295425932 | | name | demo | | password_expires_at | None | +---------------------+----------------------------------+ [root@linux-node1 keystone]# openstack user list +----------------------------------+-------+ | ID | Name | +----------------------------------+-------+ | b84c1614b79b40278e02bd6ed034cc6f | admin | | f0c69bad72b54e0daef92c2295425932 | demo | +----------------------------------+-------+
建立role權限:
[root@linux-node1 keystone]# openstack role create user +-----------+----------------------------------+ | Field | Value | +-----------+----------------------------------+ | domain_id | None | | id | f53267146a6449b797393f7fc5d23e10 | | name | user | +-----------+----------------------------------+ [root@linux-node1 keystone]# openstack role list +----------------------------------+-------+ | ID | Name | +----------------------------------+-------+ | 9b0ba78cf70048efa8659220a3cebd06 | admin | | f53267146a6449b797393f7fc5d23e10 | user | +----------------------------------+-------+
把用戶添加到項目中,並賦予權限
[root@linux-node1 keystone]# openstack role add --project demo --user demo user #把demo用戶加到demo項目中並賦予user權限 這裏我把之後各個服務用戶賦予不一樣role規則: [root@linux-node1 keystone]# openstack user create --domain default --password-prompt glance User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | 8dc6f28207b64e6d845a444a2ba18205 | | name | glance | | password_expires_at | None | +---------------------+----------------------------------+ [root@linux-node1 keystone]# openstack role add --project service --user glance admin [root@linux-node1 keystone]# openstack user create --domain default --password-prompt nova User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | db596da4ed8f47ab9dc7fa77d3bc8c6c | | name | nova | | password_expires_at | None | +---------------------+----------------------------------+ [root@linux-node1 keystone]# openstack role add --project service --user nova admin [root@linux-node1 keystone]# openstack user create --domain default --password-prompt neutron User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | c0f9c52898ad4d4f88254a01c458eb27 | | name | neutron | | password_expires_at | None | +---------------------+----------------------------------+ [root@linux-node1 keystone]# openstack role add --project service --user neutron admin [root@linux-node1 keystone]# openstack user create --domain default --password-prompt cinder User Password: Repeat User Password: +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | domain_id | default | | enabled | True | | id | e5dbdde24a7340edb8bd3f498f9d28b5 | | name | cinder | | password_expires_at | None | +---------------------+----------------------------------+ [root@linux-node1 keystone]# openstack role add --project service --user cinder admin
驗證用戶:
unset OS_AUTH_URL OS_PASSWORD 取消以前的環境變量 [root@linux-node1 keystone]# openstack \ > --os-auth-url http://192.168.56.11:35357/v3 \ > --os-project-domain-name default \ > --os-user-domain-name default \ > --os-project-name admin \ > --os-username admin token issue Password: #輸入密碼後能出現下面內容說明用戶沒有問題 +------------+---------------------------------------------------------------------------------------+ | Field | Value | +------------+---------------------------------------------------------------------------------------+ | expires | 2016-12-28 11:05:46+00:00 | | id | gAAAAABYY456xFHiZSMnQ7x88FxUJjuu3uO8xRLh_soTSgyf3KzMv0nY3s4wn1diFlJ7d2qjPub0iftlOKUnZ | | | z9QYPMUGhfxguZhEHWQtufNQNxZD9r8ekluU0XjCdrdnBU-fs3IM6EmJt3O1Sl- | | | Nw4G40uh0xatMkxI6bmrG3fRkCrcLga6Cx4 | | project_id | 7ae0fb7deb5342d885a07c2c890a1ff4 | | user_id | b84c1614b79b40278e02bd6ed034cc6f | +------------+---------------------------------------------------------------------------------------
建立環境變量腳本:
建立admin變量
[root@linux-node1 ~]# cat admin-openstack 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 export OS_AUTH_URL=http://192.168.56.11:35357/v3 export OS_IDENTITY_API_VERSION=3 export OS_IMAGE_API_VERSION=2
建立demo變量
[root@linux-node1 ~]# cat demo-openstack 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 export OS_AUTH_URL=http://192.168.56.11:5000/v3 export OS_IDENTITY_API_VERSION=3 export OS_IMAGE_API_VERSION=2
使環境變量生效:
soure demo-openstack
401 #驗證失敗,keystone相關用戶帳戶密碼設置錯誤,時間不一樣步,或者輸入的項目名稱不對 403 #可能未初始化OS_token變量,須要使用source命令使其生效,也多是配置的配置文件未生效,須要重啓相關服務 409 #keystone建立用戶,用戶已存在 500 #服務器內部錯誤,服務配置有問題,看日誌,檢查配置 503 #keystone相關帳戶密碼設置有問題,請將相關的glance帳戶刪除,從新建立便可 服務故障 #相關服務沒有起來