IMPORTANT: Per accedir als fitxer de subversion: http://acacha.org/svn (sense password). Poc a poc s'aniran migrant els enllaços. Encara però funciona el subversion de la farga però no se sap fins quan... (usuari: prova i la paraula de pas 123456)
Cacti
http://cactiusers.org/
| Curs: | SeguretatXarxesInformàtiques, LinuxAdministracioAvancada, DissenyXarxesLinux |
| Fitxers: | EinesMonitoritzacio.pdf (EinesMonitoritzacio.odp) |
| Repositori SVN: | https://anonymous@svn.projectes.lafarga.cat/svn/iceupc/SeguretatXarxesInformàtiques |
| Usuari: | anonymous |
| Paraula de pas: | sense paraula de pas |
| Autors: | Sergi Tur Badenas |
Requeriments
Cacti depèn de:
Preinstal·lació
NOTA: Potser preferiu directament instal·lar un servidor LAMP amb tasksel: $ sudo tasksel install lamp-server
Cacti necessita d'un servidor de base de dades. Podem instal·lar mysql o postgresql:
$ sudo apt-get install mysql-server-5.0
En paquets força nous (p.ex. en Ubuntu Gutsy) a l'instal·lar ens pregunta per la contrasenya de l'usuari root:
Com funciona?
Cacti cumpleix tres tasques:
- Data Retrieval: Cal definir com s'obtenen les dades a monitoritzar
- Data Storage: Cal definir com s'emmagatzemen les dades a monitoritzar.
- Cacti utilitza RRDTool per emmagatzemar les dades.
- Data Presentation: Cal definir com es presenten les dades a monitoritzar.
- També s'utilitza RRDTool.
Glossari de termes
La majoria de terminologia de Cacti està relacionada amb la terminologia de l'eina RRDTool. Vegeu també Com funciona RRDTool?
- Data Input Methods: Consulteu. http://www.cacti.net/downloads/docs/html/data_input_methods.html#NEW_DATA_INPUT_METHOD
- Data Sources:
- RRAs: Arxius Round Robin o Round Robin Archives. A cacti es defineixen els següents RRA per defecte:
- Data Queries: A diferència dels data sources, normalment les data queries no s'utilitzen per obtenir fonts de dades de forma directa si nó de forma indirecta. Un exemple de la data query més comuna és la que obté la llista de interfícies de xarxa d'un dispositiu (els noms). Amb aquestes dades no moonitoritzem res directament però si que poden ser útils per després monitoritzar el trànsit de cada una de les interfícies de xarxa. Normalment tenen associades Plantilles de gràfiques (Graph Templates). Vegeu http://www.cacti.net/downloads/docs/html/data_queries.html
- Templates. Consulteu http://www.cacti.net/downloads/docs/html/templates.html.
- Data Templates
- Graph Templates:
- Host Templates:
- Import Templates:
- Export Templates:
Conceptes i interpretació de gràfiques
- Percentil: Un valor força utilitzat per mesurar amples de banda i per a ISPs és el percentil 95th. El valor del percentil 95th ens indica que el 95% del temps l'ús de l'ampla de banda està per sota del percentil, o dit d'una altra manera que només el 5% del temps el çus de l'ampla de banda està per sobre del percentil.
Exemples de gràfiques
Línia d'alta capacitat cap a Internet:
Cal tenir en compte:
- Els valors estan donats en bps (bits per segon)
- Es mostren les gràfiques per a 4 periodes diferents:
- Diari: es basa en
- Setmanal
- Mensual
- Anual
- Les gràfiques són "digitals" i no analògiques. Si s'amplien el suficient veureu que es fan a partir de valors concrets mesurats cada x temps i a partir dels quals es crea la sensació d'una gràfica continua.
- La "resol·lució" de les gràfiques és sempre la mateixa. Es tracta de bases de dades circulars Round Robin que sempre ocupen el mateix espai, és a dir sempre es guarden el mateix nombre màxim de dades per gràfica
- Observeu com s'afegit un valor estadístic per a cada gràfica. El percentil 95th. Ens dona el valor llindar (a l'exemple en mbps) que ens indica que l 95% de les mesures obtingudes d'ús de l'ampla de banda han estat per sota d'aquell valor. Podem dir per tant amb molt de marge que si el percentil és 80mbps la gran majoria del temps s'està consumint menys d'aquest ampla de banda.
- S'utilitza RRDTool
Instal·lació
NOTA: La versió instal·lada a 11.10 és la 0.8.7
Per instal·lar cacti heu d'executar:
$ sudo apt-get install cacti
Durant la instal·lació ens faran una sèrie de preguntes per configurar Cacti:
- Primer la versió de base de dades:
- Després ens farà les preguntes necessàries per configurar la base de dades:
Ens pregunta la contrasenya de l'usuari root de Mysql (normalment és sense contrasenya)... Ho podeu comprovar abans intentant entrar a mysql com a root:
$ sudo mysql
NOTA: La paraula de pas de cacti per accedir a la base de dades es guardarà a un fitxer de configuració. No utilitzeu cap paraula de pas important ja que serà visible. Podeu utilitzar mkpasswd per generar una paraula de pas aleatòria i segura ja que no calda recordar-la
Si no demana contrasenya i accedim, aleshores la contrasenya és buida.
Confirmem...
Si cometeu algun error podreu tornar a intentar la configuració amb:
En qualsevol moment podeu abortar i més tard tornar a configurar Cacti executant:
$ sudo dpkg-reconfigure cacti
Fitxers instal·lats
Durant la instal·lació s'instal·len dependències com snmp o llibreries d'accés a base de dades:
$ sudo apt-get install cacti ... S'instal·laran els següents paquets extres: libphp-adodb php5-snmp snmp ...
Els fitxers de configuració són:
$ dpkg -L cacti | grep etc /etc /etc/cacti /etc/logrotate.d /etc/logrotate.d/cacti /etc/cron.d /etc/cron.d/cacti
Com podem veure Cacti utilitza cron:
$ cat /etc/cron.d/cacti MAILTO=root */5 * * * * www-data php /usr/share/cacti/site/poller.php >/dev/null 2>/var/log/cacti/poller-error.log
Cada 5 minuts s'executa poller.php
També podeu consultar la documentació que trobareu a /usr/share/doc/cacti:
$ dpkg -L cacti | grep doc ... /usr/share/doc/cacti ...
Per accedir a Cacti, obrim Firefox i accedim a la URL:
http://localhost/cacti
Al següent apartat s'expliquen les passes que es segueixen durant la primera execució.
Un cop hàgiu instal·lat/configurat Cacti l'usuari per accedir per primer cop és:
- Usuari: admin
- Paraula de pas: admin
IMPORTANT: Cacti us forçarà a escollir una paraula de pas nova per a l'administrador.
Accés a Cacti
Per accedir a Cacti, obrim Firefox i accedim a la URL:
http://localhost/cacti
Al següent apartat s'expliquen les passes que es segueixen durant la primera execució.
Un cop hàgiu instal·lat/configurat Cacti l'usuari per accedir per primer cop és:
- Usuari: admin
- Paraula de pas: admin
IMPORTANT: Cacti us forçarà a escollir una paraula de pas nova per a l'administrador.
Configuració durant la primera execució
A l'iniciar per primer cop Cacti s'iniciarà un assistent per configurar-lo:
Cacti suporta fer instal·lacions noves o actualitzacions:
La següent pàgina comprova que tenim instal·lades totes les aplicacions necessàries (RDDTool i SNMP...)
Instal·lació manual
De la web:
http://www.cacti.net/downloads/
El primer que cal fer és dedicir una carpeta on fer la instal·lació. En el nostre cas:
$ cd /usr/share
Ara baixeu la última versió, actualment (--acacha 17:07, 23 maig 2012 (UTC)):
$ sudo wget http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz
i descomprimiu:
$ sudo tar xzvf cacti-0.8.8a.tar.gz
I establiu els permisos:
$ cd cacti-0.8.8a $ sudo chown root:root -R . $ sudo chmod 770 rra $ sudo chown www-data rra $ sudo chown www-data:www-data log
Abans de res cal crear la base de dades mysql:
$ mysqladmin --user=root -p create cacti
La paraula de pas que demana és la de l'usuari root de Mysql. Aquesta paraula de pas l'ha heu escollit durant la instal·lació de mysql. Sinó la sabeu executeu:
$ sudo dpkg-reconfigure mysql-server
Ara importeu la base de dades inicial:
$ sudo mysql -p cacti < cacti.sql
Ara entrem a la base de dades de gestió de MySQL (base de dades amb nom mysql):
$ mysql --user=root -p mysql Enter password: Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 39 Server version: 5.5.22-0ubuntu1 (Ubuntu) Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>
I creeu un usuari amb permisos per a la base de dades creada:
mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'somepassword'; mysql> flush privileges;
On a somepassword heu de posar la vostra paraula de pas. La podeu crear amb mkpasswd.
Ara cal editar el fitxer de configuració de Cacti:
$ sudo joe /usr/share/cacti-0.8.8a/include/config.php
I poseu les dades de la connexió a la base de dades MySQL:
$database_type = "mysql"; $database_default = "cacti"; $database_hostname = "localhost"; $database_username = "cactiuser"; $database_password = "somepassword";
Ara configurem Apache2. Creeu un fitxer:
$ sudo joe /etc/apache2/conf.d/cacti.conf Alias /cacti /usr/share/cacti-0.8.8a <Directory /usr/share/cacti-0.8.8a> Options +FollowSymLinks AllowOverride None order allow,deny allow from all AddType application/x-httpd-php .php <IfModule mod_php5.c> php_flag magic_quotes_gpc Off php_flag short_open_tag On php_flag register_globals Off php_flag register_argc_argv On php_flag track_vars On # this setting is necessary for some locales php_value mbstring.func_overload 0 php_value include_path . </IfModule> DirectoryIndex index.php </Directory>
Apliqueu els canvis a Apache:
$ sudo /etc/init.d/apache2 restart
Abans de res cal configurar també cron:
$ sudo joe /etc/cron.d/cacti MAILTO=root */5 * * * * www-data php /usr/share/cacti/poller.php >/dev/null 2>/var/log/cacti/poller-error.log
Observeu que cal tenir les carpetes:
/usr/share/cacti /var/log/cacti/
Feu el següent:
$ sudo ln -s /usr/share/cacti-0.8.8a /usr/share/cacti $ sudo mkdir /var/log/cacti $ sudo chown www-data:www-data /var/log/cacti
Finalment configureu logrotate:
$ sudo joe /etc/logrotate.d/cacti cat /var/log/cacti/*.log { weekly missingok rotate 52 compress notifempty create 640 www-data www-data sharedscripts }
Ara aneu a la web:
http://lavostraip/cacti
i seguiu l'instal·lador. Quan arribeu a les dependències, cal que instal·leu:
$ sudo apt-get install rrdtool snmp
Ja està. Ara per entrar l'usuari i paraules de pas per defecte són:
admin admin
IMPORTANT: Us demanarà que canvieu la paraula de pas! No és pas un error el missatge que surt!
Configuració
Cacti Reconfigure. dpkg-reconfigure
$ sudo dpkg-reconfigure cacti
Al reconfigurar podem decidir si volem tornar a crear la base de dades:
La connexió a base de dades pot ser per sòcol Unix (màquina local) o TCP/IP (base de dades remota)
L'usuari de base de dades:
Escollim un nom per l'usuari de bases de dades:
I un nom de la base de dades:
Podeu consultar la base de dades amb eines amb PhpMyAdmin.
Manual
Secció Console
Create
New Graphs
- Per crear un nou host tenim que donar-li a l'opcio: Create New Host
- un cop entrem tenim que rellenar les opcions:
- un cop guardem els canvis ens apareix la seguent informacio:
- per crear una nova grafica dintre del host que acabem de crear tenim que donar-li a l'opcio: Create Graphs for this Host
- un cop estem a la finestra de la imatge anterior, activem els checkbocks que ens interese que faci la grafica i donar-li a create:
- si li donem a data source list ens apareix un resum de les grafiques que tenim i ens mostra si estan activades o no:
Management
Mostra totes les gràfiques que tenim creades.
Tenim un submenu en la part dreta (baix), i podem realitzar diferents accions (esborrar les gràfiques seleccionades, editar-les, ...).
Graph Management
Podem gestionar els gràfics que tenim creats.
Podem triar un gràfic de la llista de gràfics que tenim creats, i surt un menú a la part esquerra de la pantalla amb diferents opcions:
- CDEFs: Permet aplicar funcions matemàtiques per representar gràficament les dades i així poder modificar la intensitat. També podem afegir noves funcions, esborrar les que tenim, editar-les, ...
- Colors: Modifiquem els colors que surten a les gràfiques, afegim, editem, etc.
- GPRINT Presets:Permet imprimir els valors de les fonts de dades en un gràfic. Es solen utilitzar per representar els valors de la llegenda en el gràfic. El formt de sortida d'aquests números es controlen mitjançant un format de printf com cadena.
Graph Trees
Organitza, en una estructura jeràrquica, tots els gràfics.
Cada arbre pot contenir altres gràfics, i aquests arbres es poden combinar en un sol arbre.
Data Sources
RRAs
Devices
Collection Methods
Data Queries
Data Input Methods
Templates
- Una plantilla o template, en cacti, és un conjunt de gràfiques que monitoritzen un OID en concret. Les plantilles es poden crear depenent del que es vulgui monitoritzar, veure snmpwalk.
Graph Templates
- En aquest apartat podem trobar totes les plantilles que hi ha creades al sistema. Es poden importar de manera senzilla, per exemple, si es vol monitoritzar la temperatura d'un determinat ordinador o a quina velocitat van els ventiladors dels diferents ordinador. Podem seguir el següent article.
Host Templates
- També hi han plantilles per als diferents dispositius de xarxa, ja que a l'hora de crear un dispositiu ens demana associar-lo a algun tipus de host.
Data Templates
- En aquesta pàgina podem veure i modificar de manera molt senzilla les diferents característiques que volem monitoritzar, es a dir, la CPU, la memòria RAM, la targeta de xarxa, etc.
Import/Export
Import Templates
Export Templates
Configuration
Settings
Authentication
Existeixen 4 opcions per a l'autenticació d'usuaris:
- None: - No authentication will be used, all users will have full access.
- Builtin Authentication: Cacti handles user authentication, which allows you to create users and give them rights to different areas within Cacti.
- Web Basic Authentication: Authentication is handled by the web server. Users can be added or created automatically on first login if the Template User is defined, otherwise the defined guest permissions will be used.
- LDAP Authentication: Allows for authentication against a LDAP server. Users will be created automatically on first login if the Template User is defined, otherwise the defined guest permissions will be used. If PHP's LDAP module is not enabled, LDAP Authentication will not appear as a selectable option.
Utilities
System Utilities
En aquest apartat hi ha varis enllaços el primer es el de Technical Support es un apartat on mostra informació del cacti.
També podem trovar Log Administration on podem veure els logs tan del cacti com del usuari. Es pot veure les connecions del usuari i tot el que fa el cacti.
Poller Cache Administration
User Management
Authentication Realms:
- Local: Els usuaris es gestionen a la base de dades interna de Cacti
- Ldap: Els usuaris es troben en una base de dades Ldap que pot estar al mateix servidor o a un servidor remot
- Web based: ???
Logout User
Secció Graphs
Documentació
La trobareu a:
/usr/share/doc/cacti/
Teniu la documentació (Manual de Cacti) accessible via web:
$ firefox /usr/share/doc/cacti/html/index.html
Web
FAQ
Exemples
Ubiquiti
Consulteu: AirOS#Cacti
Monitoritzar un OID SNMP
Anem a veure com podem fer una gràfica senzilla d'un valor concret, identificat per un OID, d'un dispositiu SNMP. Per això suposem que teniu la plantilla de gràfica (Graph Template):
"SNMP - Generic OID Template"
La trobareu a l'apartat Graph Templates dins l'apartat Templates. Inclosa a Cacti des de la versió 0.8.5.
NOTA: Si no teniu la plantilla a "Graph Templates", us la heu de baixar de la web de Cacti en format XML i importar-la utilitzant l'entrada de menú Import Templates
Suposem que volem monitoritzar el valor memTotal:
FROGFOOT-RESOURCES-MIB::memTotal.0 = Gauge32: 30264
D'una nanostation (vegeu Airos SNMP). El OID és:
.1.3.6.1.4.1.10002.1.1.1.1.1.0
Feu clic a New Graphs dins l'apartat Create. Seleccioneu el host que conté el OID que voleu monitoritzar. A la caixa Graph Templates feu clic al desplegable:
Create:
TODO: Captures de pantalla
Per tal d'escollir:
"SNMP - Generic OID Template"
Feu clic a create. Us apareixerà un formulari:
TODO: Captures de pantalla
On:
- (Graph) Title: Poseu un nom a la gràfica. Per exemple |host_description| - Memòria Total
- (Graph) Vertical Label: El text que apareixerà al axis y (axis vertical). Per exemple poseu Bytes
- (Graph Items) Legend Color: Escolliu un color per les dades a la gràfica.
- (Graph Items) Opacity/Alpha Channel:
- (Graph Items) Legend Text: Text a la llegenda de la dada monitoritzada
- (Data Source) Name: També podeu posar |host_description| - Memòria Total
- (Data Source) Maximum Value [snmp_oid]: El valor màxim acceptat del OID. Si és un percentatge cal posar 100.
- (Data Source) Data Source Type [snmp_oid]: Com guardarà les dades RRDTool. El nostre exemple és una GAUGE
- (Custom Data) OID: El OID. Al nostre exemple: .1.3.6.1.4.1.10002.1.1.1.1.1.0
Vegeu també:
Monitoritzar PCs amb SNMP
A la màquina que volem monitoritzar cal instal·lar snmpd:
$ sudo apt-get install snmpd
Per defecte a ubuntu 9.10 el servidor de SNMP només accepta peticions des de localhost. Per canviar-ho
$ sudo joe /etc/default/snmpd
Canvieu la línia:
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid 127.0.0.1'
per:
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -I -smux -p /var/run/snmpd.pid'
I torneu a iniciar SNMPD:
$ sudo /etc/init.d/snmpd restart
Ara cal permetre l'accés. Canvieu la línia:
com2sec paranoid default public
Per
com2sec readonly default public
Al fitxer /etc/snmp/snmpd.conf i torneu a iniciar snmpd
$ sudo /etc/init.d/snmpd restart
Comproveu l'accés amb:
$ snmpwalk -Os -c public -v 2c IP_DE_LA_MAQUINA_MONITORITZAR system
Ara a Cacti creeu un nou dispositiu. La configuració ha de ser quelcom similar a:
A Associated Data Queries podeu afegir altres tipus de querys:
- Get Mounted Partitions
- Get Processor Information
Ara aneu a "Create Graphs for this Host" i afegiu totes les gràfiques.
Recursos:
Monitoritzar impressores
http://forums.cacti.net/about12970.html http://forums.cacti.net/download/file.php?id=5316
A la web de Cacti podeu trobar múltiples plantilles. Per exemple podeu instal·lar plantilles per a impressores baixant-vos el fitxer zip:
$ wget http://forums.cacti.net/download/file.php?id=5316 $ unzip "SNMP Printer.zip" $ cd "SNMP Printer" $ ls cacti_data_query_snmp_get_printer_supply.xml cacti_data_template_host_mib_get_printer_total_pages.xml cacti_host_template_snmp_printer.xml cacti_data_template_host_mib_get_printer_supply.xml cacti_graph_template_host_mib_available_printer_supply.xml printer_supply.xml
Tots els fitxers, excepte el printer_suplly.xml són plantilles que podeu importar des de l'opció de menú:
"Import Templates"
El fitxer
printer_supply.xml
Cal posar-lo a:
<cactidir>/resource/snmp-queries/
Per exemple, a una instal·lació típica des de repositoris podeu fer:
$ sudo mv printer_supply.xml /usr/share/cacti/resource/snmp_queries
Ara si entreu a Cacti, podeu crear un nou dispositiu (Device) i tindreu un nou "host template" anomenat:
SNMP Printer
TODO:
Hi, I made two templates, one for prtMarkerLifeCount and one for prtMarkerPowerOnCount. The first get the total printed pages and the second get the counter of total printed pages from last power on, in fact, I reset this counter all nights via a cron job whit this line:
/usr/bin/snmpset <ip> <write comunity> .1.3.6.1.2.1.43.5.1.1.3.1 i 5
so, I start the daily counter all nights in the printers that never power off
sugestion are welcome
Regards, Mauricio mauricio at duran dot org dot ar
Attachments:
printersmib.zip [7.28 KiB]
Monitoritzar RouterBoard
- El primer que he fet es crear un dispositiu:
- Edito els paràmetres que tindrà el dispositiu:
- A continuació afegeixo el dispositiu a l'arbre de gràfiques disponibles:
- Li diem que a l'arrel del root:
- Tot seguit crearem la gràfica:
- Seleccionem la interfície a monitoritzar:
- A continuació podem veure la primera gràfica:
- Desprès d'estar monitoritzant el dispositiu i donant una mica de tràfic, la gràfica és la següent:
--Jordibaucells 18:29, 26 abr 2012 (UTC)
Input Methods
'Recursos:
Scripts a mida
Recursos:
Exemple. Monitoritzar el CCQ de un dispositiu Ubiquiti amb mca-status
L'script l'haurà d'executar l'usuari www-data (usuari del servidor web Apache a Ubuntu/Debian). Prepareu l'entorn:
$ cd /var/www/ $ sudo mkdir .ssh $ sudo chown www-data:www-data -R .ssh/
Ara entreu com a l'usuari www-data:
$ sudo su www-data
Passeu-vos a bash:
$ bash
Ara creeu una clau SSH:
www-data@noc:~$ ssh-keygen -t dsa
I instal·leu-la al dispositiu remot Ubiquiti:
www-data@noc:~$ ssh-copy-id -i /var/www/.ssh/id_dsa.pub root@10.36.253.98
NOTA: Cal tenir activat SSH al dispositiu remot
Comproveu que entre sense posar la paraula de pas:
www-data@noc:~$ ssh root@10.36.253.98
L'script el posarem a:
/usr/share/cacti/scripts
Amb el següent contingut:
$ cat getairosccq.sh #!/usr/bin/bash # Sergi Tur Badenas. 5 de Juliol de 2012 # Get CCQ from remote Ubiquiti device # Requirements: # - SSH has to be enabled at remote Ubiquit Device # - Script user mca-status to retrieve CCQ # - To be able to execute this script in background a direct # connection (without password) has to be possible. Use ssh-copyid. See: # http://acacha.org/mediawiki/index.php/Gesti%C3%B3_Remota._SSH,_RSYNC,_X-WINDOWS#ssh-copy-id # http://forums.cacti.net/about26478.html #$1 First Positional parameter : IP Address CCQ=$(/usr/bin/ssh root@$1 'mca-status' | /bin/grep ccq | /usr/bin/cut -d= -f 2) printf "%s" $CCQ
Amb la resta d'scripts (Perl) que proporciona per defecte Cacti.
Comproveu-lo amb:
$ sudo su www-data -c "bash getairosccq.sh 10.36.253.98"
Hosts
Vegeu HOST-RESOURCES-MIB
Sistemes Linux amb Ubuntu/Debian
Cal instal·lar el servidor snmpd. Consulteu:
I a més configurar-lo:
El més important és activar que el servidor de SNMP escolti totes les interfícies de xarxa i no només localhost:
I que vigileu que no tingueu un mode d'accés paranoic:
CPU Load
Per fer una gràfica de la càrrega de les CPU (load) cal utilitzar el MIB HOST-RESOURCES-MIB.
$ snmpwalk -c public -v 2c 192.168.0.102 .1.3.6.1.2.1.25 HOST-RESOURCES-MIB
Concretament ens interesa el OID:
.1.3.6.1.2.1.25.3.3.1.2.1 | hrProcessorLoad
Sembla ser que per defecte la càrrega de la CPU no és una dada que es mostri en servidors linux amb snmpd instal·lat de sèrie i sense cap configuració a mida.
Un exemple de host amb 4 CPUs:
Processos PC
- Primer s'ha de crear un dispositiu amb les següents característiques:
- Seguidament creem la gràfica de la següent manera:
- Afegim la gràfica a l'arrel que vulguem:
- Ara ja podem veure la gràfica inicial:
- Desprès d'un minuts i obrir alguns processos al host remot podem veure que la gràfica s'ha modificat:
lmsensors
Vegeu també lmsensors i SNMP i lmsensors.
LACP
Hi ha unes plantilles a:
http://geekomatic.ch/2012/07/31/1343737800000.html
IMPORTANT: Les plantilles es baixen incorrectament i no estaran ben formatades. Cal editar-les per esborrar part del codi html:
Esborreu al inici:
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"></head><body>
Es a dir la plantilla ha de començar amb:
<cacti>
Al final també cal esborrar tot el que hi hagui després de:
</cacti>
Templates
Ubiquiti Airos
Mikrotik RouterOS
Hi ha múltiples fonts...
Al cacti del GLIR de guifi tenen aquestes plantilles.
Vegeu també:
Squid
Cal tenir activat SNMP?
Fitxers de log
Els fitxers d'error de Cacti tal com demana l'estàndard FHS té els fitxers de log a:
$ ls -la /var/log/cacti total 368 drwxr-xr-x 2 www-data www-data 4096 2010-04-18 06:41 . drwxr-xr-x 18 root root 4096 2010-04-25 05:41 .. -rw-r----- 1 www-data www-data 296117 2010-04-25 06:20 cacti.log -rw-r----- 1 www-data www-data 13519 2010-04-18 06:40 cacti.log.1.gz -rw-r----- 1 www-data www-data 13640 2010-04-11 06:25 cacti.log.2.gz -rw-r----- 1 www-data www-data 13231 2010-04-04 06:35 cacti.log.3.gz -rw-r----- 1 www-data www-data 3894 2010-03-28 06:45 cacti.log.4.gz -rw-r----- 1 www-data www-data 107 2010-04-25 06:20 poller-error.log -rw-r----- 1 www-data www-data 108 2010-04-18 06:40 poller-error.log.1.gz -rw-r--r-- 1 www-data www-data 108 2010-04-17 06:45 poller-error.log.2.gz -rw-r----- 1 www-data www-data 0 2010-03-26 07:34 rrd.log
Podeu consultar el log amb:
$ sudo tail -f /var/log/cacti/cacti.log
Podeu consultar els errors del poller a:
$ sudo tail -f /var/log/cacti/poller-error.log
CLI
Cacti permet automatitzar tasques utilitzant la línia de comandes. A la carpeta cli trobareu els scripts PHP:
add_device.php add_data_query.php add_graph_template.php add_graphs.php add_perms.php add_tree.php copy_user.php poller_graphs_reapply_names.php poller_output_empty.php poller_reindex_hosts.php rebuild_poller_cache.php
Plugins
EL que s'anomena Plugin Architecture (aka PIA) és un conjunt de canvis realitzats al codi de Cacti que permet incorporar Plugins amb funcionalitats extres a Cacti. Els canvis han estar proporcionats per Jimmy Conner (cigamit) un dels desenvolupadors principals de Cacti. Està dissenyat per ser simple i robust tot i permetre la suficient llibertat per fer gairebé qualsevol cosa amb Cacti.
Els plugins es solen instal·lar a la carpeta:
/usr/share/cacti/plugins
Instal·lació de PIA
NOTA: La millor opció per instal·lar el PIA pot ser partir d'una instal·lació manual de Cacti que incorpori PIA de sèrie. De fet aprofiteu que feu la instal·lació manual i instal·leu el següent cacti:
http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz
En versions anteriors calia aconseguir de la web:
http://www.cacti.net/downloads/
Fitxers com:
http://www.cacti.net/downloads/cacti-0.8.7i-PIA-3.1.zip
IMPORTANT: Fixeu-vos dons que no és que el PIA ja no existeixi per a versions noves de Cacti si no que ja està incorporat de sèrie.
Com a referència, es pot obtenir només la part del codi de PIA a:
http://www.cacti.net/downloads/pia/
Per exemple amb:
$ wget http://www.cacti.net/downloads/pia/cacti-plugin-0.8.7g-PA-v2.9.tar.gz
Per a la versió per a Cacti 0.8.7g
Manual
Recursos:
Ldap
$ wget http://tools.ltb-project.org/attachments/download/151/ltb-project-cacti-plugins-0.3.tar.gz $ tar xvzf ltb-project-cacti-plugins-0.3.tar.gz $ cd ltb-project-cacti-plugins-0.3 $ perl openldap_operations.pl -h localhost -D 'cn=admin' -W 'Password' bind-initiated:3929 bind-completed:3929 unbind-initiated:2511 unbind-completed:2511 search-initiated:4700 search-com ...
Recursos:
Exemples de plugins
SuperLinks (abans conegut com Links)
Cal anar a la carpeta plugins de Cacti, típicament:
$ cd /usr/share/cacti/plugins
i baixem el fitxer
$ sudo wget http://wotsit.thingy.com/haj/cacti/superlinks-0.8.zip
La última versió la podeu torbar a la web del plugin:
http://wotsit.thingy.com/haj/cacti/superlinks-plugin.html
I descomprimiu:
$ sudo apt-get install unzip $ sudo unzip superlinks-0.8.zip
Ara tindreu la carpeta:
/usr/share/cacti/plugins/superlinks
Els plugins apareixen a les noves versions de Cacti a:
http://IP/cacti/plugins.php
Aquí podreu activar el plugin.
NOTA: Abans els plugins s'activaven editant el fitxer /usr/share/cacti/include/global.php
Un cop activat tindreu un nou apartat:
http://noc.tortosa.guifi.net/cacti/plugins/superlinks/superlinks-mgmt.php
Si us dona el missatge:
You need to make sure that the tab_images/ directory is writable by the user that your webserver runs as. SuperLinks cannot create the tab graphics without this change.
Feu:
$ sudo chown www-data:root -R /usr/share/cacti/plugins/superlinks/tab_images
Tools
Weathermap
Consulteu Weathermap
Pollers
Spine
Es tracta d'un poller escrit en C més òptim que serveix per a sistemes que haguin de ser escalables (amb un alt nombre de sistemes monitortizats).
TODO:
Spine is the fast replacement for cmd.php. It is written in C to ensure ultimate performance for device polling. Expect a decrease in polling time of an order of magnitude. Polling times far less than 60 seconds for about 20,000 data sources are achievable e.g. on a dual XEON system supplied with 4 GB RAM and standard local disks.
When using Spine, don't change crontab settings! Always use poller.php with crontab! To activate Spine instead of cmd.php, please visit Settings and select the Poller tab. Select Spine and save. Now, poller.php will use Spine on all subsequent polling cycles.
While Spine is really fast, choosing the correct setup will ensure, that all processor resources are used. Required settings for Maximum Concurrent Poller Processes are 1-2 times the number of CPU cores available for Spine.
Recursos
Autenticació
Ldap
Cal tenir instal·lat el paquet php5-ldap
$ sudo apt-get install php5-ldap
I aplicar els canvis a Apache:
$ sudo /etc/init.d/apache2 reload
IMPORTANT: Sinó teiou el paquet php5-ldap no apareixerà l'opció ldap authentication
Per depurar:
$ tail -f /var/log/cacti/cacti.log | grep LDAP 06/27/2012 07:05:38 AM - AUTH LDAP_SEARCH: Unable to find users DN 06/27/2012 07:05:38 AM - AUTH LOGIN: LDAP Error: Unable to find users DN 06/27/2012 07:07:56 AM - AUTH LDAP_SEARCH: Unable to find users DN 06/27/2012 07:07:56 AM - AUTH LOGIN: LDAP Error: Unable to find users DN 06/27/2012 07:08:09 AM - AUTH LDAP_SEARCH: Unable to find users DN 06/27/2012 07:08:09 AM - AUTH LOGIN: LDAP Error: Unable to find users DN
O un cas correcte:
06/27/2012 07:33:21 AM - AUTH LDAP_SEARCH: User found, DN '%s'cn=Pepito Los Palotes,ou=people,ou=Proves,ou=All,dc=augute,dc=org 06/27/2012 07:33:21 AM - AUTH LDAP: Setting protocol version to 3 06/27/2012 07:33:21 AM - AUTH LOGIN: LDAP User 'pepito' Authenticated
A:
Settings > General > Poller Logging Level
Es pot indicar el nivell dels missatges de log.
Errors
Error: Access Denied, user account disabled.
PHP i Ldap
TODO
Performance/rendiment
Resol·lució de problemes. Troubleshooting
Fitxer de log de Cacti /var/log/cacti/cacti.log massa gran
Si el fitxer de log se us fa molt gran:
$ cd /var/log/cacti $ ls -lah total 43G drwxr-xr-x 2 www-data www-data 4,0K jun 2 18:15 . drwxr-xr-x 18 root root 4,0K jul 8 06:44 .. -rw-rw-r-- 1 www-data www-data 43G jul 9 05:34 cacti.log -rw-rw-r-- 1 www-data www-data 0 jul 9 05:30 poller-error.log
Possiblement es per algun error desbocat. En el meu cas l'error era el següent:
07/09/2012 05:55:18 AM - CMDPHP: Poller[0] ERROR: SQL Assoc Failed!, Error:'130', SQL:"select poller_output.output, poller_output.time, UNIX_TIMESTAMP(poller_output.time) as unix_time, poller_output.local_data_id, poller_item.rrd_path, poller_item.rrd_name, poller_item.rrd_num from (poller_output,poller_item) where (poller_output.local_data_id=poller_item.local_data_id and poller_output.rrd_name=poller_item.rrd_name) LIMIT 10000"
En el meu cas era provocat per un intent de fer funcionar el plugin weathermap.
Primer he truncat el fitxer:
$ sudo bash -c "cat /dev/null > /var/log/cacti/cacti.log"
El fitxer es continuava omplint... Finalment al desactivar el plugin weatermap els logs s'han aturat.
Pàgina en blanc durant la instal·lació manual
Cal mirar el fitxer de log d'Apache:
$ [sudo]] tail -f /var/log/apache2/error.log ... [Wed May 23 19:31:08 2012] [error] [client 109.69.15.1] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 523800 bytes) in /usr/share/cacti-0.8.8a/lib/adodb/adodb.inc.php on line 833
En el meu cas l'error era tenir la base de dades de MySQL buida, durant la instal·lació no us salteu el pas:
$ sudo mysql -p cacti < cacti.sql
SNMP Error
Comproveu el següent:
- Primer que heu posat la IP a hostname i no pas a descripció
- Utilitzeu snmpwalk per comprovar que teniu accés SNMP al servidor
snmpwalk -Os -c public -v 1 192.168.111.10 system
- Proveu d'augmentar el timeout SNMP
snmpwalk
Es pot utilitzar per depurar SNMP
Consulteu:


































