Pour groups
host_groups = zapi.group.get({
"output": "extend"
})
# Ensure the response is a list
if isinstance(host_groups, list):
for group in host_groups:
print(f"Group ID: {group['groupid']}, Name: {group['name']}")
else:
print("Unexpected response format:", host_groups)
Pour templates
templates = zapi.template.get({
"output": "extend"
})
# Verify if the response is a list and iterate through it
if isinstance(templates, list):
for template in templates:
print(f"Template ID: {template['templateid']}, Name: {template['name']}")
else:
print("Unexpected response format:", template)
Nous prenons en entrer un CSV
NOM_DNS,IP;NOM_DNS,IP...
En python nous créons une liste avec le CSV (le script est fais pour les CSV en ligne unique).
Cette version est donc plus légère, elle permet de produire moins de bug et de simplifier la chose au final. Même si nous devons le faire en plusieurs étapes. La chose est plus ergonomique et rapide.
Voici les étapes qu'il faut suivre :
- Désinstallation des agents possiblement présent avec
choco uninstall zabbix-agent2 -y --removedependencies
avec choco - Installation de Zabbix + smart (+ changement de fichier de conf) avec choco
- Ajout des postes sur Zabbix (en ajoutant la clé PSK en sélection collective)
- Vérification après 20 min des bonnes remonté.
Les deux premières étapes sont sur votre post qui contrôle choco (à définir par GPO) Ensuite le script python qui envoie par API vers le Zabbix les nouveaux hosts Et enfin une vérification (agent en vert, informations cohérentes...)
Les scritps sont en powershell en utilisant chocolatey