
Avvisi Centreon con Ollama local AI
Molto bene! L'intenzione di questo post è quella di fare un mero esempio di come possiamo utilizzare l'IA nel nostro ambiente di monitoraggio, In questo primo documento ti guideremo alla ricezione degli avvisi, nel caso di Centreon. Quindi, se sei stanco delle notifiche tradizionali, L'intelligenza artificiale è arrivata per cambiarlo!
Cosa ho detto, In questo primo post vedremo come utilizzare il L'IA di Ollama in modo che trasferisca le notifiche dal nostro sistema di monitoraggio a noi in modo più amichevole, Più umano… Se vogliamo, possiamo dirle di darci raccomandazioni o consigli per agire, o che lo fa in versi… L'idea è che Centreon lo invierà tramite API a Ollama ogni volta che un host o un servizio ha un problema, creeremo un paio di script molto semplici che utilizzeremo in modo che l'avviso venga inviato a Ollama, con un testo in cui descriveremo in dettaglio ciò che vogliamo da esso e passeremo come argomenti l'Host o il Servizio che fallisce, così come il suo…
Abbiamo quindi iniziato creando quelle 2 Script, nel mio caso userò le notifiche con Telegram, Quindi, se hai intenzione di utilizzare la posta o un altro servizio, dovrai fare quella parte in modo diverso.
Creiamo lo script per le notifiche dell'host, Lo chiamiamo '/usr/lib/centreon/plugins/notifica_telegram_ia_ollama_host.sh’ Per esempio. In esso vi daremo le opportune indicazioni che riteniamo, Ti lascio il mio esempio, dovrai prendere in considerazione la modifica dell'IP di Ollama, così come l'ID chat del gruppo Telegram, il token Telegram, il modello linguistico LLM utilizzato o ad esempio la temperatura per renderlo più o meno creativo. Questo sarebbe il contenuto:
#!/bin/bash testo="Per favore, genera un testo per una notifica che verrà inviata allo smartphone dell'utente con informazioni utili. Sei un utile agente personale che genera testo per i tecnici IT. Le tue risposte possono essere tecniche, Non offrirti come aiuto, Non dare consigli. Il messaggio che devi dire riguarda un problema di tipo: "$1", Nel team "$2" dal momento che è nello stato "$3". Non dire ciao, Non dire ciao e non dire addio, Non ringraziarti nemmeno per niente. La risposta dovrebbe essere in spagnolo e il messaggio dovrebbe essere breve." texto_generado=$(/usr/bin/curl http://DIRECCION_IP_OLLAMA:11434/api/genera -H "Tipo di contenuto: Applicazione/JSON" -d '{ "modello": "lama3", "sollecito": "'"$Testo"'", "temperatura": 0.1, "Corrente": Falso, "max_length": 50 }' | jq -r '.response') texto_generado_sin_comillas='eco "$texto_generado" | sed 's/\"//g'` /usr/bin/curl -X POST -H "Tipo di contenuto: Applicazione/JSON" -d '{ "chat_id": "-XXXXXXXXXX", "Testo": "'"$texto_generado_sin_comillas"'" }' "https://api.telegram.org/botTOKEN_BOT_TELEGRAM/sendMessage"
E igualmente deberemos generar el script que usará Centreon para notificar cualquier problema en los Servicios, per questo, igualmente creamos por ejemplo este script llamado ‘/usr/lib/centreon/plugins/notifica_telegram_ia_ollama_servicio.sh’ donde si os fijáis es muy parecido, pero tiene 1 argumento más.
#!/bin/bash testo="Per favore, genera un texto para una notificación que será enviada al smartphone del usuario. Eres un agente personal que genera texto para técnicos de sistemas. Le tue risposte possono essere tecniche. Il messaggio che devi dire riguarda un problema di tipo: "$1", Nel team "$2" poiché il servizio "$3" è nello stato "$4". Non dire ciao. No te despidas. No des las gracias. La respuesta debe ser en Español. El mensaje debe ser breve, en un parrafo tu respuesta" texto_generado=$(/usr/bin/curl http://DIRECCION_IP_OLLAMA:11434/api/genera -H "Tipo di contenuto: Applicazione/JSON" -d '{ "modello": "lama3", "sollecito": "'"$Testo"'", "temperatura": 0.1, "Corrente": Falso, "max_length": 50 }' | jq -r '.response') texto_generado_sin_comillas='eco "$texto_generado" | sed 's/\"//g'` /usr/bin/curl -X POST -H "Tipo di contenuto: Applicazione/JSON" -d '{ "chat_id": "-ID_CHAT_TELEGRAM", "Testo": "'"$texto_generado_sin_comillas"'" }' "https://api.telegram.org/botTOKEN_TELEGRAM/sendMessage"
Dopo di che, Ricordati di renderli eseguibili (con chmod +d) e la prossima cosa sarebbe quella di creare i comandi del tipo di notifica in Centreon, Stiamo per “Configurazione” > “Comandi” > “Notifiche” e ne abbiamo creati un paio, uno per segnalare problemi con gli Host e uno per i Servizi, ognuno con la propria riga di comando:
- /usr/lib/centreon/plugins/notifica_telegram_ia_ollama_host.sh '$HOSTSTATE$’ \ '$HOSTNAME$’ \ '$HOSTOUTPUT$’
- /usr/lib/centreon/plugins/notifica_telegram_ia_ollama_servicio.sh '$SERVICESTATE$’ \ '$HOSTNAME$’ \ '$SERVICEDESC$’ \ '$SERVICEOUTPUT$’
E una volta creati i Comandi di Notifica, verranno associati a un Utente o a un Gruppo, quindi seleziona l'utente o il gruppo che hai associato ai tuoi Host e Servizi e ti indichiamo i Comandi appena creati in 'Comandi di Notifica Host’ e su 'Comandi di notifica del servizio'.
Registriamo ed esportiamo, Nel caso in cui sia necessario, E questo è tutto!
E niente, Ora ogni volta che hai un avviso nel tuo datacenter sarà diverso, curioso quanto vosotr@s voglia che sia, Corto, Lungo, con opzioni di risoluzione, in basco, In Swahili…
Spero che tu l'abbia trovato curioso e niente, Come ho detto, Come sempre tutto va alla grande!
Un abbraccio!