Automated update system for CheckMK master and satellite servers with version detection, Ansible orchestration, and automatic cleanup.
| ansible | ||
| bin | ||
| .gitignore | ||
| install.sh | ||
| LICENSE | ||
| README.md | ||
CheckMK Auto-Upgrade
Automatisches Update-System für CheckMK-Server und Satelliten.
Features
- Automatische Erkennung der neuesten CheckMK-Version
- Update des lokalen CheckMK-Servers
- Automatisches Update aller Satelliten via Ansible
- Bereinigung alter Versionen
- System-Updates mit automatischem Reboot bei Bedarf
- Automatische Erkennung der ersten CheckMK-Site
Installation
cd /opt
git clone https://git.risse-it.de/public-releases/auto-upgrade-checkmk-with-satellites.git checkmk-auto-upgrade
cd checkmk-auto-upgrade
chmod +x install.sh
./install.sh
Konfiguration
- Inventory anpassen:
nano /opt/checkmk-auto-upgrade/ansible/inventory.ini
- Satelliten-IPs/Hostnamen eintragen:
[remote_host]
172.16.1.2 ansible_user=root
172.16.1.3 ansible_user=root
satellite1.example.com ansible_user=root
- Optional: Site-Name festlegen (falls mehrere Sites vorhanden):
nano /opt/checkmk-auto-upgrade/ansible/group_vars/all.yml
# Wenn nicht gesetzt, wird automatisch die erste Site verwendet
cmk_site_name: "Monitor"
Verwendung
Lokalen Server updaten
# Neueste Version automatisch
update-local-cmk
# Spezifische Version
update-local-cmk 2.4.0p14
Alle Satelliten updaten
update-all-satellites
Manuell mit Ansible
cd /opt/checkmk-auto-upgrade/ansible
ansible-playbook -i inventory.ini playbooks/cmk-update.yml
Voraussetzungen
- Ubuntu/Debian
- CheckMK Raw Edition 2.4
- Ansible (für Satelliten-Updates)
- SSH-Zugriff zu allen Satelliten
- Root-Rechte
📞 Support
- Documentation: README
📄 License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
GPL v3 Summary
- ✅ Freedom to use - Use the software for any purpose
- ✅ Freedom to study - Examine and modify the source code
- ✅ Freedom to share - Redistribute copies
- ✅ Freedom to improve - Distribute modified versions
- ⚠️ Copyleft - Derivative works must also be GPL v3 licensed
- ⚠️ Source disclosure - Modified versions must include source code
For commercial use or integration into proprietary software, please contact the maintainer.
🏆 Acknowledgments
- Bashclub Team: For the excellent community
- CheckMK Community: For monitoring infrastructure
- Contributors: All community contributors and testers