Red de conocimiento informático - Conocimiento del nombre de dominio - Cómo modificar la interfaz de visualización de Openstack Horizon

Cómo modificar la interfaz de visualización de Openstack Horizon

Openstack tiene muchos proyectos, como nova para la gestión de máquinas virtuales, neutron para la gestión de redes virtuales, vistazo para la gestión de almacenamiento y horizonte es responsable de la interfaz unificada de Openstack. El código fuente de Horizon es diferente al de Neutron. Se distribuye en dos lugares, uno es /usr/lib/ y el otro es /usr/lib/python2.7/dist-packages/horizon. Encuentra las clases, formularios y plantillas más básicos, ****. Otro directorio está ubicado en /usr/share/openstack-dashboard donde encontrará clases, formularios y plantillas más específicos, etc. directamente relacionados con la interfaz donde necesitamos realizar cambios.

Horizon es un proyecto basado en Django. Si está familiarizado con Django, encontrará que el nombre y la ubicación del archivo en Horizon openstack-dashboard son casi los mismos que en Django:

...

.../ openstack-dashboard/

p>

- bin/

- openstack_dashboard/

- estático/

- administrar.py

- settings.py

Como puede ver en esta estructura de carpetas, openstack-dashboard es un sistema muy simple y fácil de usar. Como puedes ver, openstack-dashboard es en realidad un proyecto de Django, mientras que openstack_dashboard es una aplicación. Al ingresar a la aplicación, podemos ver algunos archivos y carpetas importantes:

openstack_dashboard

- __init__.py

- views.py

- urls.py

- settings.py

- paneles/

- habilitado

- estático/

- plantillas/

- prueba/

...

¿Te suena familiar? url.py es responsable de los saltos de URL de nivel superior, views.py es responsable de aceptar y procesar solicitudes, y luego devolver resultados. static se usa para recursos estáticos, templates se usa para plantillas y test se usa para unittest. Si ingresa a la carpeta habilitada, verá que hay muchos ejemplos de cómo agregar y eliminar paneles y grupos, pero en realidad aquí podemos simplemente registrar los paneles que queremos crear en el horizonte. Por ejemplo, podemos eliminar el sufijo en _admin_add_panel.py.example, convertirlo a _admin_add_panel.py y cambiar su contenido:

# Nombre del panel que se agregará a HORIZON_CONFIG. Requerido.

PANEL = 'plugin_panel'

# El nombre del panel asociado con el panel. Requerido.

PANEL_DASHBOARD = 'admin'