91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

OpenStack基礎學習及keystone服務配置

發布時間:2020-07-04 18:08:35 來源:網絡 閱讀:1407 作者:wx325 欄目:數據庫

一、openstack基礎學習

OpenStack是一個由NASA(美國國家航空航天局)和Rackspace合作研發并發起的,以Apache許可證授權的自由軟件和開放源代碼項目。

OpenStack是一個開源的云計算管理平臺項目,由幾個主要的組件組合起來完成具體工作。OpenStack支持幾乎所有類型的云環境,項目目標是提供實施簡單、可大規模擴展、豐富、標準統一的云計算管理平臺。OpenStack通過各種互補的服務提供了基礎設施即服務(IaaS)的解決方案,每個服務提供API以進行集成。

二、環境準備

1、虛擬機準備

IP地址		主機名			操作系統
192.168.56.11	linux-node1		CentOS7
192.168.56.12	linux-node2		CentOS7

其中,linux-node1當作控制節點

linux-node2當作計算節點

2、基礎軟件包安裝

基礎軟件包需要安裝在所有的OpenStack節點上進行安裝,包括控制節點和計算節點

(1)安裝EPEL倉庫

 rpm -ivh http://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm

(2)安裝OpenStack倉庫

yum install -y centos-release-openstack-mitaka
安裝完成后,會在/etc/yum.repos.d目錄下生成一個CentOS-OpenStack-mitaka.repo
[root@linux-node1 yum.repos.d]# ls
CentOS-Base.repo         CentOS-Debuginfo.repo  CentOS-OpenStack-mitaka.repo  CentOS-Vault.repo
CentOS-Ceph-Hammer.repo  CentOS-fasttrack.repo  CentOS-QEMU-EV.repo           epel.repo
CentOS-CR.repo           CentOS-Media.repo      CentOS-Sources.repo           epel-testing.repo
[root@linux-node1 yum.repos.d]#

(3)安裝OpenStack客戶端

yum install -y python-openstackclient

(4)安裝Openstack SELinux管理包

yum install -y openstack-selinux

3、MySQL數據庫部署

除了Horizon,OpenStack其他組件都需要連接數據庫。

(1)安裝數據庫

[root@linux-node1 ~]# yum install -y mariadb mariadb-server python2-PyMySQL

查看mariadb的配置文件,可以看到配置目錄為/etc/my.cnf.d

[root@linux-node1 ~]# cat /etc/my.cnf
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0

