Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
itminedu
synnefo
Commits
6e435450
Commit
6e435450
authored
Dec 02, 2013
by
Stratos Psomadakis
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
snf-deploy: Add stats support
parent
2aaa218d
Changes
12
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
141 additions
and
5 deletions
+141
-5
ci/schemas/one_node_wheezy/synnefo.conf
ci/schemas/one_node_wheezy/synnefo.conf
+1
-0
ci/schemas/one_node_wheezy/wheezy.conf
ci/schemas/one_node_wheezy/wheezy.conf
+2
-0
snf-deploy/conf/synnefo.conf
snf-deploy/conf/synnefo.conf
+1
-0
snf-deploy/conf/wheezy.conf
snf-deploy/conf/wheezy.conf
+2
-0
snf-deploy/files/etc/collectd/collectd.conf
snf-deploy/files/etc/collectd/collectd.conf
+10
-0
snf-deploy/files/etc/collectd/passwd
snf-deploy/files/etc/collectd/passwd
+1
-0
snf-deploy/files/etc/collectd/synnefo-ganeti.conf
snf-deploy/files/etc/collectd/synnefo-ganeti.conf
+22
-0
snf-deploy/files/etc/collectd/synnefo-stats.conf
snf-deploy/files/etc/collectd/synnefo-stats.conf
+21
-0
snf-deploy/files/etc/synnefo/cyclades.conf
snf-deploy/files/etc/synnefo/cyclades.conf
+6
-4
snf-deploy/files/etc/synnefo/stats.conf
snf-deploy/files/etc/synnefo/stats.conf
+2
-0
snf-deploy/snfdeploy/__init__.py
snf-deploy/snfdeploy/__init__.py
+7
-1
snf-deploy/snfdeploy/fabfile.py
snf-deploy/snfdeploy/fabfile.py
+66
-0
No files found.
ci/schemas/one_node_wheezy/synnefo.conf
View file @
6e435450
...
...
@@ -21,6 +21,7 @@ mq = node1
ns
=
node1
client
=
node1
router
=
node1
stats
=
node1
[
synnefo
]
...
...
ci/schemas/one_node_wheezy/wheezy.conf
View file @
6e435450
...
...
@@ -23,6 +23,7 @@ ganeti-instance-debootstrap =
python
-
django
-
south
=
python
-
django
=
drbd8
-
utils
=
collectd
=
[
synnefo
]
...
...
@@ -37,6 +38,7 @@ snf-webproject = wheezy
snf
-
pithos
-
app
=
wheezy
snf
-
pithos
-
backend
=
wheezy
snf
-
tools
=
wheezy
snf
-
stats
-
app
=
wheezy
[
ganeti
]
...
...
snf-deploy/conf/synnefo.conf
View file @
6e435450
...
...
@@ -21,6 +21,7 @@ mq = node1
ns
=
node1
client
=
node1
router
=
node1
stats
=
node1
[
synnefo
]
...
...
snf-deploy/conf/wheezy.conf
View file @
6e435450
...
...
@@ -23,6 +23,7 @@ ganeti-instance-debootstrap =
python
-
django
-
south
=
python
-
django
=
drbd8
-
utils
=
collectd
=
[
synnefo
]
...
...
@@ -37,6 +38,7 @@ snf-webproject = wheezy
snf
-
pithos
-
app
=
wheezy
snf
-
pithos
-
backend
=
wheezy
snf
-
tools
=
wheezy
snf
-
stats
-
app
=
wheezy
[
ganeti
]
...
...
snf-deploy/files/etc/collectd/collectd.conf
0 → 100644
View file @
6e435450
FQDNLookup
true
LoadPlugin
syslog
<
Plugin
syslog
>
LogLevel
info
</
Plugin
>
Include
"/etc/collectd/synnefo-*.conf"
Include
"/etc/collectd/filters.conf"
Include
"/etc/collectd/thresholds.conf"
snf-deploy/files/etc/collectd/passwd
0 → 100644
View file @
6e435450
user: pass
snf-deploy/files/etc/collectd/synnefo-ganeti.conf
0 → 100644
View file @
6e435450
<
LoadPlugin
python
>
Globals
true
</
LoadPlugin
>
<
Plugin
python
>
ModulePath
"/usr/lib/snf-cyclades-gtools/collectd/"
LogTraces
true
Interactive
false
Import
"ganeti-cpustats"
Import
"ganeti-netstats"
</
Plugin
>
LoadPlugin
network
<
Plugin
network
>
<
Server
"%STATS%"
"25826"
>
SecurityLevel
"Encrypt"
Username
"user"
Password
"secret"
</
Server
>
TimeToLive
128
ReportStats
false
MaxPacketSize
65535
</
Plugin
>
snf-deploy/files/etc/collectd/synnefo-stats.conf
0 → 100644
View file @
6e435450
LoadPlugin
network
<
Plugin
network
>
TimeToLive
128
<
Listen
"%STATS%"
"25826"
>
SecurityLevel
"Sign"
AuthFile
"/etc/collectd/passwd"
</
Listen
>
ReportStats
false
MaxPacketSize
65535
</
Plugin
>
LoadPlugin
rrdtool
<
Plugin
rrdtool
>
DataDir
"/var/lib/collectd/rrd"
CacheTimeout
120
CacheFlush
900
WritesPerSecond
30
RandomTimeout
0
</
Plugin
>
snf-deploy/files/etc/synnefo/cyclades.conf
View file @
6e435450
...
...
@@ -14,10 +14,10 @@ VMS_USER_QUOTA = {
}
MAX_NETWORKS_PER_USER
=
3
NETWORKS_USER_QUOTA
= {
'psomas@grnet.gr'
:
1000
}
CPU_BAR_GRAPH_URL
=
'https://%
HO
ST%/stats/
%s
/cpu-bar
.png
'
CPU_TIMESERIES_GRAPH_URL
=
'https://%
HO
ST%/stats/
%s
/cpu-ts
.png
'
NET_BAR_GRAPH_URL
=
'https://%
HO
ST%/stats/
%s
/net-bar
.png
'
NET_TIMESERIES_GRAPH_URL
=
'https://%
HO
ST%/stats/
%s
/net-ts
.png
'
CPU_BAR_GRAPH_URL
=
'https://%ST
ATS
%/stats/
v1.0
/cpu-bar
/%s
'
CPU_TIMESERIES_GRAPH_URL
=
'https://%ST
ATS
%/stats/
v1.0
/cpu-ts
/%s
'
NET_BAR_GRAPH_URL
=
'https://%ST
ATS
%/stats/
v1.0
/net-bar
/%s
'
NET_TIMESERIES_GRAPH_URL
=
'https://%ST
ATS
%/stats/
v1.0
/net-ts
/%s
'
GANETI_DISK_TEMPLATES
= (
'blockdev'
,
'diskless'
,
'drbd'
,
'file'
,
'plain'
,
'rbd'
,
'sharedfile'
,
'ext'
)
ASTAKOS_AUTH_URL
=
'https://%ACCOUNTS%/identity/v2.0'
...
...
@@ -86,3 +86,5 @@ CYCLADES_VNCAUTHPROXY_OPTS = {
'auth_user'
:
'synnefo'
,
'auth_password'
:
'synnefo_vnc_pass'
,
}
CYCLADES_STATS_SECRET_KEY
=
"random"
snf-deploy/files/etc/synnefo/stats.conf
0 → 100644
View file @
6e435450
STATS_BASE_URL
=
"https://%STATS%/stats/"
STATS_SECRET_KEY
=
"random"
snf-deploy/snfdeploy/__init__.py
View file @
6e435450
...
...
@@ -80,10 +80,12 @@ Usage: snf-deploy run <action> [<action>...]
setup_apt add_rapi_user add_backend
setup_astakos add_nodes add_image_locally
setup_cms astakos_loaddata add_network
setup_collectd
setup_common astakos_register_components add_ns
setup_cyclades cms_loaddata add_user
setup_db cyclades_loaddata connect_bridges
setup_ganeti enable_drbd create_bridges
setup_ganeti_collectd
setup_gtools init_cluster create_vlans
setup_gunicorn setup_nfs_clients destroy_db
setup_hosts setup_nfs_server
\
...
...
@@ -100,6 +102,8 @@ get_auth_token_from_db
setup_pithos
setup_pithos_dir
setup_router
setup_stats
setup_stats_collectd
setup_vncauthproxy
setup_webproject
...
...
@@ -445,7 +449,8 @@ def get_actions(*args):
"setup_cyclades"
,
"cyclades_loaddata"
,
"add_pools"
,
"export_services"
,
"import_services"
,
"set_user_quota"
,
"setup_kamaki"
,
"upload_image"
,
"register_image"
,
"setup_burnin"
"setup_burnin"
,
"setup_stats"
],
"supdate"
:
[
"apt_get_update"
,
"setup_astakos"
,
...
...
@@ -480,6 +485,7 @@ def get_actions(*args):
"setup_image_host"
,
"setup_image_helper"
,
"add_image_locally"
,
"debootstrap"
,
"setup_net_infra"
,
"setup_lvm"
,
"enable_lvm"
,
"enable_drbd"
,
"setup_drbd_dparams"
,
"setup_ganeti_collectd"
],
"gupdate"
:
[
"setup_apt"
,
"setup_ganeti"
],
"gdestroy"
:
[
"destroy_cluster"
],
...
...
snf-deploy/snfdeploy/fabfile.py
View file @
6e435450
...
...
@@ -62,6 +62,7 @@ def setup_env(args):
"ns"
:
[
env
.
env
.
ns
.
ip
],
"client"
:
[
env
.
env
.
client
.
ip
],
"router"
:
[
env
.
env
.
router
.
ip
],
"stats"
:
[
env
.
env
.
stats
.
ip
],
}
env
.
enable_lvm
=
False
...
...
@@ -1129,6 +1130,70 @@ def cyclades_loaddata():
#run("snf-manage loaddata flavors")
@
roles
(
"ganeti"
,
"stats"
)
def
setup_collectd
():
install_package
(
"collectd"
)
tmpl
=
"/etc/collectd/collectd.conf"
replace
=
{}
custom
=
customize_settings_from_tmpl
(
tmpl
,
replace
)
try_put
(
custom
,
tmpl
,
mode
=
0644
)
@
roles
(
"ganeti"
)
def
setup_ganeti_collectd
():
setup_collectd
()
tmpl
=
"/etc/collectd/passwd"
replace
=
{}
custom
=
customize_settings_from_tmpl
(
tmpl
,
replace
)
try_put
(
custom
,
tmpl
,
mode
=
0644
)
tmpl
=
"/etc/collectd/synnefo-ganeti.conf"
replace
=
{
"STATS"
:
env
.
env
.
stats
.
fqdn
,
}
custom
=
customize_settings_from_tmpl
(
tmpl
,
replace
)
try_put
(
custom
,
tmpl
,
mode
=
0644
)
try_run
(
"/etc/init.d/collectd restart"
)
@
roles
(
"stats"
)
def
setup_stats_collectd
():
setup_collectd
()
tmpl
=
"/etc/collectd/synnefo-stats.conf"
replace
=
{
"STATS"
:
env
.
env
.
stats
.
fqdn
,
}
custom
=
customize_settings_from_tmpl
(
tmpl
,
replace
)
try_put
(
custom
,
tmpl
,
mode
=
0644
)
try_run
(
"/etc/init.d/collectd restart"
)
@
roles
(
"stats"
)
def
setup_stats
():
debug
(
env
.
host
,
"Setting up snf-stats-app..."
)
setup_stats_collectd
()
setup_gunicorn
()
setup_apache
()
setup_webproject
()
install_package
(
"snf-stats-app"
)
cmd
=
"""
mkdir /var/cache/snf-stats-app/
chown www-data:www-data /var/cache/snf-stats-app/
"""
try_run
(
cmd
)
tmpl
=
"/etc/synnefo/stats.conf"
replace
=
{
"STATS"
:
env
.
env
.
stats
.
fqdn
,
}
custom
=
customize_settings_from_tmpl
(
tmpl
,
replace
)
try_put
(
custom
,
tmpl
,
mode
=
0644
)
try_run
(
"/etc/init.d/gunicorn restart"
)
@
roles
(
"cyclades"
)
def
setup_cyclades
():
debug
(
env
.
host
,
"Setting up snf-cyclades-app..."
)
...
...
@@ -1163,6 +1228,7 @@ def setup_cyclades():
"HOST"
:
env
.
env
.
cyclades
.
ip
,
"domain"
:
env
.
env
.
domain
,
"CYCLADES_SERVICE_TOKEN"
:
service_token
,
'STATS'
:
env
.
env
.
stats
.
fqdn
,
}
custom
=
customize_settings_from_tmpl
(
tmpl
,
replace
)
try_put
(
custom
,
tmpl
,
mode
=
0644
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment