Search code examples
salt-project

How can I use saltstack modules without a master?


I run a master minion configuration in production but am looking at a master-less configuration.

I can run salt-call --local state.highstate correctly on an isolated machine, but is it possible to utilise CLI modules like this?

http://docs.saltstack.com/en/latest/ref/modules/all/salt.modules.mysql.html

Edit:

Heres some debug and log info:

root@database-primary:~# salt-call --local mysql.db_exists '##########' -l debug
[DEBUG   ] Reading configuration from /etc/salt/minion
[DEBUG   ] Using cached minion ID from /etc/salt/minion_id: database-primary
[DEBUG   ] Configuration file path: /etc/salt/minion
[DEBUG   ] Reading configuration from /etc/salt/minion
[DEBUG   ] Please install 'virt-what' to improve results of the 'virtual' grain.
[DEBUG   ] LazyLoaded jinja.render
[DEBUG   ] LazyLoaded yaml.render
[DEBUG   ] LazyLoaded jinja.render
[DEBUG   ] LazyLoaded yaml.render
[DEBUG   ] Could not LazyLoad mysql.db_exists
'mysql'' __virtual__ returned False
root@database-primary:~# tail -100 /var/log/salt/minion 
2015-03-22 13:32:52,834 [salt.config      ][DEBUG   ][7319] Reading configuration from /etc/salt/minion
2015-03-22 13:32:52,965 [salt.loaded.int.grains.core][DEBUG   ][7319] Please install 'virt-what' to improve results of the 'virtual' grain.
2015-03-22 13:32:52,990 [salt.utils.lazy  ][DEBUG   ][7319] LazyLoaded jinja.render
2015-03-22 13:32:52,992 [salt.utils.lazy  ][DEBUG   ][7319] LazyLoaded yaml.render
2015-03-22 13:32:52,999 [salt.utils.lazy  ][DEBUG   ][7319] LazyLoaded jinja.render
2015-03-22 13:32:53,000 [salt.utils.lazy  ][DEBUG   ][7319] LazyLoaded yaml.render
2015-03-22 13:32:54,121 [salt.utils.lazy  ][DEBUG   ][7319] Could not LazyLoad mysql.db_exists

Solution

  • Yes, you can run all the execution modules without a master. The problem you're running into is it looks like you don't have the required MySQL python modules installed.

    Make sure you've installed the python MySQLdb module.