registro de error openstack, keystone, muestra que no se puede encontrar el recurso

Acerca de keystone, error

prefacio

En los últimos días de entrenamiento de pila abierta, usé la versión M. Tal vez tuve mala suerte. Después de seis días de entrenamiento, solo obtuve la piedra angular durante 4 días.

Me he encontrado con más o menos problemas antes, los principales son: claves, autenticación de identidad y problemas de conexión a la base de datos, pero he terminado con
todo.

401 es básicamente un problema con la autenticación de identidad.

404 significa que no se encuentra el recurso, por lo que depende de la URL de la api, es decir, el problema de la ruta

500 significa que una operación inesperada causó un error. Mi desencadenante fue eliminar la base de datos. Mirando el registro, decía que no se pudo encontrar la base de datos trapezoidal, y salió cuando la base de datos se volvió a sincronizar. La solución es reinicializar las claves de fernet,

  • Olvidé anotar la solución al problema anterior, la idea es:

    • Problema de configuración de variables de entorno , generalmente el error apuntará vagamente a esta área, preste más atención
    • Problema del archivo de configuración , el token en la variable de entorno es el token en keystone.conf, ambos son iguales
    • Problema de sincronización de la base de datos : después de crear la base de datos, al autorizar la base de datos, lo último que debe escribir es la contraseña para conectarse a la base de datos
  open  grant all privileges on keystone.* to 'keystone'@'localhost' identified by '000000'; 
	  #例如,后面的000000就是连接数据的密码
    #配置文件里的[database]选项,就应该写
    [database]
    connection = mysql+pymysql://keystone:000000@controopenller/keystone
  • Informar que no se puede encontrar el recurso, como la URL : verifique la API del servicio (URL) creada por el punto final, así como las verificaciones de comandos relacionadas, los registros y use un navegador para acceder a la URL y ver si se devuelve un error. Evita errores tipográficos en las URL

Inicio de productos secos:

Este es el problema que encontré el penúltimo día después de terminar el entrenamiento, es decir, cuando pienso en el registro en este momento, es fácil de verificar

Failed to contact the endpoint at http://controller:35357/3 for discovery. Fallback to using that endpoint as the base url. The resource could not be found. (HTTP 404)·

翻译以下就知道了,大致说的是,未能发现这个url,基于这个URL,找不到资源

Lo que dice este mensaje de error es que no se pudo encontrar el recurso, y no tenía idea al principio, pero traté de poner esta URL ( ) en el navegador más tarde y descubrí que se controller记得换回IP地址才能访问到devolvió el error

{
    
    "error": {
    
    "message": "The resource could not be found.", "code": 404, "title": "Not Found"}}

Mire la url nuevamente: http://controller:35357/3; encontró que falta v, agregar esta v permitirá el acceso normalhttp://controller:35357/v3

{
    
    "version": {
    
    "status": "stable", "updated": "2016-04-04T00:00:00Z", "media-types": [{
    
    "base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.6", "links": [{
    
    "href": "http://192.168.200.21:35357/v3/", "rel": "self"}]}}

Más tarde, cuando eliminé este punto final, encontré un problema nuevamente. No pude eliminarlo. El mensaje de error mostraba que no se pudo encontrar el recurso en función de esta URL. Sí, no se pudo encontrar el recurso, así que ¿por qué eliminarlo? ; navegar. Vi un artículo que decía que las direcciones URL que se muestran están almacenadas en la base de datos ; luego simplemente cambie la base de datos

MariaDB [keystone]> select * from endpoint;
+----------------------------------+--------------------+-----------+----------------------------------+--------                                                                                                                        -------------------+-------+---------+-----------+
| id                               | legacy_endpoint_id | interface | service_id                       | url                                                                                                                                               | extra | enabled | region_id |
+----------------------------------+--------------------+-----------+----------------------------------+--------                                                                                                                        -------------------+-------+---------+-----------+
| 2c57b1d4698845a383bc0ce112dfe278 | NULL               | public    | c5fd90467eec4bce9a50f9685c80cd27 | http://                                                                                                                        controller:5000/3  | {
    
    }    |       1 | RegionOne |
| 9183c8c90f0148eb9e246a6d0aebd08c | NULL               | admin     | c5fd90467eec4bce9a50f9685c80cd27 | http://                                                                                                                        controller:35357/3 | {
    
    }    |       1 | RegionOne |
| 93a6c0607a5646aeb336277d14ce8dd8 | NULL               | internal  | c5fd90467eec4bce9a50f9685c80cd27 | http://                                                                                                                        controller:5000/3  | {
    
    }    |       1 | RegionOne |
+----------------------------------+--------------------+-----------+----------------------------------+--------                                                                                                                        -------------------+-------+---------+-----------+
3 rows in set (0.01 sec)

Finalmente vi los datos de la entidad, estas urls incorrectas, abiertas a cambio

MariaDB [keystone]> update endpoint set url='http://controller:5000/v3'
    -> ;
Query OK, 3 rows affected (0.01 sec)

¡La solución perfecta, llámalo un día! ¡Keystone reanuda sus operaciones normales! ! !

[root@controller ~]# openstack catalog list
+----------+----------+---------------------------------------+
| Name     | Type     | Endpoints                             |
+----------+----------+---------------------------------------+
| keystone | identity | RegionOne                             |
|          |          |   public: http://controller:5000/v3   |
|          |          | RegionOne                             |
|          |          |   admin: http://controller:35357/v3   |
|          |          | RegionOne                             |
|          |          |   internal: http://controller:5000/v3 |
|          |          |                                       |
+----------+----------+---------------------------------------+
[root@controller ~]# openstack endpoint list
+----------------------+-----------+--------------+--------------+---------+-----------+-----------------------+
| ID                   | Region    | Service Name | Service Type | Enabled | Interface | URL                   |
+----------------------+-----------+--------------+--------------+---------+-----------+-----------------------+
| 2c57b1d4698845a383bc | RegionOne | keystone     | identity     | True    | public    | http://controller:500 |
| 0ce112dfe278         |           |              |              |         |           | 0/v3                  |
| 9183c8c90f0148eb9e24 | RegionOne | keystone     | identity     | True    | admin     | http://controller:353 |
| 6a6d0aebd08c         |           |              |              |         |           | 57/v3                 |
| 93a6c0607a5646aeb336 | RegionOne | keystone     | identity     | True    | internal  | http://controller:500 |
| 277d14ce8dd8         |           |              |              |         |           | 0/v3                  |
+----------------------+-----------+--------------+--------------+---------+-----------+-----------------------+

Supongo que te gusta

Origin blog.csdn.net/weixin_61954391/article/details/130766613
Recomendado
Clasificación