安装KeyStone服务(在控制节点上操作)

这篇具有很好参考价值的文章主要介绍了安装KeyStone服务(在控制节点上操作)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

接着上次的OpenStack-T的安装

环境为:CentOS 7

OpenStack-T keystone官网文档:OpenStack Docs: Install and configure

详细内容可以看此视频:openstack-T版搭建运维全套视频_哔哩哔哩_bilibili

下面的链接是openstack-t的安装链接:

CSDNhttps://mp.csdn.net/mp_blog/creation/editor/123702147


ps:在安装和配置身份服务之前,您必须创建一个数据库,以下所以操作均在控制节点

# mysql -u root -p

打上自己设置的密码,这里我的是123,不知道的可以看下上一篇文档的链接

1、创建keystone数据库:

MariaDB [(none)]> CREATE DATABASE keystone;
Query OK, 1 row affected (0.001 sec)

要保证计算机节点能连到数据库,这里我们就不用配置本地的数据库

MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' 
IDENTIFIED BY 'keystone123';(这段本地的我们不用配置,只用配置下面的)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' 
IDENTIFIED BY 'keystone123';

效果如下:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone123';
Query OK, 0 rows affected (0.001 sec)

2、安装和配置组件

运行以下命令来安装软件包:

# yum install openstack-keystone httpd mod_wsgi

 如果检测到没有的,使用以下命令再次安装完整的OpenStack包

# yum install centos-release-openstack-train -y

编辑/etc/keystone/keystone.conf文件

# vim /etc/keystone/keystone.conf

在命令模式下使用/\[database],定位到database

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

[token]
provider = fernet

在下面添加

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

再使用/\[token],定位到[token],并在下面添加:

[token]
provider = fernet

配置完成,保存退出!

同步数据库(要求两节点可以ping通,计算节点要联通数据库)

# su -s /bin/sh -c "keystone-manage db_sync" keystone

 使用命令验证是否同步:

[root@localhost yum.repos.d]# mysql -uroot -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 20
Server version: 10.3.20-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use keystone
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [keystone]> show tables;
+------------------------------------+
| Tables_in_keystone                 |
+------------------------------------+
| access_rule                        |
| access_token                       |
| application_credential             |
| application_credential_access_rule |
| application_credential_role        |
| assignment                         |
| config_register                    |
| consumer                           |
| credential                         |
| endpoint                           |
| endpoint_group                     |
| federated_user                     |
| federation_protocol                |
| group                              |
| id_mapping                         |
| identity_provider                  |
| idp_remote_ids                     |
| implied_role                       |
| limit                              |
| local_user                         |
| mapping                            |
| migrate_version                    |
| nonlocal_user                      |
| password                           |
| policy                             |
| policy_association                 |
| project                            |
| project_endpoint                   |
| project_endpoint_group             |
| project_option                     |
| project_tag                        |
| region                             |
| registered_limit                   |
| request_token                      |
| revocation_event                   |
| role                               |
| role_option                        |
| sensitive_config                   |
| service                            |
| service_provider                   |
| system_assignment                  |
| token                              |
| trust                              |
| trust_role                         |
| user                               |
| user_group_membership              |
| user_option                        |
| whitelisted_config                 |
+------------------------------------+
48 rows in set (0.001 sec)

出现以上结果即为成功

初始化 Fernet 密钥存储库,创建令牌:

# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone 
# keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

 引导身份服务,这一步非常关键,创建界面,网络,区域都会有影响:

[root@localhost yum.repos.d]# keystone-manage bootstrap --bootstrap-password admin --bootstrap-admin-url http://controller:5000/v3/ --bootstrap-internal-url http://controller:5000/v3/ --bootstrap-public-url http://controller:5000/v3/ --bootstrap-region-id RegionOne

admin为适合管理用户的密码。

3、配置 Apache HTTP 服务器

编辑文件并配置引用控制器节点的选项:/etc/httpd/conf/httpd.conf 

# vim /etc/httpd/conf/httpd.conf 

在命令模式下输入/Server,定位到该位置

