_

mysql -uroot -pc1234

oslo_db.sqlalchemy.engines

root@devstack2019:/etc/keystone# more keystone.conf

[token]
provider = fernet

[database]
connection = mysql+pymysql://root:c1234@127.0.0.1/keystone?charset=utf8

========
pymysql
mysql+pymysql://<username>:<password>@<host>/<dbname>[?<options>]

/usr/local/bin/keystone-manage

grant all privileges on keystone.* to 'keystone'@'controller1' identified by 'keystone';
flush privileges;

OpenStack公共组件oslo之九——oslo.db

/var/log/keystone/keystone.log

外观模式(facade)又称为门面模式

systemctl stop

root@devstack2019:/etc/keystone# nova-
nova-api nova-api-wsgi nova-console nova-manage nova-novncproxy nova-rootwrap-daemon nova-spicehtml5proxy
nova-api-metadata nova-compute nova-consoleauth nova-metadata-wsgi nova-policy nova-scheduler nova-status
nova-api-os-compute nova-conductor nova-dhcpbridge nova-network nova-rootwrap nova-serialproxy nova-xvpvncproxy
root@devstack2019:/etc/keystone# nova-

root@devstack2019:/etc/keystone# key
keyring keystone-manage keystone-status keystone-wsgi-admin keystone-wsgi-public
root@devstack2019:/etc/keystone# key

https://int32bit.me 如何阅读 OpenStack 源码 付广平

/usr/local/lib/python2.7/dist-packages/oslo_db/sqlalchemy/enginefacade.py

class _TransactionFactory(object):

def _start(self, conf=False, connection=None, slave_connection=None):
conf.register_opts(options.database_opts, 'database')

def _setup_for_connection(
self, sql_connection, engine_kwargs, maker_kwargs):
engine = engines.create_engine(
sql_connection=sql_connection, **engine_kwargs)

/usr/local/lib/python2.7/dist-packages/oslo_db/options.py

database_opts

sys.path返回模块的搜索路径

SIX是用于python2与python3兼容的库。它存在的目的是为了拥有无需修改即可在Python2和Python3上同时工作的代码。

oslo_db.sqlalchemy.engines连库的更多相关文章

  1. devstack cinder-volume服务状态为down

    cinder-manage service list 查看到有一个 xxx状态 Binary Host Zone Status State Updated At RPC Version Object ...

  2. O063、NFS Volume Provider(Part II)

    参考https://www.cnblogs.com/CloudMan6/p/5693771.html   本节开始创建 NFS volume ,操作方法和 LVM volume一样,唯一的区别是在 v ...

  3. O060、Restore Volume 操作

    参考https://www.cnblogs.com/CloudMan6/p/5668872.html   前面我们学习了backup操作,现在我们来学习如何使用backup进行restore.   r ...

  4. O052、Create Volume 操作 (Part III)

    参考https://www.cnblogs.com/CloudMan6/p/5617980.html       Jun 20 17:15:56 DevStack-Rocky-Compute-22 c ...

  5. O051、Create Volume 操作 (Part II)

    参考https://www.cnblogs.com/CloudMan6/p/5612147.html       1.cinder-scheduler 也会启动一个工作流 volume_create_ ...

  6. O050、Create Volume 操作 (Part I)

    参考https://www.cnblogs.com/CloudMan6/p/5603312.html   前面已经学习了Cinder的架构和相关组件,从本节开始详细分析 Cinder 的各种操作,首先 ...

  7. Ubuntu16手动安装OpenStack——keystone篇

    本博客来自于https://www.voidking.com/dev-ubuntu16-manual-openstack-keystone/ 赶紧做笔记 keystone简介 OpenStack身份识 ...

  8. centos7.1 x86_64系统安装openstack(Mitaka)一

    一.Openstack各组件简单介绍 keystone:身份认证服务 glance:镜像服务 nova:计算服务 neutron:网络服务 Cinder:块存储服务 Swift:对象存储服务 heat ...

  9. glance系列二:glance部署及操作

    一 简单架构图示参考 更新中... 二 部署glance yum install memcached python-memcachedsystemctl enable memcached.servic ...

随机推荐

  1. golang高并发

    golang 为什么能做到高并发 goroutine是go并行的关键,goroutine说到底就是携程,但是他比线程更小,几十个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这 ...

  2. 精选30道Java多线程面试题

    1.线程和进程的区别 进程是应用程序的执行实例.比如说,当你双击的Microsoft Word的图标,你就开始运行的Word的进程.线程是执行进程中的路径.另外,一个过程可以包含多个线程.启动Word ...

  3. Struct2的简单的CRUD配置和使用

    1. 首先是Struct2使用的jar包,可以在官网下载https://struts.apache.org/   ,其中包只要下面这些就够用了. 或者点击下面链接下载 链接:https://pan.b ...

  4. Java-CharTools工具类

    package com.gootrip.util; import java.io.UnsupportedEncodingException; /** * <p>Title:字符编码工具类 ...

  5. Oracle之:Function :getdate()

    create or replace function getdate(sp_date varchar) return date is Result date; begin if LENGTH(sp_d ...

  6. Unicode规范中的BOM 和 ISO8891-1编码

    Unicode规范中的BOM Unicode规范中有一个BOM的概念.BOM——Byte Order Mark,就是字节序标记.在这里找到一段关于BOM的说明: 在UCS 编码中有一个叫做" ...

  7. 通过远程 HTTP GET 请求载入信息

    jQuery.get(url, [data], [callback], [type]) 概述 通过远程 HTTP GET 请求载入信息. 这是一个简单的 GET 请求功能以取代复杂 $.ajax .请 ...

  8. xml配置文件 操作

    public class ConfigFile { protected readonly string configBasePath = "Root/Config"; /// &l ...

  9. [PWN]fsb with stack frame

    0x00: 格式化字符串漏洞出现的时间很早了,偶然在前一段时间学到了一个其他的利用姿势,通过栈桢结构去利用格式化字符串漏洞. 原文链接:http://phrack.org/issues/59/7.ht ...

  10. BZOJ 3667: Rabin-Miller算法 (Pollard-Rho 模板)

    说实话,我知道每一步都干啥,但我完全不知道为啥这么做,也不知道为什么是正确的,反正会用就行了~ #include <cmath> #include <cstdio> #incl ...