This is an archinux build based on base/archlinux built with CoreOS in mind, and configured for instrumentation.
Additions
- runit - v2.1.2 (statically linked against musl)
- collectd - v5.4.1-3 (from archlinux)
- confd - v0.6.2
- logstash-forwarder
Docker Runtime Requirements
- Environment Variables:
- ETCD_URL - The full URL confd should use to reach etcd
- etcd keys (used via confd):
- collectd:
- /services/collectd/interval - The interval at which to collect metrics
- /services/collectd/user - The collectd encryption username
- /services/collectd/password - The collectd encryption password
- /services/collectd/servers/* - Arbitrary keys mapped to "HOST:PORT"
- logstash-forwarder:
- /services/logstash/timeout - The logstash-forwarder timeout
- /services/logstash/files/* - A series of directories with 2 keys - "paths" and "fields"
- /services/logstash/files/$x/paths - A JSON array of paths
- /services/logstash/files/$x/fields - A JSON hash of fields
- /services/logstash/servers/* - Arbitrary keys mapped to "HOST:PORT"
#Configuration Details
- runit
- all services, active or otherwise, are stored in /etc/service
- active services are symlinks from /etc/service/$svc to /var/service/$svc
- logs stored in /var/log/runit/$svc
- a helper, /usr/local/bin/rsvlogd, is provided that can serve as a drop-in replacement for runit log scripts
- collectd
- connects and authenticates to confd-specified server(s)
- files
- /etc/collectd.conf
- /etc/confd/conf.d/collectd.toml
- /etc/confd/templates/collectd.conf.tmpl
- confd
- logstash-forwarder
- connects to confd-specified server(s)
- watches runit logs, as well as any confd-specified logs
- files
- /etc/logstash-forwarder.conf
- /etc/logstash-forwarder/ca.crt
- /etc/logstash-forwarder/client.crt
- /etc/logstash-forwarder/client.key
- /etc/confd/conf.d/logstash-forwarder.toml
- /etc/confd/templates/logstash-forwarder.conf.tmpl