...
#
# If your host doesn't have a registered DNS name, enter its IP address here.
#
#ServerName www.example.com:80
ServerName controller   #添加一句
#
# Deny access to the entirety of your server's filesystem. You must
...

 并创建指向该文件的连接:

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

启动 Apache HTTP 服务,并将其配置为在系统启动时启动:

# systemctl enable httpd.service;systemctl start httpd.service

检查下服务是否开启:

[root@localhost yum.repos.d]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled)
   Active: active (running) since 三 2022-03-30 16:11:12 CST; 1min 8s ago
     Docs: man:httpd(8)
           man:apachectl(8)
 Main PID: 9347 (httpd)
   Status: "Total requests: 0; Current requests/sec: 0; Current traffic:   0 B/sec"
    Tasks: 6
   CGroup: /system.slice/httpd.service
           ├─9347 /usr/sbin/httpd -DFOREGROUND
           ├─9348 /usr/sbin/httpd -DFOREGROUND
           ├─9349 /usr/sbin/httpd -DFOREGROUND
           ├─9350 /usr/sbin/httpd -DFOREGROUND
           ├─9351 /usr/sbin/httpd -DFOREGROUND
           └─9352 /usr/sbin/httpd -DFOREGROUND

3月 30 16:11:11 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
3月 30 16:11:12 localhost.localdomain systemd[1]: Started The Apache HTTP Server.

检查环境变量,看环境变量是否配对,这里我们写一个脚本,来判断:

# vim /etc/keystone/admin-openrc.sh

脚本中输入一下内容:
#!/bin/bash
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://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

 使用以下命令可以看到:

[root@localhost ~]# source /etc/keystone/admin-openrc.sh 
[root@localhost ~]# openstack endpoint list
+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------+
| ID                               | Region    | Service Name | Service Type | Enabled | Interface | URL                        |
+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------+
| 303a2bc09c2e4e8eaf228f0eb464f53a | RegionOne | keystone     | identity     | True    | admin     | http://controller:5000/v3/ |
| 39ae98682b304f59b4af214a90efffc1 | RegionOne | keystone     | identity     | True    | internal  | http://controller:5000/v3/ |
| 71cfc6ee81284bbe947bbb0aea7753eb | RegionOne | keystone     | identity     | True    | public    | http://controller:5000/v3/ |
+----------------------------------+-----------+--------------+--------------+---------+-----------+----------------------------+

 这里可以看到管理网、内网、公网的

然后我们再获取一下token

[root@localhost ~]# openstack token issue
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field      | Value                                                                                                                                                                                   |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| expires    | 2022-03-30T11:03:20+0000                                                                                                                                                                |
| id         | gAAAAABiRCro9TbfZPc4iFNfQ_v8saN0k5WN17Ri3H5BJJ_S_DPVFAHu-CJ2tIUlrQjZOmbE10stRPj2ugtudYCA3Q8Ku104a4l-x4528SKutHiH0y_yHLpasNWwqwJs0N7xtMco5dsCcsrxm4WSeZbJSlfl1odNkqYbj8YlMyXRkhz8balMvyk |
| project_id | 186ed3a5e4b648968586b34c3e00cebb                                                                                                                                                        |
| user_id    | 5adedd33881042a3b87857d30066cf2a                                                                                                                                                        |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

成功!

4、创建域、项目、用户和角色

创建An Example Domain域

[root@localhost ~]# openstack domain create --description "An Example Domain" example
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | An Example Domain                |
| enabled     | True                             |
| id          | c3b3450b09fe4b9fbdd7e511c30e1c29 |
| name        | example                          |
| options     | {}                               |
| tags        | []                               |
+-------------+----------------------------------+

 创建服务项目,该项目包含添加到环境中的每个服务的唯一用户

[root@localhost ~]# openstack project create --domain default --description "Service Project" service
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Service Project                  |
| domain_id   | default                          |
| enabled     | True                             |
| id          | 28afbd3216734f29adccddd870811643 |
| is_domain   | False                            |
| name        | service                          |
| options     | {}                               |
| parent_id   | default                          |
| tags        | []                               |
+-------------+----------------------------------+

 创建常规(非管理员)任务应使用非特权项目和用户:

