Surveillance de l'infrastructure Power Thibaud Besson Support Technique avant vente Power Systems STG 1
Agenda Quoi surveiller? Pourquoi surveiller Outils système Unix Nmon-topas Nmon to rrdtools Ganglia Systems Director Nagios / Cacti Sysload IBM Tivoli Monitoring Source: If applicable, describe source origin 2
Les domaines de surveillance sont variés CPU, mémoire, swap, débit interfaces, réseau Indicateurs de performance Sytème up/down, filesystems, démons Indicateurs vitaux Intrusion, login/logout, mots de passe Indicateurs de sécurité Temps de réponse, nombre de connexions Indicateurs des applications 3
La surveillance est vitale Garder une trace du passé Définir une ligne de base PerfPMR en particulier Suivre les changements dans la configuration du système Enregistrer les paramètres du système lors de l'incident Respecter les niveaux de service SLA Maintenir l'intégrité du système : intrusion, état des miroirs disques résoudre un problème avant l'effet avalanche Connaître son infrastructure : qui a besoin de quelles ressources et quand? Pour gérer les priorités d'attribution des ressources Pour planifier les arrêts Préparer le futur Extrapoler la croissance future planifier les besoins gérer le changement (de plateforme matérielle, d'os, d'application) 4
Le coût / ROI de la surveillance Prix de l'outil intégré au système d'exploitation Open Source Soumis à licence Prix de la mise en oeuvre Administrateur système Consultant(s) Durée du projet Capacité à intégrer de nouveaux serveurs Automatisation du déployement Services apportés Situations critiques évitées Niveau de service garanti Communication aux décideurs efficace Gestion de l'infrastructure plus efficace optimisation, planification, facturation 5
Outils système 6
Commandes sytème AIX CPU Memory I/O subsystem Network Processes & threads Status Commands vmstat iostat mpstat lparstat emstat/alstat sar ps time/timex topas nmon vmstat topas ps lsps ipcs vmstat iostat lvmstat lsps lspv/lsvg/lslv lsattr/lsdev topas nmon netstat atmstat entstat tokstat fddistat nfsstat ifconfig topas nmon ps pstat emstat/alstat topas nmon Monitor commands netpmon svmon netpmon filemon fileplace filemon netpmon tcpdump svmon,truss,kdb, dbx,gprof,fuser,prof Trace Level commands tprof curt splat trace trcrpt trace trcrpt trace trcrpt iptrace Ipreport trace trcrpt truss, trace, pprof, curt, splat, trcrpt 7
Focus sur quelques commandes système - filemon Most Active Logical Volumes -----------------------------------------------------------------------util #rblk #wblk KB/s volume description -----------------------------------------------------------------------1.00 10551264 5600 17600.8 /dev/rms09_lv /RMS/bormspr0/oradata07 1.00 6226928 7584 10394.4 /dev/rms06_lv /RMS/bormspr0/oradata04 Most Active Physical Volumes -----------------------------------------------------------------------util #rblk #wblk KB/s volume description -----------------------------------------------------------------------1.00 3313059 4520 5531.2 /dev/hdisk66 SAN Volume Controller Device 1.00 7563668 22312 12647.6 /dev/hdisk59 SAN Volume Controller Device VOLUME: /dev/rms09_lv description: /RMS/bormspr0/oradata07 reads: 23999 (0 errs) read sizes (blks): avg 439.7 min 16 max 2048 sdev 814.8 read times (msec): avg 85.609 min 0.139 max 1113.574 sdev 140.417 read sequences: 19478 read seq. lengths: avg 541.7 min 16 max 12288 sdev 1111.6 writes: 350 (0 errs) write sizes (blks): avg 16.0 min 16 max 16 sdev 0.0 write times (msec): avg 42.959 min 0.340 max 289.907 sdev 60.348 write sequences: 348 write seq. lengths: avg 16.1 min 16 max 32 sdev 1.2 seeks: 19826 (81.4%) seek dist (blks): init 18262432, avg 24974715.3 min 16 max 157270944 sdev 44289553.4 time to next req(msec): avg 12.316 min 0.000 max 537.792 sdev 31.794 throughput: 17600.8 KB/sec utilization: 1.00 8
Focus sur quelques commandes système sar -d AIX parva3106074 3 5 00CD87BE4C00 05/18/09 System configuration: lcpu=10 drives=111 16:01:24 %usr device 16:01:26 7 %sys %wio %busy 9 %idle avque 6 mode=capped physc r+w/s 78 Kbs/s avwait avserv 5.03 hdisk0 42 0.6 89 1322 44.8 11.1 hdisk1 40 0.5 80 393 43.2 11.5 Similaire à iostat D Sar peut enregistrer les mesures : System Activity Recorder 9
Signification des indicateurs de performance CPU %user For dedicated partitions, the entitled processing capacity is the number of physical processors. For shared pool when below CE, percentage of the entitled processing capacity used while executing at the user level (application). For shared pool and partition above CE (uncapped partitions with a current physical processor consumption above their entitled capacity), the percentage becomes relative to the number of physical processor consumed (physc) IO Wait Sys %IO wait n'est pas un bon indicateur des performances IO Idle IO Wait CE Sys physc CE user user 10
Commandes système : pour l'audit et le tuning Avantages liés à leur nature Toujours présentes car intégrées à AIX (nmon aussi!) Très proches du microcode / du matériel : outils pour le tuning Très complètes (trop?) Scriptables Inconvénients Vue locale de la partition, au mieux du serveur (CEC view dans certaines commandes) Pas de vue globale de plusieurs machines Nécessitent des compétences avancées pour les utiliser : options nombreuses Pour les interpréter : que représentent ces colonnes? Ont-elles toujours le même sens? Ent : entitlement %Entc : entitlement consumed physc : physical proc consumed Vue à un instant t, pas d'historique (ou presque... sar) 11
RMC Ressource Monitoring Control Elément de Reliable Scalable Cluster Technology (RSCT) Permet de surveiller l'état de ressource et de réagir à des seuils Complètement customisable et automatisable Interface graphique : WebSM GUI 12
RMC : pour le HPC Ligne de commande peu conviviale WebSM : ancienne interface Peu adapté à une production standard # lscondition "/var space used" Displaying condition information: To create an association between the condition and response: # mkcondresp "/var space used Informational notifications To start monitoring the resource: # startcondresp "/var space used Informational notifications condition 1: Name = "/var space used" Node = "masms1" MonitorStatus = "Not monitored" ResourceClass = "IBM.FileSystem" EventExpression = "PercentTotUsed > 90" EventDescription = "An event will be generated when more than 90 percent of the total space in the /var directory is in use." RearmExpression = "PercentTotUsed < 75" RearmDescription = "The event will be rearmed when the percent of the space used in the /var directory falls below 75 percent." SelectionString = "Name == \"/var\"" Severity = "i" NodeNames = {} MgtScope = "l" 13
Tester le monitoring : générer une charge nstress package : http://www.ibm.com/collaboration/wiki/display/wikiptype/nstress ncpu : hammers the CPUs (can be slowed down to use a percentage) ndisk : hammers the disks (can be slowed down to use a percentage) ndiskaio : same as ndisk but does Asynchronous I/O (AIO handling changed in AIX 5L so not currently available) ndiskmio : same as ndisk but uses Modular IO AIX Expansion pack library it is assumed this is installed (experimental not currently available) nmem : hammers or touches memory nipc : tests shared memory, semaphores and shared messages take 1 CPU nlog : generates output like error messages nfile : creates, writes and deletes files to push the JFS log hard Ipctest : Manually test IPC createfs.sh : Script to create the filesystems used by the below scripts you will need to edit this for your system dbstart.sh : Script to start a fake database RDBMS you will need to edit this for your system webstart.sh : Script to start a fake webserver you will need to edit this for your system 14
Tester le monitoring : générer une charge disque Random IO avec ndisk # dd if=/dev/zero of=tempfile_10mb bs=1m count=10 # ndisk -R -f./tempfile_10mb -r 50 -t 60 Command: ndisk -R -f./tempfile_10mb -r 50 -t 60 Synchronous Disk test (regular read/write) No. of processes = 1 I/O type = Random Block size = 4096 Read-Write = Equal read and write Sync type: none = just close the file Number of files = 1 File size = 33554432 bytes = 32768 KB = 32 MB Run time = 60 seconds Sequential IO Test sequential read thruput from a device: # timex dd if=<device> of=/dev/null bs=1m count=100 Test sequential write thruput to a device: # timex dd if=/dev/zero of=<device> bs=1m count=100 Note that /dev/zero writes the null character, so writing this character to files in a file system will result in sparse files For file systems, either create a file, or use the lptest command to generate a file, e.g., # lptest 127 32 > 4kfile Test multiple sequential IO streams use a script and monitor thruput with topas: dd if=<device1> of=/dev/null bs=1m count=100 & dd if=<device2> of=/dev/null bs=1m count=100 & Snooze % = 0 percent ----> Running test with block Size=4096 (4KB). Proc - <--Disk IO--> <--Throughput--> RunTime Num - TOTAL IO/sec MB/sec KB/sec Seconds 1-331550 5517.4 21.55 22069.64 60.09 15
nmon / topas Solution simple, sûre, efficace AIX 4, 5, 6 Linux Power, x86, mainframe Pas d'installation Très complet beaucoup d'information à l'écran Affichage totalement paramétrable LPARs, VIOS, WPAR Conçu pour des serveurs puissants exécutable maintenant intégré à AIX 64 CPU, 4000+ disques, 35 000 processes Extensible & intégré à smitty 16
VIOS 2.1 monitoring via topas Hit E Virtual Enternet including SEA Topas Monitor for host: bronze_ivm Interval: 2 Fri Dec 5 08:08:19 2008 =============================================================================== Network KBPS I-Pack O-Pack KB-In KB-Out ent10 (SEA) 31.3 43.0 43.0 15.9 15.4 \--ent2 (VETH) 15.9 15.5 27.0 14.3 1.6 \--ent0 (PHYS) 15.5 27.5 16.0 1.6 13.9 lo0 0.0 0.0 0.0 0.0 0.0 Hit D and then d Virtual SCSI over the VIOS Topas Adapter View : bronze_ivm Interval: 2 Fri Dec 5 08:29:17 2008 =============================================================================== Adapter KBPS TPS KB-R KB-W sissas0 9.9K 92.0 0.0 9.9K vhost0 0.0 0.0 0.0 0.0 vhost1 9.9K 184.0 92.0 92.0 =============================================================================== Vtargets/Disks Busy% KBPS TPS KB-R ART MRT KB-W AWT MWT AQW AQD hdisk0 0.0 0.0 0.0 0.0 0.0 3.6 0.0 0.0 62.6 0.0 0.0 hdisk1 25.0 9.9K 92.0 0.0 0.0 3.5 9.9K 4.2 28.9 0.0 0.0 hdisk2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 hdisk3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 17
nmon Online or Data Collector NMON nmon f c 400 s 1 Data Collection CSV file in nmon format Online 18
Screen nmon f or F option Others Federico s pgraph Bruce s nmon2web Perl nmon2rrd C filter nmon file Stephen s nmon Analyser Stephen s nmon Consolidator 180 160 140 120 100 80 60 40 20 0 Java Dynamic Graphs Excel graphs Scripts rrdtool scripts + CPU & RAM aggregation nmon flow Scripts Create rrd Load rrd Graph rrd index.html Website +.jpg graphs rrdtool open source rrdtool open source
nmon Analyzer Feuille Excel alimentées par enregistrement nmon ou topas Génère des graphiques Excel & tableaux de données Benchmark, peu adapté à l'historisation CPU Disques Mémoire IO transferts IO interfaces Réseau Systèmes de fichier Paging Processes... 20
nmon Consolidator Feuille Excel alimentée par enregistrements nmon ou topas Génèrent des graphiques Excel Suivi d'infrastructure / Etude de consolidation / tendances CPU Capacity Utilisation by Time of Day (all nodes) 12,00 10,00 8,00 radio2 radio1 6,00 rac2 rac1 dataguard 4,00 2,00 16:00 14:20 12:40 11:00 09:20 07:40 13:10 13:08 13:05 13:03 13:00 12:58 12:55 12:53 12:50 12:48 12:45 12:43 12:40 12:38 12:35 12:33 12:30 12:28 12:25 0,00 21
RRDTool Round Robin Database Tool Spécialement conçue pour stocker & afficher des données temporelles Stockage très compact Taille de base fixe : Round-Robin. 12 ko par défaut Résolution variable : consolide les données pour limiter le volume et moyenner les données anciennes Le standard pour ce type d usage Fonctionnalités graphiques Ligne de commande rrdcreate / rrdfetch / rrdgraph / rrdtool update / Intégration à des scripts Perl, PHP, etc. 22
Screen nmon f or F option Others Federico s pgraph Bruce s nmon2web Perl nmon2rrd C filter nmon file Stephen s nmon Analyser Stephen s nmon Consolidator 180 160 140 120 100 80 60 40 20 0 Java Dynamic Graphs Excel graphs Scripts rrdtool scripts + CPU & RAM aggregation nmon flow Scripts Create rrd Load rrd Graph rrd index.html Website +.jpg graphs rrdtool open source rrdtool open source
Nmon2rrdtool version basique http://www.aixtips.com/aixtip/nmon2rrdv1.htm Nmon Enregistrement Nmon2rrd nmon2rrd -f nmon_file -d output_dir -x output_dir/index.html output_dir/*.gif 24
Nmon2rrd - historisation Télécharger l'archive & lire le script nmon2rrd.v2 http://www.aixtips.com/aixtip/nmon2rrdv2.htm Upload sur le serveur web des fichiers nmon : cron Création des pages web correspondantes par le script Portail d'accès aux pages à personnaliser $WEB_DIR/server/year/month/day/index.htm $WEB_DIR/index.htm Mise à jour / archivage Un nouveau serveur est automatiquement pris en charge Les fichiers nmon traités sont zippés 25
nmon2web Télécharger l'archive & lire index.html & readme.hmtl http://ps-2.kev009.com:8081/aixtip/nmon2rrdv3.htm nmon2web.pl alimente rrdtool crée les graphiques journaliers et historisés pour chaque partition nmon2web.cgi crée les graphiques de performances agrégés dynamiques 26
IBM developerworks : Performance Wiki http://www.ibm.com/developerworks/wikis/display/wikiptype/performance+other+tools Références aux outils présentés précédemment 27
Solution open source de monitoring 28
Un outil de surveillance de cluster
Les origines de Ganglia Né du projet Millenium en 1998 à l université de Berkeley Déploiement d une grille de nœuds de calcul à l échelle du campus Ses origines ont des conséquences sur son architecture Maintenant supporté par la communauté des utilisateurs et développeurs Wiki listes de distribution FAQ, How-to, etc.
Hiérarchie de Ganglia LPAR = nœud Serveur Physique = cluster Salle ou site = grid preproddb proddb as1 as2 sandbox VIOS1 VIOS2 Cluster2 Cluster1 GRID vio1 vio2
Propriétés remarquables Scalabilité : plus de 2000 noeuds Hiérarchie et fédération de clusters Robuste car appuyé sur des technologies éprouvées : XML, RRDTool Très économe en ressources système Code C Open Source, versions compilées disponibles pour de nombreuses plateformes Extensible pour surveiller d autres paramètres Utilisé pour plus de 500 clusters dans le monde les universités : Berkeley, Stanford, MIT, Yale, Le secteur public : US Air Force, NASA, CERN, Les entreprises : Motorola, HP, Dell, Microsoft, SUN, Boeing,
Composants de Ganglia Deux démons G MON D = Ganglia MONitoring Daemon sur chacun des nœuds, collecte les données G META D = Ganglia META Daemon rassemble les données des clients gmond dans une base de données Une base de données RRDTool Un frontal web basé sur PHP dans un serveur HTTP Apache Quelques autres petits utilitaires
Ganglia MONitoring Daemon GMOND Tourne sur chacun des nœuds du cluster (LPARs) Simple à installer : le démon et un fichier de configuration gmond.conf Responsabilités : Deux manières de transmettre des informations Surveiller les changements dans l état de son hôte Annoncer les changements Ecouter l état des autres nodes par unicast ou multicast Répondre aux demandes de description XML du cluster Unicast ou multicast de l état de son hôte en format XDR par UDP Envoi de XML par connexion TCP
Ganglia META Daemon GMETAD Tourne sur un seul nœud du cluster Simple à installer : le démon et un fichier de configuration gmetad.conf Rassemblement de clusters = grid, par interconnexion des gmetad Responsabilités de gmetad Interroge ses sources de données : gmond ou gmetad Traite les fichiers XML reçus Sauvegarde les données dans une base de données Round-Robin Exporte du XML sur connexion TCP
Schéma de principe
Frontal web Affiche les informations collectées forme graphique dynamique avec historique Basé sur PHP 4.1 et Apache
Intervalles d échantillonnage Example d intervalles d échantillonnage : 15 secondes pendant 1 jour, 1 minute pendant 2 mois, 10 minutes pendant 1 an RRAs "RRA:AVERAGE:0.5:1:5760" \ "RRA:AVERAGE:0.5:4:86400" \ "RRA:AVERAGE:0.5:40:52560" Traduction : Prendre 5760 échantillons chaque 1 15 secondes 5760 = 4 (échantillons/minute) 60 (échantillons/heure) 24 (heures) Prendre 86400 échantillons chaque 4 15 secondes (= 1 minute) 86400 = 60 (échantillons/heure) 24 (heures) 30 (jours) 2 (mois) Prendre 52560 échantillons chaque 40 15 secondes (= 10 minutes) 52560 = 6 (échantillons/heure) 24 (heures) 365 (jours) 1 (an)
Les métriques Une propriété du système qui est observée par gmond : Gmetric permet d ajouter de nouveaux métriques Variables : cpu_user, disk_free, mem_free, etc Plus statiques : os_release, boottime, MTU_size, etc Généraux : 34 métriques définis sur toutes les plateformes Spécifiques : 8 métriques Solaris, 4 métriques HP-UX, 18 métriques AIX Coder les métriques Recompiler gmond pour les intégrer Travail réalisé par Michael Perzl pour les serveurs Power Cappé, CPU entitlement, weight, etc. http://www.perzl.org/ganglia
Métriques standard 1/2 boottime percent CPU nice not defined on AIX, Linux yes number of CPUs cpu_intr number of interrupts (??) not defined on AIX, Linux yes load average over 1 minute load_five total available disk space in GB load_one total free disk space in GB disk_total CPU time spent waiting for I/O disk_free percent CPU user cpu_wio percent CPU system cpu_user speed of CPUs in MHz cpu_system number of system interrupts (??) not defined on AIX, Linux yes cpu_speed cpu_num percent CPU idle time cpu_nice percent of time since boot idle CPU not defined on AIX, Linux yes cpu_idle number of network bytes sent out per second cpu_aidle cpu_sintr number of network bytes received per second bytes_out system boot timestamp bytes_in load average over 5 minutes load_fifteen load average over 15 minutes
Métriques standard 2/2 machine_type amount of shared memory not defined on AIX, Linux yes mem_buffers amount of memory used for buffers not defined on AIX, Linux yes amount of memory used for cache AIX: numpermmemory pages os_name name of OS most filled disk partition not defined on AIX, Linux yes pkts_in number of network packets sent out proc_run total number of running processes proc_total number of network packets received pkts_out mtu MTU size reported in bytes OS release version (on AIX: level of filesetbos.mp) part_max_used mem_cached mem_shared total available memory in kb amount of free memory in kb os_release mem_free type of machine (e.g., POWER5) mem_total total number of processes swap_free free swap space in kb AIX: paging space free swap_total total available swap space in kb AIX: paging space
18 métriques spécifiques Power (AIX et Linux) kernel64bit capped lpar cpu_entitlement lpar_name cpu_in_lpar lpar_num cpu_in_machine oslevel cpu_in_pool serial_num cpu_pool_idle smt cpu_used splpar disk_read weight disk_write
Prérequis recommandés Hostnames Un nouveau hostname est une nouvelle machine Utiliser DNS pour résoudre les adresses IP Adresses IP stables Date et heure fiables à l échelle du cluster : NTP Ces prérequis sont habituels pour des machines de production
Démo Ganglia file:///media/cruzer%2016gb/projets/journ%c3%a9es %20Techniques/2009-10-21%20TJ/Ganglia%20%20Host %20Report.htm
Critiques Ce n est pas un outil officiel IBM Pas de support officiel d IBM Uniquement un outil de monitoring, ne déclenche pas d actions
Avantages Utilisation Configuration Une vision globale (cluster/grid) et détaillée (node) Un accès facile par interface web, une navigation aisée Facile à installer, sans risque et gratuit Disponible pour de nombreuses plateformes donc global Adapté aux serveurs Power Très paramétrable, de nombreux exemples d utilisation très divers Extensibilité Données stockées extractibles vers un outil d accounting Facilement extensible à de nouveaux métriques exemple pour le temps de réponse d'une base de données : cron de gmetric --name tpm --value `/usr/local/bin/transactions` --type double
Références Le Wiki IBM sur Ganglia : http://www-941.ibm.com/collaboration/wiki/display/wikiptype/ganglia Le wiki IBM Ganglia sur Linux on Power : http://www-941.ibm.com/collaboration/wiki/display/wikiptype/ganglia La page de Michael Perzl : http://perzl.org/ganglia/ La liste de distribution de Ganglia : http://www.mail-archive.com/ganglia-general@lists.sourceforge.net/ La documentation officielle de Ganglia : http://ganglia.wiki.sourceforge.net/ganglia_documents Un «quickstart» : http://wiki.freaks-unidos.net/ganglia-quickstart Un exemple : la grille Wikipedia : http://ganglia.wikimedia.org/
IBM Systems Director
Managing physical & virtual end to end IBM Tivoli (and selected other enterprise management tools) IBM Systems Director Physical and virtual platforms Server, Storage, Networking Foundation Deployment Health Virtualization Optimization Configuration Maintain Advanced Monitoring Replication Platform-specific capabilities Managed Extension Groups Operating systems Virtualization environments software Hardware System x, i, z, p System Storage Other 3rd Party, Custom
IBM Systems Director simplifie l'administration Découvre les serveurs et les ressources virtuelles Surveille la santé des systèmes Informe des défaillances et prend des actions Déploie, optimise et met à jour les serveurs S'intègre avec les services de gestion de l'entreprise 50
Architecture Systems Director IBM Systems Director Agents IBM Systems Director Server Application Logic + Database Management Console(s) Web Interface 51
Découverte des relations entre ressources virtuelles et physiques Automated discovery Discovers hardware and virtual resources via the Hardware Management Console LPAR LPAR LPAR LPAR LPAR LPAR LPAR VIO Discovers physical and shared I/O VIO
Statut d'un coup d'oeil Résumé de l'état de santé personnalisable Systèmes favoris Indicateurs critiques Groupes de systèmes Surveillance Surveillances des ressources avec ou sans agents (AIX, i, VIOS, LPARs, etc) Seuils Évènements Plans d'automatisation Notifications Exécution de commandes Déclenchement de tâches 53
La vue topologie facilite la résolution d'incidents Topologie des ressources Relations Dépendances Physiques et virtuelles Tâches contextuelles Lancement de tâches Création de serveurs virtuels Relocalisation de serveurs virtuels Gestion de l'os État de santé des ressources Exploration des ressources Propriétés détaillées Logs des évènements Résolution d'incidents 54
Récapitulatif de la santé Etat de santé Tableau de bord personnalisable Ressources avec incidents
Graphique de performances
Personnalisation de la page d'accueil
Détail des incidents Serveur éteint
Journal des évènements L'agent sur la ressource signale un événement Le serveur Director signale qu'un agent a un problème
Contrôleurs (Monitors) Compteurs sur une ressource succeptible d'être : Observé en temps réel Enregistré pour historisation Soumis à un seuil, pour déclencher une alerte ou une action automatisée Dépendant du type de la ressource et de l'os (de l'agent) Peuvent être regroupés en vues
Cibler les contrôleurs Définir les contrôleurs sur les systèmes à observer Les groupes de contrôleurs facilitent l'affectation Ne pas confondre avec les évènements (arrêt serveur par exemple), toujours observés Pour le moment, pas de mise en graphiques mais export : CSV HTML TXT XML "Machine Name = ws2k3isdv02.hatteras.lab","","" "Attribute Path = [[Director Agent][CPU Monitors][CPU Utilization]]","","" "Description = ISD CPU Utilization","","" "Start Time = November 4, 2008 at 9:45:53 AM","","" "Stop Time = November 4, 2008 at 10:26:24 AM","","" "Sampling Rate = 5000 msecs","","" "","","" "Date","Time","Data" "November 4, 2008","9:45:57 AM","11.801242236024844" "November 4, 2008","9:46:02 AM","13.437500000000002" "November 4, 2008","9:46:07 AM","13.437500000000002" "November 4, 2008","9:46:12 AM","15.552099533437014"
Seuil d'un contrôleur Lorsqu'un contrôleur atteint une valeur trop haute trop basse dans un état particulier Valeur numérique (90%) ou textuelle (STOPPED, PAUSED) Valeur d'alerte & de seuil critique, durée minimum Géré par l'agent, peut déclencher un événement et donc une action sur le serveur Systems Director Wizard pour la création d'un seuil
Création d'un événement CPU
Plan d'automatisation Evènement système Contrôleur Seuil Problème matériel Alerte Action Serveur Systems Director Etc. Agent Évènement Tâche Director
Evènements, filtres, actions Les sources d'évènements sont multiples Information venant du matériel (défaillance, etc.) Information venant du système d'exploitation (CPU, espace disque, etc) Information venant de l'agent Director (contrôleur, mises à jour en cours, etc) Information venant du serveur Director (arrêt d'une ressource) SNMP, CIM (Common Information Model), RSA System x Nombreux événements préconfigurés Plan d'automatisation Choix des ressources cibles Choix de l'évènement par filtre (prédéfini ou personnalisé) Choix de l'action (prédéfinie ou personnalisée) : email, Tivoli Console, exec,...
Choix des systèmes sujets au plan
Filtre d'évènement
Action personnalisée envoi d'un courriel
Action personnalisée envoi d'un courriel
Systems Director surveille efficacement l'infrastructure Solution gratuite S'interface avec tout le matériel IBM S'interface également avec du matériel tiers Support des futures évolutions du management d'infrastructure IBM Interface conviviale et puissante
Nagios Système de surveillance open-source à large spectre Applications Services Systèmes d'exploitation Réseau Performances Hautement scalable Capable de prendre des actions correctives Extensible pour répondre aux besoins spécifiques Environ 250 000 utilisateurs dans le monde Communauté active 73
Architecture Scheduler serveur Nagios Gère l'ordonnancement des vérifications Exécute les actions à prendre suite aux incidents (alerte, escalade, action corrective) Interface web Vue de l'infrastructure supervisée par Nagios Production de rapport Addons Extensions des fonctionnalités du serveur Nagios Plugins (greffons, sondes) Scripts ou programmes qui effectuent les vérifications Retourne un code 0, 1 ou 2 état remonté à Nagios En local sur la machine supervisée ou sur le serveur (test de protocole réseau ou exécution via ssh) 74
Vue des groupes de serveurs Une des nombreuses vue de la console Nagios 75
Détail des services par host 76
Addons Nagios NRPE exécute des plugins sur des machines Unix distantes par SSL Plus léger pour le serveur Nagios NCSA Modifie le mode de vérification de Nagios d'actif à passif L'agent distant envoie son état au démon Nagios Utilisé dans les configurations distribuées, redondantes, ou pour des services par nature irréguliers 77
Ajouter des plugins 78
Installation Nagios Sur Ubuntu x86, quelques minutes pour compiler et installer Sous AIX Projet Open source : recompilation des sources En cours de compilation par M. Perzl : http://www.perzl.org/aix/ 79
Historisation des performances Ce n'est pas l'objectif d'origine de Nagios Des addons développés en Open Source Basés sur RRDTool NagiosGrapher Cacti 80
Architecture de Cacti Frontend écrit en PHP pour RRDTool Utilise MySQL pour stocker les informations administratives Séquences Récupération des données par SNMP Origine monitoring réseau Stockage des données dans RRDTool Création des graphiques RRDTool et presentation HTML par PHP A tester... 81
Solution de gestion des performances du datacenter 82
Architecture produit Agents sur les machines Différents types Données stockées par les agents Console client lourd Windows Requêtes TCP/IP vers management server, qui interroge les agents < 1% CPU utilisé 83
Les agents SP Analyst Code binaire natif Pas de scripts 250-300 métriques selon la plateforme Echantillonnage toutes les 5s Combinaisons de métriques en temps réel Production d évènements en temps réel Moins de 1% CPU Historique +/- 20Mo par mois en local par agent Historique long terme local (minute, jour, semaine, mois, année) pas de problème de volumétrie centralisée Gestion de workloads : utilisateur, application, WPAR 84
SP Analyst - Fonctionnalités solution de monitoring et diagnostic de performances des systèmes et applications Surveillance des ressources et des applications en temps réel et sur le long terme Agents diversifiés : Système, Base de données, Exchange, SNMP, simulation d'utilisateur, etc. Détection des incidents de production et analyse du contexte d occurrence Analyse de tendance, détermination des profils de journée type, semaine type Validation des scénarios de consolidation 85
Sysload pour Power6 Sysload offre une métrologie dédiée aux environnements Power6 AIX Linux i Support du SMT (purr, spurr) Support des LPAR (Server virtualization) Support des WPAR (OS virtualization)
Partition dédiée / Micro-partition Physical server Physical server Agent Agent tourne dans le serveur Architecture classique "1 serveur, 1 agent" VIOS LPAR LPAR Agent Agent Agent Vision à l'intérieur d'un LPAR Agent dédié à l'os du LPAR Architecture de monitoring homogène avec les serveurs dédiés et les autres OS. Métriques LPAR (ent, entc, physc )
Vision serveur physique SP Analyst console Physical server LPAR AIX Agent for AIX LPAR Linux Agent for Linux LPAR OS/400 Agent for i Consolidation des informations des agents au niveau de la console SP Analyst
89
Contexte d'une alerte Graphique interractif 90
Tendances long terme 91
Journée typique Moyenne du mois heure par heure 92
Bilan de santé d'un groupe 93
Etude de Consolidation Groupe d'agents 94
SP Portal : tableaux de bord Client léger web publication automatique Synthétise l'état de santé de l'infrastructure 95
IBM Tivoli Monitoring 96
IBM Tivoli Monitoring : Architecture générale Excellente scalabilité Plusieurs serveurs ITM peuvent être rassemblés dans un seul OS Une seule DB peut être utilisée 97
Fonctionnalités d'itm Surveillance transversale des ressources Interface personnalisable et dynamique Automatisation d'actions Historisation des mesures 98
ITM AIX/ Power Architecture: Internals TEP Client Console Server TEPS ITM Server Console Database Management Server TEMS Warehouse Topology Availability Performance VIOS Availability Health Performance HMC OS HMC/IVM HMC Agent CEC Agent CEC LPARs AIX AIX VIOS Premium or Base Agent VIOs AIX Availability Health Performance AIX Base Agent AIX AIX Premium Agent AIX AIX Premium Agent WPAR AIX
TEP Workspaces Navigation Enterprise UNIX Systems Supplemental Workspaces Performance Object Status Resources Summary Graph System Inventory <hostname> AIX Premium Top Resource Views System Memory Process Storage Networking User WPAR Status VIOS Premium Virtual IO Mappings Security Top Resources System Memory Process Storage Networking User Status HMC Base System Managed Systems CEC Base CEC Resources CEC Utilization Resource Summary Performance Object Status System Inventory File System Logical Volume Details Physical Volume Details System Storage Information Volume Groups and Logical Volume MPIO Storage Information WPAR Summary CPU Information CPU Utilization LPAR Information * NIM Resources Print Queue Workload Manager Network Adapter Utilization Network Interfaces * Network Protocol Views Device Status Storage Mappings * Network Mappings NPIV Mappings Performance Object Status Resources Summary Graph System Inventory File System Logical Volume Details Physical Volume Details * System Storage Information Volume Groups and Logical Volume MPIO Storage Information Device Status Network Adapter Details Network Adapter Utilization Network Interfaces * Network Protocol Views Shared Ethernet Shared Ethernet Adapter High Availability Details Shared Ethernet Bridging Details Performance Object Status HMC Summary Managed Systems List CEC View Monitored Partitions * CEC Utilization * LPAR Utilization* LPAR Summary
Agent AIX Premium Top Ressources 101
Agent AIX Premium System view 102
VIOS Agent Disk mapping 103
VIOS Agent : NPIV 104
CEC Agent : Frame utilization 105
Questions? Merci de votre attention! 106