Announcing OpenStackManager extension for MediaWiki

For the past month or so I’ve been working on an extension to manage OpenStack (Nova), for use on the Wikimedia Foundation’s upcoming virtualization cluster. I’ve gotten to a point where I believe the extension is ready for an initial release.

In brief, OpenStack works a lot like EC2, and in fact implements the EC2 API. This extension interacts with the EC2 API and LDAP, to manage a virtual machine infrastructure. It has the following features:

  • Integrates with the LdapAuthentication extension, and creates user accounts in LDAP upon user creation
    • Users created with a posix username, uid, and gid; home directory; OpenStack credentials; and wiki credentials
  • Manages most features of OpenStack
    • Handles project creation/deletion, and membership
    • Handles project and global role membership
    • Handles instance creation/deletion
    • Handles security group creation/deletion and rule addition/removal
    • Handles floating IP address allocation and association with instances
    • Handles public SSH key addition/removal from user accounts
  • Manages DNS via PowerDNS with an LDAP backend
    • Handles private DNS for private IP address ranges upon instance creation and deletion
    • Handles public DNS for floating IP addresses
  • Manages Puppet configuration for instances via Puppet with an LDAP backend for nodes

The extension was written to handle the case explained in previous blog post about this subject. It is likely not written in a generic enough way to fit into most existing infrastructures currently. If you’d like to help make the extension more useful for a wider audience, please contact me, send patches, or if you have commit access, make modifications. I have a test/dev environment for this project configured on tesla, if you’d like to work in a pre-configured environment.

  • Pingback: Tweets that mention Announcing OpenStackManager extension for MediaWiki | Ryan Lane's Blog -- Topsy.com()

  • Chris

    Hi ryan,

    first: Thank You alot for the publications on the OpenStack Topic. I am trying to build an autodeployment-capable infrastructure with openstack myself – and I am looking for a managementtool – you use mediawiki and your plugin, that’s sure an option.

    I guess you researched the topic yourself, did you find any other projects or resources on the topic of buillding IaaS with OpenStack? I would be happy if you mail me or answer here.

    I will closely follow your publications,

    regards, Christian

    • There’s two web interfaces for OpenStack Nova right now: my MediaWiki extension, and a Django web dashboard, which is officially part of the OpenStack project.

      My interface adds DNS, puppet support, and LDAP support for the instances on top. A lot of the DNS stuff could be moved to Nova, the puppet stuff is likely possible to do by adding extra metadata to the instances on creation, and the LDAP support for the instances could be replaced by user and group management in puppet.

      I’m sure others are working on solutions like mine, but I’ve only seen the two interfaces so far.

  • Hi!

    Great work, Ryan! Awesome to have you in our community :)

    -jay

    • Thanks. I’m glad to have an open source solution for this, so I’m glad to help ;).

  • Pingback: February 2011 WMF Engineering Update « Wikimedia Technical Blog()

  • Pingback: Wikimedia blog » Blog Archive » February 2011 WMF Engineering Update()