Saltstack troubleshooting: Difference between revisions
m (Will moved page Saltstack debugging to Saltstack troubleshooting without leaving a redirect) |
(→pip) |
||
Line 31: | Line 31: | ||
Verify using logs: <code>/var/log/salt/minion</code> | Verify using logs: <code>/var/log/salt/minion</code> | ||
Sample Resolutions | |||
=== Archlinux === | === Archlinux, Package Downgrade === | ||
<blockquote> | <blockquote> | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
Line 61: | Line 61: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</blockquote><!-- Archlinux --> | </blockquote><!-- Archlinux --> | ||
=== Archlinux, Deps === | |||
<blockquote> | |||
<code>pkg_resources</code>, required by <code>pip.installed</code>, now requires <code>psutil</code>. | |||
<syntaxhighlight lang="bash"> | |||
pacman -S python-psutil | |||
</syntaxhighlight> | |||
</blockquote><!-- Archlinux, Deps --> | |||
</blockquote><!-- pip --> | </blockquote><!-- pip --> | ||
</blockquote><!-- Salt Modules won't Execute --> | </blockquote><!-- Salt Modules won't Execute --> |
Revision as of 03:52, 4 March 2023
Invalid Jinja
Check the minion's
/var/log/salt/minion
to get the full python stacktrace.
Salt Modules won't Execute
Here there be dragons.
If you're lucky, the salt modules documentation will stipulate a requirement. For example, see the note on salt.modules.gpg.
In most cases, a problem can be pinned down by reading stacktraces in/var/log/salt/minion
.Here are some modules that I bang my head against frequently.
gpg
- install gpg
- install python-gpg to saltstack's python interpreter
pip
Most of my problems here come from:
- salt using the global python installation rather than a virtualenv
- my package manager installing a newer package than salt supports.
Unfortunately this is a moving target, and pinning packages becomes a bit of a headache.
(I did try salt in a virtualenv, but gave after hours debugging issues with salt's protocol decoding)Verify using logs:
/var/log/salt/minion
Sample Resolutions
Archlinux, Package Downgrade
# uninstall pkg while still required by salt pacman -Rsd --nodeps python-pyzmq # find/download old version of package xdg-open https://archive.archlinux.org/packages # install old package pacman -U ~/Downloads/python-pyzmq-19.0.1-4-x86_64.pkg.tar.zst # pin the package version so it doesn't get updated # /etc/pacman.conf IgnorePkg = python-pyzmqIf that doesn't work, confirm that the same python install is being used.
You may need to downgrade saltstack, or pip install ${PKG} into saltstack's python interpreter.find /usr/lib -type d -name '*zmq*' find /usr/lib -type d -name '*salt*'/usr/bin/python -m pip install 'pyzmq<=20.0.0'Archlinux, Deps
pkg_resources
, required bypip.installed
, now requirespsutil
.pacman -S python-psutil