this is all going to fail miserably
Signed-off-by: Ricky Elrod <codeblock@fedoraproject.org>
This commit is contained in:
parent
b3f7e90f8c
commit
cdec020f76
10 changed files with 428 additions and 5 deletions
|
@ -25,12 +25,26 @@
|
||||||
- /srv/private/ansible/files/openstack/passwords.yml
|
- /srv/private/ansible/files/openstack/passwords.yml
|
||||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- base
|
||||||
|
- rkhunter
|
||||||
|
- { role: denyhosts, when: ansible_distribution_major_version|int != 7 }
|
||||||
|
- apache
|
||||||
|
- graphite/graphite
|
||||||
|
- graphite/statsd
|
||||||
|
- graphite/fedmsg2statsd
|
||||||
|
- graphite/grafana
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- include: "{{ tasks }}/yumrepos.yml"
|
||||||
|
- include: "{{ tasks }}/2fa_client.yml"
|
||||||
|
- include: "{{ tasks }}/motd.yml"
|
||||||
|
- include: "{{ tasks }}/mod_wsgi.yml"
|
||||||
|
|
||||||
|
handlers:
|
||||||
|
- include: "{{ handlers }}/restart_services.yml"
|
||||||
|
|
||||||
pre_tasks:
|
pre_tasks:
|
||||||
- include: "{{ tasks }}/cloud_setup_basic.yml"
|
- include: "{{ tasks }}/cloud_setup_basic.yml"
|
||||||
- name: set hostname (required by some services, at least postfix need it)
|
- name: set hostname (required by some services, at least postfix need it)
|
||||||
shell: "hostname {{inventory_hostname}}"
|
shell: "hostname {{inventory_hostname}}"
|
||||||
|
|
||||||
# TODO -- we don't actually have these yet
|
|
||||||
#roles:
|
|
||||||
#- graphite
|
|
||||||
#- grapfana
|
|
||||||
|
|
15
roles/graphite/fedmsg2statsd/files/fedmsg2statsd.service
Normal file
15
roles/graphite/fedmsg2statsd/files/fedmsg2statsd.service
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
[Unit]
|
||||||
|
Description=fedmsg to statsd proxy
|
||||||
|
After=network.target
|
||||||
|
Documentation=https://github.com/fedora-infra/fedmsg2statsd/
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/opt/fedmsg2statsd/.cabal-sandbox/bin/fedmsg2statsd localhost 2003 tcp://hub.fedoraproject.org:9940
|
||||||
|
Type=simple
|
||||||
|
User=nobody
|
||||||
|
Group=nobody
|
||||||
|
LimitNOFILE=160000
|
||||||
|
Restart=on-failure
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
47
roles/graphite/fedmsg2statsd/tasks/main.yml
Normal file
47
roles/graphite/fedmsg2statsd/tasks/main.yml
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
---
|
||||||
|
- name: install needed packages
|
||||||
|
yum: pkg={{ item }} state=present
|
||||||
|
with_items:
|
||||||
|
- ghc
|
||||||
|
- ghc-devel
|
||||||
|
- git
|
||||||
|
- cabal-install
|
||||||
|
tags:
|
||||||
|
- packages
|
||||||
|
- fedmsg2statsd
|
||||||
|
|
||||||
|
- name: Clone fedmsg2statsd repo (this needs to be packaged at some point)
|
||||||
|
git: accept_hostkey=yes clone=yes repo=https://github.com/fedora-infra/fedmsg2statsd.git update=yes dest=/opt/fedmsg2statsd
|
||||||
|
tags:
|
||||||
|
- fedmsg2statsd
|
||||||
|
|
||||||
|
- name: Update cabal metadata
|
||||||
|
shell: cabal update
|
||||||
|
tags:
|
||||||
|
- fedmsg2statsd
|
||||||
|
|
||||||
|
- name: Start a cabal sandbox
|
||||||
|
shell: cwd=/opt/fedmsg2statsd cabal sandbox init
|
||||||
|
tags:
|
||||||
|
- fedmsg2statsd
|
||||||
|
|
||||||
|
- name: Install fedmsg2statsd in the sandbox
|
||||||
|
shell: cwd=/opt/fedmsg2statsd cabal install
|
||||||
|
tags:
|
||||||
|
- fedmsg2statsd
|
||||||
|
|
||||||
|
- name: Installing systemd service file
|
||||||
|
copy: >
|
||||||
|
src=fedmsg2statsd.service
|
||||||
|
dest=/usr/lib/systemd/system/fedmsg2statsd.service
|
||||||
|
tags:
|
||||||
|
- config
|
||||||
|
- fedmsg2statsd
|
||||||
|
notify:
|
||||||
|
- restart fedmsg2statsd
|
||||||
|
|
||||||
|
- name: Set fedmsg2statsd to run on boot
|
||||||
|
service: name=fedmsg2statsd enabled=yes state=running
|
||||||
|
tags:
|
||||||
|
- service
|
||||||
|
- fedmsg2statsd
|
7
roles/graphite/grafana/files/grafana.conf
Normal file
7
roles/graphite/grafana/files/grafana.conf
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
<VirtualHost *:80>
|
||||||
|
ServerName grafana.cloud.fedoraproject.org
|
||||||
|
ErrorLog /var/log/httpd/grafana-error.log
|
||||||
|
CustomLog /var/log/httpd/grafana-access.log common
|
||||||
|
ProxyPass / http://localhost:3000/
|
||||||
|
ProxyPassReverse / http://localhost:3000/
|
||||||
|
</VirtualHost>
|
9
roles/graphite/grafana/files/grafana.repo
Normal file
9
roles/graphite/grafana/files/grafana.repo
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
[grafana]
|
||||||
|
name=grafana
|
||||||
|
baseurl=https://packagecloud.io/grafana/stable/el/6/$basearch
|
||||||
|
repo_gpgcheck=1
|
||||||
|
enabled=1
|
||||||
|
gpgcheck=1
|
||||||
|
gpgkey=https://packagecloud.io/gpg.key https://grafanarel.s3.amazonaws.com/RPM-GPG-KEY-grafana
|
||||||
|
sslverify=1
|
||||||
|
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
|
26
roles/graphite/grafana/tasks/main.yml
Normal file
26
roles/graphite/grafana/tasks/main.yml
Normal file
|
@ -0,0 +1,26 @@
|
||||||
|
---
|
||||||
|
- name: add repo
|
||||||
|
action: copy src=grafana.repo dest=/etc/yum.repos.d/grafana.repo
|
||||||
|
tags:
|
||||||
|
- grafana
|
||||||
|
- packages
|
||||||
|
- repo
|
||||||
|
|
||||||
|
- name: install grafana
|
||||||
|
yum: pkg=grafana state=present
|
||||||
|
tags:
|
||||||
|
- grafana
|
||||||
|
- packages
|
||||||
|
|
||||||
|
- name: Set grafana to run on boot
|
||||||
|
service: name=grafana enabled=yes state=running
|
||||||
|
tags:
|
||||||
|
- service
|
||||||
|
- grafana
|
||||||
|
|
||||||
|
- name: grafana apache proxy config file
|
||||||
|
copy: src=grafana.conf dest=/etc/httpd/conf.d/grafana.conf owner=root group=root mode=644
|
||||||
|
notify:
|
||||||
|
- restart apache
|
||||||
|
tags:
|
||||||
|
- grafana
|
40
roles/graphite/graphite/tasks/main.yml
Normal file
40
roles/graphite/graphite/tasks/main.yml
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
---
|
||||||
|
- name: install needed packages
|
||||||
|
yum: pkg={{ item }} state=present
|
||||||
|
with_items:
|
||||||
|
- graphite-web
|
||||||
|
- python-carbon
|
||||||
|
- libsemanage-python
|
||||||
|
- mod_ssl
|
||||||
|
tags:
|
||||||
|
- graphite
|
||||||
|
- carbon
|
||||||
|
- packages
|
||||||
|
|
||||||
|
- name: graphite-web config file
|
||||||
|
template: src=local_settings.py dest=/etc/graphite-web/local_settings.py owner=root group=root mode=644
|
||||||
|
notify:
|
||||||
|
- restart apache
|
||||||
|
tags:
|
||||||
|
- graphite
|
||||||
|
|
||||||
|
- name: graphite-web apache config
|
||||||
|
template: src=graphite-web.conf dest=/etc/httpd/conf.d/graphite-web.conf owner=root group=root mode=644
|
||||||
|
notify:
|
||||||
|
- restart apache
|
||||||
|
tags:
|
||||||
|
- graphite
|
||||||
|
|
||||||
|
- name: Set carbon-aggregator to run on boot
|
||||||
|
service: name=carbon-aggregator enabled=yes state=running
|
||||||
|
tags:
|
||||||
|
- service
|
||||||
|
- graphite
|
||||||
|
- carbon
|
||||||
|
|
||||||
|
- name: Set carbon-cache to run on boot
|
||||||
|
service: name=carbon-cache enabled=yes state=running
|
||||||
|
tags:
|
||||||
|
- service
|
||||||
|
- graphite
|
||||||
|
- carbon
|
39
roles/graphite/graphite/templates/graphite-web.conf
Normal file
39
roles/graphite/graphite/templates/graphite-web.conf
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
<VirtualHost *:80>
|
||||||
|
ServerName graphite.cloud.fedoraproject.org
|
||||||
|
DocumentRoot "/usr/share/graphite/webapp"
|
||||||
|
ErrorLog /var/log/httpd/graphite-web-error.log
|
||||||
|
CustomLog /var/log/httpd/graphite-web-access.log common
|
||||||
|
|
||||||
|
Header set Access-Control-Allow-Origin "*"
|
||||||
|
# Header set Access-Control-Allow-Methods "GET, OPTIONS"
|
||||||
|
# Header set Access-Control-Allow-Headers "origin, authorization, accept"
|
||||||
|
# Header set Access-Control-Allow-Credentials true
|
||||||
|
|
||||||
|
WSGIScriptAlias / /usr/share/graphite/graphite-web.wsgi
|
||||||
|
WSGIImportScript /usr/share/graphite/graphite-web.wsgi process-group=%{GLOBAL} application-group=%{GLOBAL}
|
||||||
|
|
||||||
|
<Location "/content/">
|
||||||
|
SetHandler None
|
||||||
|
</Location>
|
||||||
|
|
||||||
|
Alias /media/ "/usr/lib/python2.7/site-packages/django/contrib/admin/media/"
|
||||||
|
<Location "/media/">
|
||||||
|
SetHandler None
|
||||||
|
</Location>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
<Directory "/usr/share/graphite/">
|
||||||
|
<IfModule mod_authz_core.c>
|
||||||
|
# Apache 2.4
|
||||||
|
Require local
|
||||||
|
</IfModule>
|
||||||
|
<IfModule !mod_authz_core.c>
|
||||||
|
# Apache 2.2
|
||||||
|
Order Deny,Allow
|
||||||
|
Deny from all
|
||||||
|
Allow from 127.0.0.1
|
||||||
|
Allow from ::1
|
||||||
|
</IfModule>
|
||||||
|
</Directory>
|
||||||
|
-->
|
||||||
|
</VirtualHost>
|
212
roles/graphite/graphite/templates/local_settings.py
Normal file
212
roles/graphite/graphite/templates/local_settings.py
Normal file
|
@ -0,0 +1,212 @@
|
||||||
|
## Graphite local_settings.py
|
||||||
|
# Edit this file to customize the default Graphite webapp settings
|
||||||
|
#
|
||||||
|
# Additional customizations to Django settings can be added to this file as well
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# General Configuration #
|
||||||
|
#####################################
|
||||||
|
# Set this to a long, random unique string to use as a secret key for this
|
||||||
|
# install. This key is used for salting of hashes used in auth tokens,
|
||||||
|
# CRSF middleware, cookie storage, etc. This should be set identically among
|
||||||
|
# instances if used behind a load balancer.
|
||||||
|
SECRET_KEY = '{{ graphite_secret_csrf_key }}'
|
||||||
|
|
||||||
|
# In Django 1.5+ set this to the list of hosts your graphite instances is
|
||||||
|
# accessible as. See:
|
||||||
|
# https://docs.djangoproject.com/en/dev/ref/settings/#std:setting-ALLOWED_HOSTS
|
||||||
|
#ALLOWED_HOSTS = [ '*' ]
|
||||||
|
|
||||||
|
# Set your local timezone (Django's default is America/Chicago)
|
||||||
|
# If your graphs appear to be offset by a couple hours then this probably
|
||||||
|
# needs to be explicitly set to your local timezone.
|
||||||
|
#TIME_ZONE = 'America/Los_Angeles'
|
||||||
|
|
||||||
|
# Override this to provide documentation specific to your Graphite deployment
|
||||||
|
#DOCUMENTATION_URL = "http://graphite.readthedocs.org/"
|
||||||
|
|
||||||
|
# Logging
|
||||||
|
#LOG_RENDERING_PERFORMANCE = True
|
||||||
|
#LOG_CACHE_PERFORMANCE = True
|
||||||
|
#LOG_METRIC_ACCESS = True
|
||||||
|
|
||||||
|
# Enable full debug page display on exceptions (Internal Server Error pages)
|
||||||
|
#DEBUG = True
|
||||||
|
|
||||||
|
# If using RRD files and rrdcached, set to the address or socket of the daemon
|
||||||
|
#FLUSHRRDCACHED = 'unix:/var/run/rrdcached.sock'
|
||||||
|
|
||||||
|
# This lists the memcached servers that will be used by this webapp.
|
||||||
|
# If you have a cluster of webapps you should ensure all of them
|
||||||
|
# have the *exact* same value for this setting. That will maximize cache
|
||||||
|
# efficiency. Setting MEMCACHE_HOSTS to be empty will turn off use of
|
||||||
|
# memcached entirely.
|
||||||
|
#
|
||||||
|
# You should not use the loopback address (127.0.0.1) here if using clustering
|
||||||
|
# as every webapp in the cluster should use the exact same values to prevent
|
||||||
|
# unneeded cache misses. Set to [] to disable caching of images and fetched data
|
||||||
|
#MEMCACHE_HOSTS = ['10.10.10.10:11211', '10.10.10.11:11211', '10.10.10.12:11211']
|
||||||
|
#DEFAULT_CACHE_DURATION = 60 # Cache images and data for 1 minute
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Filesystem Paths #
|
||||||
|
#####################################
|
||||||
|
# Change only GRAPHITE_ROOT if your install is merely shifted from /opt/graphite
|
||||||
|
# to somewhere else
|
||||||
|
#GRAPHITE_ROOT = '/opt/graphite'
|
||||||
|
GRAPHITE_ROOT = '/usr/share/graphite'
|
||||||
|
|
||||||
|
# Most installs done outside of a separate tree such as /opt/graphite will only
|
||||||
|
# need to change these three settings. Note that the default settings for each
|
||||||
|
# of these is relative to GRAPHITE_ROOT
|
||||||
|
#CONF_DIR = '/opt/graphite/conf'
|
||||||
|
#STORAGE_DIR = '/opt/graphite/storage'
|
||||||
|
#CONTENT_DIR = '/opt/graphite/webapp/content'
|
||||||
|
CONF_DIR = '/etc/graphite-web'
|
||||||
|
STORAGE_DIR = '/var/lib/graphite-web'
|
||||||
|
CONTENT_DIR = '/usr/share/graphite/webapp/content'
|
||||||
|
|
||||||
|
# To further or fully customize the paths, modify the following. Note that the
|
||||||
|
# default settings for each of these are relative to CONF_DIR and STORAGE_DIR
|
||||||
|
#
|
||||||
|
## Webapp config files
|
||||||
|
#DASHBOARD_CONF = '/etc/graphite-web/dashboard.conf'
|
||||||
|
#GRAPHTEMPLATES_CONF = '/etc/graphite-web/graphTemplates.conf'
|
||||||
|
|
||||||
|
## Data directories
|
||||||
|
# NOTE: If any directory is unreadable in DATA_DIRS it will break metric browsing
|
||||||
|
#WHISPER_DIR = '/opt/graphite/storage/whisper'
|
||||||
|
#RRD_DIR = '/opt/graphite/storage/rrd'
|
||||||
|
#DATA_DIRS = [WHISPER_DIR, RRD_DIR] # Default: set from the above variables
|
||||||
|
#LOG_DIR = '/opt/graphite/storage/log/webapp'
|
||||||
|
#INDEX_FILE = '/opt/graphite/storage/index' # Search index file
|
||||||
|
WHISPER_DIR = '/var/lib/carbon/whisper/'
|
||||||
|
RRD_DIR = '/var/lib/carbon/rrd'
|
||||||
|
DATA_DIRS = [WHISPER_DIR, RRD_DIR] # Default: set from the above variables
|
||||||
|
LOG_DIR = '/var/log/graphite-web/'
|
||||||
|
INDEX_FILE = '/var/lib/graphite-web/index' # Search index file
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Email Configuration #
|
||||||
|
#####################################
|
||||||
|
# This is used for emailing rendered Graphs
|
||||||
|
# Default backend is SMTP
|
||||||
|
#EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
|
||||||
|
#EMAIL_HOST = 'localhost'
|
||||||
|
#EMAIL_PORT = 25
|
||||||
|
#EMAIL_HOST_USER = ''
|
||||||
|
#EMAIL_HOST_PASSWORD = ''
|
||||||
|
#EMAIL_USE_TLS = False
|
||||||
|
# To drop emails on the floor, enable the Dummy backend:
|
||||||
|
#EMAIL_BACKEND = 'django.core.mail.backends.dummy.EmailBackend'
|
||||||
|
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Authentication Configuration #
|
||||||
|
#####################################
|
||||||
|
## LDAP / ActiveDirectory authentication setup
|
||||||
|
#USE_LDAP_AUTH = True
|
||||||
|
#LDAP_SERVER = "ldap.mycompany.com"
|
||||||
|
#LDAP_PORT = 389
|
||||||
|
# OR
|
||||||
|
#LDAP_URI = "ldaps://ldap.mycompany.com:636"
|
||||||
|
#LDAP_SEARCH_BASE = "OU=users,DC=mycompany,DC=com"
|
||||||
|
#LDAP_BASE_USER = "CN=some_readonly_account,DC=mycompany,DC=com"
|
||||||
|
#LDAP_BASE_PASS = "readonly_account_password"
|
||||||
|
#LDAP_USER_QUERY = "(username=%s)" #For Active Directory use "(sAMAccountName=%s)"
|
||||||
|
#
|
||||||
|
# If you want to further customize the ldap connection options you should
|
||||||
|
# directly use ldap.set_option to set the ldap module's global options.
|
||||||
|
# For example:
|
||||||
|
#
|
||||||
|
#import ldap
|
||||||
|
#ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_ALLOW)
|
||||||
|
#ldap.set_option(ldap.OPT_X_TLS_CACERTDIR, "/etc/ssl/ca")
|
||||||
|
#ldap.set_option(ldap.OPT_X_TLS_CERTFILE, "/etc/ssl/mycert.pem")
|
||||||
|
#ldap.set_option(ldap.OPT_X_TLS_KEYFILE, "/etc/ssl/mykey.pem")
|
||||||
|
# See http://www.python-ldap.org/ for further details on these options.
|
||||||
|
|
||||||
|
## REMOTE_USER authentication. See: https://docs.djangoproject.com/en/dev/howto/auth-remote-user/
|
||||||
|
#USE_REMOTE_USER_AUTHENTICATION = True
|
||||||
|
|
||||||
|
# Override the URL for the login link (e.g. for django_openid_auth)
|
||||||
|
#LOGIN_URL = '/account/login'
|
||||||
|
|
||||||
|
|
||||||
|
##########################
|
||||||
|
# Database Configuration #
|
||||||
|
##########################
|
||||||
|
# By default sqlite is used. If you cluster multiple webapps you will need
|
||||||
|
# to setup an external database (such as MySQL) and configure all of the webapp
|
||||||
|
# instances to use the same database. Note that this database is only used to store
|
||||||
|
# Django models such as saved graphs, dashboards, user preferences, etc.
|
||||||
|
# Metric data is not stored here.
|
||||||
|
#
|
||||||
|
# DO NOT FORGET TO RUN 'manage.py syncdb' AFTER SETTING UP A NEW DATABASE
|
||||||
|
#
|
||||||
|
# The following built-in database engines are available:
|
||||||
|
# django.db.backends.postgresql # Removed in Django 1.4
|
||||||
|
# django.db.backends.postgresql_psycopg2
|
||||||
|
# django.db.backends.mysql
|
||||||
|
# django.db.backends.sqlite3
|
||||||
|
# django.db.backends.oracle
|
||||||
|
#
|
||||||
|
# The default is 'django.db.backends.sqlite3' with file 'graphite.db'
|
||||||
|
# located in STORAGE_DIR
|
||||||
|
#
|
||||||
|
|
||||||
|
DATABASES = {
|
||||||
|
'default': {
|
||||||
|
'NAME': '/var/lib/graphite-web/graphite.db',
|
||||||
|
'ENGINE': 'django.db.backends.sqlite3',
|
||||||
|
'USER': '',
|
||||||
|
'PASSWORD': '',
|
||||||
|
'HOST': '',
|
||||||
|
'PORT': ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#########################
|
||||||
|
# Cluster Configuration #
|
||||||
|
#########################
|
||||||
|
# (To avoid excessive DNS lookups you want to stick to using IP addresses only in this entire section)
|
||||||
|
#
|
||||||
|
# This should list the IP address (and optionally port) of the webapp on each
|
||||||
|
# remote server in the cluster. These servers must each have local access to
|
||||||
|
# metric data. Note that the first server to return a match for a query will be
|
||||||
|
# used.
|
||||||
|
#CLUSTER_SERVERS = ["10.0.2.2:80", "10.0.2.3:80"]
|
||||||
|
|
||||||
|
## These are timeout values (in seconds) for requests to remote webapps
|
||||||
|
#REMOTE_STORE_FETCH_TIMEOUT = 6 # Timeout to fetch series data
|
||||||
|
#REMOTE_STORE_FIND_TIMEOUT = 2.5 # Timeout for metric find requests
|
||||||
|
#REMOTE_STORE_RETRY_DELAY = 60 # Time before retrying a failed remote webapp
|
||||||
|
#REMOTE_FIND_CACHE_DURATION = 300 # Time to cache remote metric find results
|
||||||
|
|
||||||
|
## Remote rendering settings
|
||||||
|
# Set to True to enable rendering of Graphs on a remote webapp
|
||||||
|
#REMOTE_RENDERING = True
|
||||||
|
# List of IP (and optionally port) of the webapp on each remote server that
|
||||||
|
# will be used for rendering. Note that each rendering host should have local
|
||||||
|
# access to metric data or should have CLUSTER_SERVERS configured
|
||||||
|
#RENDERING_HOSTS = []
|
||||||
|
#REMOTE_RENDER_CONNECT_TIMEOUT = 1.0
|
||||||
|
|
||||||
|
# If you are running multiple carbon-caches on this machine (typically behind a relay using
|
||||||
|
# consistent hashing), you'll need to list the ip address, cache query port, and instance name of each carbon-cache
|
||||||
|
# instance on the local machine (NOT every carbon-cache in the entire cluster). The default cache query port is 7002
|
||||||
|
# and a common scheme is to use 7102 for instance b, 7202 for instance c, etc.
|
||||||
|
#
|
||||||
|
# You *should* use 127.0.0.1 here in most cases
|
||||||
|
#CARBONLINK_HOSTS = ["127.0.0.1:7002:a", "127.0.0.1:7102:b", "127.0.0.1:7202:c"]
|
||||||
|
#CARBONLINK_TIMEOUT = 1.0
|
||||||
|
|
||||||
|
#####################################
|
||||||
|
# Additional Django Settings #
|
||||||
|
#####################################
|
||||||
|
# Uncomment the following line for direct access to Django settings such as
|
||||||
|
# MIDDLEWARE_CLASSES or APPS
|
||||||
|
#from graphite.app_settings import *
|
14
roles/graphite/statsd/tasks/main.yml
Normal file
14
roles/graphite/statsd/tasks/main.yml
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
---
|
||||||
|
- name: install needed packages
|
||||||
|
yum: pkg={{ item }} state=present
|
||||||
|
with_items:
|
||||||
|
- statsd
|
||||||
|
tags:
|
||||||
|
- packages
|
||||||
|
- statsd
|
||||||
|
|
||||||
|
- name: Set statsd to run on boot
|
||||||
|
service: name=statsd enabled=yes state=running
|
||||||
|
tags:
|
||||||
|
- service
|
||||||
|
- statsd
|
Loading…
Add table
Add a link
Reference in a new issue