instance-kumofs.cfg.in 4.09 KB
Newer Older
1 2 3 4 5 6 7 8
[buildout]
parts =
  publish-kumofs-connection-information
  kumofs-instance
  logrotate
  logrotate-entry-kumofs
  cron
  cron-entry-logrotate
9 10 11 12
  promise-kumofs-server
  promise-kumofs-server-listen
  promise-kumofs-gateway
  promise-kumofs-manager
13 14 15 16 17 18

eggs-directory = {{ eggs_directory }}
develop-eggs-directory = {{ develop_eggs_directory }}
offline = true

[publish-kumofs-connection-information]
19
recipe = slapos.cookbook:publishurl
20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
url = memcached://${kumofs-instance:ip}:${kumofs-instance:gateway-port}/

[kumofs-instance]
recipe = slapos.cookbook:generic.kumofs

# Network options
ip = ${slap-network-information:local-ipv4}
manager-port = 13101
server-port = 13201
server-listen-port = 13202
gateway-port = 13301

# Paths: Running wrappers
gateway-wrapper = ${basedirectory:services}/kumofs_gateway
manager-wrapper = ${basedirectory:services}/kumofs_manager
server-wrapper = ${basedirectory:services}/kumofs_server

37 38
# Paths: Data (with 10M buckets and HDBTLARGE option)
data-path = ${directory:kumofs-data}/kumodb.tch#bnum=10485760#opts=l
39 40 41 42 43 44 45

# Paths: Logs
kumo-gateway-log = ${basedirectory:log}/kumo-gateway.log
kumo-manager-log = ${basedirectory:log}/kumo-manager.log
kumo-server-log = ${basedirectory:log}/kumo-server.log

# Binary information
46 47 48 49
kumo-gateway-binary = {{ kumo_location }}/bin/kumo-gateway
kumo-manager-binary = {{ kumo_location }}/bin/kumo-manager
kumo-server-binary = {{ kumo_location }}/bin/kumo-server
shell-path = {{ dash_location }}/bin/dash
50 51 52 53 54 55 56 57 58 59 60 61 62

[logrotate-entry-kumofs]
<= logrotate
recipe = slapos.cookbook:logrotate.d
name = kumofs
log = ${kumofs-instance:kumo-gateway-log} ${kumofs-instance:kumo-manager-log}
  ${kumofs-instance:kumo-server-log}

# rest of parts are candidates for some generic stuff

[logrotate]
recipe = slapos.cookbook:logrotate
# Binaries
63 64 65
logrotate-binary = {{ logrotate_location }}/usr/sbin/logrotate
gzip-binary = {{ gzip_location }}/bin/gzip
gunzip-binary = {{ gzip_location }}/bin/gunzip
66 67 68 69 70 71 72 73 74 75 76
# Directories
wrapper = ${rootdirectory:bin}/logrotate
conf = ${rootdirectory:etc}/logrotate.conf
logrotate-entries = ${directory:logrotate-entries}
backup = ${directory:logrotate-backup}
state-file = ${rootdirectory:srv}/logrotate.status

[basedirectory]
recipe = slapos.cookbook:mkdirectory
log = ${rootdirectory:var}/log
services = ${rootdirectory:etc}/run
77
promise = ${rootdirectory:etc}/promise
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
run = ${rootdirectory:var}/run
backup = ${rootdirectory:srv}/backup

[directory]
recipe = slapos.cookbook:mkdirectory
cron-entries = ${rootdirectory:etc}/cron.d
crontabs = ${rootdirectory:etc}/crontabs
cronstamps = ${rootdirectory:etc}/cronstamps
logrotate-backup = ${basedirectory:backup}/logrotate
logrotate-entries = ${rootdirectory:etc}/logrotate.d
kumofs-data = ${rootdirectory:srv}/kumofs

[rootdirectory]
recipe = slapos.cookbook:mkdirectory
etc = ${buildout:directory}/etc
var = ${buildout:directory}/var
srv = ${buildout:directory}/srv
bin = ${buildout:directory}/bin

[cron]
recipe = slapos.cookbook:cron
99
dcrond-binary = {{ dcron_location }}/sbin/crond
100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116
cron-entries = ${directory:cron-entries}
crontabs = ${directory:crontabs}
cronstamps = ${directory:cronstamps}
catcher = ${cron-simplelogger:wrapper}
binary = ${basedirectory:services}/crond

[cron-simplelogger]
recipe = slapos.cookbook:simplelogger
wrapper = ${rootdirectory:bin}/cron_simplelogger
log = ${basedirectory:log}/cron.log

[cron-entry-logrotate]
<= cron
recipe = slapos.cookbook:cron.d
name = logrotate
frequency = 0 0 * * *
command = ${logrotate:wrapper}
117 118 119 120 121 122 123 124 125

# Deploy zope promises scripts
[promise-template]
recipe = slapos.cookbook:check_port_listening
hostname = ${kumofs-instance:ip}
port = ${kumofs-instance:server-listen-port}

[promise-kumofs-server]
<= promise-template
126
path = ${basedirectory:promise}/kumofs-server
127 128 129 130
port = ${kumofs-instance:server-port}

[promise-kumofs-server-listen]
<= promise-template
131
path = ${basedirectory:promise}/kumofs-server-listen
132 133 134 135
port = ${kumofs-instance:server-listen-port}

[promise-kumofs-gateway]
<= promise-template
136
path = ${basedirectory:promise}/kumofs-gateway
137 138 139 140
port = ${kumofs-instance:gateway-port}

[promise-kumofs-manager]
<= promise-template
141
path = ${basedirectory:promise}/kumofs-manager
142
port = ${kumofs-instance:manager-port}