Initial commit
Adding salt-formula for gnocchi 4.0. Two main roles are supported:
- server
- statsd
They could be installed on different nodes (and on same node too)
gnocchi:common class is used to provide common options for both.
Change-Id: I0e0c9dd4f6d0a1539b9e9aef0084282867012852
Related-Prod: https://mirantis.jira.com/browse/PROD-17704
diff --git a/README.rst b/README.rst
new file mode 100644
index 0000000..984d971
--- /dev/null
+++ b/README.rst
@@ -0,0 +1,270 @@
+
+==================================
+Gnocchi Formula
+==================================
+
+Service Gnocchi description
+
+Gnocchi is an open-source time series database. The problem that Gnocchi solves
+is the storage and indexing of time series data and resources at a large scale.
+This is useful in modern cloud platforms which are not only huge but also are
+dynamic and potentially multi-tenant. Gnocchi takes all of that into account.
+
+
+Sample Pillars
+==============
+
+.. note::
+ Before deploying gnocchi, Apache2 should be configured to serve wsgi vhost for Gnocchi API.
+ Example of Apache pillar with Gnocchi site:
+
+.. code-block:: yaml
+
+ apache:
+ server:
+ enabled: true
+ default_mpm: event
+ mpm:
+ prefork:
+ enabled: true
+ servers:
+ start: 5
+ spare:
+ min: 2
+ max: 10
+ max_requests: 0
+ max_clients: 20
+ limit: 20
+ site:
+ gnocchi:
+ enabled: false
+ available: true
+ type: wsgi
+ name: gnocchi
+ host:
+ name: gnocchi.site.com
+ address: 127.0.0.1
+ port: 8041
+ log:
+ custom:
+ format: >-
+ %v:%p %{X-Forwarded-For}i %h %l %u %t \"%r\" %>s %D %O \"%{Referer}i\" \"%{User-Agent}i\"
+ wsgi:
+ daemon_process: gnocchi-api
+ processes: ${_param:gnocchi_api_workers}
+ threads: 10
+ user: gnocchi
+ group: gnocchi
+ display_name: '%{GROUP}'
+ script_alias: '/ /usr/bin/gnocchi-api'
+ application_group: '%{GLOBAL}'
+ authorization: 'On'
+ pkgs:
+ - apache2
+ modules:
+ - wsgi
+
+Single Gnocchi service with file storage backend
+
+ gnocchi:
+ server:
+ enabled: true
+ version: 4.0
+ database:
+ engine: mysql
+ host: 127.0.0.1
+ name: gnocchi
+ password: workshop
+ user: gnocchi
+ storage:
+ aggregation_workers: 2
+ driver: file
+ file_basepath: /var/lib/gnocchi
+ coordination_backend:
+ url: redis://127.0.0.1:6379/
+ bind:
+ address: 127.0.0.1
+ port: 8041
+ api:
+ auth_mode: keystone
+ identity:
+ engine: keystone
+ region: RegionOne
+ protocol: http
+ host: 127.0.0.1
+ port: 35357
+ user: gnocchi
+ password: 127.0.0.1
+ cache:
+ engine: memcached
+ members:
+ - host: 127.0.0.1
+ port: 11211
+
+Single Gnocchi service with redis storage backend
+
+.. code-block:: yaml
+
+ gnocchi:
+ server:
+ enabled: true
+ version: 4.0
+ database:
+ engine: mysql
+ host: 127.0.0.1
+ name: gnocchi
+ password: workshop
+ user: gnocchi
+ storage:
+ aggregation_workers: 2
+ driver: redis
+ redis_url: redis://127.0.0.1:6379/
+ coordination_backend:
+ url: redis://127.0.0.1:6379/
+ bind:
+ address: 127.0.0.1
+ port: 8041
+ api:
+ auth_mode: keystone
+ identity:
+ engine: keystone
+ region: RegionOne
+ protocol: http
+ host: 127.0.0.1
+ port: 35357
+ user: gnocchi
+ password: 127.0.0.1
+ cache:
+ engine: memcached
+ members:
+ - host: 127.0.0.1
+ port: 11211
+
+Single Gnocchi service with redis backend for incoming storage and file backend for aggregated storage
+
+.. code-block:: yaml
+
+ gnocchi:
+ server:
+ enabled: true
+ version: 4.0
+ database:
+ engine: mysql
+ host: 127.0.0.1
+ name: gnocchi
+ password: workshop
+ user: gnocchi
+ storage:
+ aggregation_workers: 2
+ driver: file
+ file_basepath: /var/lib/gnocchi
+ incoming:
+ driver: redis
+ redis_url: redis://127.0.0.1:6379/
+ coordination_backend:
+ url: redis://127.0.0.1:6379/
+ bind:
+ address: 127.0.0.1
+ port: 8041
+ api:
+ auth_mode: keystone
+ identity:
+ engine: keystone
+ region: RegionOne
+ protocol: http
+ host: 127.0.0.1
+ port: 35357
+ user: gnocchi
+ password: 127.0.0.1
+ cache:
+ engine: memcached
+ members:
+ - host: 127.0.0.1
+ port: 11211
+
+Single Gnocchi service with Gnocchi statsd on the same node:
+
+.. code-block:: yaml
+
+ gnocchi:
+ common:
+ version: 4.0
+ database:
+ engine: mysql
+ host: 127.0.0.1
+ name: gnocchi
+ password: workshop
+ user: gnocchi
+ storage:
+ aggregation_workers: 2
+ driver: redis
+ redis_url: redis://127.0.0.1/test
+ coordination_backend:
+ url: redis://127.0.0.1/test
+ server:
+ enabled: true
+ bind:
+ address: 127.0.0.1
+ port: 8041
+ api:
+ auth_mode: keystone
+ workers: 5
+ identity:
+ engine: keystone
+ region: RegionOne
+ protocol: http
+ host: 127.0.0.1
+ port: 35357
+ user: gnocchi
+ password: workshop
+ tenant: service
+ cache:
+ engine: memcached
+ members:
+ - host: 127.0.0.1
+ port: 11211
+ metricd:
+ workers: 5
+ statsd:
+ resource_id: 07f26121-5777-48ba-8a0b-d70468133dd9
+ enabled: true
+ bind:
+ address: 127.0.0.1
+ port: 8125
+
+More Information
+================
+
+* https://gnocchi.xyz/
+
+
+Documentation and Bugs
+======================
+
+To learn how to install and update salt-formulas, consult the documentation
+available online at:
+
+ http://salt-formulas.readthedocs.io/
+
+In the unfortunate event that bugs are discovered, they should be reported to
+the appropriate issue tracker. Use GitHub issue tracker for specific salt
+formula:
+
+ https://github.com/salt-formulas/salt-formula-gnocchi/issues
+
+For feature requests, bug reports or blueprints affecting entire ecosystem,
+use Launchpad salt-formulas project:
+
+ https://launchpad.net/salt-formulas
+
+Developers wishing to work on the salt-formulas projects should always base
+their work on master branch and submit pull request against specific formula.
+
+You should also subscribe to mailing list (salt-formulas@freelists.org):
+
+ https://www.freelists.org/list/salt-formulas
+
+Any questions or feedback is always welcome so feel free to join our IRC
+channel:
+
+ #salt-formulas @ irc.freenode.net