[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid
# include all files from the config directory
!includedir /etc/my.cnf.d

(2)創建openstack.cnf配置文件

創建并編輯 /etc/my.cnf.d/openstack.cnf,然后完成如下動作:

#設置 bind-address值為控制節點的管理網絡IP地址以使得其它節點可以通過管理網絡訪問數據庫;
[mysqld]
bind-address = 192.168.56.11    
default-storage-engine = innodb #默認存儲引擎
innodb_file_per_table           #獨享表空間
max_connections = 4096          #最大連接數
collation-server = utf8_general_ci  #數據庫字符集
character-set-server = utf8     #數據庫安裝時指定的字符集

(3)啟動數據庫

啟動數據庫服務,并將其配置為開機自啟:

systemctl enable mariadb.service
systemctl start mariadb.service

為了保證數據庫服務的安全性,運行mysql_secure_installation腳本。特別需要說明的是,為數據庫的root用戶設置一個適當的密碼。

[root@linux-node1 my.cnf.d]# 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!
[root@linux-node1 my.cnf.d]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 192.168.56.11:3306      0.0.0.0:*               LISTEN      2764/mysqld         
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1324/sshd           
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      2479/master         
tcp6       0      0 :::22                   :::*                    LISTEN      1324/sshd           
tcp6       0      0 ::1:25                  :::*

(4)創建數據庫并授權

一次性創建完所需要的數據庫,在實際生產中,可以寫個腳本一鍵執行。

MariaDB [(none)]> create database keystone;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on keystone.* to 'keystone'@'localhost' identified by 'keystone';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all 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 on glance.* to 'glance'@'localhost' identified by 'glance';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all on glance.* to 'glance'@'%' identified by 'glance';

MariaDB [(none)]> create database nova;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on nova.* to 'nova'@'localhost' identified by 'nova';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all 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 on nova_api.* to 'nova'@'localhost' identified by 'nova';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all on nova_api.* to 'nova'@'%' identified by 'nova';

MariaDB [(none)]> create database neutron;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on neutron.* to 'neutron'@'localhost' identified by 'neutron';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> grant all on neutron.* to 'neutron'@'%' identified by 'neutron';
Query OK, 0 rows affected (0.00 sec)

4、消息代理RabbitMQ

(1)安裝RabbitMQ

除了Horizon和KeyStone,其他組件都需要連接RabbitMQ

OpenStack 使用 message queue 協調操作和各服務的狀態信息。消息隊列服務一般運行在控制節點上。

[root@linux-node1 ~]# yum install -y rabbitmq-server

用到RabbitMQ最多的是Nova,Nova會啟動很多服務,服務之間的通信也是通過消息隊列進行通信的。

(2)啟動消息隊列服務并將其配置為開機自動啟動

[root@linux-node1 src]# systemctl enable rabbitmq-server
[root@linux-node1 src]# systemctl start rabbitmq-server

rabbitmq監聽端口是5672

(3)添加openstack用戶

[root@linux-node1 src]# rabbitmqctl add_user openstack openstack
Creating user "openstack" ...

(4)給openstack用戶配置讀寫權限

[root@linux-node1 src]# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
Setting permissions for user "openstack" in vhost "/" ...

(5)打開rabbitmq管理插件

rabbitmq提供很多插件

[root@linux-node1 src]# 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

打開management插件,就可以通過web界面管理rebbitmq

[root@linux-node1 src]# 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.

rabbitmq-management啟動后會監聽15672端口

訪問http://192.168.56.11:15672,用戶名和密碼都是guest,進去后就可以進行管理了

5、網絡時間協議(NTP)

在生產環境中,所有的OpenStack節點的時間必須一致。

所以必須安裝ntp進行時間同步。

yum -y install ntp
systemctl enable ntpd
systemctl start ntpd

6、OpenStack服務安裝

(2)Glance部署

[root@linux-node1 ~]# yum install -y openstack-glance

(3)Nova控制節點安裝

在控制節點linux-node1上安裝除nova-compute之外的其他必備的服務

[root@linux-node1 ~]# yum install -y openstack-nova-api openstack-nova-cert \
  openstack-nova-conductor openstack-nova-console \
  openstack-nova-novncproxy openstack-nova-scheduler

(4)Nova計算節點安裝

在計算節點linux-node2上安裝

[root@linux-node2 ~]# yum install -y openstack-nova-compute sysfsutils

(5)Neutron控制節點部署

Neutron控制節點部署在linux-node1

[root@linux-node1 ~]# yum install -y openstack-neutron openstack-neutron-ml2 \
openstack-neutron-linuxbridge ebtables

(6)Neutron在計算節點中的部署

Neutron在計算節點中的部署 linux-node2

[root@linux-node2 ~]# yum install -y openstack-neutron openstack-neutron-linuxbridge ebtables

三、OpenStack驗證服務keystone

1、安裝keystone

yum install -y openstack-keystone httpd mod_wsgi memcached python-memcached

#使用帶有mod_wsgi的Apache HTTP服務器來服務認證服務請求,端口為5000和35357。缺省情況下,Kestone服務仍然監聽這些端口
#memcached緩存,memcached可以設置key的超時時間,到時可以自動清理
#python-memcached python連接memcached的模塊

2、編輯文件keystone.conf 并完成配置

使用openssl生成一個token,用于定義初始管理令牌的值

[root@linux-node1 ~]# openssl rand -hex 10
fb373c742a49db0bd7af
[root@linux-node1 ~]# vim /etc/keystone/keystone.conf 

[DEFAULT]
admin_token = fb373c742a49db0bd7af

[database]
connection = mysql+pymysql://keystone:keystone@192.168.56.11/keystone

[token]
provider = fernet
driver = memcache

[memcache]
servers = 192.168.56.11:11211

3、初始化身份認證服務的數據庫:

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             |
| domain                 |
| endpoint               |
| endpoint_group         |
| federated_user         |
| federation_protocol    |
| group                  |
| id_mapping             |
| identity_provider      |
| idp_remote_ids         |
| implied_role           |
| local_user             |
| mapping                |
| migrate_version        |
| 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     |
+------------------------+

4、初始化Fernet keys

初始化key,創建證書

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

在keystone的目錄下存放key

[root@linux-node1 fernet-keys]# pwd
/etc/keystone/fernet-keys
[root@linux-node1 fernet-keys]# ls
0  1

5、啟動memcache

[root@linux-node1 ~]# systemctl enable memcached
Created symlink from /etc/systemd/system/multi-user.target.wants/memcached.service to /usr/lib/systemd/system/memcached.service.
[root@linux-node1 ~]# systemctl start memcached

查看memcached的配置文件

[root@linux-node1 ~]# cat /etc/sysconfig/memcached 
PORT="11211"
USER="memcached"
MAXCONN="1024"
CACHESIZE="64"
OPTIONS=""

6、配置 Apache HTTP 服務器

(1)編輯httpd.conf文件

編輯/etc/httpd/conf/httpd.conf文件,配置ServerName選項為控制節點:

ServerName 192.168.56.11:80

(2)創建keystone配置文件

創建/etc/httpd/conf.d/wsgi-keystone.conf并寫入如下內容:

Listen 5000
Listen 35357

<VirtualHost *:5000>
    WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-public
    WSGIScriptAlias / /usr/bin/keystone-wsgi-public
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    ErrorLogFormat "%{cu}t %M"
    ErrorLog /var/log/httpd/keystone-error.log
    CustomLog /var/log/httpd/keystone-access.log combined

    <Directory /usr/bin>
        Require all granted
    </Directory>
</VirtualHost>

<VirtualHost *:35357>
    WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-admin
    WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    ErrorLogFormat "%{cu}t %M"
    ErrorLog /var/log/httpd/keystone-error.log
    CustomLog /var/log/httpd/keystone-access.log combined

    <Directory /usr/bin>
        Require all granted
    </Directory>
</VirtualHost>

3、啟動apache

啟動apache并設置開機自動啟動

systemctl enable httpd.service

systemctl start httpd.service

7、創建域、項目、用戶和角色

使用OS_TOKEN創建

OSTOKEN為剛才寫入keystone.conf配置文件中的ADMINTOKEN

[root@linux-node1 ~]# export OS_TOKEN=fb373c742a49db0bd7af
[root@linux-node1 ~]# export OS_URL=http://192.168.56.11:35357/v3
#35357是keystone的admin端口
[root@linux-node1 ~]# export OS_IDENTITY_API_VERSION=3

(1)創建域default

身份認證服務為每個OpenStack服務提供認證服務。

[root@linux-node1 ~]# openstack domain create --description "Default Domain" default
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Default Domain                   |
| enabled     | True                             |
| id          | d113572e8fe84cec9a3b1fded9104df2 |
| name        | default                          |
+-------------+----------------------------------+

(2)為進行管理操作,創建管理的項目、用戶和角色:

創建admin項目

[root@linux-node1 ~]# openstack project create --domain default --description "Admin Project" admin
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Admin Project                    |
| domain_id   | d113572e8fe84cec9a3b1fded9104df2 |
| enabled     | True                             |
| id          | 53f72af1420a4d098d48f2c82d7e9ec7 |
| is_domain   | False                            |
| name        | admin                            |
| parent_id   | d113572e8fe84cec9a3b1fded9104df2 |
+-------------+----------------------------------+

創建admin用戶

[root@linux-node1 ~]# openstack user create --domain default --password-prompt admin
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | d113572e8fe84cec9a3b1fded9104df2 |
| enabled   | True                             |
| id        | 9b37ce41341347f68e8d84849ac62365 |
| name      | admin                            |
+-----------+----------------------------------+

創建admin的角色

[root@linux-node1 ~]# openstack role create admin
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | None                             |
| id        | 1f97f158bc6b4e638b1414000ae77f03 |
| name      | admin                            |
+-----------+----------------------------------+

添加admin角色到admin項目和用戶上:

[root@linux-node1 ~]# openstack role add --project admin --user admin admin

(3)創建demo項目和用戶

常規任務應該使用無特權的項目和用戶。這里創建demo項目和用戶

創建demo項目

[root@linux-node1 ~]# openstack project create --domain default --description "Demo Project" demo
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Demo Project                     |
| domain_id   | d113572e8fe84cec9a3b1fded9104df2 |
| enabled     | True                             |
| id          | 81e76ab533b14b448b1c6394bc5e4d86 |
| is_domain   | False                            |
| name        | demo                             |
| parent_id   | d113572e8fe84cec9a3b1fded9104df2 |
+-------------+----------------------------------+

創建demo用戶

[root@linux-node1 ~]# openstack user create --domain default --password-prompt demo
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | d113572e8fe84cec9a3b1fded9104df2 |
| enabled   | True                             |
| id        | 6762a6adffd140b1906bbe69dbf42518 |
| name      | demo                             |
+-----------+----------------------------------+

創建user角色

[root@linux-node1 ~]# openstack role create user
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | None                             |
| id        | 118d541af78d4424bd5f106a6b725920 |
| name      | user                             |
+-----------+----------------------------------+

添加user角色到demo項目和組

[root@linux-node1 ~]# openstack role add --project demo --user demo user

(4)創建service項目

各個服務需要訪問keystone,訪問keystone需要做認證,需要創建用戶,用戶屬于某個項目;每個服務包含獨有用戶的service項目

[root@linux-node1 ~]# openstack project create --domain default --description "Service Project" service
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Service Project                  |
| domain_id   | d113572e8fe84cec9a3b1fded9104df2 |
| enabled     | True                             |
| id          | e219752e19c34656898ed443fa63d6f0 |
| is_domain   | False                            |
| name        | service                          |
| parent_id   | d113572e8fe84cec9a3b1fded9104df2 |
+-------------+----------------------------------+

每個用戶都需要用戶名和密碼來連接keystone,因此在這里一次性創建所需要的用戶

創建glance用戶

[root@linux-node1 ~]# openstack user create --domain default --password-prompt glance
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | d113572e8fe84cec9a3b1fded9104df2 |
| enabled   | True                             |
| id        | 492126a5ad204a6896335843429e1a62 |
| name      | glance                           |
+-----------+----------------------------------+
[root@linux-node1 ~]# openstack role add --project service --user glance admin
#把glance添加到service項目并授予admin角色

創建nova用戶

[root@linux-node1 ~]# openstack user create --domain default --password-prompt nova
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | d113572e8fe84cec9a3b1fded9104df2 |
| enabled   | True                             |
| id        | b80c0e958b1b46dda783d892fa8e5004 |
| name      | nova                             |
+-----------+----------------------------------+
[root@linux-node1 ~]# openstack role add --project service --user nova admin

創建neutron用戶

[root@linux-node1 ~]# openstack user create --domain default --password-prompt neutron
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | d113572e8fe84cec9a3b1fded9104df2 |
| enabled   | True                             |
| id        | 937c94f2d2554dc190d24d95bdd403f3 |
| name      | neutron                          |
+-----------+----------------------------------+
[root@linux-node1 ~]# openstack role add --project service --user neutron admin

8、創建服務實體和API端點

在Openstack環境中,認證服務管理服務目錄。服務使用這個目錄來決定環境中可用的服務。

(1)創建服務實體

[root@linux-node1 ~]# openstack service create --name keystone --description "OpenStack Identity" identity
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Identity               |
| enabled     | True                             |
| id          | f7b1c26dfb904b989dcfe3395fe713d2 |
| name        | keystone                         |
| type        | identity                         |
+-------------+----------------------------------+

(2)創建身份認證服務

OpenStack使用三個API endpoint變種代表每種服務:admin,internal和public

創建認證服務的endpoint:

[root@linux-node1 ~]# openstack endpoint create --region RegionOne identity public http://192.168.56.11:5000/v3
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | a951006c07004a43988e96e4abbf8508 |
| interface    | public                           |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | f7b1c26dfb904b989dcfe3395fe713d2 |
| service_name | keystone                         |
| service_type | identity                         |
| url          | http://192.168.56.11:5000/v3     |
+--------------+----------------------------------+
[root@linux-node1 ~]# openstack endpoint create --region RegionOne identity internal http://192.168.56.11:5000/v3
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 7ef6020325e540ad9bc945f8d2662fec |
| interface    | internal                         |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | f7b1c26dfb904b989dcfe3395fe713d2 |
| service_name | keystone                         |
| service_type | identity                         |
| url          | http://192.168.56.11:5000/v3     |
+--------------+----------------------------------+
[root@linux-node1 ~]# openstack endpoint create --region RegionOne identity admin http://192.168.56.11:35357/v3
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 72766f8216a247aaa2a9b8b3653773d8 |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | f7b1c26dfb904b989dcfe3395fe713d2 |
| service_name | keystone                         |
| service_type | identity                         |
| url          | http://192.168.56.11:35357/v3    |
+--------------+----------------------------------+

9、驗證keystone能否進行權限管理

使用上面創建的admin用戶和密碼,去連接keystone,看能否獲取token

[root@linux-node1 ~]# 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-10-27T11:47:54.303027Z                                                              |
| id         | gAAAAABYEdtboSYe9F0Njoa2kRZCy2cNbqOpaDmvluRTaCdDmkQWWmRRrxO19lMGO0UZbdxXEf8kDmEpUSrRCTRX |
|            | ajdKkDQDtolJK2y5azPe5SzphyHC7APdlRKhMfe6ce9eESv5O0g1VjzLJAQibc_i9R98sLN3QANonY0H1urx-    |
|            | gppQBC0RXU                                                                               |
| project_id | 53f72af1420a4d098d48f2c82d7e9ec7                                                         |
| user_id    | 9b37ce41341347f68e8d84849ac62365                                                         |
+------------+------------------------------------------------------------------------------------------

可以獲取到值,說明keystone安裝配置成功,keystone可以干活了。從結果中我們還可以看到token的失效時間。

測試demo用戶

[root@linux-node1 ~]# openstack --os-auth-url http://192.168.56.11:5000/v3 \
>   --os-project-domain-name default --os-user-domain-name default \
>   --os-project-name demo --os-username demo token issue
Password: 
+------------+------------------------------------------------------------------------------------------+
| Field      | Value                                                                                    |
+------------+------------------------------------------------------------------------------------------+
| expires    | 2016-10-27T11:50:37.112377Z                                                              |
| id         | gAAAAABYEdv-iLmz3HgAsFppyQH_YBAuB-1jzDMZ1gf51omg6LLchrxf3R2gaGTHEXRQH3XLYEL-             |
|            | EokfLGqd6zAmlGH-8S7x40DZtcpDp4vxDGfhBlL3RgUl_CHCJ8EA1lcIr8_xxIF96V4UjluHErzPcXVP83q6QTq7 |
|            | RGZIgPZX323YVf4j6j4                                                                      |
| project_id | 81e76ab533b14b448b1c6394bc5e4d86                                                         |
| user_id    | 6762a6adffd140b1906bbe69dbf42518                                                         |
+------------+------------------------------------------------------------------------------------------

9、創建OpenStack客戶端環境腳本

為了提高客戶端客戶端操作的效率,OpenStack支持簡單的客戶端環境變量腳本即OpenRC文件。

創建腳本

[root@linux-node1 ~]# cat admin-openstack.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
export OS_AUTH_URL=http://192.168.56.11:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

執行腳本后,請求認證token

[root@linux-node1 ~]# openstack token issue
+------------+------------------------------------------------------------------------------------------+
| Field      | Value                                                                                    |
+------------+------------------------------------------------------------------------------------------+
| expires    | 2016-10-27T11:57:19.242157Z                                                              |
| id         | gAAAAABYEd2PEZRtxO9VKvl-DISZFfhsbYIufeOhB7GwN5j-Gva_sGpkkert4RkkKl-xRqbDnX5DCGtOEOrzGyiY |
|            | mDMUYzslUgtMT3edHeAdl97vrra6F_XVZ5GXRGIENC66HPNIvfmTnCBcELD8gfSgWwTsHkeuXhuZM7Cjo_Xhpt9b |
|            | LxvAG9g                                                                                  |
| project_id | 53f72af1420a4d098d48f2c82d7e9ec7                                                         |
| user_id    | 9b37ce41341347f68e8d84849ac62365                                                         |
+------------+------------------------------------------------------------------------------------------

創建demo環境變量腳本

[root@linux-node1 ~]# cat demo-openstack.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_PASS
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东安县| 富平县| 大丰市| 潼南县| 茶陵县| 新晃| 东兰县| 丽水市| 南涧| 休宁县| 甘德县| 枝江市| 舟曲县| 永春县| 义马市| 治多县| 新宾| 睢宁县| 萍乡市| 海伦市| 潢川县| 夏邑县| 宁陵县| 民县| 开化县| 新巴尔虎右旗| 昭觉县| 揭阳市| 临桂县| 上虞市| 宝清县| 嘉义县| 六盘水市| 德庆县| 万荣县| 拜城县| 禹城市| 五原县| 株洲市| 历史| 吉安县|