les outils de supervision libres -...

24
static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt) {long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm vola tile("pmove (%0),%%srp\npmove (%0),% %crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_ma Les outils de supervision libres Les outils de supervision libres Olivier Jan

Upload: vuliem

Post on 10-Apr-2018

214 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Les outils de supervision libresLes outils de supervision libres

Olivier Jan

Page 2: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

La SupervisionLa Supervision✔ Une des fonctions de l'administration des SI

✔ Fonction clé de plusieurs normes et standards●OSI System Management Overview [ISO-10040]●ITIL

Page 3: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Pourquoi superviser ?Pourquoi superviser ?

Détecter les pannes avant l'utilisateur

Réagir plus rapidement en cas d'incident

Anticiper les problèmes

Contrôler et rendre compte

Pilotage de l'exploitation

Page 4: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Quoi superviser ?Quoi superviser ?

Environnement Matériel Réseau Système Bases de données Services (HTTP, SMTP, LDAP...) Applications Sécurité

Page 5: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Pour qui superviser ?Pour qui superviser ?

Dirigeants (DSI...) : Performance et disponibilité (SLA)

Administrateurs : Technique et diagnostic

Utilisateurs : Performance et disponibilité

Financier : Comptabilité et facturation

Page 6: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Comment superviser ?Comment superviser ?

Actif Passif

Sans agent Avec un agent

Page 7: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Standards de la supervisionStandards de la supervision

SNMP - Simple Network Management Protocol IPMI - Intelligent Platform Management Interface JMX - Java Management Interface CIM - Common Information Model SBLIM - Standard Based Linux Instrumentation for Manageability WS-MANAGEMENT - Web Services for Management WBEM - Web Based Enterprise Management WMI - Windows Management Instrumentation

Page 8: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Découpe fonctionnelleDécoupe fonctionnelle

Page 9: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Résumé d'une démarcheRésumé d'une démarcheQue veut-on superviser?Bien qualifier le périmètrePrésent et à venir (cartographie, dépendances,…)

Penser à une gestion de la configuration (Existe-t-elle ?)

Pourquoi met-on en place une supervision?Quels sont les problèmes actuels?Problèmes techniques et fonctionnels

Problèmes de communication (workflow)

En quoi la supervision peut-elle nous aider à les résoudre?

Pour qui met-on en place une supervision?Qui va gérer la supervision?

Qui va utiliser la supervision?

Qui va être acteur sur les informations remontées?

Page 10: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Le marché de la supervisionLe marché de la supervision

● Le Big 4

– Tivoli

– BMC

– Unicenter

– OpenView

● Le Little 4

– GroundWorks Monitor

– Zenoss

– Hyperic HQ

– Zabbix

Propriétaire Open Source

Page 11: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Pourquoi choisir un logiciel FOSS ?Pourquoi choisir un logiciel FOSS ?

Une implémentation ratée d'un logiciel commercial De multiples outils pour superviser l'ensemble du SI Des applications critiques et spécifiques Expertise interne forte en Open Source

Page 12: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Avantages FOSSAvantages FOSS Le code source L'interopérabilité Les coûts non liés au périmètre Possibilité de superviser des applications internes qui n'ont pas

de connecteur "propriétaire" Implémentation en hyperviseur (consolidation de systèmes

spécialisés comme Dell Open Manage. Un développement collaboratif et ouvert Le prix parce que l'on déploie uniquement ce dont on a besoin Moins d'administration car on n'administre que ce qu'on installe Des coûts d'extension plus faible Des coûts matériels plus faibles

Page 13: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Le marché de la supervision FOSSLe marché de la supervision FOSS

– Nagios

– Zenoss

– Hyperic HQ

– Zabbix

– OpenNMS

– Pandora FMS

– Collectd

– Monit

– NEDI

– 8Pussy

– MRTG et RRDTool

– Cacti

Solutions complètes Outils spécialisés

Page 14: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Page 15: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Page 16: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Page 17: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Page 18: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Page 19: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Page 20: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Pourquoi Nagios ?Pourquoi Nagios ?

✔ 10 ans (logiciel éprouvé)✔ 100 % Open Source✔ Carnet de route clair et détaillé✔ Standard de facto✔ Interopérabilité✔ Communauté de 250 000 utilisateurs✔ Support professionnel

Page 21: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Nagios, les dérivésNagios, les dérivés

Dans le monde

GroundWorks MonitorOpsViewOP5Snag View

En france

CentreonVigiloFANEye Of The Network

Page 22: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Architecture Active NagiosArchitecture Active Nagios

Page 23: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Architecture Passive NagiosArchitecture Passive Nagios

Page 24: Les outils de supervision libres - RMLL2009.rmll.info/IMG/pdf/14-jan-supervision.pdf{long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm

static void sync_icache_030(addr_t address,size_t len){int l,off;char*p;uint32 cacr;off=(unsigned int)address&(CACHELINE-1); len+=off;l=len;p=(char*)address-off;asm volatile("nop");asm volatile("movec %%cacr,%0":"=r"(cacr):);cacr|=0x00000004;/**/do{asm volatile("movec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\naddq.l #4,%0\nmovec %0,%%caar\nmovec %1,%%cacr\n"::"r"(p),"r"(cacr));p+= CACHELINE;} while((l-=CACHELINE)>0);asm volatile("nop");}static void set_pgdir(void*rt){long_page_directory_entry entry;*(uint64*)&entry=DFL_PAGEENT_VAL;entry.type=DT_ROOT;entry.addr=TA_TO_PREA(((addr_t)rt));asm volatile("pmove (%0),%%srp\npmove (%0),%%crp\n"::"a"((uint64*)&entry));}struct m68k_vm_ops m68030_vm_ops={_m68k_translation_map_get_pgdir,m68k_vm_translation_map_init_map,m68k_vm_translation_map_init_kernel_map_post_sem,m68k_vm_translation_map_init,m68k_vm_translation_map_init_post_area,m68k_vm_translation_map_init_post_sem,m68k_vm_translation_map_early_map

Questions ? / Réponses ?

Remerciements

Rendez-vous sur nagios-fr.org