[root@localhost ~]# openstack project create --domain default --description "Demo Project" myproject
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | Demo Project                     |
| domain_id   | default                          |
| enabled     | True                             |
| id          | 6bd6f219b37449e1b8a0b424ac298ab8 |
| is_domain   | False                            |
| name        | myproject                        |
| options     | {}                               |
| parent_id   | default                          |
| tags        | []                               |
+-------------+----------------------------------+

 创建用户:myuser

# openstack user create --domain default --password-prompt myuser 
# 密码统一设成myuser 

[root@localhost ~]# openstack user create --domain default --password-prompt myuser 
User Password:
Repeat User Password:
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | 928eb63083a448658d59b5524eafd74b |
| name                | myuser                           |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+

 创建角色:myrole:

[root@localhost ~]# openstack role create myrole
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | None                             |
| domain_id   | None                             |
| id          | 4eac39eaa5954a69aa68e87bd7def949 |
| name        | myrole                           |
| options     | {}                               |
+-------------+----------------------------------+

 将角色添加到项目和用户:myrolemyprojectmyuser

# openstack role add --project myproject --user myuser myrole

5、验证

取消设置临时变量和环境变量:OS_AUTH_URLOS_PASSWORD

# unset OS_AUTH_URL OS_PASSWORD

 作为用户,请求身份验证令牌:admin,密码为之前设置的admin

[root@localhost ~]# openstack --os-auth-url http://controller:5000/v3 --os-project-domain-name Default --os-user-domain-name Default --os-project-name admin --os-username admin token issue
Password: 
Password: 
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field      | Value                                                                                                                                                                                   |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| expires    | 2022-03-30T12:01:31+0000                                                                                                                                                                |
| id         | gAAAAABiRDiLhdBzxWh6rRLsHHnSD_GP1o4lARbsB_CsbhAbi6DWiEILDrLuBNYP94_EgQw9eqIl-Uhlr35kkgHuPH6NzDiK8owDSZr3nLFg0lFM2ne-o0uicrbR4peR3_6ro80QnGe8gmX6mX6qUjLJYDK-G8_kU2rjhmT-zbtdCYDuO-4ZW1w |
| project_id | 186ed3a5e4b648968586b34c3e00cebb                                                                                                                                                        |
| user_id    | 5adedd33881042a3b87857d30066cf2a                                                                                                                                                        |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

 作为在上一节中创建的用户,请求身份验证令牌:myuser

[root@localhost ~]# openstack --os-auth-url http://controller:5000/v3 --os-project-domain-name Default --os-user-domain-name Default --os-project-name myproject --os-username myuser token issue
Password: 
Password: 
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field      | Value                                                                                                                                                                                   |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| expires    | 2022-03-30T12:03:12+0000                                                                                                                                                                |
| id         | gAAAAABiRDjw0mkzidSkupMG_psUW6Cq8mtllFakV2_ICycxEpOUwdr1wTDFtfv13qh2P0GCaD0HU_TNmDRGQZfJ1rf0e34wHm1jgyqaBfLaX_9q27WRI2DjvmGxZv_j9VeiIIIfFDzcrknE-4bFQ5eKbbiB4PNzHoCh1q0DUllIGDSGnj9Izzs |
| project_id | 6bd6f219b37449e1b8a0b424ac298ab8                                                                                                                                                        |
| user_id    | 928eb63083a448658d59b5524eafd74b                                                                                                                                                        |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

验证成功!文章来源地址https://www.toymoban.com/news/detail-415972.html

