From 90f4ca00ca399f328d158c137d46eea1f7e5bd29 Mon Sep 17 00:00:00 2001 From: Aurynn Shaw Date: Thu, 16 Jan 2014 12:53:19 +1300 Subject: [PATCH] Removing the media-wiki readme; the markdown README is the default --- README.mw | 142 ------------------------------------------------------ 1 file changed, 142 deletions(-) delete mode 100644 README.mw diff --git a/README.mw b/README.mw deleted file mode 100644 index 3565232..0000000 --- a/README.mw +++ /dev/null @@ -1,142 +0,0 @@ -= Openstack-Artifice = - -== What == - -Artifice is a layer sitting on top of Ceilometer to provide easy interactions with ERP systems, by exposing a configurable interface for turning Ceilometer data into a single billable line item. - -Artifice provides hooks to integrate with arbitrary ERP systems, by not imposing logic beyond the concept of a dated invoice that covers a given range. - -What the ranges are, and how Ceilometer data is aggregated is intended to be configurable. - -Artifice enforces its own rigid postgresql-backed data store, used to store what data has been billed, and for what time range. This is used by Artifice to add prevention of repeated billing of a range of data. - -The Artifice data store will prevent overlapping bills for a given tenant and resource ever being stored, while still allowing for regeneration of a given invoice statement. - -== Requirements: == - -Artifice requires: - * Postgresql 9.1 or greater. - * Python >=2.7.5, <3.0 - * Python modules: - * pyaml - * mock - * requests - * pyaml - * OpenStack Grizzly or greater - * Openstack-Keystone - * Openstack-Ceilometer - -== Installation == - -Installing Artifice is as simple as: dpkg -i openstack-artifice-.deb - -The library will be installed to /opt/stack/artifice, and the command-line tool 'artifice' will be added to the path. - -== Configuration == - -Configuring Artifice is handled through its primary configuration file, stored in /etc/openstack/artifice.conf. - -This is a yaml-format config file, in the format of: - -
# Defines the database connection logic. This will be converted to a standard
-# database connection string.
-database:
-  database: artifice
-  host: localhost
-  password: aurynn
-  port: '5433'
-  username: aurynn
-# Configuration passed to the invoice system. This is arbitrary and may be
-# anything that the invoice object may require.
-invoice:config:
-  delimiter: ','
-  output_file: '%(tenant)s-%(start)s-%(end)s.csv'
-  output_path: /opt/openstack/artifice/invoices
-  row_layout:
-  - location
-  - type
-  - start
-  - end
-  - amount
-  - cost
-main:
-  # What invoice object we should be using
-  invoice:object: billing.csv_invoice:Csv
-# Configuration for OpenStack
-openstack:
-  # Location of the Keystone host
-  authentication_url: http://foo
-  # Location of the Ceilometer host
-  ceilometer_url: http://localhost:8777
-  # Default tenant to connect to. As this
-  default_tenant: demo
-  # Username to use
-  username: foo
-  # Password
-  password: bar
-A sample configuration is included, but '''must''' be modified appropriately. - -== Setup of Openstack environment == - -As mentioned, Artifice relies entirely on the Ceilometer project for its metering and measurement collection. - -All development has (so far) occurred using a DevStack installation, but a production Ceilometer installation should work as expected. - -=== DevStack === - -Installation on DevStack is relatively easy. First, prep the VM with DevStack. Since we need Ceilometer installed, we recommend a DevStack localrc similar to: - -
ADMIN_PASSWORD=openstack
-MYSQL_PASSWORD=openstack
-RABBIT_PASSWORD=openstack
-SERVICE_PASSWORD=openstack
-
-# Enable Quantum
-disable_service n-net
-enable_service q-svc
-enable_service q-agt
-enable_service q-dhcp
-enable_service q-l3
-enable_service q-meta
-enable_service quantum
-
-# Enable Swift
-enable_service swift
-
-# Enable ceilometer!
-enable_service ceilometer-acompute,ceilometer-acentral,ceilometer-collector,ceilometer-api
-A localrc file can be found at '''devstack/localrc''' - -Create your VM and install DevStack into it. A Vagrant-compatible bootstrap script that will install most of the necessary components is included in this distribution, at '''devstack/bootstrap.sh''' - -Install Artifice and the packages it depends on from the Debian repositories. - -Artifices' post-intallation hooks will have set up the Postgres database as expected, and Artifice will be ready to run. - -=== Production OpenStack === - -TODO: Fill this out - -== Using Artifice == - -As mentioned, Artifice comes with a command-line tool to provide some simple commands. - -Actions one can perform with Artifice are: - -* Bill; Given a date range, generates the current usage bill for a tenant. This will result in a CSV file. - -=== Future things === - -Eventually we also want Artifice to: - -* List current usage numbers -* List historic usage numbers -* Re-generate billing information - -Things we may eventually want include: - -* Listing this months' total usage of a given resource -* Listing total usage by datacentre -* Listing all usage ever -* Etc -