Having a couple of issues running two (2) redis instances on Ubuntu 12.04. I'm installing redis-server from a custom PPA (chris-lea/redis-server) and all is going well on that front. From there:
1. I disable the default redis-server via service.dead and enable: False - this doesn't appear to work (redis-server is still running)
2. I pull in the upstart (to /etc/init.d/redis-*) and conf (to /etc/redis/redis-*) files for the two instances (redis-sessions and redis-ratelimit)
3. I run state.highstate
4. Salt (via -l debug) believes these are running as for some reason the default redis-server instance is still running. I believe it's getting 'confused' as it's looking for the redis-server process via ps, and because this doesn't delineate between the redis-sessions and redis-ratelimit instances (the process is called redis-server), it just continues on. If there was a way (without using cmd.run, but I'll use it if I need to?) get the output of upstart (via service <name> status) instead, it'd be much better.
Is there a way to spin up two Redis instances on Ubuntu without leaning on cmd.*?
redis-ppa:
pkgrepo.managed:
- ppa: chris-lea/redis-server
# redis server
redis-server:
pkg:
- installed
- require:
- pkgrepo.managed: redis-ppa
# remove the default redis aservice
service:
- dead
- enable: False
# redis server #1 (session store) upstart
/etc/init.d/redis-sessions:
file.managed:
- source: salt://files/redis-sessions.upstart
- mode: 655
- user: root
- group: root
- require:
- pkg: redis-server
- file.directory: /var/lib/redis-sessions
service:
- name: redis-sessions
- running
- enable: True
- require:
- pkg: redis-server
- file.directory: /var/log/redis
- file.directory: /var/run/redis
- service.dead: redis-server
# redis server #1 (session store) config
/etc/redis/redis-sessions.conf:
file.managed:
- source: salt://files/redis-sessions.conf
- mode: 644
- user: redis
- group: redis
- require:
- pkg: redis-server
- file.directory: /var/lib/redis-sessions
# redis server #1 (session store) working dir
/var/lib/redis-sessions:
file.directory:
- user: redis
- group: redis
- mode: 755
- require:
- pkg: redis-server
# redis server #2 (rate-limiting) upstart
/etc/init.d/redis-ratelimit:
file.managed:
- source: salt://files/redis-ratelimit.upstart
- mode: 655
- user: root
- group: root
- requires:
- pkg: redis-server
- file.directory: /var/lib/redis-ratelimit
service:
- name: redis-ratelimit
- running
- enable: True
- require:
- pkg: redis-server
- file.directory: /var/log/redis
- file.directory: /var/run/redis
- service.dead: redis-server
# redis server #2 (rate-limiting) config
/etc/redis/redis-ratelimit.conf:
file.managed:
- source: salt://files/redis-ratelimit.conf
- mode: 644
- user: redis
- group: redis
- requires:
- pkg: redis-server
- file.directory: /var/lib/redis-ratelimit
# redis server #2 (rate-limiting) working dir
/var/lib/redis-ratelimit:
file.directory:
- user: redis
- group: redis
- mode: 755
- require:
- pkg: redis-server
# redis log dir
/var/log/redis:
file.directory:
- user: redis
- group: redis
- mode: '3755'
- require:
- pkg: redis-server
# redis pid dir
/var/run/redis:
file.directory:
- user: redis
- group: redis
- mode: '3755'
- require:
- pkg: redis-server