二次开发: Openstack用Horizon在Dashboard上定制新页面
前言:
Horizon 提供可视化的 GUI 图形界面,让用户去操作这些项目使用的各种资源。
那Horizon 的内部架构是怎么样的?我们如果要做二次开发,应该怎么去做?
Openstack Horizon Dashboard 是一套基于Django Web 框架实现的Web界面。
了解 Horizon 应首先去了解 Python 的一个 Web 开发框架 Django。
Openstack Horizon 组件 部署上去后,源码分两部分:
1.一部分是Dashboard页面的源码,目录在/usr/share/openstack-dashboard
2.另一部分是Horizon模块的horizon界面库文件(dashboard界面通用组件的库),目录在/usr/lib/python2.7/site-packages/horizon
Dashboard页面的源码/usr/share/openstack-dashboard中,调用/usr/lib/python2.7/site-packages/horizon库,实现界面的渲染。
Openstack Horizon Dashboard 是一套基于Django Web 框架实现的Web界面,因此源码/usr/share/openstack-dashboard中结构,和Django的源码目录结构是一样的。
Openstack Dashboard上定制新页面:
[ Dashboard 内部分为三个层次:]
Dashboard
PanelGroup
Panel
每一个 Dashboard 在 Django 里都是一个 App,OpenStack 的文件夹里的 openstack_dashboard 文件夹里有一个 set