到了这里,关于安装KeyStone服务(在控制节点上操作)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Linux】查询服务器上次启动时间和原因

    在Linux系统中,可以通过查看系统日志文件来查询服务器上次启动原因。具体步骤如下 以root权限登录系统。 1、使用以下命令查看系统日志文件: 该命令会显示系统的所有日志信息,包括启动信息、进程信息等。 2、使用以下命令查看系统上次启动的信息: 该命令会显示系统

    2024年02月16日
    浏览(52)
  • 构建OpenStack私有云--第一步:配置Keystone服务

    keystone是一个认证服务,所有服务在接收到用户请求时,都必须找keystone服务去做认证,把用户请求中的信息拿出来去匹配,能匹配到才去检查你有没有相应的权限,然后给你资源。 还有个作用是目录列表 1. 创建keystone数据库 不过最后一行命令会抱错,这是因为当前172这个地

    2023年04月11日
    浏览(40)
  • openstack详解(五)——openstack keystone安装

    今天继续给大家介绍Linux运维相关知识,本文主要内容是openstack keystone安装。 首先,我们来安装keystone及其组件,我们直接采用YUM的方式进行安装,执行命令: 即可完成安装。 在keystone安装完成后,我们还需要进行keystone的配置。但是在进行keystone的配置之前,我们还需要先生

    2023年04月08日
    浏览(44)
  • Git (版本控制,git安装和配置,git代码托管服务,git操作本地远程仓库,分支,idea整合git)【看这一片就够】

    目录 一、版本控制介绍 1. 版本控制介绍 2. 版本控制工具 3. git简介 二、git安装与配置 1. 下载git 2. 安装git 2. 配置git 三、git代码托管服务 1. 常见的git代码托管服务 2. 注册码云帐号【这里介绍一种的用法,其它也是一样的操作】 3. 创建远程仓库 四、git命令-操作本地仓库 1. 获

    2024年04月14日
    浏览(84)
  • 【解决问题思路分析】记录hutool默认使用服务端上次返回cookie的问题解决思路

    本服务需要调用第三方接口获取数据,首先调用public-key接口获取公钥,然后用公钥加密密码,将用户名和密码传入/ticket接口,获取Cookie和response body中的token。 由于是调用第三方接口出现问题,第一步先拉通第三方对接人查看后台日志,对方使用apisix作为api网关,初步判断是

    2024年02月07日
    浏览(49)
  • Zookeeper快速入门(Zookeeper概述、安装、集群安装、选举机制、命令行操作、节点类型、监听器原理)

    1.1 概述 Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。 1、Zookeeper工作机制 Zookeeper从设置模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责储存和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生

    2024年03月28日
    浏览(58)
  • OpenStack介绍说明、OpenStack架构说明、OpenStack核心服务详细说明【keystone,nova,cinder,neutron...】、OpenStack创建VM,服务间交互示例

    2006年亚马逊推出AWS,正式开启云计算的新纪元 2010年7月美国国家航空航天局(NASA)与Rackspace合作,共同宣布OpenStack开放源码计划,由此开启了属于OpenStack的时代 OpenStack从诞生之初对标AWS,一直在向AWS学习,同时开放接口去兼容各种AWS服务 OpenStack是什么? OpenStack是一种云操

    2024年01月15日
    浏览(56)
  • NC文件根据经纬度提取点上数值

    Hello,Hello,Hello,大家好,时隔上一次更新已经很久了,今天主要和大家分享一组简单的代码,来提取NC文件中某一点的数值! 本次实例数据依旧使用喜闻乐见的NCEP数据,数据使用的是多层气温。或者可以直接点击这里下载 这个就是下载好的数据: 大家可以看一下,这个数

    2024年02月05日
    浏览(50)
  • 银河麒麟服务器ZYJ操作系统,文件储存inode节点占用根目录/空间满了解决办法

    今天发现业务系统运转异常,df -h 检查服务器发现磁盘根目录空间未满,df -i 检查发现根目录文件满了。inode节点中,记录了文件的类型、大小、权限、所有者、文件连接的数目、创建时间与更新时间等重要的信息,还有一个比较重要的内容就是指向数据块的指针。 根目录

    2024年02月09日
    浏览(123)
  • 区块链入门教程(6)--WeBASE-Front节点前置服务安装

    FISCO BCOS其实是有控制台管理工具,用来对区块链系统进行各种管理操作。 配置并使用控制台对联盟链进行初步操作 在控制台链接FISCO BCOS节点,可以实现查询区块链状态、部署调用合约等功能,能够快速获取到所需要的信息。 控制台依赖JDK,注意版本Oracle JDK 8 至JDK 14。 使用

    2023年04月14日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包