Copyright 2015 OpenStack Foundation

This work is licensed under a Creative Commons Attribution 3.0
Unported License.
http://creativecommons.org/licenses/by/3.0/legalcode

Host refstack.org and api.refstack.org on infra

https://storyboard.openstack.org/#!/story/2000277

The RefStack UI and API servers have matured to a point where the DefCore committee and Foundation staff feel it can be an OpenStack hosted project to collect and report voluntarily collected test results.

Problem Description

RefStack was conceived as a semi-anonymous test reporting tool to support the efforts of the DefCore committee. Vendors and users can use the refstack-client to anonymously upload results from test runs against cloud apis for reporting of widely deployed capabilities and verification of testing standards for the DefCore process.

As a board initiated and community supported process, RefStack is best hosted as a community resource.

Proposed Change

To begin with refstack can start with a simple deployment and host the front end ui and api on the same vm with a single ip. If traffic demands, refstack is fully capable of being load balanced.

  • Allocate a virtual machine for website and api hosting with 2gb of ram.

  • Edit DNS record to point refstack.org VM.

  • Allocate trusted certificate for refstack.org

  • Allocate a trove database instance, start with 5gb of disk and base level cpu.

  • Create puppet modules do deploy RefStack. Modules will:
  • Import existing data from refstack.net. (david lenwell can provide)

Alternatives

Continue to self-host RefStack at http://refstack.net, unsecured and privately held.

Implementation

Assignee(s)

Primary assignee:

Michael Krotcheck (krotcheck)

Secondary asignees:

David Lenwell (davidlenwell) Chris Hoge (hogepodge)

Gerrit Topic

Use Gerrit topic “refstack” for all patches related to this spec.

git review -t refstack

Work Items

  • Allocate TLS certificates for refstack.org.

  • Allocate VM.

  • Edit refstack.org to point to allocated VM.

  • Write Puppet module to deploy refstack.org and database.

  • Allocate trove database.

  • Entry in infra trove database manifest needs to be created.

  • Import existing database from refstack.net.

Repositories

Servers

A server to host refstack.org and will need to be created.

DNS Entries

refstack.org must point to the newly created server.

Documentation

RefStack documentation, for both deployment and usage, is located in the stackforge/refstack repository.

http://git.openstack.org/cgit/stackforge/refstack/tree/doc/refstack.md

Security

  • The services will run on Ubuntu trusty

  • Only TLS enabled connections will be allowed to refstack.org. (i.e. forward http traffic to https)

Testing

RefStack has continuous testing in place as part of standard OpenStack development processes. Failures and bugs identified in deployed code will be tested for and added to the continuous testing process.

Backup / recovery steps

Backup assets

Traditional backups like any other trove hosted infra database.

Invoke management commands

None

Stop apache

$ sudo service apache2 stop

Restore database dump

Standard MySQL database dump and restore.

Restart apache

$ sudo service apache2 restart

Dependencies

Dependencies are captured in the RefStack project, and will be managed by the puppet module.