You are browsing a read-only backup copy of Wikitech. The live site can be found at wikitech.wikimedia.org

Horizon planning

From Wikitech-static
Jump to navigation Jump to search

Background

Horizon (aka 'openstack-dashboard' ) is the official OpenStack web interface. It didn't exist back when Ryan first built labs, so we've been using our own homemade interface, OpenStackManager, which is a mediawiki extension. OSM has a lot of good features -- it integrates well with wikitech, and supports a bunch of Labs-specific features.

OSM is also accumulating a pretty long list of bugs, though. At this point it's probably better to stop spending development time on the WMF-only OpenStackManager extension and start spending that time on the upstream project, Horizon.

Horizon uses a modular design that supports the easy addition of custom panels. A lot of our work will be in the form of WMF-only custom panels, but ideally some of our work can be included in the upstream project as well.

Adoption plan

For the foreseeable future, we'll run OSM and Horizon in parallel. Users will have their choice of interface (except when it comes to features missing from Horizon, in which case they'll need to use OSM). As we add features to Horizon we can gradually nudge users away from OSM until we're ready to abandon it.

Open questions

  • Yes Done By default Horizon will support authorization using the same username/password required for wikitech. It does not support 2fa. Do we need to implement 2fa before exposing Horizon to the public?
  • How will we handle changes we make to upstream Horizon?
    Currently we're running Openstack Havana. Can the development tip of Horizon interact with our OpenStack install?

Horizon bugs that we care about

  • Horizon handles large sets of projects and instances poorly. Paging logic needs to be added, and the search and filter features need to search the database rather than just the currently viewable info.

Missing features

  • DNS
    If we adopt designate then perhaps this will all be handled by upstream code
  • Yes Done Dynamic proxy
    We'll definitely have to make our own panel for this.
  • Service groups
    This will almost certainly be a new WMF-specific panel
  • Doing... Puppet, Heira, LDAP
    Our solution for this might be of interest to other OpenStack users.