Home

6 installation and configuration

image

Contents

1. 207 18 2 Installation and CO RESORT A A A 209 18 6 4 SQL Nodes Management with Starting Scripts ecce 224 18 6 5 Creatin Backups from the Command Line RO 225 18 7 5 244 19 MySQL Binary Replication model for 247 AP PANDORAFMS 19 Als Stank SEVE uc i rr em Lis 251 19 5 Switchover 251 20 3 aL 260 20 3 1 Data Server A E ii 260 23 Working the IPMI A A a 282 23 1 2 Installin the Plu the Recon task rs 282 AP PHNDORAFMS A OBL A 288 AA TOW A A 288 24 3 1g Cd e o a 288 25 5 2 Remote configuration Oe oe Oe even eres ere ree merry 293 25 294 2052 Remote CODE SU ANN sl Dept uti rd a s aan 297 26 6 Console PSTN io Sa Fa ste easter ea 297 27 1 2 The entry points o
2. lk li 2 1220cQG QJ IL snmp3 priv method lt snmp3 priv pass lt snmp3 sec level snmp3 auth method snmp3 auth user snmp3 priv pass lt ff threshold warning str critical str Description A policy SNMP module will be created The default values are the same of snmp module option Example perl pandora manage pl etc pandora pandora server conf create policy snmp module policy name module name remote snmp inc 8080 1 mycommunity myoid Module description 29 1 7 9 Create policy plugin module gt 5 0 Parameters policy name gt lt module_name gt lt module_kind gt lt module_port gt plugin name gt user password parameters lt description gt module group lt min gt max post proces lt interval gt warning min warning max critical min critical max history data warning str critical str Description A policy plugin module will be created The default values are the same of plugin module option Example perl pandora manage pl etc pandora pandora server conf create policy plugin module policy name module name generic data 22 myplugin myuser mypass parami param2 param3 Module description General 1 300 0 0 0 1 string for warning string for critical 29 1 7 10 Validate policy alerts gt 5 0 Parameters policy name gt Description Vali
3. this section we will explain the Metaconsole options that refer to the navigation visualization of the agent data and the Instance modules and alerts from the Metaconsole There are different ways to visualize data Data tables Tree views Hierarchical network maps Visual maps Reports Graphs File exportation PDF XML CSV 7 1 Monitoring iadmn O PANDORAFMS 7 1 1 Tree View This view allows the visualization of the agent monitors in a tree view You could have access through Monitoring gt Tree view It is possible to filter by module status Critical Normal Warning and Unknown and to search by agent name In each level it is shown a recount of the number of items of its branch in normal status green color critical red color warning yellow color and unknown grey color The first level is loaded first Clicking on the items of each level the branch with the items contained it it will be displayed Items shown in the group are restricted by the ACLs permissions and by the the permissions for Tags that the user has 7 1 1 1 Kinds of trees There are two different kinds of trees Group tree Modules are shown filtered by the group to which the agent where they are located belongs to AP PANDORAFMS Monitoring Tag Tree Modules are shown filtered by the Tags they have associated to In the Tree by Tags one module could be shown several time
4. oet Ope 384 AS OT 384 231 22 Create network E RTT 384 2933 27 15 A simp IA A i 385 29 1 2 5 Delete MOTO A A A rre aea o 386 AA Data ModE erinteni aana hao a 386 A Get modale dath A erent atoll 386 29 128 Delete C C RETO 386 AP PANDORAFMS 29 13 3E AAA MEME 388 20 1 3 1 Create template moodle ui das 388 2901 32 Delete template mod le 2 388 29 1 3 3 Create template action C 388 29 1 36 Enable I NOTET ds 389 AA A ere eem 389 29 13 8 Delete alert 390 231 350 Update alert template co iocis ooa ancha en Or aaea 391 VIN NONSE LOCUM s NN 391 0568 391 29 1E a ia 391 29142 Delete A ah un cect 391 29 b Disable NN E AS 393 29 1410 Enable di ecoda 393 CONI EVENT A ti nota ene a ds 394 29 1 5 1 els 394 29 1 52 Validate ON AD AA A A e ARA A ii 394 BN CIN E RR 395 2131 55 Get event UO S 395 29 1 6 IU A A AA AAA 395 AA A 395 AA AA A A 396 29 1 7 2 Apply A
5. Eo Bulgarian Catalan Catala Chinese Simplified gt 39 Chinese Traditional EBD Croatian Hrvatski Czech Cestina Danish Dansk Dutch Nedertands Estonian eesti keel Finnish suomi French Francais German Deutsch Greek EAAma xd Gujarati Hebrew n y Hind fee Mungarian Magyar Icelandic Icelandic Iloko Indonesian Indonesia italian italiano Japanese 543 Kannada 6 n Back wp Next Pick the installation language which will be used for the base operating system AP PANDORAFMS Installation CentOS installer re Select the appropriate keyboard for the system Hungarian Hungarian 101 key Icelandic Italian italian 18M italian it2 Japenese Korean Latin Amencan Macedonian Norwegian Polish Portuguese Romanian Russian Serbian Serbian latin Slovak qwerty Slovenian Spanist Swedish Swiss French Swiss French lanl Swiss German Swiss German latini Turkish Ukrainian United Kingdom US English US Intemational E ILS ap Next Select the appropriate keyboard for the system AP PANDORAFMS Installation What type of devices will your installation involve Basic Storage Devices installs or upgrades to typical types of storage devices you re not sure which option is right for you this i5 probably it
6. 29 1 2 8 Delete data Parameters module name gt agent name gt a agent name gt g group name gt Description All data associated to a module will be deleted from the historical data in case of AP PANDORAFMS Pandora FMS CLI having as parameter m and the name of this and its agent name from the agent modules if as parameter the option a is given and the agent or modules name of all agents from a group if as parameter the option g and the group name is given Example perl pandora_manage pl etc pandora pandora_server conf delete_data agent In this example all historic data will be deleted from all modules that belongs to the My agent agent 29 1 2 9 Update_module Parameters module name agent name field to update lt new_value gt Description A given field of an existent data module will be updated The module type will be detected to allow update the specific fields for each type The possible fields are the following e Common to any module module name agent name description module group min max post process history data interval warning min warning max critical min critical max warning str critical str For the network modules ff threshold module address module port For the SNMP modules ff threshold module address module port version community oid snmp3 priv method snmp3 priv pass snmp3 sec level snmp3 auth met
7. gt lt gt lt gt lt gt lt gt lt gt lt gt lt THF gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt t lt gt lt PP gt lt gt lt A 28 4 7 Java Android Please you can see our project Pandora Event Viewer in Pandroid Event Viewer source code in SourceForge SVN repository but this is piece of code for get the data of events across the API pes Performs an http get petition param context Application context param additionalParameters Petition additional parameters return Petition result throws IOException If there is any problem with the connection public static String httpGet Context context List lt NameValuePair gt additionalParameters throws IOException SharedPreferences preferences context getSharedPreferences context getString R string const_string_preferences Activity MODE_PRIVATE String url preferences getString url include api php String user preferences getString user String password preferences getString password String apiPassword preferences getString api_password if url length user length 0 return 376 A PANDORAFMS Examples ArrayList lt NameValuePair gt parameters
8. admin AR PANDORAFMS In the Metaconsole it is possible to do all kinds of reports on Instance data The configuration of one report is stored in the Metaconsole but when it is visualized it gets data connecting to the instances O For the report editor the origin of the agents and monitors is transparent The user will 5 not know from which Instance they come from Reports can be created in two different ways Manually With report templates For more information please go to the documentation section Reports 7 4 Screens AP PANDORAFMS Screens o O FE PANDORAFMS 7 4 1 Network Map The network map shows a Hierarchical view of the Instance agents and modules filtered by an specific criteria In the normal console there are 3 different network maps By topology by groups and by policies In the Metaconsole there is only one type A variation of the Map by groups A admin 0 16 PANDORAFMS Networkmap Create networkmap Map options burbuja Pandora FMS i Main IP 192 168 70 62 LS Group _ servers Last contact 9 seconds 4 Last remote contact 11 seconds a 7 Monitors down 1 17 1 petalo Cache mem free In this case there could be found configuration options in common with the map by groups Group Except that you can t select the group All by performance Free search Layout Font size AP PANDORAFMS Screens
9. op get mandatory op2 tactical view mandatory Example http localhost pandora console include api php op get amp op2 tactical view amp apipass 1234 amp user admin amp pass pandora 28 3 1 24 get pandora servers gt 5 0 Returns the list of pandora servers call syntax op get mandatory op2 pandora_servers mandatory other cvs_separator optional return_type csv mandatory Example http localhost pandora_console include api php op get amp op2 pandora_servers amp return type csv amp apipass 1234 amp user admin amp pass pandora It returns the fields in this order name status 1 up 0 down type human readable string master 1 master 0 not master running modules total modules max delay sec delayed modules threads queued modules timestamp of update human readable string 28 3 1 25 get custom field id gt 5 0 Translate the name of custom field to the id in the data base Call syntax op get mandatory op2 custom field id mandatory other lt serialized parameters mandatory in this case custom field name lt name gt mandatory AP PHNDORAFMS API Calls NU Example http 127 0 0 1 pandora_console include api php op get amp op2 custom field id amp other mycustomfield amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 1 26 get gis_age
10. perl pandora manage pl etc pandora pandora server conf create network module My module remote tcp My agent 192 168 12 123 8080 Module description General 1 3 300 1 string for warning string for critical 29 1 2 3 Create_snmp_module Parameters module name gt lt module_kind gt lt agent_ name gt lt module_address gt module port version lt community gt oid lt description gt module group lt min gt max post proces lt interval gt warning min warning max lt critical min critical max history data snmp3 priv method snmp3 priv pass snmp3 sec level snmp3 auth method snmp3 auth user snmp3 priv pass warning str critical str enable unknown gt Description A module kind snmp will be created in an agent with the module name module kind name of the agent where it will be created the module address the associated port and the SNMP version especified Optionally it will be given a community am OID a description the module group min and max values a post process value an interval in seconds min and max values critical min and max values an history data value and the snmp3 values like methods passwords etc The default values are O for the min and max history data and post process and 300 for the interval Notes The next parameters are only for the Pandora version 5 and next versions e enable unknown eve
11. cccccccccscsccssesssssssssssssssesssssssssssssssssssssssssssssssssssssssssssssssssssessssssssssssssssssssssensa 120 T03 INSTANCO it A A 140 TNA INTA TORRENT 140 WES id ae tne ileal 141 11 Metaconsole FAQ Frequently Asked uestions RA iii isis 142 12 3 3 Text modelnstallalo en 159 1947 163 AP PANDORAFMS 15 3 SNMP Traps GENE CT ie 179 15 4 Use of the Alert on a 182 15 5 Visualizin Data in NNM uero 183 17 HA im Pandora EMS with DRBD cinco sad te t e eet dete ts caet teen Era eed ead eed 196 URL Introdascti n to DRDB AAA A me 197 172 IA SE CREDERE dac deitas nia ais rid aana ms ud toda iade ae 197 CEM A A 198 17 2 Main Heartbeat file 11 204 17 5 3 resources file ota 204 AP PANDORAFMS NU 18 in Pandora FMS with MySQL Cluster cccccccccssssessssssssssssssssssssssssssesssessesssssssessaeeess 206 Oa Ota RENTE 207 18 1 1 Cluster related terms used in Pandora FMS 207 18 1 2 Cluster Architecture to use with Pandora 5
12. Aram CINENSY Wizard EN MODULES 4 ALERTS Create alert Manage alerts AGENTS 8 1 4 1 Creation In the alert creation we will select a module where we want create the alert AR PANDORAFMS Q e O Monitoring Wizard Select the module where the alert will be created EN Group Applications v MODULES Agent search Search Q Agent 003 4 Check SSH Server ALERTS Modules 2 5 Back Create alert A PANDORAFMS Assistant Wizard After selecting the alert we will click on Create alert The following screen will be the edition of the module associated to the alert in the alert edition step A PANDORAFMS Q 5 e v B admin O O Menitoring Create module Alerts Agent 003 4 EN MODULES Alerts in module Critical condition Manual alert Warning condition Critical condition 4 Add gt Actions Pandora FMS Event ALERTS Pandora FMS Event 0 ALERT DESCRIPTION 0 Critical condition This is generic alert template to fire on condition CRITICAL Previous Next gt Alert Creation Flow PANDORAFMS Assistant Wizard Module creation Advanced Aerts data configuration Select v alert Agent creation Moddes j Select Manage agert D agent 8 1 4 2 Administration The alerts created from the Metaconsole Wizard can be managed edited
13. Bo 3 40 minutes 9 db 8B 1 1VP2 Vccp Voltage 09 2 fo 3 39 minutes 9 72 1 35v P1 MEM Voltage 2 ho minutes d 1 35v P2 MEM Voltage BE 3 44 minutes 9 db 8B 15VP1DDR3 Voltage ou 15 E fo 3 39 minutes BB 1 5V P2 DDR3 Voltage BE minutes 1 8V AUX Voltage 18 ho 343 minutes db 12 0V Voltage E us 2 3 39 minutes 3 3V Voltage EN ee 5 m minutes 3 3V STBY Voltage eo 33 2 ho 346 minutes 9 d BB 3 3V Vbat Voltage EM o 30 ho minutes d 5 0V Voltage EM so 0 345 minutes AP PANDORAFMS IPMI plugin for Pandora FMS 24 NETWORK MONITORING WITH 287 AP PANDORAFMS Introduction 24 1 Introduction Pandora FMS allows you to monitor network traffic statistics processed IPTraf IPTraf collects network activity statistics from one or all interfaces and stores all information in a logfile A passive collector filters the information based on rules and creates a tree structure with all the information One XML file per IP detected will be generated using the network activity information contained in the tree structure Once XML files are processed one agent per IP detected will appear in Pandora FMS these agents will have several modules with their network traffic
14. Specialized Storage Devices installs er upgrades to enterprise devices such as Storage Area Networks SANs This will alow you te add FCoE ISCS 2FCP disks and to fier out devices the installer should ignore k ap Next Bac If you have a special hardware disk you can use an external CD with drivers It s usual to use the default option using default drivers 151 AP PANDORAFMS Installation CentOS Installer Please name this computer The hostname identifies the computer on a network Hostname 017177 Configure the machine hostname 152 AP PANDORAFMS Installation Please select the nearest city in your time zone Selected city New York America Eastem Time America New York lt Y System clock uses UTC Back ap Next Select the time zone 153 AP PANDORAFMS Installation Centos Installer the system Enter a password for the root The root account is used for administering user Root Password Confirm Choose the password of the root user super user 154 AP PANDORAFMS Installation Centos Installer Which type of installation would you like Use All Space Removes partitions on the selected device s This includes partitions created by other operating pa systems This option will remove data from the selected devices Mate cure you have backups Replace Existing
15. Update Y If the component Wizard level is basic the macros couldn t be configured in the module creation process They will have as value the one that will be assigned to them by default in the component Instead if it is advanced they will be shown in the module edition form Wizard as normal fields in a transparent way for the user AD PANDORAFMS Q 2 admin Monitoring Create module Advanced configuration Agent burbuja 4 EN Various MODULES Interval 0 yeas Y Unit 4 Process name ALERTS Thresholds Warning tin 000 Max 0 00 Critical 6 Min 000 Max 0 00 AGENTS Previous Next gt 9 4 3 1 1 5 Modify Delete Duplicate Local Components To modify a local component we click on its name In the local components list are available options to duplicate the component and delete it 124 AP PANDORAFMS Data Management g E g g g El It is possible to delete them one by one or to select several ones and delete them in one step Network Components Management Network components refers to the templatesof network modules plugins of WMI that could be applied to create modules in the agents through the Wizard In the view you can see the list of network components already created ADO PANDORAFMS D 5 e admin Advanced Network components ei a Group All Search Search Q Total items 609 KK toX1121314151 61718191 10 12 111211131114 gt gt EA
16. Visual console New visual console Free Ram 169 15K Cache mem free ist 330 MB Avg 33041 MB 382 MB Mn 321 M 4001 5 Total process Wasted energy In traffic Out traffic The configuration and presentation of data is exactly the same as in the normal console visual maps only that data are got from the Instances in a transparent way for the user EA admin 0 6 AP PRNDORAFMS Visual console Create visualmap Auto Save Y Static Graph Label Total process Image appliance Enable link ISBO Agent petalo Module proctotal v Cancel Create A Advanced options T e VRRP gygy g AP PANDORAFMS Screens For more information please go to this section Visual maps 7 5 Netflow Y 4 admin M E sera PANDORAFMS The Metaconsole has available an option to monitor the Instances IP traffic NetFlow In the Metaconsole are configured the NetFlow monitoring parameters included the Instance in which it will be used When it is executed a request via API is done to the Instance It will be return the result already processed O The configuration is done the Metaconsole but all the monitoring work and data L4 interpretation is done in the Instance To have more information please go to the section Network management with Netflow AP PANDORAFMS Netflow 8 OPERATION AP P
17. df df P shift df No filesystems Something went wrong if df lt 0 exit 1 AP PANDORAFMS Example of Agent Plugin Development Parse filesystem usage foreach my row df my columns split row exit 1 if columns lt 4 filesystems columns 0 columns 4 if defined filesystems columns 0 all filesystems 1 while my filesystem use each filesystems Remove the trailing chop use Print module output print lt module gt n print lt name gt lt CDATA filesystem gt lt name gt n print lt type gt lt CDATA generic_data gt lt type gt n print lt data gt lt CDATA use gt lt data gt n print lt description gt of usage in this volume lt description gt n print lt module gt n exit 0 An important part of the code is the usage function sub usage print npandora_df pl viri n n print usage pandora_df n print usage pandora df tmpfs dev sdai n n In this function it describes the version and how to use the plugin It is very important and it should be shown when executing the plugin without any kind of parameter or with an action type h or help In this example is executed when the parameter h is executed the following lines verify it df SARGV 0 eq h usage exit 0 l Regarding the values re
18. 18 3 3 Starting SQL Nodes The SQL Nodes are started using the command etc init d mysql start And they are stopped with etc init d mysql stop As if it were a normal Mysql server This does that all the threads defined in the etc my cnf would be connectoed to the cluster finishing this way the complete start of the cluster 18 3 4 Visualizing the Cluster Status Once we have all the elements started es can see if they have been correctly connected to the cluster For it in the Manager console we should writte ndb_mgm And we enter in the cluster administration interface once in it we write show And we will obtain something like this Connected to Management Server at 10 1 1 221 1186 Cluster Configuration 218 A PANDORAFMS Starting the Cluster ndbd NDB 2 node s id 3 10 1 1 215 mysql 5 1 34 ndb 7 0 6 Nodegroup 0 Master id 4 10 1 1 216 mysql 5 1 34 ndb 7 0 6 Nodegroup 0 ndb mgmd MGM 2 node s id 1 10 1 1 221 mysql 5 1 34 ndb 7 0 6 id 2 10 1 1 216 mysql 5 1 34 ndb 7 0 6 mysqld API 29 node s id 11 10 1 1 215 mysql 5 1 34 ndb 7 0 6 id 12 10 1 1 216 mysql 5 1 34 ndb 7 0 6 id 13 10 1 1 216 mysql 5 1 34 ndb 7 0 6 id 14 10 1 1 216 mysql 5 1 34 ndb 7 0 6 id 15 10 1 1 216 mysql 5 1 34 ndb 7 0 6 1 1 216 mysql 5 1 34 ndb 7 0 6 id 16 10 As we can see in this exit we have the management nodes the Data nodes and the S
19. Operator Read Operator Write o 66 o 0 Chief Operator 0000 00 0 Group coordinator 00000 006060000 0 Pandora Administrator Y 060 606606006000 60 In order to know which function enables each ACLs flag from the profiles go to user manual section Profiles in Pandora FMS Adding a profile Clicking on Create it will be possible to add profiles to the ones that comes by default to customize the user access 113 AP PANDORAFMS Data Management AD PANDORAFMS 2 5 e 0 Advanced Profile management Profile name New profile View incidents Edit incidents Manage incidents View agents Edit agents Disable agents Edit alerts Manage users Manage Database Manage alerts View reports Edit reports Manage reports View events Y Edit events Manage events Pandora management Add A Then select the profile name and select the permissions that you want to assign to it O Some of these bits doesn t makes any sense in the Metaconsole However we may want bj to use the Metaconsole to synchronize profiles to the Instances where they could be useful Modify Edit a profile In the profile list there are available options to modify a profile and delete it 114 AP PANDORAFMS Data Management g g g gi Create gt 9 4 1 3 Edit my user In this section could be edited the data of the user that is authenticated in the Metaconsole
20. Phone Number Field to write the user telephone Comments Fields where comments are written Interactive charts Allows that the user could or not see the Interactive graphs and at last option to base on the option configured in the global configuration 110 A PANDORAFMS Data Management Metaconsole access Sets the user access permissions to the Metaconsole being these Basic With this access the user could user in the Wizard only the components whose Wizard level would be Basic as long as it has ACLs permissions on the group to which they belong to Advanced With this access the user could use in the Wizard any of the components regardless what their Wizard level are As long as it has ACLs permissions on the group to which they belong to Not Login If this option is selected the user could have access to the API Enable agents management This options is to enable the agent administration in the Wizard If it is disabled only the module and alert Wizard will be available Enable node access This option is to enable the access to the instances If it is enabled it will be possible to have access through the name of agents and modules in many places to the Instance consoles For example from the network map or the event view Modify Deactivate Delete an user In the user list are available options to Activate Deactivate the user Edit the user Delete the user from the Metaconsole Delete
21. Works on memory dumping to disk logs of the transactions Needs a manager to operate the recovery process Needs fast disks and fast network thas strict memory requirements thas to store all the database in memory to work fast A PANDORAFMS Introduction VII To improve the performance of the cluster more RAM can be added In this example it s supposed that the requirement of RAM is 16 GiB for each server involved in the database 18 2 Installation and Configuration The documentation is based on a SUSE installation where the installation of MySQL Cluster implies the rpms with the MySQL cluster software in this case the rpms are the following files MySQL Cluster gpl client 7 0 6 0 sles10 x86 64 rpm MySQL Cluster gpl extra 7 0 6 0 sles10 x86 64 rpm MySQL Cluster gpl management 7 0 6 0 sles10 x86 64 rpm MySQL Cluster gpl server 7 0 6 0 sles10 x86_64 rpm MySQL Cluster gpl shared 7 0 6 0 sles10 x86 64 rpm MySQL Cluster gpl storage 7 0 6 0 sles10 x86 64 rpm MySQL Cluster gpl test 7 0 6 0 sles10 x86 64 rpm e MySQL Cluster gpl tools 7 0 6 0 sles10 x86 64 rpmlibmysgqlclient16 18 2 1 Configuring SQL Node and Data In each data node or SQL node we should modify the etc my cnf configuration file that besides the current MySQL configuration should also contain some extra parameters of the cluster configuration Next these parameters are described and also the values we should give to them
22. alert templates field1 alert actions field1 alert templates field2 alert actions field2 alert templates field3 alert actions field3 alert templates id group alert actions id group Examples http 127 0 0 1 pandora console include api php opzget amp op2 tree agents amp return type csv amp other amp apipass 1234 amp user admin amp pass pandora http 127 0 0 1 pandora console include api php op get amp op2 tree agents amp return type csv amp other 20 type row group id agent name amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 1 9 get module_data Returns a list of values of a module this module is filtered by the id of module pass as id in the url And the list of values is from the now to the period limit passed as second parameter into the other parameter the first is the CSV separator Call syntax op set compulsory e op2 module data compulsory e id id modulo compulsory e other lt serialized parameters compulsory the CSV divider character and the period in seconds Examples http 127 0 0 1 pandora console include api php op get amp op2 module data amp id 17 amp other 604800 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 1 10 get graph module data Returns the chart of a module as a image file this chart is generated with the same method o
23. op get amp op2 agent module name last value amp id miguel portatil amp id2 cpu user amp apipass 1234 amp user admin amp pass pandora 28 3 1 5 get module value all agents Returns a list of agents and module value these modules are in all of agents of list and they are AP PHNDORAFMS API Calls A filtered by the name of module pass as the parameter id Call syntax e op get compulsory op2 module value all agents compulsory id name of the module compulsory This is the module name Examples http 127 0 0 1 pandora console include api php op get amp op2 module value all agents amp id example module name amp apipass 1234 amp user admin amp pa ss pandora 28 3 1 6 get agent modules Returns the list of modules of agent this agent is filtered by the id agent pass as id parameter Call syntax e op get compulsory op2 agent modules compulsory e return type lt 5 gt compulsory Output format e other lt serialized values compulsory Serialized values in order to filter by agent e id agent It s necessary to complete other mode parameter in this way other mode url encode separator separador in order to configure separator in other field Examples http 127 0 0 1 pandora console include api php op get amp op2 agent_modules amp return type csv amp other 14 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 1
24. 2009 11 12 11 30 26 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 27 7 GSM1 lt AT CMGS 94 E 2009 11 12 11 30 27 7 GSM1 gt 001100099126974346F900F1FF5CC8373BCC0295E7F437A83C07D5DDA076D93DOFABCBA069730A229741 7079BD2C0EBB406779789C0ECF41F0B71C44AF83C66FB7391D76EBC32C503B3C46BFE96516081E7693DF F230C8D89C82E4EFF17A0E 2009 11 12 11 30 27 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 31 7 GSM1 lt 0011000991269 74346F900F1FF5CC8373BCC0295E7F437A83C0 7D5DDA076D93DO0FABCBA069730A229741 7079BD2C0EBB406779789C0ECF41F0B71C44AF83C66FB7391D76EBC32C503B3C46BFE96516081E7693DF F230C8D89C82E4EFF17A0E CMGS 0 OK 2009 11 12 11 30 31 5 GSM1 SMS sent To 627934648 2009 11 12 11 30 31 6 smsd Deleted file var spool sms checked send iUegPD 2009 11 12 11 30 32 6 smsd I have to send 1 short message for var spool sms checked send mNZxHa 2009 11 12 11 30 32 6 GSM1 Sending SMS from to 34627934648 2009 11 12 11 30 32 7 GSM1 gt AT CMGS 29 2009 11 12 11 30 32 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 33 7 GSM1 lt AT CMGS 29 gt 2009 11 12 11 30 33 7 GSM1 gt 0011000B914326974346F900F1FF11D0BO9BFC968741C6E614247F8FD7736 2009 11 12 11 30 33 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 36 7 GSM1 0011000B914326974346F900F1FF11D0BO9BFC968741C6E614247F8FD7736 CMGS 1 OK 2009 11 12 11 30 36 5 GSM1 SMS sent To 34627934648
25. 25 5 2 Remote configuration A backup of the remote configuration files and collections must be performed in order to maintain the remote agent s normal behavior AP PANDORAFMS Server backup tar pcvzf collections tar gz var spool pandora data_in collections tar pcvzf md5 tar gz var spool pandora data_in md5 tar pcvzf remote_agents_conf tar gz var spool pandora data_in conf 25 6 Console backup We now perform a backup of the console so we mantain our custom images extensions and more tar pcvzf pandora console tar gz var www html pandora console AP PANDORAFMS Console backup 26 RESTORE PROCEDURE PANDORA Install the 4 1 appliance 26 1 Install the 4 1 appliance Insert the CD in your system and press a key in the boot screen The boot menu will be displayed then Welcome to PandoraFMS41RC1_Centost Boot Boot Text Mode Boot Basic Video Install Install Text Mode Memory Test Boot from local drive Press Tab to edit options CentOS 6 Community ENTerprise Operating System If you select Install Text mode the installation will be performed in text mode However if you choose the Install option the graphical installation will start recommended Choose between one of these two options and reboot the machine after the installation 26 2 Database restore Make sure that your database is up and running and the Pandora s server and agent are stopped roo
26. 7 2 2 1 1 4 Comments Module Gas Level is going to CRITICAL 100 00 Comments Add comment gt Added comment by admin looking this problern September 26 2013 1 01 pm The fourth tab shows the comments that have been added to the event and the changes that have been produced with the change of owner or the event validation A PANDORAFMS Events a 7 2 2 1 1 5 Event Responses Module Gas Level is going to CRITICAL 100 00 amp Genera Q Deta 5 Change owner None Y Update gt Change status Validated Update Comment Add comment gt Delete event Custom responses Description Delete event Ping to host Ping to the agent host y Execute gt The fifth tab shows actions or responses that could be done on the event The actions to do are the following To change the owner To change the status e To add a commentar To delete the event To execute a customized response It would be possible to execute all actions that the user has configured 7 2 2 2 Configure Events Users with ACLs EW bits will have available a tab to have access to the event configuration panel admin O O PANDORAFMS Events list f 7 2 2 3 Managing Event Filters Filters on events allow to parametrize the events that you want to see in the event console With Pandora it is possible to create predefined filters so one or several users could use them Filter
27. A PANDORAFMS Assistant Wizard From the top menu in the monitoring section AP PANDORAFMS ow Menitering Wizard MODULES 4 ALERTS Create module Manage modules 2 AGENTS All users with wizard access will be able to access to module configuration and alerts Agent configuration must be activated per user on demand 8 1 2 Action Flow In the following graph is showed the complete flow of actions that are possible to do in the Metaconsole Wizard AP PANDORAFMS Assistant Wizard Module creation 1 ro configuration m b Module edition Agent creation Agent edition Modules LAA aim 8 1 3 Modules In the module option we can create one module or edit one that is already created AP PANDORAFMS Assistant Wizard Qo admin CZE AP PANDORAFMS Monitoring Wizard EN MODULES 4 ALERTS Create module Manage modules 2 AGENTS 8 1 3 1 Creation In the module creation the first step will be select one agent where to create it It could be filtered by group or search by name between the available agents gt agents available will be those of each Instance where our user has creation Lj permissions AW AP PANDORAFMS Assistant Wizard PANDORAFMS 2 5 e Menitering Wizard Select the agent where the m
28. AP PANDORAFMS Methodology in detail A Then we configure the thresholds for these 15 modules so they have this pattern o 5e normal 50 74 warning critical We add to the configuration file of our pandora xml stress some new tokens to could define the thresholds from the XML generation PLEASE CONSIDER THAT Pandora FMS only adopts the definition of thresholds in the creation of the module but not in the update with new data module_min_critical 75 module_min_warning 50 We execute the pandora xml stress We should let it running at least for 48 hours without any kind of interruption and we should monitor with a pandora agent the following parameters N of queued packages find var spool pandora data_in we 1 CPU de pandora_server ps aux grep usr bin pandora server grep v grep awk fprint 3 pandora server Total Memory ps aux grep usr bin pandora server grep v grep awk print 4 CPU de mysqld check syntax of the execution it depends of the mysql distro ps aux grep sbin mysqld grep v grep awk fprint 3 pandora DDBB response average time usr share pandora server util pandora database check pl etc pandora pandora server conf N of monitors in unknown echo select SUM unknown count FROM tagente mysql u pandora pxxxxxx D pandora tail 1 261 A PANDORAFMS Methodology in det
29. Create A Next are detailed the form fields Name Group name Icon combo where you can select the icon that the group will have Parent combo where it is possible to define another group as parent of the group that is being created Alerts If you select the agents that belongs to the group they can send alerts if not they can t send alerts Custom ID Groups have an ID in the Database In this field it s possible to put an other customized ID that could be used from an external program to do an integration i e CMDB s Propagate ACL Allows to propagate the ACLs to the child subgroups Description Group description Contact Information of the contact accesible from the macro group contact macro Other Available Information from macro group other macro Once the groups have been selected click on Create button Modify Delete one Group In the group list are available some options to modify the group or to delete it 119 PANDORAFMS Data Management g g g El 9 4 3 Modules In the module management we find options to configure the Metaconsole components and also the Plugins 9 4 3 1 Components A component is a generic module that could be applied several times on one agent as if it was a master copy of one module generating a modules associated to one agent This way having a database of the components that we use more in our company when monitoring new agents it s very ea
30. MINOR elif ERROR MAJOR 1 then ESPECIFIC_OID expr ESPECIFIC_OID MAJOR elif SERROR CRITICAL 1 then ESPECIFIC_OID expr ESPECIFIC_OID CRITICAL elif SERROR NORMAL 1 then ESPECIFIC_OID expr ESPECIFIC_OID NORMAL else if LOG then echo n echo Error Nivel de error ERROR no especificado exit 1 fi fi 181 A PANDORAFMS SNMP Traps Generation Script iin echo COMMUNITY HOST DESTINO ENTERPRISE_OID HOST ESPECIFIC OID DESCRIPCION if LOG then echo echo echo COMMUNITY COMMUNITY ENTERPRISE OID S ENTERPRISE OID ESPECFIC OID ESPECIFIC OID DESCRIPCION DESCRIPCION gt gt LOGFILE echo usr bin snmptrap v1 c COMMUNITY HOST DESTINO ENTERPRISE OID HOST 6 n nm ESPECIFIC OID 3 ENTERPRISE OID O s DESCRIPCION gt gt LOGFILE fi usr bin snmptrap v1 c COMMUNITY HOST_DESTINO ENTERPRISE_OID HOST 6 ESPECIFIC_OID 3 ENTERPRISE OID O s DESCRIPCION if eq 0 then echo Ejecucion correcta gt gt LOGFILE echo else echo No se ha ejecutado correctamente gt gt LOGFILE echo nm fi Trunca el fichero de log si supera MAXL lineas truncate_log LOGFILE MAXL 15 4 Use of the Alert on a Module This is an screen shoot of how to use the alert defining an alert over a module The field field1 is used for the OID and to know at which group of alarms it refers to in this case you should alway
31. Name string Location string Services integer MAC address string Index integer Name string State integer String Value string Value integer SN string Unit integer ID integer NUM 1 x SIZE 0 16 O Invalid l Normal 2 OutOfRangeLo SIZE 0 10 current value 10 SIZE 0 16 O unknown 1 C 2 F 3 K 4 NUM 0 x check detailed device s manual Since we only have one sensor the OID will be 5 1 It is important to note that the device returns the temperature in degrees and without decimal comma in the output If we want to show the real value we will have to divide this value by 10 This post process can be done in Pandora And the IP address 272 AP PANDORAFMS Installation and configuration Base Name Description HWg STE Eor more information try lt a href http www hw WWW Info Text group com gt www hw group com lt a gt Temperature unit Celsius F ahrenheit Kelvin Periodic restart Periodic restart time Automatic refresh period of the Save Network Name _ Value Description IP Address 192 168 50 233 A B C D Network Mask A B C D Gateway 192 168 50 100 A B C D DNS Primary 194 179 1 101 A B C D DNS Secondary 192 168 50 2 A B C D HTTP Port Default 80 22 2 3 Step 3 Configuring the sensor in Pandora Let s go to the agent configuration screen There we are going to create a
32. Parameters None Description Validate all the alerts Example perl pandora_manage pl etc pandora pandora_server conf validate_all_alerts 29 1 4 Users 29 1 4 1 Create_user Parameters user name gt password es admin lt comments gt Description It ll be created an user with the name and password that are received as parameters It will be received also a binary value that specify if the user will be or will be not the administrator Optionally it could be also sent comments about the created user Example perl pandora manage pl etc pandora pandora server conf create user user002 renardo This user has renardo as password 29 1 4 2 Delete user Parameters user gt Description An user will be eliminated giving its name as parameter Example 391 AP PANDORAFMS Pandora FMS CLI 222 perl pandora_manage pl etc pandora pandora_server conf delete_user user002 29 1 4 3 Update_user gt 5 0 Parameters lt id_user gt field to update lt new_value gt Description A given field of an existent user will be updated The possible fields are the following email phone is admin 0 1 language id skin flash chart 0 1 comments fullname password Example perl pandora manage pl etc pandora pandora server conf update user User Id password New password 29 1 4 4 Enable user gt 5 0 Parameters lt user_id gt Description A
33. Url Hyperlink to help information that should have been previously created E Mail Email that will be associated in the alerts that belongs to the tag 9 4 5 2 Modify Delete Tags In the tag list there are available options to modify one tag and to delete it g EJ El 9 4 6 Policies In Metaconsole there is no policy system but you can manage policies instances 9 4 6 1 Policy apply From Metaconsole policies can be applied in the instances where they come from 135 AP PANDORAFMS Data Management A PANDORAFMS D 5 i Advanced Policies apply 4 4 Policies Servers Basic Linux Local Monitoring gt burbuja Basic Remote Checks petalo Basic Windows Local Monitor Apply Policies are selected that are to apply in the box on the left and on the right is selected instances in which they apply Confirm the operation clicking on the apply button 9 4 6 2 Policy management queue You can also control the application queue policy of the instances In this queue you will see all policies merged coming from all instances in order to have an overview of the status of implementation of policies and their history AP PANDORAFMS Q 5 e v admin O Advanced Policies queue fj 4 Queue filter Total items 2 petalo Basic Windows Local Monitoring All Apply Sa 7 seconds burbuja Basic Remote Checks All Apply 11 seconds You can apply a filter according to the policy type of o
34. new ArrayList lt NameValuePair gt parameters add new BasicNameValuePair user user parameters add new BasicNameValuePair pass password if apiPassword length gt 0 parameters add new BasicNameValuePair apipass apiPassword parameters addAll additionalParameters Log i TAG sent url if url toLowerCase contains https Secure connection return Core httpsGet url parameters else HttpParams params new BasicHttpParams HttpConnectionParams setConnectionTimeout params CONNECTION TIMEOUT HttpConnectionParams setSoTimeout params CONNECTION TIMEOUT DefaultHttpClient httpClient new DefaultHttpClient params UrlEncodedFormEntity entity HttpPost httpPost HttpResponse response HttpEntity entityResponse String return api httpPost new HttpPost url entity new UrlEncodedFormEntity parameters httpPost setEntity entity response httpClient execute httpPost entityResponse response getEntity return_api Core convertStreamToString entityResponse getCon tent Log i TAG received return api return return api 28 5 Future of API php Some ideas for the future of api php are Increase the API calls group Return and get values in xml jason Increase the call security for insecure environments Integrate with third tools standards 377 AP PANDORAFMS Future of API php 29 PauponA FMS CLI 378 AP PANDORAFMS Pan
35. 27 2 6 US These functions calculate the statistics for agents based on Operating Systems Doesn t use disabled agents or modules os_agents critical id_os Return the number of agents with critical status which has the given OS os_agents_ok id_os Return the number of agents with critical normal which has the given OS e os agents warning id_os Return the number of agents with critical warning which has the given OS e os agents unknown id_os Return the number of agents with critical unknown which has the given OS 27 3 Development Most extensions have been described as independent index specific for the creation of server plugin Unix agent plugin and console extensions In this section it is described how to collaborate in Pandora FMS and how to compile the Window agent from source In the future any other subject related with the development that doesn t have a specific index will be in this chapter 27 3 1 Cooperating with Pandora FMS project This project is supported by voluntary developers that support the project New developers documentation editors or people who want to cooperate is always welcome A good way to start is to subscribe to our mail list and or to the forum 27 3 2 Subversion SVN Pandora FMS development is done through SVN code revision control system You can find more information about how to enter in the SVN repositories at OpenIdeas Wiki Our SVN system is a public on
36. CDATA generic_data gt lt type gt lt data gt lt CDATA 34 gt lt data gt lt description gt of usage in this volume lt description gt lt module gt The number of returned modules by this plugin will depend on the number of configured filesystems and it could change between different executions The XML piece is added to the general XML that the software agent generates and it is sent to the Pandora server to be processed by the Data Server 32 2 Troubleshooting If Pandora FMS does not recognize your agent plugin you don t get the information you expect or the agent just doesn t want to work there are a few things which you have to keep in mind 32 2 1 Check the pandora_agent conf document The Software Agent needs a line in this file with the correct path of the plugin For example module_plugin etc pandora plugins MyMonitor pl etc pandora plugins MyMonitor conf 2 etc pandora plugins MyMonitor err MyMonitor pl is the agent plugin MyMonitor conf is the configuration file passed as an argument 411 AP PANDORAFMS Troubleshooting A EEE and MyMonitor err is a file that will receive the possible errors of the plugin execution and will keep clean the standard output 32 2 2 Reboot the pandora_agent_daemon If you have the basic version of Pandora FMS not Enterprise the Software Agent will run the plugins every five minutes For those people who can not wait it is possible to res
37. P NU RE EN TA LLL TIR 360 203 2085 Set delete IERI uicta ci back 361 AA SEC alert Temm 362 AP PANDORAFMS P VES A 362 MAA set enable E A Eu oci CIE 362 243 249 eer disable module alettt uii A rais sopa la rasta AA 363 28 32 50 set enable Modales e n 363 201 2 A1 REESE THODUIB A A ela sik 363 28 3 2 52 set create network module from 364 28 3 2539 A AS 364 25 3 5590 set add mod le i acta chaste ier celia 364 2012500 Se veles modul 3 COBRE si E Rut dia 365 253 255 setupdate mod l usi saca oii oos Load od dd do Cad dcl cid eso 365 inii cie Geste cesi esci citu cesset eerie A Dose iuto 366 28 3 2 58 set TIE eiie ba ic itae fe eai dide E 366 28 3 2959 s t credte Cost feld aa Caos aco dio ouo da Ea aa none 367 iD 00 SEL CU Di uei adidas stiles espa bas ii qo pua a a ula cis 367 28 3 2 61 set enable disable agent EM 368 29 L 1 2 Update AE ct i i A AAA CU ND E 381 29 1 1 3 Delete OOD Ue PRETERITO 381 SA EZ ACA 383 383 O
38. Total alert execution with an action by group Call syntax op get mandatory op2 alert action by group mandatory e id group mandatory e id2 id action mandatory Examples http localhost pandora console include api php 330 AP PANDORAFMS API Calls op get amp op2 alert_action b roup amp id O amp id2 3 amp apipass i234 amp user admin amp pass pandora 28 3 1 22 get event info Return all of event data This event is selected by id in the id parameter Call syntax op get mandatory e op2 event info mandatory e id id event mandatory Examples http 127 0 0 1 pandora console include api php op get amp op2 event info amp id 80 amp apipass 1234 amp user admin amp pass pandora 28 3 1 23 get tactical view Returns the next values list this values you can see in the tactical page in Pandora Console monitor checks monitor not init monitor unknown monitor ok monitor bad monitor warning monitor critical monitor not normal monitor alerts monitor alerts fired monitor alerts fire count total agents total alerts total checks alerts agents unknown monitor health alert level module sanity server sanity total not init monitor non init agent ok agent warning agent critical agent unknown agent not init global health 331 AP PANDORAFMS API Calls Nu Call syntax
39. description e snmp3 priv method AES DES e snmp3 priv pass e snmp3 sec level authNoPriv authPriv noAuthNoPriv gt e snmp3 auth method MD5 SHA e snmp3 auth user e snmp3 auth pass e disabled types event only in version 5 AP PANDORAFMS API Calls A Examples Example snmp v 3 snmp3 priv method AES snmp3 priv pass example priv passw snmp3 sec level authNoPriv snmp3 auth method MD5 snmp3 auth user pepito user snmp3 auth pass example priv passw http 127 0 0 1 pandora console include api php op set amp op2 update snmp module amp id example snmp module amp 44 0 6 20 25 26 30 15 1 127 0 0 1 60 3 public 1 3 6 1 2 1 1 1 0 180 50 00 10 60 0 SNMP 20module 20modified 20by 20APT AES example priv passw authNoPriv MD5 pepito user example auth passw amp other mode url encode separator amp apipass i234 amp user admin amp pass pandora 28 3 2 13 set apply policy Apply the policy pass as policy id into the id parameter Call syntax op set compulsory op2 apply policy compulsory e id id policy compulsory should be a policy Id Examples http 127 0 0 1 pandora console include api php op set amp op2 apply policy amp id 1 amp apipass 1234 amp user admin amp pass pandora 28 3 2 14 set apply all policies Apply all policies that are in Pandora Call syntax op set compulsory op2 apply all poli
40. e Create module Preview Agent car_003 4 EN Prevew MODULES Name Check SSH Server Description Checks port 22 is opened 4 IP Address 192 168 70 61 Warning Min ALERTS 0 00 Max 0 00 Critical Min 0 00 5 AGENTS Interval 5 minutes Unit Disabled No Alerts Critical condition Pandora FMS Event a 4 Previous Finish gt O Data to fill in depends on the component we use Depending if it is a network or a local 5 component and if it is basic or advanced Creating Web Check The web checks can have two different kinds Step by step The web checks are configured with an assistant without the need to know its syntax Advanced The web checks are configured in raw in a box text It is only for users with advanced permissions A PANDORAFMS Assistant Wizard D t y admin O PANDORAFMS Create module Agent car_003 4 EA Module type MODULES Monitor Web check Options 9 Step by step wizard Advanced ALERTS CLICK CREATE TO CONTINUE AGENTS Create A If the user doesn t have advanced permissions it won t have option to configure an O advanced check It will directly pass to configure a check Step by step tj Once you have selected the modality we click on Create The web check configuration will be done same as with monitors in 4 steps General Configuration The monitor more general data name description type and the check
41. lt gt lt gt lt gt lt gt lt gt 1 lt i gt lt gt lt gt lt gt lt tt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt IP o gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt 375 A PANDORAFMS Examples A UE gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt Sttttttttt MM e gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt TL gt lt
42. op set compulsory op2 new user compulsory e id user name compulsory will be an user name e other serialized parameters compulsory are the user configuration and data serialized in the following order lt fullname gt lt firstname gt lt lastname gt lt middlename gt password email phone lt languages gt e comments Examples http 127 0 0 1 pandora console include api php op set amp op2 new_user amp id md amp other miguel de 20dios matias kkk pandora md md com 666 es descripcion 20y 20esas 20cosas amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 30 Set update_user Update a user selected by the id into the id parameter Call Syntax op set compulsory op2 update_user compulsory e id lt user_ name gt compulsory should be an user name other lt serialized parameters gt compulsory are the module configuration and data serialized in the following order lt fullname gt lt firstname gt lt lastname gt lt middlename gt password AP PANDORAFMS API Calls lt email gt e lt phone gt e lt languages gt lt comments gt e ijs admin block size e flash chart Examples http 127 0 0 1 pandora console include api php op set amp op2 update usergid example user name amp other example fullname example lastname exa
43. the complete final configuration is at the end of this annex The cluster configuration parameters in the my cnf file are applied two two sections mysgld and mysql cluster In the mysqld section the following parameters should be added ndbcluster order to the mysql motor that it have to star the NDB motor for databases in cluster ndb connectstring 10 1 1 215 1186 10 1 1 216 1186 contains the connection string to the node s of management It is a string of characters with th host format port host port e ndb cluster connection pool 10 connexion number in the connexion reserve the cluster config ini file should also define at least one MySQL node or an API node for each connection ndb force send 1 force the buffers to be sent inmediately without waiting for other threads e ndb use exact count 0 deactivate the NDB forced to count the registers while the consulting SELECT COUNT planning to make the queries quicker ndb autoincrement prefetch sz 256 determines the possibility of leaving blanks an self incremented column With a value of 1 the blanks higher values speed the insertions but reduce the possibilities that the consecutives numbers would be used in group insertions In the mysql cluster section the following parameters should be added ndb connectstring 10 1 1 230 1186 10 1 1 220 1186 has the connection string to it the management node s It consist of a string of characters with the host form
44. the old ones MaxNoOfAttributes Defines the maximum number of features that could be defined in the cluster Each feature takes up about 200 bytes of storage for each node due to that all the metadata are replied in the servers MaxNoOfTables Defines the total maximum of objects table unique hash index and ordered index in the cluster MaxNoOfOrderedIndexes For each ordered index in this cluster an object is reserved that describes what is indexed and its storage segments By default each defined index defined an ordered index too Each unique index and primary key has an ordered index and a hash index MaxNoOfTriggers Defines the maximum number of triggers in the cluster LockPagesOnMainMemory Lock the data node processes in the memory avoiding that they become swap The possible values of the parameter are e 0 Disables the lockout default value 1 does the lockout after reserving the process memory e 2 does the lockout before reserving the process memory StopOnError Shows if the data node processes ends after an error or if they are restarted automatically Diskless Force to all the cluster to work without disk in memory This way the online backups are deactivated and it is not possible to start the cluster partially ODirect Activating this parameter we use DIRECT writing in local checkpoints and redo logs reducing the CPU load It is recommended to activate it for systems on a Linux with a kernel 2 6 or hi
45. to send amp mdash files but only allows to have access to the amp mdash data entry directory and does not allow neither to have access to other directories nor list the content of any file 176 A PANDORAFMS Vsftpd Securization 15 Panpora FMS INTEGRATION WITH HP Network Nope MANAGER SNMP 177 PANDORAFMS Pandora FMS Integration with HP Network Node Manager SNMP D It is possible to use Pandora FMS at the same time with HP Network Node Manager NNM to inform about all important events that has been collected by Pandora FMS to a global system managed with HP OpenView Network Node Manager This is useful so it allows to monitor some environments with Pandora FMS and send only those important events to another monitoring system such as NNM The Pandora FMS way of firing alerts makes it very flexible when exporting some specific data through SNMP traps This will be the mechanism chosen to do the integration We are going to create an script that will allow through the analysis of some arguments to generate some specific traps that Network Node Manager will be able to manage 15 1 Configuring NNM First of all we should fix a classification list based in the critical nature of the events generated from Pandora FMS We will do it based on five criticity levels Normal Warning Minor Major and Critical We will define these five kinds of events associated to an specific OID of user that in this case will be from
46. width 80px margin right 5px margin bottom 5px gt lt div gt __ Green when the cell for this model group and agent has OK state all modules lt li gt lt li style clear both gt lt div style float left background cc0000 height 20px width 80px margin right 5px margin bottom 5px gt lt div gt __ Red when the cell for this model group and agent has at least one module in critical state and the rest in any state lt li gt lt li style clear both gt lt div style float left background Zfce94f height 20px width 80px margin right 5px margin bottom 5px gt lt div gt __ Yellow when the cell for this model group and agent has at least one in warning state and the rest in green state lt li gt Be up m e extensions add operation menu option Modules groups estado module groups icon menu png extensions add main function mainModuleGroups 2 gt 33 7 Explain In the source code there are two parts The source code of extension The API calls functions The order of parts is indifferent but it s better put The API calls functions in the bottom of you main file extension because the style guidelines advise to add this part into bottom thus all extensions have more or less a same style 33 7 1 Source code of extension In this case for this example has two function in the same file but if you has a complex code it is better d
47. 1 CSV Reports This script generates a text file that contains the data in CSV format This script uses the authentication of the logged in user enterprise operation reporting reporting_viewer_csv php 27 1 2 6 1 2 PDF Report This script generates a PDF file This script uses the authentication of the logged in user enterprise operation reporting reporting_viewer_pdf php Events 27 1 2 6 1 3 Poput Sound Events This popup window checks periodically for new events and informs with sound events This script uses the authentication of the logged in user operation events sound_events php 27 1 2 6 1 4 CSV Events This script generates a text file that contains the data in CSV format This script uses the authentication of the logged in user operation events export csv php AP PANDORAFMS Pandora FMS Code architecture i eee 27 1 2 6 1 5 Event marquee The popup window shows a marquee with the new events in Pandora For authentication it uses the API password operation events events_marquee php 27 1 2 6 1 6 RSS events This script generates a text file that contains the events in RSS format This script uses the authentication of the logged in user operation events events_rss php 27 2 Basic functions for agent module and group status 27 2 1 Status criteria and DB encoding Agent status description Critical red color 1 or more mod
48. 1 3 6 1 4 1 24800 251 to 1 3 6 1 4 1 24800 255 These are the OID associated to the events of these five categories Event Configuration Ent 1 3 6 1 4 1 24769 4 Ent 1 3 6 1 4 1 2499 1 3 6 1 4 1 2499 Ent 1 3 6 1 4 1 3076 1 1 3 6 1 4 1 3076 1 2 Ent 1 3 6 1 4 1 311 1 1 3 6 1 4 1 311 1 13 1 3 6 1 4 1 311 1 1 3 1413111413 1 3 1 3 1 3 3 6 1 4 1 24769 10 6 1 3 6 1 4 1 311 1 1 3 6 1 4 1 311 1 13 En 1 3651 4312 436444280281 Ent 1 3 6 1 4 1 3376 1 6 1 4 1 3376 1 Ent 1 3 6 1 4 1 6101 141 1 3 6 1 4 1 6101 141 Ent 1 3 6 1 4 1 9 1 436 1 3 6 1 4 1 9 1 436 Ent 2 5517 2 5517 i ENTERPRISES 1 3 6 1 4 1 Foundry 1 3 6 1 4 1 1991 Informacion siste i ipsoLBClusterMIB 1 3 6 1 4 1 94 1 21 5 Events for Enterprise InformacionSistemas 1 3 6 1 4 1 24800 E FSWarning GCS 1 3 6 1 4 1 24800 0 227 ALL SOURCES FSMajor GCS 1 3 6 1 4 1 24800 0 228 ALL SOURCES FSCritical GCS 1 3 6 1 4 1 24800 0 229 ALL SOURCES SCRIPTWarning GCS 1 3 6 1 4 1 24800 0 230 ALL SOURCES SCRIPTMajor GCS 1 3 6 1 4 1 24800 0 231 ALL SOURCES SCRIPTCritical GCS 1 3 6 1 4 1 24800 0 232 ALL SOURCES ConfCritical GCS i 6 1 4 1 24800 0 233 ALL SOURCES Normal GCS 1 3 6 1 4 1 24800 0 234 ALL SOURCES Warning Pandora 1 3 6 1 4 1 24800 0 251 ALL SOURCES Minor Pandora 1 3 6 1 4 1 24800 0 252 ALL SOURCES 1 3 6 1 1 3 6 1 3 6 Major Pandora 4 1 2
49. 5 16 45 pandora Nasze proces2s exceed alto 2000 03 25 22 46 14 excaa2 2 00 tAm Lodo Meet lara d Nomads ns tcn ard a A PANDORAFMS Visualizing Data in NNM 16 INSTALLATION AND CONFIGURATION OF FMS SMS GATEWAY 184 AP PANDORAFMS About the GSM device 16 1 About the GSM device We are using an special device to send SMS through a serial port usb You can use a generic GSM module accesible using USB Serial Cable or a GSM Phone with a USB Serial connector supported by your hardware this is not really important Device used here is the MTX 65 v3 And could be adquired for about 100 in several websites like http matrix es e http www tdc co uk index php key gsm_ter_gprs e http www youtube com watch v OxcKAarS2M0 As you can see in Youtube it s a pretty small and compatible device with several optional components like a GSM antenna very useful if your datacenter is underground for example Using a GSM mobile phone is also a good option currently most modern mobile phones are supported on linux 16 2 Installing the Device The first step is to install the hardware device This device is composed of several parts Standard USB cable with small connector and an end Power supply in this sample is European 220v if you live in USA please be sure that power supply supports 110v SIM card Pandora FMS SMS gateway device Open the
50. 50 or more of the space required on the data node to store uncompressed dk dk dk dk dk dk HH 231 A PANDORAFMS Appendix Examples of Configuration Files iin checkpoint files CompressedLCP 1 Controlling Timeouts Intervals and Disk Paging Most of the timeout values are specified in milliseconds Any exceptions to this are mentioned where applicable TimeBetweenWatchDogCheck 70 4G 6000 To prevent the main thread from getting stuck in an endless loop at some point a awatchdoga the number of milliseconds between checks If the process remains in the same state after three checks the watchdog thread terminates it TimeBetweenWatchDogCheck 40000 TimeBetweenWatchDogCheckInitial 70 4G 6000 This is similar to the TimeBetweenWatchDogCheck parameter except that TimeBetweenWatchDogCheckInitial controls the amount of time that passes between execution checks inside a database node in the early start phases during which memory is allocated TimeBetweenWatchDogCheckInitial 60000 StartPartialTimeout 0 4G 30000 This parameter specifies how long the Cluster waits for all data nodes to come up before the cluster initialization routine is invoked This timeout is used to avoid a partial Cluster startup whenever possible This parameter is overridden when performing an initial start or initial restart of the cluster The default value is 30000 milliseconds 30 seconds 0 disables
51. 6 Console restore We now perform a restore of the console so we mantain our custom images extensions and more root localhost tar zxvf pandora_console tar gz C 26 7 Starting Pandora FMS server and agent The last step is to start the Pandora FMS server and agent 297 AP PANDORAFMS Starting Pandora FMS server and agent Oe root localhost etc init d pandora_server start root localhost etc init d pandora_agent_daemon start AP PANDORAFMS Starting Pandora FMS server and agent 27 DEVELOPMENT IN Panpora FMS AP PANDORAFMS Pandora FMS Code architecture 27 1 Pandora FMS Code architecture 27 1 1 How to make compatible links For all links you must use the ui get full url function e How to use ui get full url Before the call you must include functions ui php You need the url for the refresh For example url refresh ui get full url You need the url for a relative path For example Old method url config homeurl relative path file script php New method url ui get full url relative path file script php Andin javascript It is just as easy For example Old method php url config homeurl relative path file script php 2 gt lt script type text javascript gt jQuery post lt php url gt ps lt script gt New method lt php url
52. 7 get policies Returns the list of polities of agent this agent is filtered by id into the other parameter Call syntax e op get compulsory op2 policies compulsory e return csv compulsory e other lt serialized values optional Serialized values for filter policy by policy agent e jid agent Examples http 127 0 0 1 pandora console include api php opzget amp op2 policies amp return type csv amp other amp other mode url encode separator 321 AP PANDORAFMS API Calls O amp apipass 1234 amp user admin amp pass pandora 28 3 1 8 Get tree_agents Returns a complete list structured by the groups in the first level agents in the second level and modules in the third level This list is filtered by the other parameter Call Syntax op get compulsory op2 tree agents compulsory e return return kind compulsory that could be csv or csv head e other string or serialized parameters optional in this case could be the divider or a parameter list in order and separated by the divider character We are going to examine the two cases e separator The divider yes of the csv e separator csv character that replaces the CR lt fields 1 gt lt fields 2 gt lt fields N gt it will compose the following parameters in order the divider character could be specified in other mode e separator csv gt divider of the fields in the CSV e charact
53. A PANDORAFMS SNMP Traps Generation Script iii MAIN Crea log si no existe f LOGFILE amp amp touch LOGFILE for linea in CONF grep v g elif z echo linea grep ENTERPRISE OID then ENTERPRISE OID echo linea grep ENTERPRISE OID awk sp elif z echo linea grep WARNING 1 techo SWARNING MINOR MAJOR CRITICAL NORMAL do if z echo linea grep HOST 1 then HOST DESTINO echo linea grep HOST awk F fprint 2 elif z echo linea grep COMMUNITY 1 then COMMUNITY echo linea grep COMMUNITY awk F fprint 2 print 2 then WARNING echo linea grep WARNING awk F print 92 elif z echo linea grep MINOR then MINOR echo linea grep MINOR awk F print 2 elif z echo linea grep MAJOR 1 then MAJOR echo linea grep MAJOR awk F print 2 elif z echo linea grep CRITICAL then CRITICAL echo linea grep CRITICAL awk F print 2 elif z echo linea grep NORMAL 1 then NORMAL echo linea grep NORMAL awk F fprint 2 elif z echo linea grep LOG 1 then LOG echo linea grep LOG awk F print 2 else LINEA echo 11 fi done if ERROR WARNING then ESPECIFIC_OID expr ESPECIFIC_OID WARNING elif SERROR MINOR 1 then ESPECIFIC_OID expr ESPECIFIC_OID
54. A A A 396 23 7 2 Add agent 10 OA is 396 29 1 7 4 Delete Ac policy IES oi bon di aa daa ipic 396 oI RERO 399 281 81 Create mettlow iarciet a aaa iae tn Seta paa adea calet uR cn 399 PUN Ti A AA AA 399 O romi Mle AA A 399 29 1 9 2 ENE O Di A A I in aad o dad pea 400 AP PHNDORAFMS 32 1 Example of Agent Plugin Developed di ido 409 322 TE A abe D od dl 411 32 2 1 Check tbe pandora agent conf A di 411 32 2 2 Reboot the pandora agent IIA sonare eaa 412 Debug O A a e 412 32 25 PI cn A A AA A MORE 413 ad Console a cix ai ds 414 33 1 Extension ds 415 33 2 Directory OL o 415 21 2 1 Sy ORM A 415 04 APT EI A 416 33 4 1 extensions add operation menu AO rd cd 416 33 4 2 extensions add godmode menu ODflOn sittar totiens 416 3343 extensions add Man CO di A o 416 33 4 7 extensions add opemode fab iii 416 33 4 8 Father IDs i TR A RO 417 AP A NA O 421 23 71 code OT ed iii 421 2372 API calls PUNCU ONS Ai 192 Svo Dosage bates 422 22 73 Directory orgaz OB A na C bt E da d 423 Sil tecto occi tod bu sect Poit con A d cai cu c 423 AP PANDORAFMS Introduction um 1 INTRODUCTION AP PANDORAFMS Introduction 3 5 5 V
55. AP PHNDORAFMS Explain The order of call the functions is indifferent You can call first one and second another or any other form 33 7 3 Directory organization Archivo Editar Ver Marcadores Solapas Ayuda e E gt Atras Subir Recargar Carpeta personal Equipo Buscar ugar var www pandora console extensions E 100 Vistadeicono Arbol v a pandora console X Dnp P attachment dbmanager hello module groups AUTHORS P w ChangeLog update_manager dbmanager php hello php COPYING ua enterprise 7 extensions module_groups php update_manager gt dbmanager php dbmanager php b hello hello php 7 module groups icon menu png module groups php gt wal update manager undate mananer nhn 8 elementos espacio libre 109 7 GiB The instalation of extension is very easy because the Pandora Console search new extensions and add into system when new extension is found You only copy all files of extensions into the directory extension in your Pandora Console instalation But you must set the permissions for the Pandora Console can read the files and subdirectories of extension In the screenshot the extension has a directory structure module groups icon menu png module groups php And the extension directory is for example in var www pandora console 33 7 4 Subdirectory In this case the example has one subdirectory and
56. Add the gis data agent Call syntax op set compulsory e op2 gis agent only position compulsory e id lt indice gt compolsory agent index other par metros serializados gt compulsory gis data lt latitude gt lt longitude gt lt altitude gt e ignore new gis data e manual placement e c start timestamp end timestamp e number of packages e description save history e description update gis e description first insert 28 4 Examples Several examples in several languages about to call Pandora API Ejemplo http 127 0 0 1 pandora5 include api php apipass caca amp user admin amp pass pandora amp op set amp op2 gis agent amp id 582 amp other mode url enco de separator amp other 2967C2967 0967 C0967 C0967 C2000 01 01 01963A01963A01967 C0967 C666967 Caaa 967 Cbbb967 Cccc 28 4 1 PHP php ip 192 168 70 110 pandora url pandora5 apipass 1234 user admin password pandora op get 0 2 all agents return type csv other other mode url http ip pandora url include api php SUL A PANDORAFMS Examples A url apipass apipass url amp user user url amp pass password url amp op url amp op2 0p2 if id url amp id id if id2 u
57. Management g e e al el Local Components Management The local components refers to the local modules templates that can be applied to create modules in the software agents through the Wizard In the view you can see the list of the local components already created 4 admin 9 Advanced AP PANDORAFMS Local components OREA Group All Search 05 All Search Q Total items 57 K rox11215l PAN RA ee fad O Busy XML Threads Citrix Cache mem free MacOS Citrix_Sessions Citrix qm CPU Free A Linux CPU Load n Microsoft Windows cpu_system g BSD CPU_System HP UX qm 122 A PANDORAFMS Data Management 9 4 3 1 1 3 Create Local Component To create a new local component click on Create button It shows the following form A admin 9 PANDORAFMS Q Component groups ORAL Name Norton Parent Antivirus M Update O The configuration items are these Name Component name This name will be visible when you select the component when you create a module for one agent OS Operative system for which the component is Group The group in which the module will be It is useful to filter and order by monitoring technologies Description Module description In a predefined way a description already exists which could be changed Configuration Component configuration same as the module configuration for the software
58. Metaconsole is Web portal where you can visualize synchronize and manage an unified way different Pandora FMS monitoring systems called Instances from now You can also read other similar terms like nodes This way the data management of different monitoring environments will be done in a transparent way for the user We divide the Metaconsole interaction possibilities on the Instances in three different categories Visualization There are different ways to visualize data Lists tree views reports graphs etc Operation The creation edition and deleting of the Instance data through the Assistant Wizard Administration The configuration of the Metaconsole parameters and also the synchronization of data between Metaconsole and Instances 1 1 Interface Through a simplified interface compared with Pandora FMS the actions availables in the Metaconsole are distributed in 6 groups Monitoring Tree view Tactic view Group view Alert view Monitor view Wizard Events Reports Create new reports Reports Templates Template wizard Screens Network map Visual console Netflow Advanced Synchronization User management Agent management Module management Alert management Tag management Policy management Category management AP PANDORAFMS Interface DD Metasetup AP PANDORAFMS Interface 2 COMPARATIVE AP PANDO
59. Pandora FMS SMS gateway device and put the SMS card inside 185 AP PANDORAFMS Installing the Device A Plug to network in the power input plug the USB cable in the SMS Gateway device and connect the other end to the Pandora FMS server using a standard USB port 186 PANDORA Installing the Device When you connect the device to the server wait a few seconds and run dmesg command from the command line you should see something like this screenshot This means device has been recognized by the kernel and it s ready to accept commands on a device like dev ttyACMO OR unknown p tg3 dev vmnet op 7 d does exist allocating memory dev et ssfully opened bridge ADDR NETDEV_UP ethO link is not ready O attached bridge O disabling the bridge bridge 0 down no IPv6 routers pr routers pre g uhei_hed and address 2 3 configuration 1 chosen fr choice 3 1 0 ttyACMO USB A for USB F rr AAA rr rr rr J adapters If you re here the hardware setup is done If not please review all steps and be sure that Device is connected and led is blinking in a green color Device is connected to the USB port both sides of wire one side to the SMS device and other side to the Pandora FMS server host Device has a SIM card inside and it s placed properly 16 3 Configure SMSTools to Use the New Device This device is managed by a software packag
60. Pandora FMS points to the old master server will have old information This is one of the most problematic points and most problems comes from here The first Switchover that means when the official MASTER goes down and the official SLAVE becomes the NEW master is not a problem it s fully automatic since systems do the queries against the SLAVE New master server The problem is the second switchover that means when you want to have the old master to become the official master again In this step you need to re done the full process to sync all the HA model that means 1 Stop all pandoras 2 Dump the database from the old slave Pollux to a clean SQL s mysqldump B u root pnone pandora gt tmp pandoradump sql 3 Copy the sql dump to the official master Castor 4 Restore the SQL and drop all old information ET drop database pandora ass source tmp pandoradump sql 5 In this point both databases are equal so just obtain the coordinates to set slave back to replicate and degrade to SLAVE Get the coordinates from the official MASTER m SHOW MASTER STATUS File Position 1 Binlog_Do_DB 1 Binlog_Ignore_DB 1 mysql bin 000003 234234 pandora mysql File and Position are the co
61. Raw state You could have access to the module view where are shown the received data in one table If the module has alerts it will show an alert icon Clicking on the icon it will show information about the module alerts at the right side The templates to which they correspond and their actions Clicking on the module name it will show at the right side information about it Name Type module group description 7 1 2 Tactical View The tactical view of the Metaconsole is composed of Table with a summary of the agents and modules status Table with the last events KD PANDORAFMS Q t e Monitering Tactical view State of agents 44 1 3 4 State of alerts 2 1 State of modules 326 1 3 COI SCT LANPRO_UPSI 6 es 085 LANPRO_UPS3 415 pete 104 183 182 181 car_004 180 CT MEM CTT ST pt 179 417 XA INIA E Me Un pu More events gt 7 1 2 1 Information about Agents and Modules The number of agents modules and alerts of each status is shown in a summary table A PANDORAFMS Monitoring O Agents Modules Normal Agents Modules Warning e Agents Modules Critical Agents Modules Unknown Agents Modules Not started Alerts defined Alerts fired 7 1 2 2 Last Events The last 10 events are shown This view is only informative it is not possible to validate events neither see thei
62. Sensor installation Let s get started with the HWg STE sensor Manufacturer documentation http www hw group com products HWe STE STE ip temperature sensor en html Sensor manual http www hw group com download HWg STE MAN en pdf It is really important to take care while configuring the IP address to access the temperature sensor and make sure it is connected We also need to know its OID For this purpose we must access and configure the device via web 271 AP PANDORAFMS Installation and configuration Base Information 05 07 2011 Sensors General State X Name Current Value Tm In the screen System gt TXT List of common SNMP OID s we can check the OID of our sensor HNg STE SNMP OID description 1 3 6 1 2 1 1 1 0 System 1 3 6 1 2 1 1 2 0 System 1 3 6 1 2 1 1 3 0 System 1 3 6 1 2 1 1 4 0 System 1 3 6 1 2 1 1 5 0 System 1 3 6 1 2 1 1 6 0 System 1 3 6 1 2 1 1 7 0 System 1 3 6 1 4 1 21796 4 1 70 1 0 System Sensors Values 1 x 1 3 6 1 4 1 21796 4 1 3 1 1 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 2 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 3 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 4 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 5 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 6 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 7 n Sensor 1 3 6 1 4 1 21796 4 1 3 1 8 n Sensor For more details analyze MIB file or Description string Ob jectID ob jid UpTime timeticks Contact string
63. agents Wizard level The Wizard level is fixed It can be basic or advanced Type Type of data that the module returns Module group Group to which the module will belongs to Interval Module execution intervale Warning Critical status Minimum and Maximum range for the warning and critical status FF threshold Number of times that a value should be return for it could be considered right Unit Field to show the value unity Post proccess Value which the value that the module will return will be multiplied by Critical warning unknown instructions Instructions that will be executed when the module goes to a critical warning or unknown status Category Category to which the module will belongs to Tags Tags association to the policy 9 4 3 1 1 4 Macros It is possible to define macros in the local components These macros will be used in the parameter module exec and will have the structure field1_ field2 fieldN Each macro will have three fields Description Default value and Help Description It will be the tag next to the field in the module form Default value Optional value to load by default in the module form field Help Optional field to add additional information to the field If it is defined a tip will be shown next to the field with this string 123 AP PANDORAFMS Data Management NENNEN Description field Process name Default value fieldt Help fieldi Add macro
64. agents Stage 2 Deployment of 3000 agents Stage 3 Deployment of 6000 agents 257 AP PANDORAFMS Example of Capacity Study NENNEN In order to determine exactly Pandora s FMS requisites in deployments of this data volume you should know very well which kind of monitoring you want to do For the following study we have taken into account in an specific way the environment characteristics of a fictitious client named QUASAR TECNOLOGIES that could be summarized in the following points Monitoring 9096 based on software agents Homogeneous systems with a features serial grouped in Technologies policies Very changeable intervals between the different modules events to monitor e Big quantity of asynchronous information events log elements Lot of information about processing states with little probability of change Little information of performance with regard to the total After doing an exhaustive study of all technologies and determine the reach of the implementation identifying the systems and its monitoring profiles we have come to the following conclusions There is an average of 40 modules events per system The average monitoring interval is of 1200 seconds 20 min There are modules that reports information every 5 minutes and modules that does it once per week From all the group of total modules 240 000 it has been determined that the possibility of change of each event for each sample i
65. amp id miguel portatil amp id2 test amp other mode url encode separator amp otherzmemfree amp apipass 1234 amp user admin amp pass pandora 28 3 2 43 set alert actions Add actions into a alert Call syntax op set compulsory op2 alert actions compulsory id agent name gt compulsory id2 alert template name gt compulsory other mode url encode separator optional other lt serialized parameters optional are the following in this order module name compulsory action name gt compulsory lt fires min gt optional lt fires max gt optional Examples http 127 0 0 1 pandora console include api php op set amp op2 alert actions amp id miguel portatil amp id2 test amp other mode url encode separator amp other memfree test amp apipass 1234 amp user admin amp pass pandora http 127 0 0 1 pandora console include api php op set amp op2 alert actions amp id miguel portatil amp id2 test amp other mode url encode separator amp other memfree test 1 3 amp apipass 1234 amp user admin amp pass pandora 28 3 2 44 set new_module Create a new module Call Syntax op set compulsory op2 new module compulsory 360 AP PANDORAFMS API Calls NU id lt agent name gt compulsory id2 lt new module name gt compulsory other mode url encode separator optional other lt serialized parameters optional a
66. and deleted A The alerts created in the Instance won t be visible in the Wizard The first step is to select the alert that we want manage We can filter by group and search by agent to find it faster AP PANDORAFMS Assistant Wizard AP PRNDORAFMS 5 e A Monitonng Wizard Select the alert to be edited or deleted Group Applications y MODULES Agent search Search Q Agent car 003 v 4 Modules Check SSH Server ALERTS Critical condition Alerts AGENTS Back Delete Edit amp Once it has been selected we can click on Delete to delete it or on Edit to edit it If we click on Edit we will go same as when we create an alert to the edition of the associated module in the alert edition step AP PANDORAFMS Assistant Wizard AD PANDORAFMS Q 5 jJ on O O Menitoring Create module Alerts Agent car_003 ER MODULES Nerts in module Critical condition Manual alert Warning condition Critical condition 4 Add gt Actions Pandora FMS Event ALERTS Pandora FMS Event ALERT DESCRIPTION 0 Critical condition This is a generic alert template to fire on condition CRITICAL 6 Previous Next gt Alert Management Flow AP PANDORAFMS Assistant Wizard Module creation Agent creation Agent edition Agents EE 8 1 5 Agents In the option of agents we can create an agent or edit an already cr
67. answer 2009 11 12 11 30 14 7 GSM1 lt AT CPIN CPIN SIM PIN OK 2009 11 12 11 30 14 5 GSM1 Modem needs PIN entering PIN 2009 11 12 11 30 14 7 GSM1 gt AT CPIN 2920 2009 11 12 11 30 14 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 15 7 GSM1 lt AT CPIN 2920 OK 2009 11 12 11 30 15 7 GSM1 gt AT CPIN 2009 11 12 11 30 15 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 15 7 GSM1 lt AT CPIN CPIN READY OK 2009 11 12 11 30 15 6 GSM1 PIN Ready 2009 11 12 11 30 15 6 65 1 Checking if Modem is registered to the network 2009 11 12 11 30 15 7 GSM1 gt AT CREG 2009 11 12 11 30 15 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 16 7 GSM1 lt AT CREG CREG 0 2 OK 2009 11 12 11 30 16 5 GSM1 Modem is not registered waiting 10 sec before retrying 2009 11 12 11 30 26 7 GSM1 gt AT CREG 2009 11 12 11 30 26 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 26 7 GSM1 lt AT CREG CREG 0 5 OK 2009 11 12 11 30 26 6 65 1 Modem is registered to a roaming partner network 2009 11 12 11 30 26 6 GSM1 Selecting PDU mode 2009 11 12 11 30 26 7 GSM1 gt AT CMGF 0 2009 11 12 11 30 26 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 26 7 GSM1 lt AT CMGF 0 OK 2009 11 12 11 30 26 7 GSM1 gt AT CMGS 94 189 PANDORAFMS Configure SMSTools to Use the New Device C
68. conf disable group Firewalls 29 1 1 5 Enable group Parameters group name gt Description The agents of the group considered as parameter will be disabled with the execution of this option If we pass All as group all agents from all groups will be enabled Example perl pandora manage pl etc pandora pandora server conf enable group All 381 AP PANDORAFMS Pandora FMS CLI 29 1 1 6 Create_group Parameters lt group name gt lt parent_group name gt lt icon gt lt description gt Description A new group will be created if it doesn t exist and optionally can be assigned a parent group a icon the icon name without extension and description The parent group by default is and the default icon is empty string without icon Example perl pandora_manage pl etc pandora pandora_server conf create_group New group Parent group computer 29 1 1 7 Stop_downtime gt 5 0 Parameters lt downtime_name gt Description Stop a planned downtime If the downtime is finished a message will be showed Example perl pandora_manage pl etc pandora pandora_server conf show_downtime Downtime name 29 1 1 8 Get_agent_group gt 5 0 Parameters lt agent name gt Description Get the group name of a given agent Example perl pandora_manage pl etc pandora pandora_server conf get_agent_group Agent name 29 1 1 9 Get_agent_modules g
69. dk dk dk dk db dt db db db Gt A PANDORAFMS Appendix Examples of Configuration Files iin The reporting level for events generated as part of graceful shutdown of a node LogLevelShutdown 15 LogLevelStatistic 0 15 0 The reporting level for statistical events such as number of primary key reads number of updates number of inserts information relating to buffer usage and so on LogLevelStatistic 15 LogLevelCheckpoint 0 15 0 The reporting level for events generated by local and global checkpoints LogLevelCheckpoint 8 LogLevelNodeRestart 0 15 0 The reporting level for events generated during node restart LogLevelNodeRestart 15 LogLevelConnection 0 15 0 The reporting level for events generated by connections between cluster nodes LogLevelConnection 0 LogLevelError 0 15 0 The reporting level for events generated by errors and warnings by the cluster as a whole These errors do not cause any node failure but are still considered worth reporting LogLevelError 15 LogLevelCongestion 0 15 0 The reporting level for events generated by congestion These errors do not cause node failure but are still considered worth reporting LogLevelCongestion 0 LogLevelInfo 0 15 0 The reporting level for events generated for information about the general state of the cluster LogLevelInfo 3 MemReportFrequency 0 4G 0 This parameter controls how
70. error s on other node s Arbitration error Error 2305 Error data Arbitrator decided to shutdown this node Error object QMGR Line 5300 0x0000000e Program ndbmtd Pid 30515 Trace var lib mysql cluster ndb_3_trace log 1 var lib mysql cluster ndb_3_trace log 1_t1 var lib mysql cluster ndb_3_ Time Tuesday 24 November 2009 12 01 59 Status Temporary error restart node Message Node lost connection to other nodes and can not form a unpartitioned cluster please investigate if there are error s on other node s Arbitration error Error 2305 Error data Arbitrator decided to shutdown this node Error object QMGR Line 5300 0x0000000a Program usr sbin ndbmtd AP PANDORAFMS Cluster Logs O pia 10348 Trace var lib mysql cluster ndb 3 trace log 2 var lib mysql cluster ndb 3 trace log 2 t1 var lib mysql c As we can see it leaves a trace in the following files var lib mysql cluster ndb 3 trace log 2 var lib mysql cluster ndb 3 trace log 2 tl We can see a piece of one of these files and see how it is Signal r bn 252 QMGR 3 r sigId 411879481 gsn 164 CONTINUEB prio O s bn 252 QMGR 5 3 s sigId 411879485 length 3 trace 0 sec fragInf 0 H 00000005 H 00000002 H 00000007 Signal r bn 253 NDBFS r proc 3 r sigId 411879482 gsn 164 CONTINUEB prio O s b
71. execution in the scheduler before they be sent SchedulerSpinTimer Time of execution in microseconds of the threads before sleeping MaxNoOfExecutionThreads Number of execution threads for 8 or more cores it is recommended to fix this parameter with an 8 value 215 AP PANDORAFMS Installation and Configuration im 18 2 2 4 Individual Configuration Parameters for each Data node It should be a section ndbd for each data node id node identifier it should be unique in all the configuration file Hostname host name or IP address of the data node 18 2 2 5 Common Parameters to API or SQL ArbitrationRank this parameter is useful to define which node works as arbitrator the management nodes and the SQL nodes could work as arbitrators it is recommended that the management nodes would have high priorityO you can take values from O to 2 e 0 The node will never be used as arbitrator 1 the node has high priority It will have priority on nodes of low priority 2 the node has low priority and will be only used as arbitrator if there are no other priority nodes In case of API or SQL nodes it is recommended to fix the ArbitrationRank value to 2 allowing that it would be the manager nodes that should have ArbitrationRank to 1 which have the rule of arbitrator BatchByteSize limits the process blocks by batchs that are used when we do complete scans of the tables or scans by ranks on indexes BatchSize limits
72. exit Backup Id 5 Nodeid 3 AP PANDORAFMS Cluster Backups C path var lib mysql cluster BACKUP BACKUP 5 ee version in backup files Version 5 0 51 In the second and consecutive nodes it will be similar but without the m parameter restore b 5 n 4 r var lib mysql cluster BACKUP BACKUP 5 The options that will be given to it are detailed next b Shows the backup number n shows the specific node that could be seen in the manager with a show m shows that the cluster meta data should be restored r shows that data should be restored in the cluster After this you should put the path to the directory put the path in the backup we have put in the b 18 5 Cluster Logs The MySQL cluster provides two kinds of logs 18 5 1 The Cluster log Includes the events generated by each node of the cluster It is the most recommended log to see if something fails so it includes the information of the whole cluster By default this log is at the directory var lib mysql cluster ndb 1 cluster log An example of this kind of logs is this 2009 05 26 11 56 59 MgmSrvr INFO Node 5 mysqld server id 0 2009 05 26 12 14 32 MgmSrvr INFO Mgmt server state nodeid 6 reserved for ip 10 1 1 220 m_reserved_nodes 0000000000000062 2009 05 26 12 14 32 MgmSrvr INFO Node 6 mysqld server id 0 2009 05 26 13 35 47 MgmSrvr INFO Mgmt serve
73. from the Instances The Metaconsola also store their own data Some of them are configurations that are used to visualize data that it gets from the Instances Reports Network Maps Netflow Others are data that is created and stored in the Metaconsole but they should be synchronized with the Instances Users Groups Components Alerts 140 AP PHNDORAFMS Wizard Su 10 5 Wizard Assistant to create modules Using the module components and the alert templates it will be possible to create modules of different types in the Instances in an easy and transparent way In the wizard the different instances are not distinguished All agents and modules will be shown mixed as if they come from the same source 141 AP PANDORAFMS Wizard 11 MeraconsoLE FAQ FREQUENTLY ASKED QUESTIONS 142 A PANDORAFMS I can t see the agents of one group to which I have access to iin 11 1 I can t see the agents of one group to which I have access to The user should have the same permissions in the Metaconsole and in the node Check it The correct creation flow is to create and assign permissions to the user from the Metaconsole and synchronize them 11 2 I change the permissions to one user and it doesn t work To change the permissions of one user we should do it from the Metaconsole and we will synchronize this user from the Synchronization section The profile synchronization is based on cre
74. go fine Check if everything is correct In slave server and master server take a look on running processes with following SQL command mysql gt show processlist Should show something like eee See ee See Id User Host db Command Time State Info a a a a 32 root localhost NULL Sleep 72 NULL 36 system user NULL Connect 906 Waiting for master to send event NULL 37 system user NULL Connect 4 Has read all relay log waiting for the slave I O thread to update it NULL 39 root localhost NULL Query O NULL show processlist 4 dieses soon sesos aseo o o ae ea e o a 19 5 Switchover That means do the slave to become the master In the event MASTER server is down or for any reason the VIP points to the SLAVE server you must be sure that the SLAVE server executes following SQL commands 251 AP PANDORAFMS Switchover STOP SLAVE es RESET MASTER Your Slave server is now working as MASTER SLAVE doesnt use the replication log from the MASTER and the MASTER is now out of sync that means if your
75. group name group id group id from name group name if group id false echo Group doesnt exist return number of modules group modules group id echo number of modules 28 2 1 2 Call example This call example gets the number of modules of the group Servers http 127 0 0 1 pandora console include api php opzget amp op2 extension amp ext name module groups amp ext function groupmodules amp id Servers amp api pass 1234 amp user admin amp pass pandora 317 New Calls Extension in the API AP PANDORAFMS 28 2 2 API Functions The following functions could be used in the function code of your call returnError typeError returnType gives back an error in an standardized way for all calls typeError by now id_not_found or null returnType by now string or error message returnData returnType data separator is the function that returns the API call data returnType that could be string csv csv_head data is an array that contains the data as well as its format It has the following fields type compulsory that could be string and array list index optional contains a numeric index array containing the alphanumeric index that are wanted to take out through exit data compulsory contains and string with the data or an array of alphanumeric index or numeric index with the data 28 2 3 Example function api
76. in filled space For 50 checks per agent it is 250 MB per year In a non conventional system asynchronous like Pandora FMS For a check with an average of 0 1 variations per day we have a total of 12 3 KB per year in filled space For 50 checks per agent this results in 615 KB per year 20 1 2 Specific Terminology Next is described a glossary of specific terms for this study for a better comprehension Fragmentation of the information the information that Pandora FMS manages could have different performances it could change constantly e g a CPU percentage meter or be very static for example determine the state of one service As Pandora FMS exploits this to compact the information in the DB it s a critical factor for the performance and the study of the capacity so the more fragmentation the more size in the DB and more capacity of process will be necessary to use in order to process the same information Module is the basic piece of the collected information for its monitoring In some environments is known as Event Interval is the amount of time that pass between information collects of one module Alert is the notification that Pandora FMS executes when a data is out of the fixed margins or changes its state to CRITICAL or WARNING 20 2 Example of Capacity Study 20 2 1 Definition of the Scope The study has been done thinking about a deployment divided in three main phases Stage 1 Deployment of 500
77. interval 2 Shutdown the primary node Push the poweoff button or Execute halt on root console 3 Put a tail f var log ha log in secondary node to watch how is working the switchover 4 Switchover can take 3 5 seconds A PANDORAFMS Testing the HA Total failure test 18 iN Panpora FMS MySQL CLUSTER AP PANDORAFMS Introduction 2 18 1 Introduction MySQL Cluster allows the database clustering non sharing scenario This reduces the number of single points of failure as it s possible to use inexpensive hardware with few requirements while still having redundancy of hardware MySQL Cluster mixes the MySQL database server with an in memory clustered storage engine called NDB In our documentation when we talk about NDB we talk about the storage engine meanwhile when we talk about MySQL Cluster we talk about the combination of the database server technology and the NDB storage engine A MySQL Cluster is a set of servers each one running several processes including MySQL servers data nodes for the NDB storage engine management severs and probably specific programs to access the data All data stored in a MySQL Cluster can be replicated so it can handle the failure of a single node without any more impact than a few transactions aborted as their status was lost with the node As transactional applications are supposed to handle transaction errors this shouldn t be a problem 18 1 1 Cl
78. jid agent e disabled id module group min warning max warning str warning min critical max critical e str critical ff threshold e history data e ip target e module port lt community e snmp oid e module interval e post process e min value max value custom id description e id plugin plugin user plugin pass e plugin gt e disabled types event only in version 5 AP PANDORAFMS API Calls Examples http 127 0 0 1 pandora_console include api php op set op2 update plugin module amp id example plugin 44 9 2 0 0 0 0 0 0 127 0 0 1 0 0 300 0 0 0 0 plugin 20module 20from 20api 2 admin pass p 20max amp other_mode url encode separator amp apipass i234 amp user admin amp pass pandora 28 3 2 11 set update_data_module With this call you can add database module data but you cannot modify configuration file of the agents associated to the module Update the local module Call sintax op set compulsory op2 update data module compulsory e id module name gt compulsory should be a module name e other lt serialized parameters compulsory are the module configuration and data serialized in the following order e jid agent e disabled id module group min warning max warn
79. main manager Using the starting script etc init d cluster mgmt start Or also from the command line usr sbin ndb mgmd c pandoradbhis ndb nodeid 2 configdir var lib mysql cluster At this point it is possible to connect to any of the two managers and show the status with a SHOW but it is important to show that at this moment of the process the starting the manager nodes do not see each other so they communicate through the data nodes and because of this any of them will show a different exit in which the only connected node of the cluster is the manager node itself Once the 2 manager nodes have been started we can start launching the 2 data nodes both in pandoradb1 and in pandoradb2 as it has been shown before for example with the starting script etc init d cluster node start The process for starting the data nodes is slow and has several stages that could be followed in the cluster log While doing this you should start the SQL and API nodes both in pandoradb1 as inpandoradb2 as we have said before AP PANDORAFMS General Procedures etc init d mysql start Once all the starting orders have been given you should check in the cluster log that the starting is completed without any error At the end you could see that all the servers are connected form the manager with the SHOW command ndb_mgm e SHOW And seeing that all the started nodes are connected 1
80. new agent and fill all the relevant information This agent must have the same IP address we ve just configured in the sensor 273 AP PANDORAFMS Installation and configuration Agent configuration Sensor_CPD Agent name Sensor CPD Q IP Address 192 168 50 233 192 168 50 233 Delete selected Parent beholder 5 a Cascade protection O Group Servers Interval 5 minutes v 300 seconds os Octopods Server beholder Description Sensor de temperatura checo en pruebas Advanced options 9 Custom fields I have associated it to the Servers group but it is possible to change it later if I decide to create a Sensors group Let s define a SNMP module Go to the module screen EJ Agent configuration Sensor_CPD MODULES Create a new network server module Create gt Create a module which type is SNMP Numeric Data Module 274 AP PANDORAFMS Installation and configuration MODULE ASSIGNMENT NETWORK SERVER MODULE Using module component O Manual setup Warning status Remote ICMP network agent latency Remote ICMP network agent boolean data Remote SNMP network agent alphanumeric data Remote SNMP network agent boolean data Remote SNMP network agent incremental data FF threshold e Remote SNMP network agent numeric data Remote TCP network agent alphanumeric data Target IP Remote TCP network agent boolean data Remote TCP network agent
81. nodes ndbd Configuraci n individual de cada nodo de datos mysqld default common configuration of all API or SQL nodes mysqld individual configuration of each API or SQL node tcp default Connection buffers configuration 18 2 2 1 Parameters of the common configuration of the management nodes Arbitration Rank This parameter is useful to define which node will be the arbitrator the management nodes and SQL nodes can arbitrate it is recommended that there would be the management nodes will be the ones that have high priority could have values from 0 to 2 0 The node will be never be used as arbitrator 1 The node will have high priority it will have priority over the nodes of low priority 2 The node will have low priority and will only used as arbitratos if there are not other nodes of higher priority availables Datadir Directory where are kept the logs of the management node 18 2 2 2 Parameters of individual configuration of the two management nodes There should be a section for each management node id node identificator It should be the only one in all the configuration file Hostname host name or IP adress of the management node 18 2 2 3 Common Configuration Parameters for the Storage Nodes NoOfReplicas Redundancy number of replies for each table kept in the cluster This parameter also specifies the size of the node groups A group of nodes is a set of nodes that keeps al
82. often data node memory usage reports are recorded in the cluster log it is an integer value representing the number of seconds between reports Each data node s data memory and index memory usage is logged as both a percentage and a number of 32 KB pages of the DataMemory and IndexMemory The minimum value in which case memory reports are logged only when memory usage reaches certain percentages 80 90 and 100 dk dk dk dk dk dt dk d MemReportFrequency 900 When a data node is started with the initial it initializes the redo log file during Start Phase 4 When very large values are set for NoOfFragmentLogFiles FragmentLogFileSize or both this initialization can take a long time StartupStatusReportFrequency configuration parameter make reports on the progress of this process to be logged periodically StartupStatusReportFrequency 30 Backup Parameters This section define memory buffers set aside for execution of online backups IMPORTANT When specifying these parameters the following relationships must hold true Otherwise the data node will be unable to start BackupDataBufferSize gt BackupWriteSize 188KB BackupLogBufferSize gt BackupWriteSize 16KB BackupMaxwriteSize gt BackupWriteSize BackupReportFrequency 0 4G 0 This parameter controls how often backup status reports are issued in the management client during a backup as well as how often such reports H dk dk dk dk db db Xdb d
83. one network module to one agent create snmp module Add one SNMP module to one agent create plugin module Add one module kind plugin to one agent delete module Delete one module from one agent data module Insert data to one module get module data Show data from one module in the last X seconds interval in CSV format delete data Delete the historic data from a module from the modules of one agent or from the modules of the agents of one group update module Update one module field create template module Add an alert template to an agent delete template module Delete an alert template from an agent create template action Create an action to one agent delete template action Delete an action from an agent disable alerts Disable alerts in all groups enable alerts Enable alerts in all groups 379 AP PANDORAFMS Pandora FMS CLI 3 cj QCcG0G6 0111 e create_alert_template Create an alert template delete_alert_template Delete an alert template update_alert_template Update field of an alert template validate all alerts Validate all the alerts create_user Create one user delete user Delete one user update user Update field of a user enable user Enable a given user disable user Disable a given user create profile Add a profile to an user delete profile Delete a profile from an user add profile to user Add a profile to a user in
84. pandora that will be the one you will use in the Pandora s agents and allow the writing access to the pandora user to the var spool pandora data_in directory and to other lower ones This implies that you should configure the FTP server to adecuate it to these needs In the following sections you could see how to do it for the ProFTPD and VsFTP servers two of the most used in Linux 14 1 Securizing the FTP proftpd Server From its version 1 3 Pandora FMS also support all the platforms of its agent the FTP usage to transfer XML data files For all of this you will need at least a dataserver with a FTP server ready for the pandora user This could be an important risk in a network that needs to be strictly securized These small recommendations to do a secure FTP are for the demon proftpd a FTP server sofware with GPL license highly configurable that includes several options to limit the access It is recommended to configure these parameters in proftpd conf Umask 077 077 MaxInstances 30 DefaultRoot var spool pandora data_in pandora The DefaultRoot directive uses pandora as group so you should create the pandora group that would include the pandora user Other file that controls the access at user level is etc ftpusers This file contains all users that have not permission to connect with this server root myserver cat etc ftpusers root bin daemon adm lp sync shutdown halt
85. parameter Call syntax op set compulsory op2 add plugin module policy compulsory e id id policy compulsory should be a policy Id e other serialized parameters compulsory are the module configuration and data serialized in the following order name module e disabled e id module type id module group min warning max warning str warning AP PHNDORAFMS API Calls lt min_critical gt max critical e str critical ff threshold e history data e module port snmp community e snmp oid e module interval e post 55 gt min value max value custom id description e id plugin plugin user plugin pass e plugin gt e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 add plugin module policyg id 18other example 20p1ugin 20module 20name 0 1 2 0 0 0 0 15 0 66 300 50 00 0 0 0 plugin 20module 20from 20api 2 admin pass 20max amp other_mode url_encode_separator_ amp apipass 1234 amp user admin amp pass pandora 28 3 2 17 set add_data_module_policy Add a local module in the policy pass as id in the parameter Call syntax op set compulsory op2 add data module policy compulsory e id id policy compulsory should be a policy Id e other seri
86. same way that a MySQL server that is not in cluster through the starting script etc init d mysql To start as many SQL nodes as the etc my cnf file indicates etc init d mysql start To stop as many SQL nodes as the etc my cnf indicates etc init d mysql stop Launching of a node manually if it is down If a node downs we should start it manually from the command line following this sequence First we need to be sure that there is no instance of the Node running ps fea grep v grep grep ndbmtd Or also AP PANDORAFMS General Procedures V etc init d cluster_node status If the command shows any ndbmtd process running we should check the losgs to see why even with the process running it has been considered as down To start the node we use etc init d cluster_node start 18 6 5 Creating Backups from the Command Line This is the method for creating a backup manually from the command line ndb_mgm e START BACKUP The backups are kept in var lib mysql cluster BACKUP The script of the daily backup is in the Annex 1 18 6 6 Restoring Backups from the Command Line Once in the Node of which we want to restore the backup restore b X n Y m r var lib mysql cluster BACKUP BACKUP X The X should be replaced by the number of the backup that you want to change and the Y by the number of
87. test server quite similar to the production systems the test couldn t have been done in a system similar to the production ones These stress tests will inform us of the processing capacity that Pandora FMS has in a server and what is its degradation level with time This should be useful for the following aims 1 Through an extrapolation know if the final volume of the project will be possible with the hardware given to do that 2 To know which are the online storage limits and which should be the breakpoints from which the information moves to the historic database 3 To known the answer margins to the process peaks coming from problems that could appear service stop planned stops where the information expecting for being processed would be stored 4 To know the impact in the performance derived of the different quality of change of the monitoring information 5 To know the impact of the alert process in big volumes The tests have been done on a DELL server PowerEdge T100 with 2 4 Ghz Intel Core Duo Processor and 2GB RAM This server working on an Ubuntu Server 8 04 has given us the base of our study for the tests on High Availability environments The tests have been done on agent configurations quite similar to that of the QUASAR TECHNOLOGIES project so we can t have available the same hardware but replicate a high availability environment similar to the QUASAR TECHNOLOGIES to evaluate the impact in the per
88. the requirements that it could have if it gets an specific capacity Load test were made in a first phase aimed to a cluster based system with an unique Pandora server centralized in a DDBB cluster The load test are also useful to observe the maximum capacity per server In the current architecture model v3 0 or higher with N independent servers and with one Metaconsole this scalability tends to be linear while the scalability based on centralized models isn t it would be of the kind shown in the following graph Rendimiento Recursos Hardware 20 1 1 Data Storage and Compaction The fact that Pandora compact data in real time it s very important related to calculate the size the data will occupy An initial study was done that related the way that a classic system stored data with the Pandora FMS asynchronous way of storing data This could be seen in the schema that is included in this section AP PANDORAFMS Introduction Syncronous Asyncronous t Agent Agent t 5min t n a Check 30bytes Check 30bytes 20 Checks Hour 0 1 status changes 480 Checks Day per day Average 1 Min checks day min for 175 200 Checks Year redundancy and control 5MBytes Year About 420 Checks Year 50 Checks agent t 5 12 3 KBytes Year 250MB Year 1000 Checks Hour 0 22 Checks Sec 8760000 Checks year In a conventional system For a check with an average of 20 checks per day we have a total of 5 MB per year
89. the Node in which we are 18 6 7 Procedure of Total Stop of the Cluster Before stopping the cluster you should do a backup of it following the procedure previously defined or using the backup script described in the Annex 1 Once we have finish the backup it is also recommended to stop the Pandora FMS servers before stopping the cluster With all the necessary preparations done the cluster will be stopped from the manager with the order SHUTDOWN From the console ndb mgm ndbm mgm SHUTDOWN Or also from the command line AP PANDORAFMS General Procedures e SHUTDOWN This will stop the management nodes and the cluster data ones and the SQL ore API nodes stop separately as we have said before 18 6 8 Procedure to Start the Cluster The start of the complete cluster is an operation that should be checked and while it is being done you should check the cluster main log and check that all has worked right When all the nodes are stopped we should start first the main manager the one of pandoradbhis showing it the cluster configuration file Using the starting script etc init d cluster_mgmt start Or also from the command line usr sbin ndb config file var lib mysql cluster config ini configdir var lib mysql cluster Next we start the secondary manager of the cluster the one of pandora2 giving the connection string and its node id the
90. the cluster management demons The procedures that we detail here are to do the manual stops and starts and to Y know the functioning of them We have developed an script for the stop and start and we have scheduled the default start level of the systems level 3 Once we have done the installing and configuring procedures of the Manager system we should start the service To start the administration node we should execute the following command of the console as root Administration node 1 mgmd config file var lib mysql cluster config ini configdir var lib mysql cluster In the same way through the script that has been developped for this at etc init d cluster mgmt start Administration node 2 ndb mgmd c 10 1 1 221 1186 ndb nodeid 2 In the same way through the script that has been developed for this at etc init d cluster mgmt start If you want also load a new version of the configuration file you should pass to both nodes start the initial parameter The control script of the service etc init cluster mgmt could be used to start the node start and to stop it stop or restart it restart and also to know its status status 18 3 2 Start of the Cluster Data Nodes ONLY INSTALATION Once that the Manager has been launched we start to launch the nodes with the following command in the console as root ndbmtd initial This fix the initial config
91. ui get full url relative path file script php AP PANDORAFMS Pandora FMS Code architecture 2 gt lt script type text javascript gt jQuery post lt php url gt 3 script Special cases For direct links to index php it is not necessary to use this function For example echo form method post action index php param iii amp param 222 amp param 333 amp param 444 amp param 555 amp param 666 27 1 2 The entry points of execution in Pandora Console Pandora Console only has a small amount of entry points to execute the web application This is unlike other web applications like for example Wordpress that have only one entry point in the front end and another one in the back end Or at the other end for example small web applications designed for SMB where each php file is usually an entry point 27 1 2 1 Installation This entry point is for the installation of Pandora Console and the data base When the installation is finished Pandora Console advises the deletion of this file for security reasons install php 27 1 2 2 Normal execution All interactions between the user and the console by use of their browser are made through this entry point index php 27 1 2 3 AJAX requests All AJAX requests are through this file this is because it is necessary to enforce major caution check the users permission with this type of a
92. used with ndbd this parameter now a string specifies the ID of the A PANDORAFMS Appendix Examples of Configuration Files iin CPU assigned to handle the NDBCLUSTER execution thread When used with ndbmtd the value of this parameter is a comma separated list of CPU IDs assigned to handle execution threads Each CPU ID in the list should be an integer in the range to 65535 inclusive The number of IDS specified should match the number of execution threads determined by MaxNoOfExecutionThreads LockExecuteThreadToCPU 0 1 2 3 4 5 6 7 RealTimeScheduler 0 1 0 Setting this parameter to 1 enables real time scheduling of NDBCLUSTER threads RealTimeScheduler 1 SchedulerExecutionTimer 0 110000 50 This parameter specifies the time in microseconds for threads to be executed in the scheduler before being sent Setting it to 0 minimizes the response time to achieve higher throughput you can increase the value at the expense of longer response times The default is 50 i sec which our testing shows to increase throughput slightly in high load cases without materially delaying requests dk dk dk dk dk dk d SchedulerExecutionTimer 100 SchedulerSpinTimer 0 500 0 This parameter specifies the time in microseconds for threads to be executed in the scheduler before sleeping SchedulerSpinTimer 400 Threads MaxNoOfExecutionThreads 2 8 For 8 or more cores the recomended value i
93. usually any extension must has one subdirectory The subdirectory has the same name as the name extension and the main file The subdirectory of the example only has an image icon file icon menu png This icon is shown in the Pandora Menu
94. very easy Install scponly for systems based on Debian apt get install scponly Or use yum install scponly with suitable repositories or install manually with rpm i scponly Replace the shell of pandora user for scponly usermod s usr bin scponly pandora 172 SSH Server Securization AP PANDORAFMS It is done With this you could use the pandora user to copy files with scp but you will not have access to the server with the pandora user More information at scponly web site 173 AP PANDORAFMS SSH Server Securization 14 CONFIGURATION TO RECEIVE DATA IN THE SERVER THROUGH FTP 174 AP PANDORAFMS Configuration to receive data in the server through FTP TT Please read the previous section regarding to SSH The configuration on client to send data through FTP allows to specify the user and the password that is going to be send so it s easy to implement the copy through FTP to the agent instead to Tentacle The problem is that the sending of data through FTP is less safe so as there is a FTP working with Pandora s server this makes it more vulnerable to failures that comes with the FTP system security design See the sections that come after to know how securize a little more your server Besides configuring the Pandora s agents for sending data with FTP you will have to configure a FTP server into the Pandora server fix a password for the user
95. want to process the records which match this rule or discard if you want to discard the record that match The second parameter set the match with source ip src or destination IP ip dst This parameter could be denied with the character before indicating we want the records that DON T match with this IP The third parameter is an IP following by a network mask If you want only an IP you can set the IP without mask or the mask 32 If a mask is specified all IP in the range will be considered For example 192 168 50 0 24 will be IPs in range 192 168 50 1 192 168 50 254 Otherwise 192 168 50 23 y 192 168 50 23 32 are the same IP 192 168 50 23 AP PANDORAFMS Filtering rules The fourth parameter is similar to second one but this time the instead of IP we will filter by source port_src or destination port port_dst Also it is possible to use character before port to denied these ports The fifht parameter are the port numbers which will be used to match the record You can specify the following parameters One port with a number For example 8080 An interval separated by a dash character For example 21 34 to match all ports from 21 to 34 both included A port enumeration separated by comma For example 21 23 80 8080 Acombination of intervals and enumerations For example 21 34 80 8080 43234 43244 The sixth parameter is the protocol used to perform the communication This parameter could be denied
96. 1 gt echo lt p gt _ This table show in columns the modules group and for rows agents group The cell show all modules lt p gt agentGroups get user groups config id_user modelGroups get all model groups array walk modelGroups translate Translate all head titles to language is set head modelGroups array unshift S head Metaobject use in print table table null table gt align 0 table gt style 0 bolder table gt head head right Align to right the first column color ffffff background color 778866 font weight mon The content of table tableData array 419 AP PANDORAFMS Source code Create rows celds foreach agentGroups as idAgentGroup gt name row array array_push row name foreach modelGroups as idModelGroup gt modelGroup query sprintf sql idAgentGroup idModelGroup rowsDB get db all rows sql query states array if 5 false foreach rowsDB as rowDB states rowDB estado rowDB count count 0 foreach states as idState gt state count state color transparent Defaut color for cell if count 0 color babdb6 Grey when the cell for this model group and agent group hasn t modules alinkStart um alinkEnd else alinkStart lt a hre
97. 1 tid 30520 cpu 1 OK BACKUP 0 DBLQH O DBACC 0 DBTUP O SUMA O DBTUX O TSMAN 0 LGMAN 0 RESTORE O DBINFO O PGMAN 5 thr tid 30519 cpu OK DBTC O DBDIH 0 DBDICT NDBCNTR O QMGR O NDBFS 0 TRIX 0 DBUTIL 0 thr 2 tid 30521 cpu 2 OK PGMAN 1 DBACC 1 DBLQH 1 DBTUP 1 BACKUP 1 DBTUX 1 RESTORE 1 thr 3 tid 30522 cpu 3 OK PGMAN 2 DBACC 2 DBLQH 2 DBTUP 2 BACKUP 2 DBTUX 2 RESTORE 2 thr 4 tid 30523 cpu 4 OK PGMAN 3 DBACC 3 DBLQH 3 DBTUP 3 BACKUP 3 DBTUX 3 RESTORE 3 thr 6 tid 30515 cpu 6 OK 0 thr 5 tid 30524 cpu 5 OK PGMAN 4 DBACC 4 DBLQH 4 DBTUP 4 BACKUP 4 DBTUX 4 RESTORE 4 saving 0x7f6161d38000 at 0x994538 0 2009 09 29 13 15 53 ndbd INFO Start initiated mysql 5 1 34 ndb 7 0 6 saving 0x7f61621e8000 at Ox9ab2d8 0 NDBFS AsyncFile Allocating 310392 for In Deflate buffer 18 5 2 2 ndb_X_error log The second kind of log is the cluster error log that is named X error log being X the node id In this log we have the errors that are made in the cluster and that link us to another log created at a higher leve of debug Here we see the exit of a error log file linked to another trace log Current byte offset of file pointer is 1067 Time Friday 9 October 2009 12 57 13 Status Temporary error restart node Message Node lost connection to other nodes and can not form a unpartitioned cluster please investigate if there are
98. 2 168 10 102 pollux gt Slave 192 168 10 100 virtual ip 197 AP PANDORAFMS Initial enviroment In our scenario the only Pandora FMS server is running here 192 168 10 1 pandora gt mysql app Each node has two harddisks dev sda with the standard linux system dev sdb with an empty unformatted disk ready to have the RAID1 setup with DRBD We assume you have time synchonized between all nodes this is extremely IMPORTANT if not please synchronize it before continue using ntp or equivalent mechanism 17 3 Install packages Install following packages debian apt get install heartbeat drbd8 utils drbd8 modules 2 6 686 mysql Install following packages suse drbd heartbeat hearbeat resources resource agents mysql server 17 4 DRDB setup 17 4 1 Initial DRDB setup Edit etc drdb conf global usage count no protocol resource mysql on castor device dev drbd1 disk dev sdb1 address 192 168 10 101 7789 meta disk internal on pollux 1 device dev drbd1 disk dev sdb1 address 192 168 10 102 7789 meta disk internal disk on io error detach Desconectamos el disco en caso de error de bajo nivel max buffers 2048 Bloques de datos en memoria antes de escribir a disco 198 AP PANDORAFMS DRDB setup ko count 4 Maximos intentos antes de desconectar y syncer rate 10M Valor r
99. 2 delete alert template compulsory e id id template compulsory should be a template id other lt serialized parameters compulsory are the template configuration and data serialized in the following order Examples http 127 0 0 1 pandora console include api php op set amp op2 delete alert template amp id 38 amp apipass 1234 amp user admin amp pass pandora 28 3 2 27 set delete module template Delete a module template Call sintax op set compulsory op2 delete module template compulsory e id id template compulsory should be a template id other lt serialized parameters compulsory are the template configuration and data serialized in the following order Examples http 127 0 0 1 pandora console include api php op set amp op2 delete module template amp id 38 amp apipass 1234 amp user admin amp pass pandora 28 3 2 28 set stop downtime Stop a downtime Call sintax op set compulsory op2 stop downtime compulsory e id id downtime compulsory should be a id downtime e other lt serialized parameters compulsory are the downtime configuration and data serialized in the following order AP PHNDORAFMS API Calls A Examples http 127 0 0 1 pandora console include api php opzset amp op2 stop downtime amp id i amp apipass i1234 amp user admin amp pass pandora 28 3 2 29 set new user Create a new user into Pandora Call Syntax
100. 2009 11 12 11 30 36 6 smsd Deleted file var spool sms checked send mNZxHa Finally some tasks to could do to ensure the operation for the future 1 Set 1 to loglevel in etc smsd conf to avoid a very big non necessary log file 2 Be sure that smsd is set to start automatically when system restart this means a link to etc init d sms to etc rc2 d S90sms or etc rc d rc2 d S90sms If you have installed it from a package probably they exist already in your system just checkit 16 4 Configure Pandora FMS Alert This steps reproduce the basic steps to create SMS alerts in Pandora FMS 3 x Create the command 190 A PANDORAFMS Configure Pandora FMS Alert OO m admin W All systems Ready Autorefresh Pandora NAS 11 Enter keywords to search A Events iSOuTFt Operation ALERTS CONFIGURE ALERT COMMAND view agents visual console Name 5 5 EJ Pandora servers e usr bin sendsms _fieldi__field2_ 3 Manage inci Command 7 View events This command send a SMS uting Pandora FMS SMS oatemay attached te USB port in the Pandora FMS server amp View users Ph SNMP console Description Messages LE Reporting Extensions Administration Bn pne Create 9 Manage modules Templates Create the action wefadmin I8 D All systems Ready Autorefresh Pandora Enter keywords to search Events ns Operation 1 ALER
101. 3kGhPbcffbEX PaWbZ6TM8a0xwcHSi 4mtjCdowRwd0J4dQPkZp aok3Wubm5d1ZCNLOZJZd9 9haGtqnoAY hkgSe2BKs IcrO0Af6A16yi0ZE GXuk2zsaQv1iL28r0xvJuY7S 4 JUVAxySI7V6ySJS1jg5iDesuWoRSRdGw root dragoon In an automatic way with the following command ssh copy id pandoraQip del host del servidor It will ask you the password of the server pandora user and once this has been confirmed it will show you a message like this Now try logging into the machine with ssh pandoraQip del host del servidor and check in ssh authorized keys 171 A PANDORAFMS SSH Configuration to Get Data in Pandora FMS A e mD to make sure we haven t added extra keys that you weren t expecting Do this test to verify that the automatic connection to the pandora server with the user pandora from the agent s machine with the root user is possible Until it would be possible the agent will not send data through SSH This method will be used by the agents to copy data to the var spool pandora data_in Pandora FMS server directory Make sure also that the directory var spool pandora data_in directory already exists and that the user pandora has writing permissions or otherwise it will not work At last modify the agent configuration to specify to it that the copy method is ssh and not tentacle This should be modified in the etc pandora pandora_agent conf file and in the transfer_mode configuration token 13 1 SSH Ser
102. 4800 0 253 ALL SOURCES Critical Pandora 1 3 6 1 4 1 24800 0 254 ALL SOURCES Normal Pandora 1 3 6 1 4 1 24800 0 255 ALL SOURCES 178 AP PANDORAFMS Creating Specific Alerts of Pandora FMS 15 2 Creating Specific Alerts of Pandora FMS From an only alert with different parameters we will able to export the alerts to NNM For this we should create an alert in the following way ALERT CONFIGURATION gt MODIFY ALERT Alert name SNMP Trap Command usr share pandora snmp_trap_nnm sh fieldi field 7 fieldi SPECIFIC OID r _field2_ ERROR _filed3_ DESCRIPCION Description snmptrap v1 c public 1 3 6 1 4 1 00 248 agent 6 fieldi field2 1 3 6 1 4 1 00 248 1 lt fielda v Update 15 3 SNMP Traps Generation Script This alert has associated an script that is detailed next and that should be called by each server that process and execute the exported module bin bash HOST hostname ESPECIFIC_OID 1 4 _field1 pandora ERROR 2 _field2_ pandora DESCRIPCION 3 _field3_ pandora HOST_DESTINO nnm COMMUNITY public ENTERPRISE_OID 1 3 6 1 4 1 24800 WARNING 0 MINOR 1 MAJOR 2 CRITICAL 3 NORMAL 4 MAXL 2000 DIR dirname 0 LOGFILE DIR basename 0 awk F fprint 1 log CONF DIR basename 0 awk F print 1j conf truncate_log typeset LOG 1 typeset LINES 2 typeset TMP1 tmp PRG tmp if z LINES z LOG then echo PRG truncate log Paramet
103. 57 seconds Contador 1 B Active 1 hours N A N A 6 10 minutes 7 seconds Contador 1 Conectado 1 hours D v 953 10 minutes 57 seconds Contador 1 Estado puerta 1 hours 4 NA 8 10 minutes 57 seconds Contador 1 B VRMS Line oltage 1 hours e 233 Volts 10 minutes 57 seconds Contador 1 B IRMS Line urrent 1 hours N A N A 443 10 minutes 57 seconds Contador 1 B Frequency 1 hours pu 1 N A 50 10 minutes 57 seconds 4 S MOS mem 1A mintea MESES In this view not all the modules form the Instances are shown because it would be not possible if they were big environments A configurable number of modules is got from each instance By default 100 This parameter is Metaconsole Items from the Visual Styles Administration Section For example if Metaconsole Items is 200 it will get a maximum of 200 modules from each Instance and they will be shown in the list A PANDORAFMS Monitoring O 7 1 5 Assistant Wizard The Assistant or Wizard is not part of the data Visualization but of the operation There is much more available information at section Operation on this manual 7 2 Events D PANDORAFMS D f 4 admin O C Pandora FMS uses an event system to report about all thing that have been happening in the monitored systems In an event visor is shown when a monitor is down an alert has been fired or when the Pandora FMS system itself has so
104. 8 7 Appendix Examples of Configuration Files 18 7 1 etc mysql ndb_mgmd cnf File of the Cluster Manager The secondary manager gets the configuration from the primary one that should be active when the secondary is started but this file should be in both nodes MySQL Cluster Configuration file By Pablo de la Concepcion Sanz lt pablo concepcion artica es gt This file must be present on ALL the management nodes in the directory var lib mysql cluster For some of the parameters there is an explanation of the possible values that the parameter can take following this format ParameterName MinValue MaxValue DefaultValue dk dk dk dk dk dt THHHHBHHHHHHBNHHHHHHBHHHHHBHHBHHHHBHHHHBHHHBHHHHEBHHBHBHHHBHHBHH BH MANAGEMENT NODES This nodes are the ones running the management console THHHHBHHHHHHBNHHHHHHBHHHHBHBHHHHBHEHHHHHHBHHHHBHHBHBHHHHHBHH More info at http dev mysql com doc refman 5 1 en mysql cluster ndbd definition html Common configuration for all management nodes ndb_mgmd default This parameter is used to define which nodes can act as arbitrators Only management nodes and SQL nodes can be arbitrators ArbitrationRank can take one of the following values 0 The node will never be used as an arbitrator 1 The node has high priority that is it will be preferred as an arbitrator over low priority nodes 2 Indicates a low priority node which be used a
105. ACTIONS ACTIONS COMMANDS COMMANDS Synchronization tools TEMPLATES ACTIONS COMMANDS 4 1 4 Tag Synachronization Tags are a complementary access control mechanism to the groups so they also should be synchronized to warranty the access to the data that they have associated to Tags that an user has in each group in the Metaconsole should match withe the tags of the user with same name in the instance AP PANDORAFMS Synchronization utilities METACONSOLE Synchronization tools 4 2 Propagation Utilities These tools are useful to copy or move data from one Instance to other or from the Metaconsole to the Instances Unlike the synchronization utilities propagation is not necessary for the best performance of the Metaconsole It is only a tool to make easier the availability of data in the Instances 4 2 1 Components Propagation With the component propagation tool its is possible to copy any component created in the Metaconsole to the Instances that you want AP PANDORAFMS Propagation Utilities COMPONENTS 4 COMPONENTS COMPONENTS Propagation tools COMPONENTS To avoid involuntary errors what is actually done is to copy the agents to the destination Instances and deactivate them in the origin ones 4 2 2 Agent Movement This tool allows to move agents between Instances A PANDORAFMS Propagation Utilities INSTANCE 1 Propag
106. ANDORAFMS Operation This section will explain how to operate create edit delete data from the instances from the metaconsole This operation is done from a single editor we call it Wizard or monitoring assistant 8 1 Assistant Wizard Monitoring Wizard or Wizard is used to configure the agents and modules from the Metaconsole alerts it s an exclusive component of the metaconsole and it s not present in the regular console Issues to consider The operation of modules will be implemented as components of both local network This is not intended to create modules from scratch You can create agents from scratch with a simplified configuration setting up the remaining fields by default Modules created in the agent manually or outside the metaconsole wizard cannot be edited in the Wizard Modules created in the Wizard will be indistinguishable from those created in the agent by other means These modules can be edited and deleted from both the Wizard and from the agent setup directly Sample We have a metaconsole and two pandora instances in which we have full access read and administration rights The instances have two agents with three modules each one METACONSOLE INSTANCE A NSTANCE B CPU SSH FREE MEM CPU CPU SSH HOST LATENCY HOST ALIVE HOST ALIVE The first time we enter in the metaconsole wizard you will see the agents but not the modules AP PANDORAFMS As
107. ATE PUBLIC SYNONYM TO PANDORA GRANT CREATE TRIGGER TO PANDORA GRANT CREATE VIEW TO PANDORA GRANT DELETE ANY TABLE TO PANDORA GRANT DROP ANY INDEX TO PANDORA GRANT DROP ANY SEQUENCE TO PANDORA GRANT DROP ANY TABLE TO PANDORA GRANT DROP ANY TRIGGER TO PANDORA GRANT DROP ANY VIEW TO PANDORA GRANT INSERT ANY TABLE TO PANDORA GRANT QUERY REWRITE TO PANDORA GRANT SELECT ANY TABLE TO PANDORA GRANT UNLIMITED TABLESPACE TO PANDORA Doing this we create an sketch with the name Pandora and the tablespace PANDORA for tables and Pandora DX for index When you create the index instead using the sentence of the file pandoradb oracle sql CREATE INDEX taddress_ip_idx ON taddress ip Change it for the sentence CREATE INDEX taddress_ip_idx ON taddress ip TABLESPACE PANDORA_DX In all index creations A PANDORAFMS General Advises for using Oracle 22 5 TEMPERATURE SENSOR CONFIGURATION 270 AP PANDORAFMS Introduction AAA 22 1 Introduction In this configuration quick guide we re going to learn step by step how use Pandora to monitor HWsg STE Temperature Sensor We will assign alerts via eMail and generate a basic report as well 22 2 Installation and configuration 22 2 1 Step 1 Pandora installation Take a look at the installation manual or begin from a preinstalled Pandora with a virtual image links 22 2 2 Step 2
108. Appendix Examples of Configuration Files iin MySQL SQL node config Written by Pablo de la Concepcion pablo concepcion artica es The following options will be passed to all MySQL clients client password your_password port 3306 socket var lib mysql mysql sock Here follows entries for some specific programs The MySQL server mysqld port 3306 socket var lib mysql mysql sock datadir var lib mysql skip locking key_buffer_size 4000M table_open_cache 5100 sort_buffer_size 64M net_buffer_length 512K read_buffer_size 128M read_rnd_buffer_size 256M myisam_sort_buffer_size 64M query_cache_size 256M query_cache_limit 92M slow_query_log var log mysql mysql slow log max_connections 500 table_cache 9060 Thread parameters thread_cache_size 1024 thread_concurrency 64 thread_stack 256k Point the following paths to different dedicated disks tmpdir tmp 1log update path to dedicated directory hostname Hog Uncomment the following if you are using InnoDB tables zinnodb data home dir var lib mysql zinnodb data file path ibdatal 10M autoextend zinnodb log group home dir var lib mysql You can set buffer pool size up to 50 80 of RAM but beware of setting memory usage too high zinnodb buffer pool size 16M zinnodb additional mem pool size 2M Set log file size to 25 of buffer pool size zinnodb lo
109. B master data gt tmp dbdump sql This dump is special and contains the coordinates for the slave server master data and also B create the database and uses in on the created SQL dump 4 Unlock your Mysql primary server mysql gt unlock tables 5 Copy the SQL file to the SLAVE server ftp ssh 6 Connect to mysql console and stop your SLAVE server mysql gt SLAVE STOP 7 Drop your current pandora database in the SLAVE server if exists mysql gt drop database pandora 8 Enter the following SQL sentence to prepare credencials to stablish communication with master mysql gt CHANGE MASTER TO MASTER_HOST 192 168 10 101 MASTER_USER replica MASTER_PASSWORD slayer72 Take note that is pointing to the current MASTER server 192 168 10 101 9 Import the dump sql taken from the current Master server mysql gt SOURCE tmp dbdump sql 10 Start SLAVE AP PANDORAFMS Initial enviroment 2 mysql gt SLAVE START 11 Watch status of synchonization mysql gt SHOW SLAVE STATUS 12 You should see Waiting for master to send events to confirm everything is OK 19 4 Setting up the SQL server to serve Pandora server In both servers mysql gt grant all privileges on pandora to pandora 192 168 10 1 identified by pandora mysql gt flush privileges 19 4 1 Start Pandora Server Everything should
110. EMPORAL NUM BACKUP grep Backup LOG TEMPORAL grep completed awk print echo Procesando backup NUM BACKUP Se copian por scp los backups scp i root ssh backup key rsa r root 10 1 1 215 var lib mysql cluster BACKUP BACKUP NUM BACKUP DIR NODO3 gt gt 106 TEMPORAL 2 gt gt var lib mysql cluster BACKUPS 1logs backup NUM BACKUP err scp i root ssh backup key rsa r root 10 1 1 216 var lib mysql cluster BACKUP BACKUP NUM BACKUP DIR_NODO4 gt gt 106 TEMPORAL 2 gt gt var lib mysql 241 A PANDORAFMS Appendix Examples of Configuration Files iii cluster BACKUPS 1logs backup NUM BACKUP err Se almacena el log mv LOG TEMPORAL var lib mysql cluster BACKUPS logs backup NUM BACKUP 1log Para programar este script diariamente debemos poner la siguiente linea en el fichero etc crontab Esto har un backup diario a las 5 de la mafiana 00 5 root tmp backup_cluster 18 7 4 etc init d cluster_mgmt This script is slightly different in the secondary cluster management console different parameters in DAEMON_PARAMETERS bin bash Copyright c 2005 2009 Artica ST Author Sancho Lerena lt slerena artica es gt 2006 2009 etc init d cluster_mgmt System startup script for MYSQL Cluster Manager BEGIN INIT INFO Provides cluster_mgmt Required Start syslog cron Should Start network cron Required Stop sys
111. ID_2 cat SMS PID if z ps F p PID_2 grep v grep grep sms gateway 1 then kill cat SMS 2 gt dev null gt dev null else echo SMS Gateway is not executing with PID PID_2 skip Killing step fi rm f SMS_PID else echo SMS Gateway is not running cannot stop it fi CON force reload restart 0 stop 0 start 17 echo Usage sms_gateway start stop restart exit 1 esac 194 AP PANDORAFMS Gateway to Send SMS using a generic hardware and Gnokii A eee 16 5 1 4 Copy_Sms This small script creates a SMS sending file in a client machine and copies it to the SMS gateway using scp bin bash SERIAL date 96j96M96s SERIAL hostname SERIAL TEL 1 TEXT 2 echo TEL TEXT gt gt tmp SERIAL scp tmp SERIAL sms 192 168 1 1 home sms incoming rm Rf tmp SERIAL1 195 AP PANDORAFMS Gateway to Send SMS using a generic hardware and Gnokii q 17 HA iN Panpora FMS with DRBD 196 AP PANDORAFMS Introduction to DRDB ADDS 17 1 Introduction to DRDB The Distributed Replicated Block Device DRBD is a software based shared nothing replicated storage solution mirroring the content of block devices hard disks partitions logical volumes etc between servers DRBD mirrors data n real time Replication occurs continuously while applications modify the data on the device Transparently The applications that store the
112. In this sample 34 is Spanish preffix and my phone number is 627934648 188 PANDORAFMS Configure SMSTools to Use the New Device EEE sendsms 34627934648 Pandora FMS rocks Wait a minute and watch your logs to check that everything is correct You should receive the SMS in a few seconds Depending on the network the first SMS can timeout every 10 20 seconds after that wait The next SMS should be almost immediate SMSTools uses a queue to send messages so you can send as many as you want and they will be out as soon as your mobile network could manage To see the logs cat var log smsd log 2009 11 12 11 30 12 2 smsd Smsd v2 2 20 started 2009 11 12 11 30 12 6 smsd outgoing file checker has started 2009 11 12 11 30 12 6 GSM1 Modem handler has started 2009 11 12 11 30 13 6 smsd Moved file var spool sms outgoing send mNZxHa to var spool sms checked 2009 11 12 11 30 13 6 smsd I have to send 1 short message for var spool sms checked send_iUegPD 2009 11 12 11 30 13 6 GSM1 Sending SMS from to 627934648 2009 11 12 11 30 13 6 GSM1 Checking if modem is ready 2009 11 12 11 30 13 7 GSM1 gt AT 2009 11 12 11 30 13 7 GSM1 Command is sent waiting for the answer 2009 11 12 11 30 14 7 GSM1 lt AT OK 2009 11 12 11 30 14 6 GSM1 Checking if modem needs PIN 2009 11 12 11 30 14 7 GSM1 gt AT CPIN 2009 11 12 11 30 14 7 GSM1 Command is sent waiting for the
113. L server fails to send a heartbeat in time it is declared dead transactions are completed and all dk dk dk dk dk dk CO dt dk dk dk dt CO dk dk dk dk dk dk dk db CO dk db dk dt dt db db resources released The SQL node cannot reconnect until all activities initiated by the previous MySQL instance have been completed The three heartbeat criteria for this determination are the same as described for HeartbeatIntervalDbDb HeartbeatIntervalDbApi 3000 TimeBetweenLocalCheckpoints 0 31 20 Base 2 Logarithm A PANDORAFMS Appendix Examples of Configuration Files iin This parameter is an exception in that it does not specify a time to wait before starting a new local checkpoint rather it is used to ensure that local checkpoints are not performed in a cluster where relatively few updates are taking place In most clusters with high update rates it is likely that a new local checkpoint is started immediately after the previous one has been completed The size of all write operations executed since the start of the previous local checkpoints is added This parameter is also exceptional in that it is specified as the base 2 logarithm of the number of 4 byte words so that the default value 20 means 4MB 4 A 220 of write operations 21 would mean 8MB and so on up to a maximum value of 31 which equates to 8GB of write operations All the write operations in the cluster are added together imeBetweenLoc
114. Linux System s Removes omy Linux partitions created from a previous Linux imstallatoni This does not remove other partitions you may have on your storage deviceis such as VAAT or FAT32 This option will remove data from the selected dericels Make sure you heve beckups Shrink Current System Shrinks ex ting to create free space for the defaut layout Use Free Space Retains your current data and partitions and uses only the unpartiioned space om the selected device assuring you have enough tree space available Create Custom Layout Manueby create your own custom layout on the selected devicets using ow partitioning tool Encrypt system Review and modify partitioning layout Bak ap Next Choose the partitioning Unless you know what you are doing use the Use the entire disk option 155 AP PANDORAFMS Installation Writing storage configuration to disk The partitioning options you have selected will now be written to disk Any data on deleted or reformatted partitions will be lost Go back Write changes to disk Confirmation to create the filesystem After that the target disk will be erased 156 AP PANDORAFMS Installation CentOS Installer CentOS 6 amp Community ENTerprse Operating System Copying live image to hard drive The system starts copying data to the disk 157 AP PANDORAFMS Installation CentOS installer Congratulations your CentOS i
115. NDORAFMS Pandora FMS XML data file format SS VE timezone offset Offset that will be added to the timestamp in hours Useful if you are working with UTC timestamps e parent agent name Name of the agent parent address Agent IP address For example agent data description group os name linux os version Ubuntu 10 10 interval 30 version 3 2 Build 101227 timestamp 2011 04 20 12 24 03 agent name foo timezone_offset 0 address 192 168 1 51 parent agent name too Then we need one module element per module and we can nest the following elements to define the module name Name of the module description Description of the module type Type of the module must exist in Pandora FMS s database data Module data max Maximum value of the module min Minimum value of the module post process Post process value module interval Interval of the module interval in seconds agent interval min critical Minimum value for critical status max critical Maximum value for critical status min warning Minimum value for warning status max warning Maximum value for warning status disabled Disables 0 or enables 1 the module Disabled modules are not processed min ff event FF threshold see 1 status Module status NORMAL WARNING or CRITICAL Warning and critical limits are ignored if the status is set Any other elements will be save
116. Name Category B Create gt 9 4 7 2 Modify Delete category On the list you can click on edit button or delete to delete it g El El 138 AP PANDORAFMS Data Management 10 Gtossary OF METACONSOLA TERMS 139 AP PANDORAFMS Basic and Advanced Accesses 10 1 Basic and Advanced Accesses Accesses that are given to users to the module components and the alerts Users with basic access will only could use the components and alerts of this level Users with advanced access will could use the components and alerts of any level On the other hand the Advanced components type will be more configurable than the Basic type It will be possible to change the name More fields will be shown in its edition Advanced fields as for example unities Fields that correspond to the macros in case of the local components or from network type plugin etc Showing the configuration of the actions in the alerts In the basic type the alerts will be created with the actions by default 10 2 Component A component is a template to create one module It can be Local From Network Network type Plugin type WMItype 10 3 Instance Pandora FMS normal installation configured to it could be accessed through the Metaconsole and optionally to replicate its events to the Metaconsole 10 4 Metaconsole Pandora FMS special installation that is made up of agents modules and alerts
117. ORAFMS API Calls 28 3 2 46 set enable_alert Enable a alert of a agent Call syntax op set mandatory e op2 enable_alert id lt Agent name gt mandatory id2 lt Module name gt mandatory other Alert template name p e Warning event mandatory Examples http localhost pandora console include api php op set amp op2 enable alert amp id garfio amp id2 Status amp other Warning 20condition amp apipass 1234 amp user admin amp pass pandora 28 3 2 47 set disable_alert Disable a alert of a agent Call syntax op set mandatory op2 disable alert Agent name gt mandatory e id2 Module name gt mandatory other Alert template name p e Warning event mandatory Examples http localhost pandora console include api php op set amp op2 disable alert amp id garfio amp id2 Status amp other Warning 20condition amp apipass 1234 amp user admin amp pass pandora 28 3 2 48 set enable_module_alerts Equal to the enable alert api call Call syntax e op set obligatorio e op2 enable module alerts id Nombre del agente obligatorio id2 Nombre del modulo obligatorio AP PANDORAFMS API Calls NU Examples http localhost pandora_console include api php op set amp op2 enable_ module alerts amp id garfio amp id2 Status amp apipass 1234 amp user admin amp pass pa 28 3 2 49 set disable module alerts Equal to the ca
118. PANDORA FMS 9 0 ADVANCED USAGE DOCUMENTATION AP PANDORAFMS Su Pandora FMS 5 0 Advanced Usage Documentation OpenOffice PDF Version 1 Edici n Espa a 22 oct 2013 Written by different authors More info at http pandorafms com AP PANDORAFMS indice Part 6 Metaconsole 1 Da VBR CUA Os ss sce EAN 15 Tb ACR ACs rr 16 Where are stored the data A A a 25 3 2 How Information i 15 GOL diti MOCO ona ia 25 al Group aeiia aa 29 RN AAA a 30 4 1 4 Tag S nachronization id be 31 AP PHNDORAFMS 7242 ic Dorta rolas 63 7 5 Netflow AR 65 BUE AL ATES nenaon aeaa cid 69 A ACON A esas 70 A o Modules ee a ETE 71 dla T ETC A o ISS 72 SA Admis a A DAA A 83 A E AA 85 Sic cies Sadie de 97 5 2 2 97 AMS id eee 98 AP PANDORAFMS 13 2 Group A a o dd 107 EE a AAA 107 9 3 4 Components S nchronization ci 108 9 4 2 1 Agent Movement ERR 116 2242 Group A ri dd een Te 117 9 4 3 Modules
119. PESO AE OS Total process v tal UCD Mibs Linux UCD SNMP N A N A OS CPU Load 1 QE 9 CPU Load in operating System UNT man UCD Mibs Linux UCD SNMP N A N A Sysname gu v Get name of system using SNMP standard MIB General group WAS N A OS Users oc v Active users Operating Sywtem UNIX UCD Mibs Linux UCD SNMP N A N A Catalyst CPU Usage 5min QUE 9 Catayst sanos cov usage Taten trom M s Cisco MIBs N A N A HSRP Status Set sates of nse Cisco MIBs N A N A NIC 1 status 9 Network Management N A N A NIC 2 status WC 2 Network Management N A N A 125 A PANDORAFMS Data Management Oa 9 4 3 1 1 6 Creating Network Components It is possible to create three different kinds of network components Network from Network Plugin from server plugin WMI To create a new network component in the drop down menu select a network component from the three possible ones WMI Red o Plugin and press the button Create Check FTP Server 9 as heck por Network Management N A N A Check SSH Serve v ec 22 opened Network Management N A N A a Delete Create a new network component Y Create gt Create a new network component Create a new plug in component Create a new WMI component Depending on the type of module there will be some field that could change like the selection of the plugin in the type plugin or the
120. PROCESS PARAMETERS grep v grep tail 1 awk print 2 echo PROCESS PID Main script if which PROCESS_DAEMON wc 1 1 then echo Server not found please check setup and read manual rc_status s rc_exit fi case 1 in start PROCESS_PID pidof_process if z PROCESS_PID then echo Server is currently running on this machine with PID PROCESS_PID Aborting now rc_failed 1 rc_exit fi PROCESS_DAEMON PROCESS_PARAMETERS sleep 1 PANDORA_PID pidof_process if z PANDORA_PID 1 then echo Server is now running with PID PANDORA_PID rc_status v else echo Cannot start Server Aborted rc_status s AP PANDORAFMS Appendix Examples of Configuration Files 1 stop PANDORA PID pidof process if z PANDORA 1 then echo Server is not running cannot stop it rc failed else echo Stopping Server kill PANDORA PID COUNTER 0 while COUNTER lt MAXWAIT 1 do PANDORA_PID pidof_process if z PANDORA_PID then COUNTER MAXWAIT fi COUNTER expr COUNTER 1 sleep 1 done Send a KILL 9 signal to process if it s alive after 60secs we need to be sure is really dead and not pretending if z SPANDORA_PID 1 then kill 9 PANDORA PID fi rc_status v irai 17 status PANDORA_PID pidof_process if z PANDORA_PID then echo Server is not running rc_status else echo Server i
121. QL Cluster setup PANDORAFMS ndoradb2 10 1 1 216 Pandoradb1 10 1 1 215 BackEnd Balancer 10 1 1 219 TCP 80 443 HTTP FrontEnd WMiNetwork morforng Balancer SSH uf _ Web Come traf d Tena iiic de SA Traffic for historic database SOL Trafic for main database Balanced Incoming SNMP Traps Balanced 294 don sample architecture has Pandoradb1 and Pandoradb2 as data SQL nodes Pandoradbhis and Pandora2 as managers and finally Pandoral Pandor2 and Pandora3 running pandora servers and pandora consoles There is also some assumptions in this architecture There is a load balancer in the front end balancing the tentacle and SNMP traffic to the three Pandora FMS servers with a RR RoundRobin type of algorithm There is a load balancer in the back end to balance the queries done by the pandora servers and pandora consoles to the SQL nodes Those load balancers are external to pandora and can be either software or hardware To use a software load balancer there is documentation in Pandora FMS about how to setup a keepalievd The purpose of the database cluster is to share the workload of the database when monitoring a high number of machines and parameters For the cluster to work properly it s very important that the load balancer is well designed and works properly The database cluster characteristics are the following
122. QL or API nodes connected to the cluster There are also a serial of SQL or API nodes that are free without connections that accept connections from any host and that are used to status checks backup creation etc If we have just started the data nodes we could see a message as the following ndbd NDB 2 node s id 3 10 1 1 215 mysql 5 1 34 ndb 7 0 6 starting Nodegroup 0 Master id 4 10 1 1 216 mysql 5 1 34 ndb 7 0 6 starting Nodegroup 0 This shows that the system is still starting the data nodes 18 3 5 Start and Stop of Nodes from the Manager It is possible to start and stop the nodes in the cluster from the Manager this is without having to go to the console of each node To stop a node we will use the order lt id gt stop Being the lt id gt the number that is shown when you do a show 2 stop To start the node that we have stopped we use the order lt id gt start Being the lt id gt the number that is shown when we do a show Example 2 start 18 4 Cluster Backups It is recommended to do a security copy of the cluster data and structures For it you have to follow these instructions 1 Start the administration server ndb_mgm 2 Execute the START BACKUP command 3 We will get an exit like this 219 AP PANDORAFMS Cluster Backups ndb_mgm gt START BACKUP Waiting for completed this may take several minutes Node 2 Backup 6 started from node 1 Node 2 Backup 6 start
123. RAFMS Comparative 99 If you knew Pandora FMS before version 5 0 then you know that the Metaconsole concept already exist In this section we are going to analyze the differences between the current Metaconsole and the old one and also the problems solved and the improvements proposed 2 1 Before Version 5 0 Before version 5 0 a normal installation Console Server of Pandora FMS could also work as Metaconsole 2 1 1 Communication The communication between the Metaconsole and the instances was unidirectional The Metaconsole connected with the instance data base and Managed all the data in memory It did not store almost nothing in its own database INSTANCE 1 INSTANCE 2 METACONSOLE INSTANCE N 2 1 2 Synchronization Synchronization was done between the instances For example Lets suppose that we want to configure some alert templates so as all the instances would have them We should enter in one of the instances configure them go back to the Metaconsole and synchronize the templates of that instance with the other ones AP PANDORAFMS Before Version 5 0 INSTANCE 1 NSTANCE 2 METACONSOLE OPTATIVE INSTANCE NSTANCE N 2 1 3 Problems The Metaconsole was very inefficient because of its not centralized architecture A lot of connections were done to different databases and the user experience was poor The available options were insufficient to get the wanted control of the instance environ
124. S Methodology in detail 21 ADVISES FOR USING ORACLE DB A PANDORAFMS General Advises for using Oracle I 21 1 General Advises for using Oracle One of techniques used to promote the Oracle DB administration consist on separate the table index in different tablespace so in case that the index tablespace get lost we could recover the information from the tables In order to could do this before creating the Pandora sketch you should follow the following steps from an Oracle client such as SQL plus CREATE TABLESPACE PANDORA LOGGING DATAFILE lt ruta_fichero gt PANDORADAT dbf SIZE 1024M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO CREATE TABLESPACE PANDORA DX LOGGING DATAFILE lt ruta_fichero gt PANDORADAT_DBX dbf SIZE 512M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO CREATE USER PANDORA PROFILE DEFAULT IDENTIFIED BY lt contrasefia gt DEFAULT TABLESPACE PANDORA TEMPORARY TABLESPACE TEMP ACCOUNT UNLOCK GRANT CONNECT TO PANDORA GRANT RESOURCE TO PANDORA GRANT ALTER ANY INDEX TO PANDORA GRANT ALTER ANY SEQUENCE TO PANDORA GRANT ALTER ANY TABLE TO PANDORA GRANT ALTER ANY TRIGGER TO PANDORA GRANT CREATE ANY INDEX TO PANDORA GRANT CREATE ANY SEQUENCE TO PANDORA GRANT CREATE ANY SYNONYM TO PANDORA GRANT CREATE ANY TABLE TO PANDORA GRANT CREATE ANY TRIGGER TO PANDORA GRANT CREATE ANY VIEW TO PANDORA GRANT CREATE PROCEDURE TO PANDORA GRANT CRE
125. TS CONFIGURE ALERT ACTION View agents Visual console SMS to Sancho Pandora servers z SMS 3 Manage inadents JP View events 9404 amp View users SNMP comsole Messages Reporting Extensions Administration Th Manage agents Manage modules Associate the action to module using a previous alert template In this case alert template will be fired when the module status would be CRITICAL ADD ALERT Module Postfix SMTP v Latest value 3 00 Template Module Critical Q Actions SMS to Sancho Z From to matches of the alert Add 191 A PANDORAFMS Configure Pandora FMS Alert 16 5 Gateway to Send SMS using a generic hardware and Gnokii This method describe an alternative way to send SMS instead using smstools using gnokii This was the old method proposed for pandora 1 x and 2 x and it s written here only to have a second option smstools method provided above is preferred This section describes how to build a SMS sending gateway based in a sending queue This way it is possible to implement a SMS sending server connected with a mobile and sending the SMS through the software of the Gnokii project and different remote servers can send its messages in order the SMS sending server could process them This allow that different Pandora FMS servers or another machines that want to use the gateway could send messages in a centralized way without having to have a m
126. The profiles assigned to the user are shown in this screen with informative character Its edition is done from the user administrator 115 A PANDORAFMS Data Management fe PANDORAFMS D 5 e y Edit my user nnnm I J BB PUMU User ID Full display name Pandora E mail Phone number Se adminGexample com 555 555 5555 7 New Password Password confirmation a Block size for pagination 20 Default 20 Interactive charts Language Default Y Default li Comments Admin Pandora Update O PROFILES GROUPS ASSIGNED TO THIS USER A O Pandora Administrator 6 This will be the only section available for users without administration permissions 9 4 2 Agents In the agent management is included Agent movement between instances Group management 9 4 2 1 Agent Movement This option allows to the user to move the agents already created between the Pandora FMS instances 116 AP PANDORAFMS PANDORAFMS M SUCCESS burbuja All aaa burbuja Contador 1 Contador 2 Contador 3 Contador 4 Contador 5 Contador 7 Contador 8 Contador 9 Source Server Group filter Agents Agents movement Successfully moved created agent in destination DB created agent modules in destination DB disabled agent source DB Destination Se
127. Tools 9 3 1 User Synchronization This option allows to the user synchronize the Metaconsole users and also their profiles with the Instances O Y The profiles that are not in the Instance will be created There are two options To copy the profiles configured in the user 105 AP PANDORAFMS Synchronization Tools Ae PANDORAFMS ys n 1 Advanced Users synchronization In Source This metaconsole admin Pandora Mario Mario y Users Target petalo Profile mode New profile Copy profile Sync gt With this option we can configure profiles that are different from the user profiles fe PANDORAFMS 9 5 e Users synchronization pagnguya Source This metaconsole admin Pandora Mario Mario Users Target burbuja Y Profile mode New profile profile O Group Databases Y Chief Operator Group coordinator Operator Read Operator Write Pandora Administrator Profiles y Sync gt 106 Synchronization Tools AP PHNDORAFMS A In doubt of which one of these two options use you should Copy the user profiles 9 3 2 Group Synchronization This option allows to the user to synchronize the Metaconsole groups with the Instances AP PANDORAFMS 5 e on O Groups synchronization This metaconsole burbuja petalo F Targets Sync gt recommended steps regarding Index scaling i
128. WMI query or in the WMI type In the view it is possible to see the creation form from one of them 126 AP PANDORAFMS A PANDORAFMS D 7 Data Management X admin Network components Name Type Remote ICMP network agent latency Group General group Min 0 Warning status Max 0 Inverse interval FF threshold 0 Min Value 0 Unit Critical instructions Warning instructions Unknown instructions gt Category None Tags available configuration critical Tags dmz network q performance Port SNMP OID Auth user Privacy method Auth method 105 Y Post process 0 TCP send TCP receive Description Wizard level Module group Interval Critical status Y Historical data Max Value Throw unknown events gt lt SNMP version SNMP community Auth password Privacy pass Security level 9 4 3 1 1 7 Modify Delete Duplicate Network Components To modify a network component we click on its name Advanced Basic Application v 5 minutes 2 Min 0 0 Inverse interval Y Tags selected None Create A In the network components list are available some options to duplicate the component and delete it 127 AP PANDORAFMS Data Management g g g g g El It is possible to delete them one by one or select several of them and delete them in one step 9 4 3 2 Plugins From this section is possible to create
129. When the event replication is activated the event management will be done in the metaconsole and in the instance there is not access to them With this option you will have access to a view of events in only reading mode Metaconsole Database Credentials Host Database Users Password and Port Is the port is not indicted the port by default will be used Events replication Replication interval Replication mode Show events list in local console read only Replication DB host Replication DB database Replication DB user Replication DB password Replication DB port Yes No 120 Seconds Only validated events Y Yes No db host com pandora pandora 3306 The event replication is done by the server In the configuration file should be an enabled token event replication 1 1 To do effective any configuration change in the event replication it will be necessary to restart the server 6 2 2 Metaconsole 6 2 2 1 Giving access to the Instances Same way as the Instances give access to the Metaconsole to have a remote access to the database the Metaconsole should do the same so the Instances could replicate their events PANDORAFMS Configuration 6 2 2 2 Instances Configuration In the Metasetup section it will be possible to configure the Instances with which the Metaconsole will be linked The configuration of one instance has a serial of parameters that we should config
130. _manage pl etc pandora pandora_server conf apply_all_policies 29 1 7 3 Add_agent_to_policy gt 5 0 Parameters lt agent name gt lt policy name gt Description An existent group will be added to an existent policy Example perl pandora_manage pl etc pandora pandora_server conf add_agent_to_policy Agent name Policy name 29 1 7 4 Delete_not_policy_modules Parameters Not Description All modules that doesn t belong to any policy will be deleted both from the database and the agent configuration file if there is one Example perl pandora_manage pl etc pandora pandora_server conf delete_nor_policy_modules AP PANDORAFMS Pandora FMS CLI 29 1 7 5 Disable_policy_alerts Parameters policy name gt Description All the alerts from a policy passed by parameter will be flagged as disabled Example perl pandora manage pl etc pandora pandora server conf disable policy alerts My policy 29 1 7 6 Create policy data module gt 5 0 Parameters lt policy_name gt lt module_name gt lt module_type gt lt description gt lt module_group gt lt min gt lt max gt lt post_process gt lt interval gt lt warning min gt warning max critical min lt critical max lt history_data gt lt data_configuration gt warning str critical str Description A policy data module will be created The default values are the same of create data module
131. _user gt 5 0 Parameters lt id_user gt lt profile name gt lt group name gt Description A profile in a group to a user will be assigned If the group is not provided the grupo will be Example perl pandora_manage pl etc pandora pandora_server conf update_user User Id Chief Operator Network 29 1 4 9 Disable_aecl Parameters No Description The Enterprise mode ACL system will be disabled in the configuration with the execution of this option Example perl pandora_manage pl etc pandora pandora_server conf disable_eacl 29 1 4 10 Enable_aecl Parameters No Description The Enterprise mode ACL system will be enabled in the configuration with the execution of this option Example perl pandora_manage pl etc pandora pandora_server conf enable_eacl AP PANDORAFMS Pandora FMS CLI 2 22220 s LLL 29 1 5 Events 29 1 5 1 Create_event Parameters event name gt event type group name gt lt agent name module name gt event state severity template name gt user name comment source id extra tags custom data Description An event will be created with these data the name and kind of the event name of the module agent and group associated Optionally it could be sent agent name module name event state 0 if it isn t validated and 1 if it is severity from 1 to 4 severity 0 Maintenan
132. a group disable eacl Disable the ACL Enterprise system enable eacl Enable the ACL Enterprise system Events create event Create an event e validate event Validate an event e validate event id Validate an event given a event id e get event info Display info about a event given a event id Incidents create incident Crete a incident Policies apply policy Force a policy application e apply all policies Add to the application queue all the policies add agent to policy Add an agent to a policy delete not policy modules Delete all the modules not associated to policies from the conf file disable policy alerts Disable all the alerts from a policy create policy data module Create a policy data module create policy network module Create a policy network module create policy snmp module Create a policy SNMP module create policy plugin module Create a policy plugin module validate policy alerts Validate all the alerts of a given policy get policy modules Get the module list of a policy get policies Get all the policies without parameters or the policies of a given agent agent name as parameter Tools e exec from file Execute any CLI option using macros from a CSV file 29 1 1 Agents 29 1 1 1 Create agent Parameters agent name gt operative system group name gt server name lt address gt description interval Description An
133. a package yum install lt nombre paquete gt To install packages you must do it like a root 12 4 3 Technical Notes on Appliance Note that the preconfigured system has the features below that you can change to increase safety SSH access as root enabled SELinux enforcement disabled Firewall disabled Automatic access to the artica account via sudo The artica account with password pandora is enabled by default Automatic Login System in the graphical console X Pandora Web Console Default password admin pandora MySQL user root default password different from OS user These parameters should be modified in a production system 169 AP PANDORAFMS First boot 13 SSH CONFIGURATION TO GET DATA IN PANDORA FMS 170 AP PANDORAFMS SSH Configuration to Get Data in Pandora FMS A q eee Sometimes we can t use the standard transfer method in Pandora FMS to pass files Tentacle because we could be using a Unix system that has not Perl as Sistems ESX for example and we have to use the old agent in shellscript When this happens the options are to use FTP or SSH to transfer the file Pandora FMS can use the SSH protocol to copy the XML data packages that are generated by the agents to the server For it you have to follow these steps 1 Create a pandora user in the host where is your Pandora FMS server that is going to receive the data through SSH If you have already i
134. a tasa constante basta con meter un sleep 1 al script anterior dentro del bucle while para generar 1 trap seg Se deja el sistema operando 48hr y se eval a el impacto en el servidor 2 Tormenta de traps Evaluar el antes el durante y la recuperaci n ante una tormenta de traps 3 Efectos del sistema sobre una tabla de traps muy grande gt 50 000 Esto incluye el efecto de pasar el mantenimiento de la bbdd 20 3 6 Eventos De forma similar a los SNMP evaluaremos el sistema en dos supuestos 1 Tasa normal de recepci n de eventos Esto ya se ha probado en el servidor de datos pues en cada cambia de estado se genera un evento 2 Tormenta de generaci n de eventos Para ello forzaremos la generaci n de eventos via CLI Utilizando el comando siguiente usr share pandora server util pandora manage pl etc pandora pandora server conf create event Prueba de evento system Pruebas A PANDORAFMS Methodology in detail O Nota Suponemos que existe un grupo llamado Pruebas Ese comando usado en un bucle como el usado para generar traps se puede usar para generar decenas de eventos por segundo Se puede paralelizar en un script con varias instancias para provocar un n mas alto de inserciones Esto servir a para simular el comportamiento del sistema ante una tormenta de eventos De esta forma podr amos probar el sistema antes durante y despu s de una tormenta de eventos 20 3 7 Concurrencia de usuarios Para el
135. according to their modality Modality Step by Step AP PANDORAFMS Assistant Wizard AD PRNDORAFMS D e Monitoring Create module Configuration Agent 003 4 m General MODULES Name Step_by_step_web_check Example of a step by step web check 4 Description ALERTS Check type Latency Y Disabled AGENTS Web checks Url http www example com index html String to check example Uri String to check Add check Delete check a Next gt Advanced Modality AP PANDORAFMS Assistant Wizard 4 admin 9 PANDORAFMS Create module Configuration Agent car_003 4 General MODULES Name Advanced web check Example of advanced web check 4 Description ALERTS Check type Response Y Disabled T AGENTS Web checks get http www example com index html post http www example com index html cookie 1 0 resource 1 0 Web checks check string xxxxxxxxx variable name variable value xxxxxxxxx variable name variable value none Load basic Check O The kind of check can be Latency In this check is obtained the total time that pass from the first petition until that the last one is checked If there are several checks the average will be get Response In this check is obtained a 1 OK or a 0 failed as result when checking all the transaction If there are several attempts and some of t
136. agent gt Description it ll be unassigned a module template of one agent giving it the template name the module and the agent as parameters Example perl pandora manage pl etc pandora pandora server conf delete template module plantilla001 modulo Mi agente 29 1 3 3 Create template action Parameters action name gt template name gt module name gt agent name gt lt fires min fires max Description It ll be added an action to an alert giving as parameter the name of the action and that of the template module and agent that composes the alert It ll be also possible giving it in an optional way the values of scaling fires min and fires max by default 0 Example perl pandora manage pl etc pandora pandora server conf create template action action012 template001 module agent 4 29 1 3 4 Delete template action Parameters action name template name module name agent name gt 388 AP PANDORAFMS Pandora FMS CLI ll Description be added an action to an alert giving as parameters the names of the action template module and agent that composes the alert Example perl pandora_manage pl etc pandora pandora_server conf delete_template_action action012 template001 module agent 29 1 3 5 Disable_alerts Parameters No Description All alerts will be disabled with the execution of this opt
137. agent with the name the operative system the group and the server specified will be created Optionally it will be possible to give it an address IP or name a description and an interval in seconds by default 300 AP PANDORAFMS Pandora FMS CLI 3 0 Y I perl pandora_manage pl etc pandora pandora_server conf create_agent agent Windows Databases Central Server 192 168 12 123 Agent description 600 29 1 1 2 Update_agent gt 5 0 Parameters lt agent name gt lt field gt lt new_value gt Description A given field of an existent agent will be updated The possible fields are the following agent name address description group name interval os name disabled parent name cascade protection icon path update gis data custom id Example perl pandora manage pl etc pandora pandora server conf update agent Agent name group name Network 29 1 1 3 Delete agent Parameters lt agent_name gt Descripci n The agent processed will be deleted with name as parameter Example perl pandora manage pl etc pandora pandora server conf delete agent Mi agente 29 1 1 4 Disable group Parameters group name gt Description the agents of the group considered as parameter will be disabled with the execution of this option If we pass All as group all agents from all groups will be disabled Example perl pandora manage pl etc pandora pandora server
138. ail O where is written xxx write de ddbb password pandora to use it with the user pandora The first executions should be useful to tune the server and the MySQL configuration We use the script usr share pandora_server util pandora_count sh to count if are xml pending to process the rate of package proccessing The aim is to make possible that all the packages generated 3000 could be processed in an interval below the 80 of the limit time 5 minutes This implies that 3000 packages should be processed in 4 minutes so 3000 4x60 12 5 We should get a processing rate of 12 5 packages minimum to be reasonably sure that pandora could process this information List of things to work on 9 of threads n maximum of items in intermediate queue max_queue files and of course all the parameters of MySQL that are applicable very important Solo un comentario acerca de la importancia de esto un Pandora con un servidor Linux instalado por defecto en una maquina potente puede no pasar de 5 6 paquetes por segundo en una m quina potente bien optimizada y tuneada puede llegar perfectamente a 30 40 paquetes por segundo Tambien depende mucho de la cantidad de modulos que haya en cada agente Se configura el sistema que el script de mantenimiento de bbdd en usr share pandora_server util pandora_db pl se ejecute cada hora en vez de cada dia mv etc cron daily pandora_db etc cron hourly We leave t
139. ake 10 or 15 minutes HeartbeatIntervalDbDb Shows how often are sent the pulse signals and how often we can expect to receive pulse signals If we do not receive pulse signals from a node for 3 consecutive intervales the node will be considered as down so the maximum time for discovering a fail through the pulse 213 A PANDORAFMS Installation and Configuration o sending process 4 times the value of this parameter This parameter should not be changed very often and it should have the same value for all modes HeartbeatIntervalDbApi Each node sends pulse signals to each MySQL or API node in order to make sure that the contact is kept If a MySQL node can not send the pulse in time following the criteria of the 3 pulses explained in HeartbeatIntervalDbDb the it will be considered as down and all current transactions are finished and the resources will be released A node can not reconnect until the resources of the previous instance would be released TimeBetweenLocalCheckpoints is useful to avoid that in a cluster with low load will be done local checkpoints if there is much load usually we start a new one inmediately after ending with the previous one It is a value given as a logarithm in base 2 with the size to store in any checkpoint TimeBetweenGlobalCheckpoints Shows how often the transactions are dumped into disk TimeBetweenEpochs Shows the interval of the replication times of the cluster Defines a timeout for the sy
140. alCheckpoints 20 TimeBetweenGlobalCheckpoints 10 32000 2000 When a transaction is committed it is committed in main memory in all nodes on which the data is mirrored However transaction log records are not flushed to disk as part of the commit The reasoning behind this behavior is that having the transaction safely committed on at least two autonomous host machines should meet reasonable standards for durability It is also important to ensure that even the worst of cases a complete crash of the cluster is handled properly To guarantee that this happens all transactions taking place within a given interval are put into a global checkpoint which can be thought of as a set of committed transactions that has been flushed to disk In other words as part of the commit process a transaction is placed in a global checkpoint group Later this group s log records are flushed to disk and then the entire group of transactions is safely committed to disk on all computers in the cluster TimeBetweenGlobalCheckpoints 2000 TimeBetweenEpochs 0 32000 100 This parameter defines the interval between synchronisation epochs for MySQL Cluster Replication TimeBetweenEpochs 100 TransactionInactiveTimeout 0 32000 4000 This parameter defines a timeout for synchronisation epochs for MySQL Cluster Replication If a node fails to participate in a global checkpoint within the time determined by this parameter the node is shut do
141. alhostpandora_cor 4 Pandora FMS the Fle If you click on the icon of Pandora in the desktop you will access directly the Pandora Web Console with the browser Keep in mind that the pandora account of MySQL has been created with a fixed password Go to etc pandora pandora server conf to see the default password Other fixed users have been created too Both users artica and root have the same fixed password than the pandora MySQL user Please change this password as soon as possible with the following commands passwd root passwd artica To find the IP address assigned automatically to your system by the network run the command below from a shell ifconfig You can change the IP from the administration menus Graphic mode or though the command line with the CentOs command system config network Just for advanced users If you wish to set the system to NOT start in graphical mode you can change the system runlevel by editing etc inittab and changing the level 5 for 166 PANDORAFMS First boot Level 3 12 4 1 Server Reconfiguration If you ever wish to change any parameter of the system network or anything else in the system you can do it by using the system GUI menu or with the command setup from the command line 5 Applications Places 4 gt 75 F Satjun 1 01 38 Pandora FMS default user artica About Me gt f Appearance Assistive Technologi
142. alized parameters compulsory are the module configuration and data serialized in the following order name module e id module type e description id module group e min value max value e post process e module interval min warning max warning AP PANDORAFMS API Calls str warning min critical max critical e str critical e history data e configuration data This is the definition block of the agent that will be inserted in the config file of the policy agent e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op zset amp op2 add data module policy amp id 1 amp other data module policy example name 2 data 20module 20created 20by 20Api 2 0 0 50 00 10 20 180 gt 21 35 1 module begin Odmodule_name 20pandora_process Odmodule_type 20generic_data O0dmodule_exec 20ps 20 20 20grep 20pandora 20 20wc 20 1 960dmodule end amp other mode zurl encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 18 set add SNMP module policy Add a SNMP module in the policy pass as id in the parameter Call syntax op set compulsory op2 add snmp module policy compulsory e id id policy compulsory should be a policy Id e other lt serialized parameters compulsory are the module configuration and data serialized in the followi
143. alse 0 or N LockPagesInMainMemory 0 2 0 On Linux and Solaris systems setting this parameter locks data node processes into memory Doing so prevents them from swapping to disk which can severely degrade cluster performance Possible values 0 Disables locking This is the default value 1 Performs the lock after allocating memory for the process 2 Performs the lock before memory for the process is allocated LockPagesInMainMemory 1 This parameter specifies whether an ndbd process should exit or perform an automatic restart when an error condition is encountered StopOnError 1 This feature causes the entire cluster to operate in diskless mode When this feature is enabled Cluster online backup is disabled In addition a partial start of the cluster is not possible Diskless 0 Enabling this parameter causes NDBCLUSTER to try using O_DIRECT writes for local checkpoints and redo logs this can reduce load on CPUs We recommend doing so when using MySQL Cluster NDB 6 2 3 or newer on systems running Linux kernel 2 6 or later ODirect 1 Setting this parameter to 1 causes backup files to be compressed The compression used is equivalent to gzip fast and can save 50 or more of the space required on the data node to store uncompressed backup files CompressedBackup 1 Setting this parameter to 1 causes local checkpoint files to be compressed The compression used is equivalent to gzip fast and can save
144. alue matches value max value min value time threshold max alerts e min alerts time from time to monday lt tuesday gt lt wednesday gt lt thursday gt friday lt saturday gt e sunday e recovery notify e lt field2 recovery e field3 recovery priority id group Examples Example 1 condition regexp pp action Mail to XXX max alert 10 min alert 0 priority WARNING group databases http 127 0 0 1 pandora console include api php op set amp op2 create alert _templategid pepitogother regex template 20based 20in 20 1 1 10 0 1 1 380ther_mode url encode separator amp apipass 1234 amp user admin amp pass pandora Example 2 condition value is not between 5 and 10 max value 10 00 min value 5 00 time_from 00 00 00 time_to 15 00 00 priority CRITICAL group Servers 351 AP PANDORAFMS API Calls A http 127 0 0 1 pandora_console include api php op set amp op2 create_ alert template amp id template min max amp other zmax min template 20based 20in 20range NULL 10 5 00 00 00 15 00 00 11111111114 2 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 25 set update alert template Update the template alert Call sintax op set compulsory op2 update a
145. ame compulsory should be the snmp component name other serialized parameters compulsory are the configuration and data of the snmp component serialized in the following order snmp component type description module interval max value min value id module group max timeout history data min warning max warning str warning min critical max critical str critical ff threshold post process snmp version snmp oid snmp community AP PANDORAFMS API Calls lt snmp3_auth_user gt lt snmp3_auth_pass gt lt module_port gt e lt snmp3_auth_pass gt lt snmp3_privacy_method gt lt snmp3_privacy_pass gt lt snmp3_auth_method gt lt snmp3_security_level gt lt snmp_component_group gt e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 new snmp component amp id example snmp component name amp other 16 SNMP 20component 20created 20by 20Api 300 30 10 3 1 10 20 str 21 30 str1 15 50 00 3 1 3 6 1 2 1 2 2 1 8 2 public example auth user example auth pass 66 AES example priv pass MD5 authNoPriv 12 amp other mode url encode separator amp apipass i234 amp user admin amp pass pandora 28 3 2 23 set new local component Create a new local component Call syntax op set compulsory op2 new local component compuls
146. amp apipass 1234 amp user admin amp pass pandora 28 3 2 61 set enable disable agent Enable disabled agent Call syntax op set compulsory op2 enable disable agent compulsory e id agent id compulsory should be an agent id Examples Example 1 Disable agent example id http 127 0 0 1 pandora console include api php op set amp op2 enable disable agent amp id example id amp other O amp other mode url encode separato amp apipass i234 amp user admin amp pass pandora Example 2 Enable agent example 14 http 127 0 0 1 pandora console include api php op set amp op2 enable disable agent amp id example id amp other 1 amp other mode url encode separato amp apipass 1234 amp user admin amp pass pandora 28 3 2 62 set gis agent only position gt 5 0 Add new position GIS any agent Call syntax op set compulsory op2 gis agent only position compulsory e id ndice compulsory agent index other par metros serializados gt compulsory params to set position lt latitude gt Latitude lt longitude gt Longitude altitude Altitude Ejemplo http 127 0 0 1 pandora5 include api php apipass caca amp user admin amp pass pandora amp op set amp op2 gis agent only position amp id 582 amp other mode zurl encode separator amp other 2967C1967CO 368 AP PANDORAFMS API Calls Su 28 3 2 63 set gis_agent gt 5 0
147. amp user admin amp pass pandora 28 3 2 21 set new_plugin_component Create a new plugin component Call syntax op set compulsory op2 new plugin component compulsory e id plugin component name compulsory should be the plugin component name e other lt serialized parameters compulsory are the agent configuration and data of the plugin component serialized in the following order e plugin component type description e module interval max value min value e module port id module group e id plugin max timeout e history data min warning AP PHNDORAFMS API Calls A Examples lt max_warning gt lt str_warning gt lt min_critical gt lt max_critical gt lt str_critical gt lt ff_threshold gt lt post_process gt lt plugin_component_group gt lt enable_unknown_events gt only in version 5 http 127 0 0 1 pandora_console include api php op set amp op2 new_plugin_component amp id example plugin component name amp other 2 plugin 20component 20created 20by 20Api 300 30 10 66 3 2 example user example pass p 20max amp apipass 1234 amp user admin amp pass pandora 1 10 20 str 21 30 stri 10 50 00 12 amp 0ther_mode url_ encode separator 28 3 2 22 set new snmp component Create a new SNMP component Call syntax op set compulsory op2 new snmp component compulsory snmp component n
148. and modify the plugins that the Network components type plugin will use 4 admin 0 PANDORAFMS Plugin management JO DNS Plugin Standard usr share pandora server util plugin dns plugin sh IPMI Plugin Standard usr share pandora_server util plugin ipmi plugin pl MySQL Plugin Standard usr share pandora_server util plugin mysql_plugin sh SMTP Check Standard usr share pandora_server util plugin SMTP_check pl SNMP remote Standard perl usr share pandora server util plugin snmp remote pl UDP port check Standard usr share pandora_server util plugin udp_nmap_plugin sh Add gt Create Plugin It is possible to create new tags clicking on Add The following form will be shown 128 AP PANDORAFMS Data Management AP PANDORAFMS EM 5 Advanced Plugin management Edit plugin MORE General Name UDP port check Plug in type Standard Y Max timeout Sseconds Y Max retries 0 Check a remote UDP port by using NMAP Use IP address and Port options Description Command Plug in command usr share pandora_server util plugin udp_nmap_plugin sh y Plug in parameters t _fieldt_ p _field2_ Command preview usr share pandora_server util plugin udo_nmap_plugin sh t _field1_ p _field2_ Parameters macros 0 Description amp eldl Target IP Default value fieldi Help fieldi Description _feld2_ Port Default value _field2_ Help _field2_ Add macro Delete macro Update Y In plugins
149. api php This is the method that has been defined in Pandora FMS to integrate applications from third parts with Pandora FMS It basically consist on a call with the parameters formated to receive a value or a list of values that after its application it will use to do operations A call to the API php is as simple as this http lt Pandora Console install gt include api php lt parameters gt The API only can receive the following parameters op compulsory is the first parameter that specify the nature of the operation which could be get or set or help get returns a value or values set send a value or values help returns a little help from the calls op2 compulsory the call with an explanatory name of the one that works id optional first parameter of the call id2 optional second parameter of the call other optional third parameter of the call sometimes it could be a list of serial values other mode optional format of the serial list of posible values url encode el valor de other es un alfanum rico formateado como UrlEncode e url encode separator separador the value will be a serial value list with the divider character for example Other peras melones sandias amp other mode url encode separator returnType optional return format of the value or values The current available values are string returns the value as it is as an alphanumeric on
150. arami param2 param3 Module description General 1 3 300 0 00 1 string for warning string for critical 29 1 2 5 Delete module Parameters module name agent name Description An agent module will be eliminated considering both as parameters Example perl pandora manage pl etc pandora pandora server conf delete module My module My agent 29 1 2 6 Data module Parameters server name agent name module name module type module new data lt datehour gt Description Itll be send data to an agent module giving it as parameter the server name the agent the module name the type of module amd the new data to be inserted Optionally it ll be possible to send the date hour that will be as that of the data sending with 24 hours format YYY MM DD HH mm In the case of not sending this parameter the current data will be shown Example perl pandora manage pl etc pandora pandora server conf data module Servidor General My agent My modulo generic data 1 2010 05 31 15 53 29 1 2 7 Get module data gt 5 0 Parameters lt agent_name gt module name gt lt interval gt lt csv_separator gt Description Will be returned the data of a module as timestamp data in CSV format of the last X seconds interval using as default separator Example perl pandora manage pl etc pandora pandora_server conf get module data agent name module name 86400
151. ass 1234 amp user admin amp pass pandora Access conditions Theorigin IP is in the ACLs IP list The API password is not setted or is 1234 The user admin exists and their password is pandora 28 1 3 Security Workflow Starting from version 4 0 2 the API will have several security improvements and this is implemented by three factors 315 AP PANDORAFMS Security IP filtering Only listed filtered IP will be allowed to connect the Global API password if defined needed to use the API User amp Password in the console need to be valid and have permissions to perform the operation requested This is explained in this workflow ACCESS DENIED CHECK API PASS FAIL CHECK USER AND PASS SUCCESS 28 2 New Calls Extension in the API To develop new calls for the API you have to consider that The call has to be inscribed as a function in the file instalaci n Pandora Console gt include functions_api php The function must have the next structure The prefix api the kind of operation get set or help depend if is a data read data write or retrieve help operation and the name of the call trying to be coherent with the operation as for example function api get call name parameters 316 AP PANDORAFMS New Calls Extension in the API V The function have no parameters but if it have it the parameters received wil
152. assword it is necessary to follow these steps apipass Api password configured in the console You can do it in the following configuration view Administration gt Setup gt Nota Before the 4 0 2 version this parameter was pass 314 AP PANDORAFMS Security Automatic check for updates Yes No Y Enforce https Yes No Attachment store var www trunk pandora console attachment IP list with access API password a Enable GIS features in Pandora Console Yes No Enable Integria incidents in Pandora Console Yes Enable Netflow Yes Timezone setup Europe Berlin Sound for Alert fired air shock alarm wav sz Sound for Monitor critical Star Trek emergency simulat f gt Sound for Monitor warning negativebeep wav sz To access to the actions of the API is necessary give a valid user and pass of Pandora FMS too user Valid user of Pandora FMS pass The password of the given user Note In the API calls the passwords are uncodified So please be careful and use SSL connections to avoid sniffers The API allows POST petitions to codify it when use SSL HTTPS 28 1 1 Return When the API denies the access a simple string auth error is returned 28 1 2 Examples In this case is provided the API password 1234 and the access credentials are user admin and password pandora http 127 0 0 1 pandora console include api php opzget amp op2 plugins amp return type csv amp other amp apip
153. at port host port Here we can see an extract of the file mysqld Run NDB storage engine ndbcluster Location of management servers ndb connectstring 10 1 1 215 1186 10 1 1 216 1186 Number of connections in the connection pool the config ini file of the cluster have to define also API nodes at least for each connection A PANDORAFMS Installation and Configuration A ndb cluster connection pool 10 Forces sending of buffers to NDB immediately without waiting for other threads Defaults to ON ndb force send 1 Forces NDB to use a count of records during SELECT COUNT query planning to speed up this type of query The default value is ON For faster queries overall disable this feature by setting the value of ndb_use_exact_count to OFF ndb use exact count 0 Determines the probability of gaps in an autoincremented column Set it to 1 to minimize this Setting it to a high value for optimization makes inserts faster but decreases the likelihood that consecutive autoincrement numbers will be used in a batch of inserts Default value 32 Minimum value 1 ndb autoincrement prefetch sz 256 Options for ndbd process mysql cluster Location of management servers list of host port separated by ndb connectstring 10 1 1 230 1186 10 1 1 220 1186 final version of this file is Annex 1 18 2 2 Manager Confi
154. ating new profiles in the node user This way it won t be possible to touch accidentally profiles that are configured in the node 11 3 When I try to configure one Instance it fails We should make sure that The machine where the Metaconsole is can see the instance machines The Metaconsole machine has permissions on the Instance database We have defined the authentication parameters auth and the Api password in the instances and configured correctly in the Metaconsole We should have configured the list of IPs that can have access to its API including the one of the Metaconsole in the Instances 143 A PANDORAFMS When I try to configure one Instance it fails 12 AppLiANcE CD AP PANDORAFMS Appliance CD 9595 Since releasing the 4 1 version we have been using an Appliance installation system to install the operating system and Pandora FMS from the CD with all the required dependencies In older versions we used to use SUSE as Base System However since the 4 1 version the base system is CentOs RedHat Enterprise Linux s brother The installation CD can be used to install Pandora FMS on a dedicated physical system or in a virtual machine The installation of the CD uses the Redhat installation system Anaconda itself allowing a graphical or text installation The CD comes with all the software required to accomplish the installation so that Internet connection is not necessary to complete a full ins
155. ation tools A PANDORAFMS Propagation Utilities 5 User PERMISSIONS AP PANDORAFMS User Permissions There are several permission systems that restrict what user could see or administrate 5 1 ACLs The ACLs system controls which elements an user could see or administrate depending on the group they belong to For example An user could have reading permissions on the alert templates of the Applications group and those of Administration on the Server group You will be able to see and assign templates to both groups but you only have the option to edit or delete the ones of the Server group 5 2 Tags One tag is a label that you can assign to a module An user could have the ACLs in some specific group restricted by Tags If so only these ACLs will be applied to the modules that contains those Tags For example An user could have reading or administration permission in the Server group restricted to the Systems Tag It will only have these permissions on the modules that even belonging to an agent of the Server groups will have assigned the System Tag 5 3 Wizard Access Control Users have assigned an access level regarding to the Metaconsole Wizard This level could be Basic or Advanced Besides the alert templates and the module components local and network will also have this access level 5 3 1 Visibility 5 3 1 1 Basic Access The Basic access users will
156. atory Examples http 127 0 0 1 pandora console include api php op get amp op2 module from conf amp user admin amp pass pandora amp id 9043 amp id2 example name It returns null string if no modules are found 28 3 1 17 get total modules Total modules by group Call syntax op get mandatory op2 total modules mandatory e id id group mandatory Examples http localhost pandora console include api php op get amp op2 total modules amp id 2 amp apipass 1234 amp user admin amp pass pandora 28 3 1 18 get total agents Total agents by group Call syntax op get mandatory op2 total agents mandatory AP PANDORAFMS API Calls id lt id group mandatory Examples http localhost pandora_console include api php op get amp op2 total agents amp id 2 amp apipass 1234 amp user admin amp pass pandora 28 3 1 19 get agent name Agent name for a given id Call syntax op get mandatory op2 agent name mandatory id id agent mandatory Examples PET E n mure cree MOE Aaa php 28 3 1 20 get module name Module name for a given id Call syntax op get mandatory e op2 module name mandatory id id module mandatory Examples http localhost pandora console include api php op get amp op2 module name amp id 1 amp apipass 1234 amp user admin amp pass pandora 28 3 1 21 get alert action by group
157. b dt HE A PANDORAFMS Appendix Examples of Configuration Files iin are written to the cluster log BackupReportFrequency represents the time in seconds between backup status reports BackupRepor tFrequency 10 BackupDataBufferSize 0 4G 16M In creating a backup there are two buffers used for sending data to the disk The backup data buffer is used to fill in data recorded by scanning a node s tables Once this buffer has been filled to the level specified as BackupWriteSize see below the pages are sent to disk While flushing data to disk the backup process can continue filling this buffer until it runs out of space When this happens the backup process pauses the scan and waits until some disk writes have completed freed up memory so that scanning may continue BackupDataBufferSize 16M BackupLogBufferSize 0 4G 16M The backup log buffer fulfills a role similar to that played by the backup data buffer except that it is used for generating a log of all table writes made during execution of the backup The same principles apply for writing these pages as with the backup data buffer except that when there is no more space in the backup log buffer the backup fails The default value for this parameter should be sufficient for most applications In fact it is more likely for a backup failure to be caused by insufficient disk write speed than it is for the backup log buffer to become f
158. bash Copyright c 2005 2009 Artica ST Author Sancho Lerena lt slerena artica es gt 2006 2009 etc init d cluster_node System startup script for MYSQL Cluster Node storage BEGIN INIT INFO Provides cluster_node Required Start syslog cron Should Start network cron Required Stop syslog Should Stop network Default Start 235 Default Stop 016 Short Description MySQL Cluster Node startup script Description See short description END INIT INFO export PROCESS_DAEMON ndb_ndb export PROCESS _PARAMETERS d A PANDORAFMS Appendix Examples of Configuration Files A A Uses a wait limit before sending a KILL signal before trying to stop Pandora FMS server nicely Some big systems need some time before close all pending tasks threads export MAXWAIT 300 Check for SUSE status scripts if f etc rc status then etc rc status rc_reset else Define rc functions for non suse systems void functions function rc_status VOID 1 function rc_exit exit function rc_failed VOID 1 ial This function replace pidof not working in the same way in different linux distros function pidof_process This sets COLUMNS to XXX chars because if command is run in a strech term ps aux don t report more than COLUMNS characters and this will not work COLUMNS 400 PROCESS PID ps aux grep PROCESS_DAEMON
159. ce Informative Normal Minor Warning Major Critical Status It shows the status of the event There are the following status AP PANDORAFMS Events New Validated n process Validated by In case that the event have been validated it shows the user who validated it and the date and hour when it did agent belongs to 7 2 2 1 1 2 Details Group In case that the event comes from an agent module it shows the group to which the Tags In case that the event comes from an agent module it shows the module tags Module Gas Level is going to CRITICAL 100 00 Q Details Agent details Name I Address os Last contact Last remote contact car 004 Linux 2 6 2013 09 26 12 55 05 2013 09 26 12 55 01 Custom fields View custom fields Module details Name Gas Level Module group No assigned Graph Alert details Instructions The second tab shows details of the agent and of the module that created the event It is also possible to have access to the module graph As last data it will show the origin of the even that could be a Pandora server or any origin when the API is used to create the event 7 2 2 1 1 3 Agent Fields AP PANDORAFMS Events A ES 2 Module Level is going to CRITICAL 100 00 5 Senera Q Detail F Agent fields Comment Serial Number Department Additional ID The third flap shows the Agent customized fields
160. ce 1 Informational 2 Normal 3 Warning 4 Critical From version 5 0 there are 5 Minor y 6 Major too template name in the case that is would be associated to one alert user name comment source Extra id tags Format should be tag lt url gt lt tag gt lt url gt You can add multiple tags separated by commas custom data Custom data should be entered as a JSON document For example Location Office Priority 42 Nota Event type could be unknown alert fired alert recovered alert ceased alert manual validation recon host detected system error new agent going up warning going up criticalgoing down warning going down normal going down critical going up normal configuration change Example perl pandora manage pl etc pandora pandora server conf create event CLI Event system Firewalls agent module 4 Template004 29 1 5 2 Validate event Parameters agent name module name datehour min datehour max name user lt criticity gt template name gt Description All events will be validated considering a group of filters The configurable filters are the agent name the module name date hour minimum and date hour maximum the user name the criticity and the name of the associated template It s possible to combine the parameters in several ways leaving blank with empty inverted commas the ones that you don t want to use and filling in t
161. cesses the data that it gets it does remote checks etc The Metaconsole has not its own server It is only a web console 3 1 Where are stored the data Some data are in the Instances others in the Metaconsole and others in both places They need to be synchronized to work properly In Instances Agents Modules Alerts Policies In the Metaconsole The Metaconsole configuration Components Reports and the template reports Network maps Visual maps Netflow filters In both Users and profilesThe userLos usuarios y perfiles Groups Templates actions and alert commands Tags Categories Though these items are stored in the metaconsole they are configurations that are used to visualize the Instace data so they don t have any utility by themselves 3 2 How Information is got and modified The Metaconsole gets and modifies the Instances information in two different ways Active Access to the Database or API of the Instances in a remote way from the Metaconsole it s the case with agents modules alerts etc AP PANDORAFMS How Information is got and modified Passive Data replication from the Instances to the Database of the Metaconsole it is the case of events INSTANCE 2 INSTANCE AP PANDORAFMS How Information is got and modified 4 SYNCHRONIZATION A PANDORAFMS Synchronization C There are two different types in th
162. ch Search Q Agent car 003 4 Check SSH Server ALERTS Modules 2 E AGENTS Back Delete Edit A Once it has been selected we can do click on Delete to delete it or on Edit to edit it When editing it we will have access to a screen very similar to the creation one with the same 4 steps General Configuration Edition of the monitor more general data Advanced Configuration Edition of the monitor advanced data Alerts Monitor alert edition Preview The data modified in a single screen before finishing the process C 3 The management of local and remote modules and web checks is transparent for the user The fields to edit change but the editing deleting process is the same Module Administration Flow PANDORAFMS Assistant Wizard Module creation Select web check mode Module edition 4 Select 4 alort Di Delete Agent creation Agent edition Agents Selact ft 8 1 4 Alerts The alert editor is a direct link to the alert step in the module edition This is done to make its access and management easier In the alert options we could create an alert or edit one that is already created Alerts could be only added ore created in modules to which we have access from the Wizard Or what is the same those modules created from the Wizard and on which we have ACL permissions AP PANDORAFMS Assistant Wizard A admin 0
163. chronized in order to warranty the access to the data they have The ACLs that an user has in each group in the Metaconsole should correspond with the accesses of the user with the same name in the instance We will see later the tool to synchronize the groups in the section AP PANDORAFMS Synchronization utilities 0 245925225220 GROUPS Synchronization tools GROUPS 4 1 3 Alert Synchronization The alert synchronization refers to the synchronization between the Metaconsole and the Instances of the templates actions and alert commands This synchronization is necessary because one alert is the association of a template with a number of actions to one module Besides each action has synchronized one command Alerts are configured and assigned from the Metaconsole with the templates actions and commands of the Metaconsole itself In order that this configuration would be possible and coherent the instance where the module to which an alert will be assigned would be placed should has the same templates actions and commands There is one tool to synchronize the alerts that we will see later in the section script The synchronization of that script should be done in a manual way entering into The tool only synchronize the data structures The commands are associated to one the Instances AP PANDORAFMS Synchronization utilities TEMPLATES 5 5 TEMPLATES
164. cies compulsory Examples http 127 0 0 1 pandora console include api php op set amp op2 apply all policies amp apipass 1234 amp user admin amp pass pandora 28 3 2 15 set add network module policy Add a network module in the policy pass as id in the parameter Call syntax op set compulsory op2 add network module policy compulsory e id id policy compulsory should be a policy Id other par metros serializados gt compulsory are the module configuration and data serialized in the following order AP PANDORAFMS API Calls A e id module type e description id module group min value max value e post process e module interval min warning max warning str warning min critical max critical e str critical e history data ff threshold e disabled e module port snmp community e snmp oid custom id e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 add network module policy amp id 1 amp other network module policy example 6 network 20module 20created 20by 20Api 2 0 0 50 00 180 10 20 21 35 1 15 0 66 O amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 16 set add plugin module policy Add a plugin module in the policy pass as id in the
165. cords more criticity returns the biggest value of criticity e event type unknown alert fired alert recovered or its substring you can also use not normal Examples 127 0 0 1 pandora_console include api php qet amp op2 events amp return type csv amp apipass 1234 amp user admin amp pass pandora AP PHNDORAFMS API Calls Su http 127 0 0 1 pandora_console include api php op get amp op2 events amp other_mode url encode separator amp return type csv amp other 2 SERVER CPU template alert00 1274715715 127471781 amp apipass 1234 amp user admin amp pass pandora Full usage example Sample event 1 report this information 951140 3998 0 14 0 2012 06 23 22 51 28 Module CheckPandora 0 00 is going to CRITICAL 1340484688 going up critical 8176 0 4 RemoteAgent Aerin transmit Going down to critical state http firefly artica es pandora demo images b red png Critical http firefl y artica es pandora demo images status sets default severity critical png Most of the fields match the fields in the dababase try to do this query using the SQL manager at pandora select from tevento order by id evento DESC limit 100 You will see the fields are like this Field 1 ID event number incremental Field 2 ID agent Field 3 ID user which validate the event Field 4 ID Group numerical Field 5 Status 0 new 1 validated see
166. cra SA UI ZO Agente O64 15 59 pundoru 03 25 a Agwnte fulcra 3083 00 16 59 pundoru 9 Pu A iwhencau 35 16 5 15 59 27 punderu 55 39 Numero can LUN 905 20 dxfanaduzi200 2500 16 01 51 pundoru 5 15 0 Agenbe iubencia 15 pundor a 5 15 Agente pondoru pondoro Torring pandora a Tarring 5 24 2 gt 3167 pandara 776 2 714 Agente arancia s Tarencin 3O 55 pandara 27 0 2 20 Agente arancia e E 50 pandaya 27 4 02 2 16 77 11 Agente Larancia e ogee 14 62 pandara 2006 09 25 16 22 Aqentetaraneia c lareneia 27 10 pandora iniavios coneccALce8 alto 2252 03 22 16 22 57 exceeds 7 00 pandara 2005 02 25 16 24 14 Aqence o pandora 2006 03 25 16 25 40 Aqence Lareancia wi Larencia 72 77 16 22 62 pandora 1006 03 23 16 22 52 gt craxionar Ni 2979 22 4 1 14 1200 2100 16 20 22 pandora Temarios conestacce alto 2222 03 23 16 33 22 exceeadl 7 00 pandora 2066 02 25 Aqente 9 Serial Mores caida pandora zoce 03 22 Agente h Serial 1 1 zerzxiaria COW zarda 2 16 22 22 pandora zocc 03 22 2 Agente fv ronsar 310 99 5 16 44 42 pandora 2 6 03 22 15 agente I ed 9159 00 5 16 42 22 pandora 2 07 15 42 07 Numero oe me 7 3054 52 definida 2 16 45 37 pandora zoce 03 15 42 06 Agwnta Lacencia wilt latencia 34 75
167. ctions It provides consistent structure while also allowing easy maintenance The actions through this file must pass by means of a GET or POST the parameter page that is the relative direction of the script to be executed in the AJAX request ajax php 301 AP PANDORAFMS Pandora FMS Code architecture S 27 1 2 4 Mobile console Pandora FMS has a simplified Pandora Console version for small screen mobile terminals it is simplified in design and functionality to allow easy interaction with Pandora Console from portable devices mobile index php 27 1 2 5 API From version 3 1 of Pandora FMS there is included an API of type REST so that third party apps can interact with Pandora FMS across port 80 using the HTTP protocol The script must follow these 3 security points e The client IP must be in the list of valid IPs or match with any regex in this list This list is set in the Pandora FMS setup e Must pass the parameter with the API password this password is also set in Pandora FMS setup e Must pass the user and password as parameters this user must have permissions to execute these actions in the API include api php 27 1 2 6 Special cases In Pandora Console there are several special cases for entry points these are to avoid the interactive login or general process that make it the main entry point index php from root Extensi n Cron Task This extension is called by the wget command i
168. d as extended information for that module in Pandora FMS s database Full list of monitors ENT WEN Last contact 7 2 CPU usage percentage E N A N A 8 101 5 seconds location bar 9 Ni ple al und A module should at least have a name type and data element For example lt module gt lt name gt CPU lt name gt lt description gt CPU usage percentage lt description gt lt type gt generic_data lt type gt lt data gt 21 lt data gt lt module gt There can be any number of module elements in an XML data file Last do not forget to close the 310 AP PANDORAFMS Pandora FMS XML data file format agent_data tag There is a special case of multiitem XML data based on a list of items This is only applicable to string types The XML will be something like lt module gt lt type gt async_string lt type gt lt datalist gt lt data gt lt value gt lt CDATA xxxxx gt lt value gt lt data gt lt data gt lt value gt lt CDATA yyyyy gt lt value gt lt data gt lt data gt lt value gt lt CDATA Zzzzz gt lt value gt lt data gt lt datalist gt lt module gt 311 AP PANDORAFMS Pandora FMS XML data file format 28 Panpora FMS ExTERNAL 312 AP PANDORAFMS Pandora FMS External API Pandora FMS External API is used doing remote calls through HTTP on the file include
169. d be an agent name e other serialized parameters compulsory are the module configuration and data serialized in the following order name module e disabled e id module type e description id module group min value max value e post process e module interval min warning max warning str warning min critical max critical e str critical e history data e enable unknown events only in version 5 337 AP PANDORAFMS API Calls Nu Examples http 127 0 0 1 pandora_console include api php op set amp op2 create data module amp id pepito amp other prueba O 1 data 20module 20Ffrom 20api 1 10 20 10 50 180 10 15 16 20 O0 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 8 set create_SNMP_module Create a SNMP module Call sintax op set compulsory e op2 create snmp module compulsory e id agent name gt compulsory should be an agent name e other lt serialized parameters compulsory are the module configuration and data serialized in the following order name module e disabled e id module type id module group min warning max warning str warning min critical e max critical e str critical ff threshold e history data lt ip_target gt e module port lt s
170. database continues writting data doesn t matter replication will continue to replicate all changes from the initial coordinates Think about this as a lineal path and you freeze a start point for the slave to start to replicate the information Follow these steps 1 Start a session on the master by connecting to it with the command line client and flush all tables and block write statements by executing the FLUSH TABLES WITH READ LOCK statement AP PANDORAFMS Initial enviroment mysql gt FLUSH TABLES WITH READ LOCK 2 Database writes are now blocked Use the SHOW MASTER STATUS statement to determine the current binary log file name and position gt SHOW MASTER STATUS File Position Binlog Do DB Binlog_Ignore_DB mysql bin 000003 98 pandora mysql The File column shows the name of the log file and Position shows the position within the file In this example the binary log file is mysql bin 000003 and the position is 98 You need them later when you are setting up the slave They represent the replication coordinates at which the slave should begin processing new updates from the master 3 Open a shell and do a mysqldump command mysqldump u root pnone pandora
171. date all the alerts of a given policy Example perl pandora manage pl etc pandora pandora server conf validate policy alerts Policy name 29 1 7 11 Get policy modules gt 5 0 Parameters policy name gt Description Get the module list id and name of a given policy Example perl pandora manage pl etc pandora pandora server conf get policy modules Policy name AP PANDORAFMS Pandora FMS CLI 29 1 7 12 Get_policies gt 5 0 Parameters lt agent_ name gt Description Get all the policies without parameters or the policies of a given agent agent name as parameter Example perl pandora_manage pl etc pandora pandora_server conf get_policies Agent name 29 1 8 Netflow 29 1 8 1 Create_netflow_filter gt 5 0 Parameters lt filter name gt lt group name gt lt filter gt lt aggregate by gt lt output_format gt Description Create a new netflow filter The possible values of aggregate by parameter are dstip dstport none proto srcip srcport The possible values of ouput_format parameter are kilobytes kilobytespersecond megabytes megabytespersecond Example To create a netflow filter we execute the following option perl pandora_manage pl etc pandora pandora_server conf create_netflow_filter Filter name Network host 192 168 50 3 OR host 192 168 50 4 or HOST 192 168 50 6 dstport kilobytes 29 1 9 Tools 29 1 9 1 Exec_fro
172. de like other mode url encode separator separador amp gt to put the divider on other Examples http 127 0 0 1 pandora console include api php op get amp op2 module last value amp id 63 amp other error value O amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora http 127 0 0 1 pandora console include api php op get amp op2 module last value amp id 62 amp apipass 1234 amp user admin amp pass pandora 28 3 1 4 get agent module name last value Returns the last value of module This module is filtered by the agent name pass as parameter id and module name pass as parameter id2 With the other parameter you can add a error code that your application knows and it is out range of module values Call Syntax e op get compulsory e op2 module last value compulsory e id alphanumeric compulsory contains the agent name id2 lt alphanumeric gt compulsory contains the module name other error return optional that you want to return if there is an error that usually has not been found in the DB Codes of error return are error message returns error in a text message e error value cseparator code or value amp gt gives back this code or error value but it is necessary that it comes with other mode such as other mode url encode separator separator amp gt to use the divider in other Examples http 127 0 0 1 pandora console include api php
173. dentified by pandora mysql gt flush privileges 17 4 8 Manual split brain recovery DRBD detects split brain at the time connectivity becomes available again and the peer nodes exchange the initial DRBD protocol handshake If DRBD detects that both nodes are or were at some point while disconnected in the primary role it immediately tears down the replication connection The tell tale sign of this is a message like the following appearing in the system log Split Brain detected dropping connection After split brain has been detected one node will always have the resource in a StandAlone connection state The other might either also be in the StandAlone state if both nodes detected the split brain simultaneously or in WFConnection if the peer tore down the connection before the other node had a chance to detect split brain In this case our secondary node castor is alone castor cat proc drbd version 8 0 14 api 86 proto 86 GIT hash bb447522fc9a87d0069b7e14f0234911ebdab0f7 build by phil fat tyre 2008 11 12 16 40 33 1 cs WFConnection st Secondary Unknown ds UpToDate DUnknown C r ns 0 nr 0 dw 0 dr 0 1 0 bm 7 10 0 0 ua 0 0 used 0 61 hits 0 misses 0 starving 0 dirty 0 changed 0 act_log used 0 257 hits 0 misses 0 starving 0 dirty 0 changed 0 At this point unless you configured DRBD to automatically recover from split brain you must manually intervene by selecti
174. dora FMS CLI Pandora FMS CLI Command Line Interface is used for making calls command line the file util pandora_manage pl This method is specially useful to integrate applications of thirds parts with Pandora FMS through automated tasks Basically it consists on one call with the parameters formated to do and action such as the creation an elimination of one agent one module or one user among other things The CLI is a file in Perl so one call to CLI is as easy as this perl pandora_manage pl lt pandora_server conf path gt lt option gt lt option parameters gt Pandora FMS CLI has the following options Agents create agent Create an agent update agent Update an agent field delete agent Delete an agent disable group Disable all agents from one group enable group Enable all agents from one group create group Create a group stop downtime Stop a planned downtime get agent group Get the group name of a given agent get agent modules Get the module list of a given agent get agents Get list of agents with optative filter parameters delete conf file Delete a local conf of a given agent clean conf file Clean a local conf of a given agent deleting all modules policies and collections data get bad conf files Get the files bad configured without essential tokens M dulos create data module Add one data module to one agent create network module Add
175. dule by functionality purely descriptive You can use 1 for General module group 31 4 Version 2 Since Pandora FMS v5 the server plugins use macros With this change plugin definition ini has changed A version parameter has been added and the parameters ip opt user opt port opt and pass opt have disappeared Instead is possible to add macros to the execution postcommand parameter as 41 field2 fieldN Each macro will have a parameter with the structure macro desc field1_ macro desc field2 macro desc fieldN Followed by the short description of the macro This new structure is known as the version 2 O The old version is still compatible If the version parameter is not defined version 1 is Lj assumed 31 4 1 Example of the plugin definition version 2 plugin_definition version 2 name Remote SSH exec filename ssh_pandoraplugin sh description This plugin execute remotely any command provided timeout 20 execution_command execution postcommand h _field1_ u _field2 macro_desc_fieldi_ Host address macro_desc_field2_ User plugin_type 0 total_modules_provided 1 407 AP PANDORAFMS Versi n 2 32 AGENT PLUGINS DEVELOPMENT 408 AP PANDORAFMS Agent Plugins Development 224244424424 The agent plugin is executed by the Pandora FMS Software Agent so it should have some special features Each execution of the plugin could return one or s
176. e e csv return the values as a CSV separated by default with the character fields and with CR files csv head returns same as with csv except that it adds a first file with the field names to return 28 1 Security At the moment the security is based on an IPs list that will have access to the tool And it will be configured as we could see at the image in the Pandora Console configuration options If you introduce the character in the box text the ACL check will be omitted relegating the security to the protocol and to the environment In the same way the character can be used as wildcard In example 183 234 33 313 AP PANDORAFMS Security PANDORA SETUP GENERAL CONFIGURATION Language code for Pandora Remote config directory SLA period seconds Max days before compact data Max days before purge Compact interpolation in hours 1 Fine 20 bad Auto login hash password Default hours for event view Timestamp or time comparation e Time source e Automatic update check Enforce https Compact CSS and JS into header ACL IP list for access 7 You can also set a password for the actions of the API English M var spool pandora data 604800 15 60 in rollover Timestamp in rollover 4 Database v Yes No Yes No Yes 127 0 0 1 192 168 1 20 192 168 1 25 192 168 50 32 192 168 2 42 In order to setup the p
177. e and is located in Sourceforge Navigating http sourceforge net p pandora code HEAD tree Using the SVN client command line svn co https svn code sf net p pandora code pandora 27 3 3 Bugs Failures Reporting errors helps us to improve Pandora FMS Please before sending an error report check our database for bugs and in case of detecting a non reported one send it using the Sourceforge tool for tracking and reporting of errors on the Project WEB http sourceforge net projects pandora 27 3 4 Mailing Lists Mailing Lists are good and they are also an easy way of keeping up to date We have a public mailing list for users and news with low traffic and a developer mail list for technical debates and notifications sometimes daily of the development through our SVN code version control system 307 AP PANDORAFMS Development Oe automatic notification system 27 4 Compiling Windows agent from source 27 4 1 Get the latest source To get the latest source from our repository you will need a Subversion client Then execute this svn co https svn sourceforge net svnroot pandora pandora 27 4 2 Windows In order to build from source you will need the latest Dev Cpp IDE version with the MinGW tools Download it from here Open PandoraAgent dev with Dev Cpp and construct the project Everything should compile for a default installation If you encounter any problem when building f
178. e for example should match with the name that we give to it in its configuration in the metaconsola Event Replication This indicator shows if the Instance has activated the event replication and if the events from the Instance have been alredy received and how long ago was the last replication The three first indicators should be in green color so the Instance should be correctly linked and we start viewing their data However the event Replication events will give us only information about this feature O One Instance could be configured correctly but with their events not 5 replicated 6 2 2 3 Index Scaling Most part of the synchronization between the Metaconsole and Instacnes is done by name regardless of the internal ID of the items One exception of this are the groups whose IDs it s very important that are synchronized In order to make sure that the group IDs that are synchronized from the Metaconsole don t exist in the instances we significantly increase the value AUTO INCREMENT from the tgrupo table To do this we should execute in the Metaconsole database the following query ALTER TABLE tgrupo AUTO INCREMENT 3000 gt gt 1f we suspect that the number of groups of one instances created an external way to the Metaconsole could exceed the 3000 it is possible to configure a higher value AP PANDORAFMS Configuration 7 VISUALIZATION AP PANDORAFMS Visualization
179. e Live CD will be automatically loaded You can use the live CD to explore Pandora FMS but we do not recommend 145 AP PANDORAFMS Installation eee it fiutomatic boot in seconds CentOS 6 Community ENTerprise Operating System If you press a key in the boot screen the boot menu will be displayed with the options you can see in the screenshot below If you select Install Text mode the installation will be performed text mode However if you choose the Install option the graphical installation will start recommended 146 AP PANDORA Installation AN Welcome to PandoraFMS41RC1 Centos Boot Boot Text Mode Boot Basic Video Install Install Text Mode Memory Test Boot from local drive Press Tab to edit options CentOS 6 Community ENTerprise Operating System 12 3 1 Graphical installation The graphical installer will be guiding you throughout the whole installation process This installer is available in several languages It is a standard installation process used by Redhat CentOS AP PANDORAFMS Installation Centos Installer CentOS 6 amp Community NTerprise Operating System The graphic installer starts with a screen like this one 148 AP PANDORAFMS Installation Centos installer What language would you like to use during the installation process Afrikaans Afrikaans Arabic a pall Assamese Bengali Bengali india
180. e Metaconsole commands in an identical way to as it is done in the Pandora FMS instances 9 4 4 2 Action Actions are a higher level to the commands in the alerts A command and its configuration is assigned to an action For example their parameters AP PANDORAFMS Data Management admin O Search Q PANDORAFMS Actions 1 Mail to Restart agent Pandora FMS Event Create gt We could manage the Metaconsole actions in an identical way as it is done in the Pandora FMS instances 9 4 4 3 Alert template Alert templates are the highest layer of alerts and which will be allocated directly to the modules On the templates it is specified that trigger actions under what conditions fall in a given state of the module overcoming certain values and when certain days of the week when the condition several times in a fp PRNDORRFMS EM d e Y admin O Advanced Templates Type All Y Search Search Q Total items 3 CARE A E Critical condition 6 Critical status m Manual alert 4 Max and min m Warning condition 6 Warning status m Create gt We manage templates metaconsole alerts in an almost identical as in the instances of Pandora FMS The only difference is the field Wizard level 132 AP PANDORAFMS Data Management Ae PANDORAFMS Q 5 e Advanced Templates f if Step 1 Step 2 Step 3 Conditions Firing Reco
181. e Metaconsole synchronization tools e Synchronization utilities Users Groups Alerts Tags Propagation Utilities Component Propagation from the Metaconsole to the Instances Agent movements From one instance to the other C 3 If you want to synchronize the module categories you should do it manually going into ES each Instance 4 1 Synchronization utilities The synchronization tools match the content between the Metaconsole and Instances to make sure its correct working After modifying these dat in the metaconsole will be necessary to synchronize them with the Instances to avoid unusual behaviors C Most of the synchronization is done by name In order to not having any problems withe the exceptions we should follow the instructions from Index scaling in the Metaconsole configuration section 4 1 1 User Synchronization In order an user could operate in the Metaconsole this user should exist both in the Metaconsole and in the Instance Fh O But their passwords don t have necessarily to be the same one Users should have the same permissions ACLs Tags and Wizard access in the Metaconsole and Instances for its correct working AP PHNDORAFMS Synchronization utilities We will see later the tool to synchronize users and their profiles in the section Synchronization administration User_namel User_namel User_namel 4 1 2 Group Synchronization Groups should be syn
182. e alert only Saturday and Sunday Example perl pandora manage pl etc pandora pandora server conf 2011 10 25 create alert template template name max_min 1 3 5 09 00 18 00 Email will be sended when the value is in the interval 3 5 between 9AM and 6PM and only the Mondays Separator is forced to Q Unknown mailQmail com subject message 3 Mail to XXX 1000000 38600 1 2 0 29 1 3 8 Delete_alert_template gt 5 0 Parameters template name gt Description An alert template will be deleted if exists Example perl pandora manage pl etc pandora pandora server conf delete alert template Template name AP PANDORAFMS Pandora FMS CLI 2 11 py 29 1 3 9 Update alert template gt 5 0 Parameters template name gt field to update lt new_value gt Description A given field of an existent alert template will be updated The possible fields are the following name description type matches value value min value max value time threshold 0 1 time from time to monday 0 1 tuesday 0 1 wednesday 0 1 thursday 0 1 friday 0 1 saturday 0 1 sunday 0 1 min alerts max alerts recovery notify 0 1 field1 field2 field3 recovery field2 recovery field3 priority 0 4 default action group name Example perl pandora manage pl etc pandora pandora server conf update alert template Template name priority 4 29 1 3 10 Validate all alerts gt 5 0
183. e called SMSTools You can install smstools using the package provided by your Linux Distribution or use RPM package provided by Artica only for RPM distributions AP PANDORAFMS Configure SMSTools to Use the New Device EE EE 1 111000 1 16 3 1 Debian Ubuntu In Debian Ubuntu you need to customize the sendsms script that will use Pandora FMS First install the package from APT repositories sudo apt get install smstools And then you need to use a provided sample script to send sms from command line and customize it cp usr share doc smstools examples scripts sendsms usr bin chmod 750 usr bin sendsms Edit usr bin sendsms and add the following line to the end of script chmod 666 FILE 16 3 2 RPM based system SUSE Redhat Using our RPM is easier just install it rpm i smstools rpm 16 3 3 Configure SMStools Edit base configuration file vi etc smsd conf Put this contents If your dmesg output is not ttyACMO use the tty device detected by your system Example smsd conf Read the manual for a description devices GSM1 logfile var log smsd log loglevel 10 GSM1 device dev ttyACMO incoming no pin 2920 Use the PIN assigned to your SIM in this example PIN is 2920 Then start manually smstools usr bin smstools start Send an SMS test BEWARE Phone numbers must have full int preffix
184. e change password on first login User blocked if login fails Number of failed login attempts Apply password policy to admin users Enable password history Compare previous password 9 2 3 Visual Configuration Yes Yes A admin 9 Caracters Days Minutes Attempts No No e Update Y All configuration related to the data representation Colors and graph resolution number of items in the view pagination etc 102 AP PANDORAFMS Metaconsole Configuration admin 0 AP PANDORAFMS Visual setup Visual Date format string 0 Example October 8 2013 4 43 pm Fj Y g i Comparation in rollover Timestamp or time comparation rpm i imestamp in rollover Graph colour min 4388800 Graph colour avg 42010 Graph colour max 89FF09 Graphic resolution 1 low 5 high 5 Block size for pagination 20 Use round corners Yes No s Interactive charts Yes Metaconsole elements 100 seconds Add gt Add new custom value to intervals Delete interval Empty Default values will be used Y Delete Update Y 9 2 4 Performance Visualization options historic and event purging O PANDORAFMS Advanced Performance setup Performance Max days before delete events 1 Active events history Yes No days before delete audit events 15 Default hours for event view 8 Update O 103 AP PANDORAFMS Metaco
185. e data module My module generic data agent module description General 1 0 3000000 1 home user filedefinition string for warning string for critical If you introduce a different name or kind between the parameters and the file definition the fixed on the file will have priority 29 1 2 2 Create network module Parameters module name gt module kind agent name module address module port lt descriptionn gt module group min max post process interval warning min warning max gt critical min critical max history data warning str critical str enable unknown gt Description A network module will be created in an agent with the module name kind of module name of the agent where it will be created and the module address specified Optionaly it will be possible to give it a port a description values min and max a post process value an interval in seconds a warning min and max values critical min and max values and a history data value The default values are 0 for the min and max history data and post process an another 300 for the interval the port is optional so the modules kind ICMP don t need it In the rest of kinds it is necessary to specify one module AP PANDORAFMS Pandora FMS CLI sc Notes next parameters are only for the Pandora version 5 and next versions e enable unknown events Example
186. e description Ip etc AP PANDORAFMS Assistant Wizard A PANDORAFMS Q e admin O Monitoring Create module Configuration Agent car_003 4 EN General MODULES Name Check SSH Server Description Checks port 22 is opened ALERTS IP Address 2 192 168 70 61 Check Y Disabled AGENTS Next gt Advanced Configuration Monitor advanced data Thresholds interval etc Lf PRNDORRFMS D e y Monitoring Create module Advanced configuration Agent car_003 4 Various MODULES Interval 5 minutes Thresholds 4 Warning Min 0 00 0 00 ALERTS Critical Min 0 00 0 00 AGENTS Previous Next gt A PANDORAFMS Assistant Wizard Alerts An alert editor where to configure in the module alerts of the template alerts of whom we have permissions AO PANDORAFMS 5 e y admin Menitoring Create module Alerts Agent car_003 4 LJ MODULES Alerts in module Critical condition Manual alert gt Warning condition 0 Critical condition 4 Add gt Actions Pandora FMS Event fj ALERTS m Pandora FMS Event a AGENTS ALERT DESCRIPTION 0 Critical condition This is generic alert template to fire on condition CRITICAL O 4 Previous Next gt Previsualization Data introduced in only one scree before finishing the process AP PANDORAFMS Assistant Wizard 4 admin 0 AP PANDORAFMS o
187. eated one A PANDORAFMS Assistant Wizard AP PANDORAFMS D 5 e Y Monitoring Wizard EN MODULES mS 4 ALERTS Create agent Manage agents 8 AGENTS 8 1 5 1 Creation The creation of one agent is done in one of the configured Instances The administrator users can select in one of them create it However the standard users will have assigned one Instance where they will create the agents in a transparent way This assignment is done at User management The agent configuration will be done in three steps General Configuration The monitor more general data name description IP etc and in case of being administrator also the Instance where it will be created AP PANDORAFMS Af PANDORAFMS Q Menitering Create agent Configuration Assistant Wizard A admin 0 General Server Name Group Description IP Address Disabled burbuja New agent Databases 7 192 168 70 254 Check Y Next gt MODULES 4 ALERTS 2 AGENTS Modules A module editor where we select from a combo the network components that are available and we add them to the agent PANDORAFMS Een A admin 0 Monitoring Create agent Modules Modules Components All Qcache_not_cached Slow_launch_threads Table_locks_waited Network Management Check FTP Server Check HTTP Server Check POPS server Check SMTP server C
188. ecomendado de sincronizaci n para redes de 100 Mb s al extents 257 startup wfc timeout 0 drbd init script esperara ilimitadamente los recursos degr wfc timeout 120 2 minuteos 17 4 2 Setup DRDB nodes You need to have a completelly empty disk on dev sdb even without partitioning Do a partition in dev sdb1 linux type fdisk dev sdb Delete all information on it dd if dev zero of dev sdb1 bs 1M count 128 Do it in both nodes And create the internal structure in disk for drbd with following commands in both nodes Fee create md mysql drbdadm up mysql Again do it in both nodes 17 4 3 Initial disk Primary node The last command to setup DRBD and only on the primary node it s to initialize the resource and set as primary drbdadm overwrite data of peer primary mysql After issuing this command the initial full synchronization will commence You will be able to monitor its progress via proc drbd It may take some time depending on the size of the device By now your DRBD device is fully operational even before the initial synchronization has completed albeit with slightly reduced performance You may now create a filesystem on the device use it as a raw block device mount it and perform any other operation you would with an accessible block device 199 AP PANDORAFMS DRDB setup O castor etc cat proc drbd versio
189. ed from node 1 completed StartGCP 267411 StopGCP 267414 Records 2050 LogRecords 0 Data 32880 bytes Log 0 bytes It is possible to start the shell security copy of the system using ndb_mgm e START BACKUP These backups will create a serial of files in the directory var lib mysql cluster BACKUP BACKUP X of each node of the cluster where the x is the backup number In this directory are kept a serial of files with the following extensions Data cluster data ctl cluster metadata log cluster LOG files 18 4 1 Restoring Security Copies Each node keeps one part of the DDBB in the backups so to recompose the complete balance yo should do a restore of all the elements of the cluster in order and one by one 18 4 1 1 Previous Steps To restore a backup you have previously to restart the nodes and eliminate their content This is to start them with the initial parameter ndbmtd initial 18 4 1 2 Order of the Restoring Process To restore a backup you have to do it first with the node selected as master The first restoring will create the metadata the rest only the data 18 4 2 Restoring Process The order to restore a backup is this we take as example the restore of the backup 5 on the node id 3 In the first node we execute this in the Linux console restore b 5 n 3 m r var lib mysql cluster BACKUP BACKUP 5 And we get the following
190. ee availability of data using only 1 replica does not provide any redundancy which means that the failure of a single data node causes the entire cluster to shut down We do not recommend using more than 2 replicas since 2 is sufficient to provide high availability and we do not currently test with greater values for this parameter dk dk dk xk dk dk dk NoOfReplicas 2 Directory for storage node trace files log files pid files and error logs datadir var lib mysql cluster Data Memory Index Memory and String Memory This parameter defines the amount of space in bytes available for storing database records The entire amount specified by this value is allocated in memory so it is extremely important that the machine has sufficient physical memory to accommodate it DataMemory memory for records and ordered indexes recomended 70 of RAM DataMemory antes 22938MB recomended 70 of RAM DataMemory 4096MB IndexMemory memory for Primary key hash index and unique hash index Usually between 1 6 or 1 8 of the DataMemory is enough but depends on the number of unique hash indexes UNIQUE in table def Also can be calculated as 15 of RAM IndexMemory antes 4915MB IndexMemory 512MB This parameter determines how much memory is allocated for strings such as table names A value between 0 and 100 inclusive is interpreted as a percent of the maximum default value wich depends on a numbe
191. eee Regenerate No overlap Simple And other new options Show agent in detail To show the map of one agent in particular Show modules To show or not the modules In the normal console you could select between showing only the groups the groups and agents or all Like in the network map of the Metaconsole it is not possible to show more that one group so only this option makes sense Show sons To show or not the Instances to which the agents belong to Show module groups It adds to the hierarchy the groups of modules from which the modules are pending y Map options Name Meta network map Group All Filter by agents v Advanced options Layout radial M Font 12 Show modules Regenerate Show Metaconsole Y No Overlap Simple Show modulegroup There are two buttons in the configuration one to apply it and see the result and another to save the map 7 4 2 Visual Console It is possible to configure a visual console in the Metaconsole that is a panel composed by a background and items put on it These items can be cons that represent an agent or module and that have a color depending on its status Red for critical yellow for Warning Green for normal and Grey for unknown A Percent value or bubble item monitor graph e A monitor value A tag with rich text An static icon that could be linked to other maps AP PANDORAFMS Screens AP PANDORAFMS EM
192. eleased The state needed to handle aborts and commits is handled by the normal operation records where the pool size is set by the parameter MaxNoOfConcurrentOperations HHHHHHHH The default value of this parameter is 8192 Only in rare cases of extremely high parallelism using unique hash indexes should it be necessary to increase this value Using a smaller value is possible and can save memory if the DBA is certain that a high degree of parallelism is not required for the cluster MaxNoOfConcurrentIndexOperations 8192 MaxNoOfFiredTriggers 0 4G 4000 The default value is sufficient for most situations In some cases it can even be decreased if the DBA feels certain the need for parallelism in the cluster is not high MaxNoOfFiredTriggers 4000 TransactionBufferMemory 1k 4G 1M The memory affected by this parameter is used for tracking operations fired when updating index tables and reading unique indexes This memory is used to store the key and column information for these operations It is only very rarely that the value for this parameter needs to be altered from the default TransactionBufferMemory 1M Scans and Buffering MaxNoOfConcurrentScans 2 500 256 This parameter is used to control the number of parallel scans that can be performed in the cluster Each transaction coordinator can handle the number of parallel scans defined for this parameter Each scan query is perf
193. emory storing part of the information improving this way the user experience 2 3 Summary table In the following table you can see the differences between the old Metaconsole features and the new ones Before version 5 0 From version 5 0 The metaconsole can work as an instance Synchronization Decentralization Centralized Communication Unidirectional Bidirectional Instance configuration User panel Tactic view Through instances General and 15 last events Agent browser Group view Event visor lt Data in Instances Data the Metaconsole Tree view Alert view Module view Network map 00000 Traffic monitoring Netflow Users Profiles DS Groups Components nip Components Synchronization tools Policies Alerts Alerts Tags Move agents between instances Report templates Editors Reports Users Profiles Groups AP PANDORAFMS Summary table 95 Components Reports Visual console Alerts Tags Categories Visual console Apply Policy queue AP PANDORAFMS Summary table 3 ARCHITECTURE AP PANDORAFMS Architecture The Metaconsole architecture consist of one central node The Metaconsole and of so many server nodes as you want The Instances The Instances are Pandora FMS normal installations They consist on a web console in the front end and of one server in the back end that pro
194. emplates amp return e csv other tapipass 12348user admin pass dara 28 3 1 13 get module_groups Returns the list of module groups Call syntax op get compulsory op2 module_groups compulsory other cvs_separator optional Examples http 127 0 0 1 pandora_console include api php op get amp op2 module groups amp return type csv amp other amp apipass 1234 amp user admin amp pass pandor a 28 3 1 14 get plugins Returns the list of server plugins of Pandora Call syntax op get compulsory op2 plugins compulsory other cvs separator optional Examples http 127 0 0 1 pandora console include api php op zget amp op2 plugins amp return type csv amp other amp apipass 1234 amp user admin amp pass pandora 28 3 1 15 get tags Returns the list of tags defined into Pandora Call syntax op get compulsory 328 AP PANDORAFMS API Calls A op2 tags compulsory e return type csv compulsory Examples This example will return all tags in the system http localhost pandora console include api php op get amp op2 tags amp return type csv amp apipass 1234 amp user admin amp pass pandora 28 3 1 16 get module from conf gt 5 0 Only Enterprise Returns the configuration of a local module Call syntax op get mandatory op2 update module in conf mandatory e id agente gt mandatory e id2 nombre m dulo mand
195. enario providing the we can choose We assume that if we can t choose it will be the Common case philosophy It will be never considered anything in the best of cases so this phylosophy doesn t work Next we are going to see how to calculate the system capacity by monitoring type or based on the information origin 20 3 1 Data Server Based on the achievement of certain targets as we have seen in the previous point we suppose that the estimated target is to see how it works wiht a load of 100 000 modules distributed between a total of 3000 agents that is an average of 33 modules per agent A task will be created executed through cron or manual script of pandora_xmlstress that has 33 modules distributed with a configuration similar to this one e 1 module type string e 17 modules type generic proc 15 modules type generic data We will configure the thresholds of the 17 modules of generic_proc type this way module_begin module_name Process Status X module_type generic_proc module_description Status of my super important daemon service process module_exec type RANDOM variation 1 min 0 max 100 module_end In the 15 modules of generic_data type we should define thresholds The procedure to follow is the following We should configure the thresholds of the 15 modules of generic_data type so data of this type will be generated module exec type SCATTER prob 20 avg 10 min 0 max 100
196. ent description print OS agent os_name print URL agent url address print n if name main_ main 28 4 3 Perl use strict use warnings use WWW Curl sub write_callback my chunk variable _ push variable chunk return length chunk my ip 192 168 70 110 my pandora_url pandora5 my apipass 1234 my user admin my password pandora my my 2 all_agents my return_type csv my other my other mode my url http Sip pandora include api php url 2 url apipass apipass url amp user user url amp pass password url amp op 0p url amp op2 0p2 my body my curl WWW Curl Easy gt new curl setopt CURLOPT URL url curl gt setopt CURLOPT_WRITEFUNCTION N amp write callback curl setopt CURLOPT FILE body curl gt perform my body join body my lines split n body foreach my line lines my fields split line 372 AP PANDORAFMS Examples print n Agent fields 0O print nName fields 1 print nIP fields 2 print nDescription fields 3 print NnOS fields 4 print n 28 4 4 Ruby require open uri ip 192 168 70 110 pando
197. er that replaces the CR character that will be replaced if it finds in any returned character the character RC in order to avoid the ambiguity with the standard use of the RC character to specify registers files in the CSV If you pass an string in other the substitute character is the blank space e fields 1 gt lt fields2 gt lt fields N amp gt the fields to show in the CSV are type row group id group name group parent disabled custom id agent id agent name agent direction agent commentary agent id group agent last contact agent mode agent interval agent id os agent os version agent version agent last remote contact agent disabled agent id parent AP PANDORAFMS API Calls Nu e agent custom id agent server name agent cascade protection module id agent modulo module id agent module id module type module description module name module max module min module interval module tcp port module tcp send module tcp rcv module snmp community module snmp oid module ip target module id module group module flag module id module module disabled module id export module plugin user module plugin pass module plugin parameter module id plugin module post process module prediction module module max timeout module custom id module history data module min warning module max warning module
198. es WW Display Lock Screen File Management Log Out artica Keyboard Shut Down Keyboard Shortcuts Mouse Network Connections Network Proxy Preferred Applications Screensaver Software Updates Sound Startup Applications Wacom Tablet Windows From these options you can configure the base system Everything can be managed easily from here 167 PANDORAFMS First boot Utilidad de configuraci n en modo texto 1 19 9 pra Configuraci n de la red Configuraci n del cortafuego Configuraci n del teclado Tab Alt Tab entre elementos Usar Intro para editar una selecci n setup screen through the shell To make changes to the server from the command line you need to execute commands as root or superuser account To do this you must obtain certain permissions by using the command su It will request the root password If you enter it well it should give you a shell like the following one ending with 7 It means you have root permissions linux 9pg0 home user i Beware when running commands as root A misused command could disable the whole system 12 4 2 YUM packages Management YUM is a package manager for CentOS command line similar to APT GET of SUSE Zypper or Debian To search for a package use the line below 168 AP PANDORAFMS First boot AAA yum search lt nombre_paquete gt To install
199. es the default node name it s resource script to start stop the node the filesystem and mount point the drbd resource mysql and the virtual IP address 192 168 10 100 17 5 4 Settingup authentication Edit etc ha d authkeys in both hosts m 2 shal 09c16b57cf08c966768a17417d524cb681a05549 The number 2 means you have two nodes and the hash is a shal HASH AP PANDORAFMS Setup Hearbeat C Do a chmod of etc ha d authkeys chmod 600 etc ha d authkeys Deativate the automatic mysql daemon startup from now should be managed by heartbeat rm etc rc2 d S mysql 17 5 5 First start of heartbeat First at all be sure DRDB is ok and running fine MySQL is working and database is created Start heartbeat in both systems but FIRST in the primary node In castor etc init d heartbeat start In pollux etc init d heartbeat start Logs in var log ha log should be enought to know if everything is OK Master node castor should have the virtual IP address Change pandora configuration files on console and server to use the Virtual IP and restart the Pandora FMS server You need to have a Pandora FMS server watchdog to detect when the connection is down or use the restart option in pandora_server conf pene 1 s 60 17 6 Testing the HA Total failure test 1 Start a web browser and open a session Put the server view in autorefresh mode with 5 secs of
200. everal modules with their correspondent values The exit should have a XML format as we will explain later t could have access both local resources to the machine or a resources from other machine in a remote way It is possible to use any kind of programming language supported by the operative system where the Pandora software agent would be installed All dependencies or necessary software to execute the plugin should be available and be installed in the same machine that executes the Pandora software The agent plugins could do a kind of recon task so the plugin could return several modules in one execution and the number could change between different executions 32 1 Example of Agent Plugin Development We are going to explain now an example of a simple plugin This agent plugin returns the percentage of use of the system filesystems The code is the following one usr bin perl use strict sub usage print npandora_df pl viri n n print usage pandora_df n print usage pandora_df tmpfs dev sdai n n j Retrieve information from all filesystems my all filesystems 0 Check command line parameters if S ARGV lt 0 all_filesystems 1 if SARGV O eq h usage exit 0 y Parse command line parameters my filesystems foreach my fs ARGV filesystems fs 1 Retrieve filesystem information P use the POSIX output format for portability
201. f index php sec estado amp sec2 operation agentes status_monitor amp status 1 amp ag_group idAgentGroup amp modulegroup idModelGroup gt alinkEnd lt a gt if array_key_exists 0 states amp amp count states 1 color 8ae234 Green when the cell for this model group and agent has OK state all modules else if array_key_exists 1 states color cc0000 Red when the cell for this model group and agent has at least one module in critical state and the rest in any state else color fce94f Yellow when the cell for this model group and agent has at least one in warning state and the rest in green state array_push row lt div style background color height 15px margin left auto margin right auto text align center padding top 5px gt alinkStart count modules alinkEnd lt div gt array_push tableData row AP PANDORAFMS Source code table gt data tableData print table table echo p The colours meaning Bw lt li style clear both gt lt div style float left background babdb6 height 20px width 80px margin right 5px margin bottom 5px gt lt div gt Grey when the cell for this model group and agent group hasn t modules lt li gt lt li style clear both gt lt div style float left background 8ae234 height 20px
202. f execution in Pandora 301 tl ota dieta 301 271222 Normal eL a A O ena 301 AA Sever IA A A A 305 EE CA CS n adco Sade anda ca avant Se CU ama 305 29210 Modules dd on dade 306 272 5 teases 306 AP PANDORAFMS 27 3 2 Subversion baton 307 2821 New Calls in API from the Pandora FMS extensions 217 322 11 PUC AO Rtn ta A 217 28 2 2 API EURCDIOTIS ti e rr ee e eei oir es es 318 20 2 3 EXSmIDIB uu isa dude a d dis eddie cade aeria da a A ddl 318 i 0 318 NS no enm TTE eno A 319 AA E A a PE eer ren re rere ne ee 319 EE SE E A AA 319 gef mod le last val s 319 2B 3 141 get agent module name last ale ii 320 28 310 SE I SUME S ER 321 AAN ossia ee steep Sed GG dE uidit iS UO ap den 321 get AMARE 326 203 1 23 22 og as 331 AP PANDORAFMS SOE PTS d P ODIT A AS 333 243 24 set create module tapia a ii 335 28 3 2 5 set create network Mode u
203. f static graphs of Pandora It is necesary pass the width height period label and start date of chart all of they into the other parameter Call syntax op set compulsory AP PHNDORAFMS API Calls e op2 module data compulsory e id id modulo compulsory other lt serialized parameters compulsory Are the following in this order e period width height lt label gt e start date Examples http 127 0 0 1 pandora console include api php op get amp op2 graph module data amp id 17 amp other 604800 555 245 pepito 2009 12 O7 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 1 11 get events Returns a list of events filtered by the other parameter Call syntax e op get compulsory op2 events compulsory return_type csv compulsory other mode url encode separator optional other lt serialized parameters optional Are the following in this order e separator lt criticity gt From 0 to 4 or 1 for to avoid this param agent name gt module name gt e alert template name gt e user numeric interval minimum level gt in unix timestamp numeric interval maximum level gt in unix timestamp lt status gt event substring gt e lt register limit e offset register lt optional style totallmore_criticity gt total returns the number of the re
204. ffers that are used to send data to the disk when the buffer is full to the BackupWriteSize size and the Backup process could continue filling this buffer while it has space The size of this parameter should be at least that of the BackupWriteSize 188 KB BackupLogBufferSize Register the writing in tables during the Backup process If it has no space in the backup log buffer then the backup will fail The size of this parameter should be at least the one of BackupWriteSize 16 KB BackupMemory Simply the sum of BackupDataBufferSize and BackupLogBufferSize BackupWriteSize por defecto de los mensajes almacenados en disco por el backup log buffer y el backup data buffer BackupMaxWriteSize Size by default of the messages stored in the disk by the backup log buffer and the backup data buffer The size of this parameter should be at least the one of BackupWriteSize BackupDataDir Directory where the security copies are kept in this directory is created a subdirectory called BACKUPS an in it one for each security copy that is called BACKUP X where X is the number of the security copy LockExecuteThreadToCPU String with the CPUs identifiers in which the data node threads ndbmtd will be executed It should be as many identifiers as the MaxNoOfExecutionThreads parameters say RealTimeScheduler Fix this parameter to 1 activates the real time scheduler of the threads SchedulerExecutionTimer Time in microseconds of thread
205. fi case 1 in start PROCESS PID pidof process if z PROCESS_PID then echo Server is currently running on this machine with PID PROCESS_PID Aborting now rc failed 1 rc exit fi PROCESS_DAEMON PROCESS_PARAMETERS sleep 1 PANDORA_PID pidof_process if z PANDORA_PID then echo Server is now running with PID PANDORA_PID rc_status v else echo Cannot start Server Aborted rc_status s fi 1 stop PANDORA_PID pidof_process if z PANDORA_PID then echo Server is not running cannot stop it rc_failed else echo Stopping Server kill PANDORA_PID COUNTER 0 while COUNTER lt MAXWAIT do PANDORA PID pidof process if z PANDORA_PID then AP PANDORAFMS Appendix Examples of Configuration Files iin COUNTER MAXWAIT fi COUNTER expr COUNTER 1 sleep 1 done Send a KILL 9 signal to process if it s alive after 60secs we need to be sure is really dead and not pretending if z PANDORA_PID then kill 9 PANDORA_PID 1 rc_status v 17 status PANDORA_PID pidof_process if z SPANDORA_PID then echo Server is not running rc_status else echo Server is running with PID PANDORA_PID rc_status fi i force reload restart 0 stop 0 start 11 72 echo Usage server start stop restart status exit 1 esac rc_exit 18 7 5 etc init d cluster_node bin
206. formance as times goes on and set other problems mainly of usability derived from managing big data volume Agentes 6005 Intervalo 3000 Modulos por Agente Modulos Tot 180150 Prob Cambio 100 Aertas por Agente Probabilidad cambio 100 Probabilidad cambio 25 337 22 85 72 77 14 69 43 62 49 56 24 53 73 50 6196 A1 52 54 A6 39 32 25 19 13 08 AP PANDORAFMS Example of Capacity Study iin The obtained results are very positives so the system though very overload was able to process an information volume quite interesting 180 000 modulos 6000 agentes 120 000 alertas The conclusions obtained from this study are these 1 You should move the real time information to the historical database in a maximum period of 15 days being the best thing to do it for more than one week data This guarantee a more quick operation 2 The maneuver margin in the best of cases is nearly of the 50 of the process capacity higher than expected taken into account this information volume 3 The fragmentation rate of the information is vital to determine the performance and the necessary capacity for the environment where we want to deploy the system 20 3 Methodology in detail The previous chapter was a quick study based only in modules typer dataserver In this section we give a more complete way of doing an analysis of the Pandora FMS capacity As starting point in all cases we assume the worst case sc
207. g MaxNoOfOpenFiles 80 This parameter sets the initial number of internal threads to allocate for open files InitialNoOfOpenFiles 37 A PANDORAFMS Appendix Examples of Configuration Files iii MaxNoOfSavedMessages 25 This parameter sets the maximum number of trace files that are kept before overwriting old ones Trace files are generated when for whatever reason the node crashes MaxNoOfSavedMessages 25 Metadata Objects MaxNoOfAttributes 32 4294967039 1000 Defines the number of attributes that can be defined in the cluster MaxNoOfAttributes antes 25000 MaxNoOfAttributes 4096 MaxNoOfTables 8 4G 128 A table object is allocated for each table and for each unique hash index in the cluster This parameter sets the maximum number of table objects for the cluster as a whole MaxNoOfTables 8192 MaxNoOfOrderedIndexes 0 4G 128 Sets the total number of hash indexes that can be in use in the system at any one time zMaxNoOfOrderedIndexes antes 27000 MaxNoOfOrderedIndexes 2048 zMaxNoOfUniqueHashIndexes Default value 64 Each Index 15 per node MaxNoOfUniqueHashIndexes antes 2500 MaxNoOfUniqueHashIndexes 1024 MaxNoOfTriggers 0 4G 768 This parameter sets the maximum number of trigger objects in the cluster MaxNoOfTriggers antes 770 MaxNoOfTriggers 4096 Boolean Parameters Most of this parameters can be set to true 1 or Y or f
208. g file size 5M log buffer size 8M zinnodb flush log at trx commit 1 zinnodb lock wait timeout 50 The safe mysqld script safe mysqld log error var log mysql mysqld log socket var lib mysql mysql sock mysqldump socket var lib mysql mysql sock quick max_allowed_packet 64M A PANDORAFMS Appendix Examples of Configuration Files iin mysql no auto rehash Remove the next comment character if you are not familiar with SQL safe updates myisamchk key_buffer_size 10000M sort_buffer_size 20M read_buffer 10M write_buffer 10M mysq1d_multi mysqld usr bin mysqld_safe mysqladmin usr bin mysqladmin 100 var log mysqld multi log user multi admin password secret 00 If you want to use mysqld_multi uncomment 1 or more mysqld sections below or add your own ones WARNING If you uncomment mysqld1 than make absolutely sure that database mysql configured above is not started This may result in corrupted data mysqld1 port 3306 datadir var lib mysql pid file var lib mysql mysqld pid socket var lib mysql mysql sock user mysql Cluster configuration by Pablo de la Concepcion lt pablo concepcion artica es gt Options for mysqld process mysqld Run NDB storage engine ndbcluster Location of management servers ndb connectstring 10 1 1 215 1186 10 1 1 216 1186 Number
209. g mode by changing the value of the label debug in your pandora_agent conf file from 0 to 1 Once you do this when the Software Agent run the plugin the results will be saved in an XML document with all the agent information 412 Troubleshooting AP PANDORAFMS The name of the document will be the agent name with data and will be located in tmp directory checkout the pandora agent log at var log pandora pandora agent log By checking the document you can see if the data of your plugin are being collected and if it what you expect X O When you enable Debug mode the agent executes only once and exits 32 2 7 Forum If the error remains after all fell free to ask in our forum 413 AP PANDORAFMS Troubleshooting 33 CONSOLE EXTENSIONS 414 AP PANDORAFMS Console Extensions S Extensions form to develop new functionality for your Pandora Console as plugins In this article you will learn how to develop a extension 33 1 Kinds of Extensions There are two kinds of extensions Visibles extensions that are shown in Pandora Menu Invisibles extensions that are loaded and executed in index php of Pandora Menu but doesn t apeare in Pandora Menu 33 2 Directory of Extensions The directory of extensions is a subdirectory in your local installation of Pandora Console with the name extensions This directory contains for each extension the following Main file of the ex
210. get module last value idAgentModule trashl other returnType 1 sql sprintf SELECT datos FROM tagente estado WHERE id agente modulo d idAgentModule value get db value sql sql if value false switch other type case string switch other data case error_message default yo returnError id not found returnType break break case array switch other data 0 case error value returnData returnType array type data gt other data 1 gt string break break else data array type gt string data gt value returnData returnType data 28 3 API Calls They are divided in two groups depending on if they get back or write data in Pandora FMS 318 AP PANDORAFMS API Calls Nu 28 3 1 GET It gets back the required data 28 3 1 1 get test Checks the conection to API and returns the version of Pandora Console Call syntax Without parameters Examples This example will return OK version build http 127 0 0 1 pandora_console include api php opzget amp op2 test amp apipass 1234 amp user admin amp pass pandora A return sample could be OK v4 0 2 PC120614 28 3 1 2 get all agents Returns a list of agents filters by the filter in other parameter Call syntax e op get compulsory op2 all agents compulsory e return type csv com
211. gher CompressedBackup When it is activated 1 it does a compression similar to gzip fast saving up to 50 space in the backup files CompressedLCP when it is activated 1 it does a compression similar to gzip fast saving up to 50 space in the Checkpoint files TimeBetweenWatchDogCheck Number of miliseconds of the WatchDog checking interval thread that checks that the main thread is not lockout if after 3 checks the main thread is in the same state in the watchdog will end the main thread TimeBeweenWatchDogCheckinitial Has the same function that TimeBetweenWachdogCheck but this value is applied in the initial phase of the cluster start when the memory reserve is done StartPartialTimeout Shows how long you have to wait from the cluster launching process is started until all the data node will be up This parameter is ignored if it is a cluster starting Its function is that the cluster would not be half launched StartPartitionedTimeout If the cluster is ready to start without waiting Start PartialTimeout but it is in a partitioned state the cluster also wait to this timeout pass This parameter is ignored if it is a cluster starting StartFailureTimeout If a node has not finished its starting time and when this timeout ends the start fails 0 value shows that is indefinitely waited If the node has much information several data gigabytes the this parameters should be increased the start with big amount of data could t
212. guration First we should create the directory where the information of the cluster var lib mysql cluster will be kept and in this directory will be created the cluster configuration file from which we are going to give a summary with the most relevant parameters MySQL Cluster Configuration file By Pablo de la Concepcion Sanz lt pablo concepcion artica es gt This file must be present on ALL the management nodes in the directory var lib mysql cluster THHBHHBHHHHHHBNHHHHHHBHHHHBHHBHHHHBHHHHBHBHHHHBHHBHBHRHBHHBHHBHHBHE MANAGEMENT NODES This nodes are the ones running the management console THHHHBHHHHHHHHHHHHBEHHHHHHHBHHHHBEHHHHHHHHHH BF BH HM HH HB HH Common configuration for all management nodes ndb mgmd default ArbitrationRank 1 Directory for management node log files datadir var lib mysql cluster ndb mgmd id 1 Hostname or IP address of management node hostname hostname nodo de gestion 1 210 A PANDORAFMS Installation and Configuration NENNEN ndb mgmd id 2 Hostname or IP address of management node hostname hostname nodo de gestion 2 The final version of this file is at the end of this document The config ini file is divided in the following options ndb mgmd default common configuration for all the management nodes e ndb mgmd individual configuration of each management node ndbd default common configuration of the data
213. he plugin and create all the modules defined in the pspz in the module library of Pandora FMS Network components This section describe how to create a pspz file 31 2 Package File A pspz is a zip file with two files plugin definition ini Who contains the specification of the plugin and the modules Should have this name case sensitive script file It s the plugin script binary itself Could have any valid name You can download example of pspz here 1 31 3 Structure of plugin definition ini 31 3 1 Header Definition This is a classic INI file with optional sections The first section the most important is a fixed name section called plugin definition and this is an example plugin_definition name Remote SSH exec filename ssh_pandoraplugin sh description This plugin execute remotely any command provided timeout 20 ip_opt h execution_command execution_postcommand user_opt u port_opt pass_opt plugin_type 0 total_modules_provided 1 MMM filename Should have the same name as the script included in the pspz file referenced before as script file In this sample is a sh shell script called ssh_pandoraplugin sh opt Are the registration options for the plugin like shown in the form to register manually the plugin in the Pandora FMS console plugin type 0 for a standard Pandora FMS plugin and 1 for a Nagios type plugin total modules pr
214. he rest Example perl pandora manage pl etc pandora pandora server conf validate event My agent My module 2010 06 02 22 02 AP PANDORAFMS Pandora FMS CLI si eee In this example will be validated all the events associated to the module module of the agent agent which data would be previous to 2 june 2010 not considering the rest of the filters It would be also possible to filter the events between two dates filling both of them or the ones that have a data higher to an specific one filling in only the date hour minimum 29 1 5 3 Validate_event_id gt 5 0 Parameters lt id_event gt Description A event will be validated Example perl pandora_manage pl etc pandora pandora_server conf validate_event_id 1894 In this example will be validated the event whose identifier is 1894 29 1 5 4 Get_event_info gt 5 0 Parameters lt id_event gt lt separator gt Description Display info about a event given a id Example perl pandora_manage pl etc pandora pandora_server conf get_event_info 1894 In this example will be displayed info about the event whose identifier is 1894 The fields will be separated by 29 1 6 Incidents 29 1 6 1 Create_incident gt 5 0 Parameters lt title gt lt description gt lt origin gt lt status gt lt priority gt lt group gt lt owner gt Description An incident will be created passing the title the description
215. he system working with the package generator a minimum of 48 hours Once this time has passed we should evaluate the following points 1 Is the system stable Is it down If there are problems checl the logs and graphs of the metrics that we have got mainly memory 2 Evaluate the tendency of time of the metric N of monitors in unknown There should be not tendencies neither important peaks They should be the exception If they happen with a regularity of one hour is because there are problems withe the concurrency of the DDBB management process 3 Evaluate the metric Average time of response of the pandora DDBB It should not increase with time but remain constant 4 Evaluate the metric pandora_server CPU should have many peaks but with a constant tendency not rising 5 Evaluate the metric MYSQL server CPU should be constant with many peaks but with a constant tendency not rising 20 3 1 1 Evaluation of the Alert Impact If all was right now we should evaluate the impact of the alert execution performance We apply one alert to five specific modules of each agent from type generic data for the AP PANDORAFMS Methodology in detail Cee CRITICAL condition Something not really important like creating an event or writting to syslog to not consider the impact that something with hight latency could have like for example sending an email We can optionally create one event correlation alert to generate one aler
216. heck Telnet server Host Alive Agent modules Check FTP Server 4 Check POP3 server Check SMTP server _ Delete Previous Next gt EN MODULES 4 ALERTS AGENTS AP PANDORAFMS Assistant Wizard Preview Data introduced in a single screen before finishing the process A admin 0 fe PANDORAFMS Create agent Preview Preview LJ New agent MODULES Group Databases Description Empty IP Address 192 168 70 254 4 Disabled No ALERTS Check FTP Server New Modules Check POP3 server New Check SMTP server New AGENTS Previous Finish gt Agent Creation Workflow AP PANDORAFMS Assistant Wizard Module creation Marts configuration Agent adtion Modes configuration om j 8 1 5 2 Administration Those agents which user can modify its configuration due ACL setup can be administer edit and delete First step is select the agent you want to administer You can filter by group and or search for a text substring to find it easily AP PANDORAFMS Assistant Wizard fe PANDORAFMS Q g admin O Monitoring Wizard Select the agent to be edited or deleted Group Applications MODULES Agent search Search Q car_002 n car 003 car_004 car_005 ALERTS car_006 car_007 car_008 car_009 car_010 New SA AGENTS Agent Back Delete Edit A Once y
217. hem fails then it is considered that the whole test fails also Advanced Configuration Monitor advanced data Thresholds interval proxy configuration etc AP PANDORAFMS Assistant Wizard Af PANDORAFMS 5 e 4 E Es Monitoring Create module Advanced configuration Agent car_003 4 J MODULES Various Interval Sminutes Thresholds Warning 6 000 Max 0 00 ALERTS Critical 000 Max 0 00 Web configuration Proxy URL AGENTS a Previous Next gt Alerts An alert editor where to configure in the module alerts of the alert templates on which we have permissions Same as in the monitor creation e Previsualization Data introduced on a single screen before finishing the process Same as with the monitor creation Module Creation Flow AP PANDORAFMS Assistant Wizard Monitor Module created Module edition Agent creation cene Selact 8 1 3 2 Administration The modules created from the Metaconsole Wizard will can be managed edit and delete them A The modules created in the Instance will not be visible in the Wizard The first step is to select the module that we want to manage We can filter by group and search by agent to find it quickly AP PANDORAFMS Assistant Wizard 4 admin 10 AP POTN Wizard Select the module to be edited or deleted Ey Group Applications MODULES Agent sear
218. hen error 2 if already exists 28 3 2 55 set delete module in conf gt 5 0 Only Enterprise Delete a configuration of local module Call syntax op set mandatory op2 add module in conf mandatory id id agente mandatory id2 module name gt mandatory Examples http 127 0 0 1 pandora console include api php op set op2 add module in conf amp user admin amp pass pandora amp id 9043 amp id2 example name Will be returned 0 when success or 1 when error 28 3 2 56 set update module in conf gt 5 0 Only Enterprise Update a configuration of local module Call syntax op set mandatory op2 update module in conf mandatory agent id mandatory e id2 module name gt mandatory other The new module data that will be placed in the conf file encoded in base64 mandatory Ejemplos http 127 0 0 1 pandora console include api php op set amp op2 update_ module in conf amp user admin amp pass pandora amp id 9043 amp id2 example name amp ot herzbw9kdWx1X2J1Z2l1uCmivzHVsZV9uYW1lIGVAYWiwbGVfbmFtZzQptb2R1bGVfdHlwZSBnZWblcml X2Rh dGEKbW9kdWx1X2VAZWMgZWNobyAxOwptb2R1bGVfZW5 Kk 365 AP PANDORAFMS API Calls A Will be returned 1 when no changes 0 when success 1 when error 2 if doesn t exist 28 3 2 57 set create_event Create a new event into Pandora Call syntax op set mandatory op2 create_event mandatory e
219. hen the value not match with the conditions Regular expression Syntaxis lt type gt lt matches value gt lt value gt Example regex 1 stopped error Alert when value match regexp stopped error and min Syntaxis lt type gt lt matches_value gt lt min_value gt lt max_value gt Example max min 0 30 50 Alert when value is out of interval 30 50 AP PANDORAFMS Pandora FMS CLI Syntaxis lt type gt lt max_value gt Example max 70 Alert when value is above 70 Syntaxis lt type gt lt min_value gt Example min 30 Alert when value is below 30 Equal to e Syntaxis type value Example equal 0 Alert when value is equal to 0 Not equal to e Syntaxis type value Example not equal 100 Alert when value is not equal to 100 Warning status Syntaxis lt type gt Example warning Alert when status turns into warning Critical status Syntaxis lt type gt Example critical Alert when status turns into critical Unknown status Syntaxis lt type gt Example unknown Alert when status turns into unknown On Change Syntaxis type matches value Example onchange 1 Alert when value changes Always Syntaxis lt type gt Example always Alert all times The field days is seven binary characters that specify the days of the week when the alert will be activated i e 0000011 to activate th
220. hod snmp3 auth user snmp3 priv pass For the plugin modules ff threshold module address module port plugin name user password parameters Example perl pandora manage pl etc pandora pandora server conf update module Module name Agent name description New description 29 1 2 10 Get agents module current data gt 5 0 Parameters lt module_name gt Description Get the agent and current data of all the modules with a given name Example perl pandora_manage pl etc pandora pandora_server conf get_agents_module_current_data Module name 29 1 2 11 Create_network_module_from_component gt 5 0 Parameters lt agent_name gt lt component_name gt Description Create a new network module in the specified agent from a network component 387 AP PANDORAFMS Pandora FMS CLI perl pandora_manage pl etc pandora pandora_server conf create network module from component Agent name 29 1 3 Alerts 29 1 3 1 Create template module Parameters template name gt module name gt agent gt Description A template will be assigned to an agent module giving it the template name the module and the agent as parameters Example perl pandora manage pl etc pandora pandora server conf create template module template001 My module My agent 29 1 3 2 Delete template module Parameters template name gt module name gt
221. iguration Doesn t depend on wizard access level of the user advanced basic and neither if the modules were created with the wizard or from the node The only restriction about this comes in the step to add modules in the edit create view This setup is done only by using network components and with basic level The reason for this behaviour is because this kind of modules doesn t have any configuration and the advanced wizard level modules should need extra configuration Differences Depending on Access Level AP PANDORAFMS 9 ADMINISTRATION AP PANDORAFMS Administration The Advanced section contains the Metaconsole administration options between them The data synchronization between the Metaconsole and the Instances The data management classified in Users Agents Modules Alerts Tags Policies Categories The Metasetup where there are The Instances configuration The Metaconsole configuration options 9 1 Instance Configuration In the Metasetup section besides all the options of the console configuration there is a tab for the console Setup In this tab we will select the instances All the configuration process is available at the manual section Install and Configure 9 2 Metaconsole Configuration In the Metasetup section we find tabs with the Metaconsole configuration different options 9 2 1 General Configuration In this section we fi
222. ile compulsory e id user name compulsory should be an user name e other cserialized parameters compulsory are the group configuration data and profile serialized in the following order group e profile Examples http 127 0 0 1 pandora console include api php op set amp op2 delete user profile amp id md amp other 12 4 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 36 set new incident Create a new incident Call syntax op set compulsory op2 new incident compulsory other lt serialized parameters compulsory are the incident configuration and data serialized in the following order e lt title gt lt description gt origin lt priority gt lt status gt group Examples http 127 0 0 1 pandora console include api php op set amp op2 new_incident amp other titulo descripcion 20texto Logfiles 2 10 12 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 357 AP PANDORAFMS API Calls 28 3 2 37 Set new_note_incident Add a note into a incident Call syntax op set compulsory op2 new note incident compulsory e id id incident compulsory the incident id e id2 user name compulsory the user name e other note compulsory is the note codified in url encode Examples http 127 0 0 1 pandora console i
223. incremental data Remote TCP network agent numeric data The SNMP OID field must be filled with the one obtained previously SNMP community is public by default Target IP 192 168 50 233 Port SNMP community public SNMP version vi SNMP OID 1 3 6 1 4 1 21796 4 1 3 1 5 1 I need to open the advanced section to specify a post process which can divide the result by 10 Post process O 0 1 Time to click on the Create button Right after creating the module we should see something like this Temp c mA BP DATA 300 If we click in the bulb button modules 275 AP PANDORAFMS Installation and configuration The previous look the new module had should have changed and appear without the red triangle icon by initialising it SNMP Temp c e DATA If we take a look to the agent view Magnifying glass Q We will be able to see the data we ve gathered from the sensor 9 EN gt 101 2 08 minutes Module is up and running In a matter of hours we will have enough data to display a graphic like this w N nm m ws m m w N m 9 32 3 22 2 4 Step 4 Configuring an alert 8 21 10 45 When temperature reaches a value over 38 degrees we want an alert to be generated via email The first thing we have to do is to configure the module so it gets into critical status when its value gets over 38 deg
224. information 24 2 How it works The passive collector is a script called passive pl This script parses the information and generates XML files in an asyncronous mode So you must execute th script every time you want to update traffic monitoring information in Pandora FMS A The script must be executed with root privileges Before the script is executed IPTraf process must be stopped After the script execution the log file used must be deleted and IPTraf process must be restarted In execution command the configuration file is passed as parameter like this passive pl home usuario iptraf passive collector conf The steps to execute the scripts are the following 1 Stop IPTraf 2 Run passive collector 3 Delete logfile 4 Start IPTraf The actions performed by the scripts are the following Parse logfile Apply discard rules Apply process rules Create tree with all information Generate XML files and store in data in folder of Pandora FMS End execution 24 3 Configuration The configuration file called passive collector conf has the following parameters 288 A PANDORAFMS Configuration O e incomingdir Full path of data in folder of Pandora interval Interval in seconds of script execution This parameter doesn t mean the scrip will be executed each interval it is used to set the module and agent intervals in Pandora FMS and allow you to know when the agent
225. ing str warning min critical max critical e str critical ff threshold e history data lt ip_target gt e module port snmp community e snmp oid e module interval e post process min value max value custom id e description e disabled types event only in version 5 341 AP PHNDORAFMS API Calls A Examples http 127 0 0 1 pandora_console include api php op set amp op2 update data module amp id example module namegother 44 0 data 20module 9620modified9 20from 20API 6 0 0 50 00 300 10 15 16 18 O amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 12 set update SNMP module Update a SNMP module Call sintax op set compulsory op2 update snmp module compulsory e id module name gt compulsory should be a module name e other lt serialized parameters compulsory are the module configuration and data serialized in the following order e id agent e disabled id module group min warning max warning str warning min critical max critical e str critical ff threshold e history data e lt target e module port lt snmp_version gt snmp community e snmp oid e module interval e post process min value max value custom id
226. ing and linking After installing compiler includes and libraries go to the Pandora FMS Agent source directory and run configure host i586 mingw32msvc amp amp make This should create the exe executable ready to be used 27 5 External API There is an external API for Pandora FMS in order to link other applications with Pandora FMS both to obtain information from Pandora FMS and to enter information into Pandora FMS All this documentation is at Pandora FMS External API 27 6 Pandora FMS XML data file format Knowing the format of Pandora FMS XML data files can help you to improve agent plugins create custom agents or just feed custom XML files to the Pandora FMS Data Server As any XML document the data file should begin with an XML declaration lt xml version 1 0 encoding UTF 8 gt Next comes the agent_data element that defines the agent sending the data It supports the following attributes description Agent description group Name of the group the agent belongs to must exists in Pandora FMS s database os name Name of the operating system the agent runs in must exists in Pandora FMS s database Os Version Free string describing the version of the operating system interval Agent interval in seconds version Agent version string timestamp Timestamp indicating when the XML file was generated YYYY MM DD HH MM SS e agent name Name of the agent AP PA
227. ion If when it s executed we have any alert disabled and we activate all again this one will be also enabled Example perl pandora_manage pl etc pandora pandora_server conf disable_alerts 29 1 3 6 Enable_alerts Parameters No Description All the alerts will be activated with the execution of this option If when it s executed we had any alert enabled and we disabled all again this one will be also disabled Example perl pandora_manage pl etc pandora pandora_server conf enable_alerts 29 1 3 7 Create_alert_template Parameters lt template name gt lt condition_type serialized gt lt time from lt time_to gt lt description gt group name gt lt field1 gt lt field2 gt lt field3 gt priority lt default_action gt days time threshold gt min alerts max alerts lt alert_recovery gt lt field2 recovery gt field3 recovery condition type separator Description An alert template will be created The field condition type serialized gt is the type options of the template serialized with the separator by default It s possible change the separator with the parameter lt condition type separator gt to avoid conflicts some options if it could contain the default character The possibilities are the following NOTE In this examples is used the default separator and the field matches value is a binary value to set if the alert will be fired when the value match or w
228. ir data on the mirrored device are oblivious of the fact that the data is in fact stored on several computers Synchronously or asynchronously With synchronous mirroring a writing application is notified of write completion only after the write has been carried out on both computer systems Asynchronous mirroring means the writing application is notified of write completion when the write has completed locally but before the write has propagated to the peer system SERVICE SERVICE PAGE CACHE PAGE CACHE FILE SYSTEM NETWORK STACK I O SCHEDULER DISK DRIVER NIC DRIVER NIC DRIVER DISK DRIVER Over DRDB you can provide a cluster on almost everything you can replicate in disk In our specific case when want to clusterize only the database but we also could replicate a entire Pandora FMS setup including server local agents and of course database DRDB is a RAID 1 TCP based kernel module very easy to setup and really fast and error proof You can get more information about DRBD in their website at http www drbd org DRDB is OpenSource 17 2 Initial enviroment We want to have a MySQL cluster in a HA configuration based on a master active and slave passive Several Pandora FMS servers and console will use a virtual IP address to connect with the running node which contains a MySQL server This is the network configuration for the two nodes running the MySQL cluster 192 168 10 101 castor gt Master 19
229. ith the given name These functions return the statistics based on module groups Doesn t use disabled agents or modules for the stats modules group agent unknown module group Returns the number of agents with unknown status which have modules that belong to the given module group modules group agent ok module group Returns the number of agents with normal status which have modules that belong to the given module group modules group agent critical module group Returns the number of agents with critical status which have modules that belong to the given module group modules group agent warning module group Returns the number of agents with warning status which have modules that belong to the given module group 27 2 5 Policies These functions return the number of agents with each status for a given policy Doesn t use disabled agents or modules to calculate the result policies agents critical id policy Returns the number of agents with critical status which belong to given policy policies agents ok id policy Returns the number of agents with normal status which belong to given policy policies agents unknown id policy Returns the number of agents with unknown status which belong to given policy e policies agents warning id policy Returns the number of agents with warning status which belong to given policy A PANDORAFMS Basic functions for agent module and group status iin
230. ivide in many files and it save in subdirectory extension the functions are function translate amp item key This function use for callback in the array_walk function Because the main function keep the titles of columns and the titles of rows in array without translations function mainModuleGroupsO This is the heard of extension and it s huge of lines I see not all code see some important 421 AP PANDORAFMS Explain parts The first is access to config global var In this var has many configurations and default values for many things of Pandora Console The second var is the query in MySQL into a string And the d is the format placeholders is for Id Group and Id Module Group and these are sustitute for value in sprintf function into foreach loops Some echos for print the text before the table Extract of DB two arrays with one dimension and the index is id and the content is title for columns Module groups and rows Agent group in each case Translate the Model Group array titles Make the meta object Stable fill by rows and print Before the foreach loops define into table the head and styles of table The first loop is for rows each agent group The second loop is for columns in current row each model group Then for each cell it has two number id model group and id agent group with this two number we make a query to database and we obtain the files Proccess the resu
231. l take the time that takes the slower one so you can use a number quite low such as 15 or 20 icmp_threads X Obviously the more threads it has the more checks it could execute If you make an addition of all the threads that Pandora execute they will not be more than 30 40 You should not use more than 10 threads here thought it depends a lot of the kind of hardware an Linux version that you are using Now we should create a fictitious number of modules ping type to test We assume that you are going to test a total of 3000 modules of ping type To do this the best option is to choose a system in the network that would be able to support all pings any Linux server would do it Using the Pandora CSV importer available in the Enterprise version create a file with the following format Nombre agente IP os_id Interval Group_id You can use this shellscript to generate this file changing the destination IP and the group ID A 3000 while A gt 0 do echo AGENT_ A 192 168 50 1 1 300 10 A expr A 1 done Before doing anything we should have the pandora monitored measuring the metrics that we saw in the previous point CPU consumption pandora and mysqul n of modules in unknown and other interesting monitors We have to import the CSV to create 3000 agents it will takes some minutes After we go to the first agent AGENT 3000 and we create a module Type PING A PANDORAFMS Meth
232. l be the following in the same order id first operator or parameter contains an string 142 second operator or parameter contains an string other rest of operators or parameters contains as an array of two positions e other type that could be string or array e other data that will be an string with the parameter or an array of numeric index with the past parameters e returnType string that specify the kind of return that the call will have It is usually transparent for you but you could use or modify it if necessary 28 2 1 New Calls in the API from the Pandora FMS extensions Is possible to create new API calls without use include functions_api php The way is adding into a Pandora FMS extension directory a file with the following name lt extension_name gt api php and into this file create the desired functions with the same considerations of the standard API but with apiextension prefix instead of api For example having an extension called module groups with the path lt Pandora installation gt extensions module_ groups we must create a file called module groups api php into this directory Into this file will be the desired functions for example a function to get the number of modules in a group This function must have a name like apiextension_get_groupmodules 28 2 1 1 Function example In this function have been used imaginary functions function apiextension get groupmodules
233. l the same information It is recommended to stablish the number of replies to 2 that allow to have high availability Datadir Directory where are kept the files related with the data node logs trace files error files files with the pid DataMemory This parameter fix the space in bytes that is available to keep registers of the database all the space that is shown is reserved in memory so it is extremely important that there should be enough physical memory to reserve without the necesity of using the exchange memory 211 AP PANDORAFMS Installation and Configuration eee IndexMemory This parameter monitors the storage quantity used by hash index MySQL Cluster The hash index are always used by index with primary key unique index and unique restrictions StringMemory This parameter shows how much memory is reserved for strings of characters such as tht names of the tables a value between 0 and 100 is taken as a percentage of the maximum value that changes according to a big number of factors while a value higher to 100 is interpreted as the number of bytes 25 should be enough MaxNoOfConcurrentTransactions This parameter shows the maximum number of transactions in a node It should be the same for all data nodes This is due to that if a node fails the older node of the ones that are left start again to create all the transactions of the fallen node change the value of this parameter implies a comp
234. ld be configured to guarantee both accesses to the Metaconsole Database It will be necessary to know the database credentials to configure later the Instance in the Metaconsole Host Database Users and Password Other important thing is to give permissions to the user so he could have remote access to the database It is done with the MySQL GRANT command A PANDORAFMS Configuration C GRANT ALL PRIVILEGES on lt MetaconsoleDatabaseName gt to lt UserName gt lt HostAddress gt IDENTIFIED BY lt UserPass gt API The access to the Instance API will be guaranteed with the following parameters e User and password It should be necessary to know a valid user and password in the Instance e API password It should be necessary to know the access password to the API that is configured in the Instance e IPs List with access to the API In the Instance configuration there is an IPs list that could have access to the API It is possible to use as wildcart to give access to all IPs or to one subnet 6 2 1 2 Auto authentication In some parts of the metaconsole there are accesses to the Instance Web Console For example in the event visor when you click on the Agent that is associated to one event if there is one it will take us to the view of this agent in the console of the Instance to which it belongs to For this access the Auto authentication is used This authentication is done with a hash for which is nece
235. lert template compulsory e id id template compulsory should be a template id other lt serialized parameters compulsory are the template configuration and data serialized in the following order e template name type regex max_min max min equal not_equal warning critical onchange unknown always gt description e jd alert action e lt field1 gt lt field2 gt lt field3 gt value matches value max value min value time threshold max alerts min alerts time from time to monday lt tuesday gt lt wednesday gt lt thursday gt friday lt saturday gt e sunday e recovery notify e lt field2 recovery e field3 recovery lt priority gt id group AP PHNDORAFMS API Calls A Examples http 127 0 0 1 pandora_console include api php op set amp op2 update alert template amp id 38 amp other example template with changed name onchange 0 0 20 20 20 0 20 111111 1 11 5 1 1 1 0 1 1 0 0 1 field 20recovery 20example 201 field 20recovery 20example 202 1 8 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 26 set delete alert template Delete a alert template and delete the alerts that are using this template Call sintax op set compulsory op
236. lete stop of the cluster MaxNoOfConcurrentOperations Shows the maximum number of registers that could be simultaneously in updating phase or bloqued MaxNoOfLocalOperations It is recommended to stablish this parameter with a value of the 110 of MaxNoOfConcurrentOperations MaxNoOfConcurrentIndexOperations This parameter has a default value of 8192 and only in cases of extremely high parallelism that use unique hash index it should be necessary to increase its value It is posible to reduce its value if the Database administrator considers that there is not much parallelism and with it saving some memory MaxNoOfFiredTriggers This parameter has by default a value of 4000 and it should be enough in the majority of cases Some times it would be even posible to reduce its value if the Database administrator considers that there is not much parallelism TransactionBufferMemory This temporal memory storage is used while the update of the index tables and of reading of unique index for keeping the key and the column in this operations and usually we should not modify the 1M default value MaxNoOfConcurrentScans This parameter shows the maximum number of parallel scanning that the cluster could do that could be able to support so many scans as the selected ones for this parameter in each node MaxNoOfLocalScans This parameter shows the number of registers scanned locally if several scans are not made completely in parallel If it is not
237. ll api disable alert Call syntax op set obligatorio op2 disable module alerts e id Nombre del agente obligatorio e id2 Nombre del modulo obligatorio Examples http localhost pandora console include api php op set amp op2 disable module alerts amp id garfio amp id2 Status amp apipass 1234 amp user admin amp pass p andora 28 3 2 50 set enable module Enable the module Call syntax op set mandatory op2 enable module id Agent name gt mandatory e id2 Module name gt mandatory Examples http localhost pandora console include api php op set op2 enable module amp id zgarfio amp id2 Status amp apipass 1234 amp user admin amp pass pandora 28 3 2 51 set disable module Disable the module Call syntax op set mandatory op2 disable module e id Agent name gt mandatory e id2 Module name gt mandatory 363 AP PANDORAFMS API Calls Examples http localhost pandora_console include api php op set amp op2 disable module amp id garfio amp id2 Status amp apipass 1234 amp user admin amp pass pandora 28 3 2 52 set create_network_module_from_component Create a new network module from a component Call syntax e op set mandatory op2 create network module from component mandatory id Nombre del agente mandatory e id2 Nombre del componente mandatory Examples http localhost pandora c
238. lo usaremos otro servidor independiente de Pandora utilizando la funcionalidad de monitorizaci n WEB Realizaremos una sesi n de usuario donde realizaremos las siguientes tareas en este orden y mediremos lo que tardan 1 Login en la consola 2 Ver eventos 3 Ira la vista de grupo 4 Ira la vista de detalle de agente 5 Visualizar un informe en HTML Dicho informe deber a contener un par de gr ficas y un par de modulos con informes de tipo SUMA o MEDIA El intervalo de cada elemento deber a ser de una semana o cinco d as 6 Visualizaci n de una gr fica combinada 24hr 7 Generaci n de informe en PDF otro informe diferente Se realiza esta prueba con al menos tres usuarios diferentes Se puede paralelizar esa tarea para ejecutarla cada minuto de forma que si hay 5 tareas cada uno con su usuario estar amos simulando la navegaci n de cinco usuarios simult neos Una vez establecido el entorno tendremos en cuenta 1 La velocidad media de cada modulo es relevante de cara a identificar cuellos de botella relacionados con otras actividades paralelas como la ejecuci n de script de mantenimiento etc 2 Se medir el impacto de CPU Memoria en el servidor para cada sesi n concurrent 3 Se medir el impacto de cada sesi n de usuario simulada respecto al tiempo medio del resto de sesiones Es decir se deber a estimar cuantos segundos de demora a ade cada sesi n extra simult nea 267 AP PANDORAFM
239. log Should Stop network Default Start 235 Default Stop 016 Short Description MySQL Cluster Management console startup script Description See short description END INIT INFO export PROCESS_DAEMON ndb_mgmd export PROCESS PARAMETERS config file var lib mysql cluster config ini configdir var lib mysql cluster Uses a wait limit before sending a KILL signal before trying to stop Pandora FMS server nicely Some big systems need some time before close all pending tasks threads export MAXWAIT 300 Check for SUSE status scripts if f etc rc status then etc rc status rc reset else Define rc functions for non suse systems void functions function rc status VOID 1 function rc exit exit function rc failed VOID 1 A PANDORAFMS Appendix Examples of Configuration Files iii This function replace pidof not working in the same in different linux distros function pidof_process This sets COLUMNS to XXX chars because if command is run in a strech term ps aux don t report more than COLUMNS characters and this will not work COLUMNS 400 PROCESS PID ps aux grep PROCESS_DAEMON PROCESS_PARAMETERS grep v grep tail 1 awk print 2 echo PROCESS_PID Main script if which PROCESS DAEMON wc l 1 then echo Server not found please check setup and read manual rc status s rc exit
240. lt array for obtain other array that is array and the index is a integer of diferents kinds of monitor states and the content is a count of monitor in this state Well the only thing left is to make or fill the content of cell in html The trick is easy If the count off all states is zero the background for div in CSS is grey If states 1 0 or in human language there is one at least of monitor in critical state the div has a red color If the array only have a one cell and it s the normal state the green is in this div And others cases the yellow is the color for div Addlink in the cell if count is more than 0 Save the row in Stable and start other iteration of foreach Print the table Print the legend and other notes in the bottom of page 33 7 2 API calls functions It s few lines of code Because the operations in this lines are Insert the extension into Pandora menu And it s with the call extensions add operation menu option Modules groups estado module groups icon menu png where Modules groups is the name appear in submenu of agents estado is the element hang the extension module groups icon menu png is the image icon appear in submenu the path is relative to your extension directory Define the main function of this extension And it s with the call extensions add main function mainModuleGroups where mainModuleGroups is the name of extension main function
241. m_file gt 5 0 Parameters file path gt option to execute lt option_params gt Description With this option is possible to execute any CLI option with macros from a CSV file The number of macros will be the number of columns in the CSV file Each macro will be named J FIELD1 FIELD2 FIELD3 etc Example We are going to create users from a CSV file We need a CSV file like that lige 1 Password 1 0 User 2 Password 2 0 User 3 Password 3 0 ese Admin Password Admin 1 The name of the file will be tmp users_csv AP PANDORAFMS Pandora FMS CLI SS We going to execute the option create_user with the following options lt user_name gt user password is admin lt comments gt To do this we execute the following option perl pandora manage pl etc pandora pandora server conf exec from file tmp users csv create user FIELD1 FIELD2 _ FIELD3__ User created with exec_from_file option from CLI NOTE Commas into the CSV columns are not yet supported 29 1 9 2 create_snmp_trap gt 5 0 Parameters lt file path gt lt name gt lt oid gt lt desc gt lt severity gt Name As seen in the snmp trap console OID SNMP trap main OID Severidad Numeric value which have following values Severity O Maintenance 1 Info 2 Normal 3 Warning 4 Critical 5 Minor and 6 Major Sample perl pandora_manage pl etc pandora pandora_server conf create_s
242. macros of the event and agent address agent id or _event_id_ And there is also possible to define a parameter list separated by commas that will be filled in by the user when executing the response t e O AD PANDORAFMS Events Manage events Responses BE d Y o Name SSH to host Group Al M Connect via SSH to the agent Description Location Modal window 7 Size Width px 800 Height px 450 Parameters User Type URL y Command http 192 168 70 164 B022 anytermhtmi param _User_0_agent_address_ T Update gt Customizing Fields in the Event View With Pandora FMS it is possible to add or delete columns in the event view Each column is a field for the event information so it is possible to customize that view From this screen it will be possible to add fields in the event view passing them from the box on the right available fields to the box at the right fields selected To delete fields from the event view they will be go from the box on the right to the box on the left AP PANDORAFMS Events A admin 9 PANDORAFMS Custom fields Custom fields SHOW EVENT FIELDS Columns Filter group Applications Y Fields Fields available Fields selected Event id Event name a User Agent name i Group gt Status Event type Timestamp Agent module Server name Alert Criticity Comment 4 Tags E Source 7 hd Update O 7 3 Reports
243. mail news uucp 175 AP PANDORAFMS Securizing the FTP proftpd Server iii operator games guest anonymous nobody Try to start session with pandora user in the FTP and to access to other different directories from var spool pandora data in this should be the only visible directory for this user under the alias 14 2 Vsftpd Securization Vsftpd has different parameters to securize a FTP account but this could come into conflict with scponly It is recommended to implement some changes to reinforce the security in the pandora account to could use the FTP and SSH transfer systems in a simultaneous way 1 2 3 4 Change the home directory of pandora user by var spool pandora data_in Keep scponly as shell by default Copy or move the directory home pandora ssh to var spool pandora data_in Do not forget to check the the directory ssh has the pandora use as owner and that it has the right permissions Modify the vsftpd configuration file etc vsftpd conf and add the following parameters check shellzNO dirlist_enable NO download_enable NO deny_file authorized_keys deny_file ssh chroot_local_user YES This configuration fix the home directory of pandora user as var spool pandora data_in and does not allow to the pandora user to connect remotely to establish an interactive command session It also allows FTP transfers with the same user pandora
244. me problem The Metaconsole has its own event visor where the events from the associated instances are centralized It is possible to centralize the events of all instances or only part of them When the events of one instance are replicated in the metaconsole its management becomes centralized in the metaconsole so its visualization in the instance will be restricted to only reading 7 2 1 Replication of Instance events to the metaconsole In order that the instances replicate their events to the metaconsole it would be necessary to configure them one by one To get more information about its configuration go to the section Setup and configuration of metaconsole in this manual 7 2 2 Event Management To visualize the event management it is divided in the view and in its configuration 7 2 2 1 See Events The events that are received from the Pandora nodes are viewed from two views In a first view we could see all the events that are form less than n days and in a second view you could see the events without validation from more days Event view You can go to the normal event view or to the all event view from less than n days clicking on the Event icon from the metaconsole main page AP PANDORAFMS Events Event control filter Total items 69 K 1031110213 gt petalo petalo dataserver going UP 1 minutes 40 seconds o 175 petalo patalo inventoryserver going UP 1 minutes 40 seconds o 4172 petalo pa
245. me views e agents tree view alert img S alert fired Returns the path to alerts image for tree view depending on the number of alert fired agetns tree view status img critical warning unknown Returns the path to status image for tree view 27 2 3 Groups These functions return the statistics of agents and modules based on agent groups defined in Pandora Be careful The server and console functions must use the same sql queries in order to ensure the result is calculated in the same way 27 2 3 1 Server functions pandora group statistics This function calculates the group statistics when parameter Use realtime statistics is switched off 27 2 3 2 Console functions The console functions calculate the satistics based on an array of agents groups These functions don t return disabled agents or modules groups agent unknown group array Returns the number of agents with unknown status for a given set of groups groups agent ok group array Returns the number of agents with normal status for a given set of groups groups agent critical group array Returns the number of agents with critical status for a given set of groups groups agent warning group array Returns the number of agents with warning status for a given set of groups These functions calculate statistics for modules Doesn t use disabled modules or agents groups monitor not init group array Returns the number of monito
246. me when the user go to extension in Pandora Console godmode instead load main_function 33 4 5 extensions_add_login_function extensions_add_login function lt name of login function gt add the function of extension for to call one time when the user login correctly in Pandora console 33 4 6 extensions_add_godmode_tab_agent extensions_add_godmode_tab_agent lt ID of extension tab gt lt Name of extension tab gt lt Image file with relative dir gt lt Name of function to show content of godmode tab agent gt adds one more tab to the agent edit view that when it is selected executes the code of the name function that we pass to it 33 4 7 extensions_add_opemode_tab_agent extensions_add_opemode_tab_agent lt ID of extension tab gt Name of extension tab gt 416 AP PANDORAFMS API for Extensions lt Image file with relative dir gt lt Name of function to show content of operation tab agent gt adds one more tab to the agent operating view than when it is selected will execute the code of the name function that we pass to it 33 4 8 Father IDs in menu List of available strings IDs for use in extension API If use null value or not incluyed param in call function the extension appear only in submenu of extension 33 4 8 1 Operation estado Monitoring view network Network view reporting Reporting and data visualization gismaps GIS view event
247. ments without exit from the Metaconsole Summarizing the Metaconsole was slow in case it had a bit of load and the user was very limited by its options 2 2 From Version 5 0 The Metaconsole from version 5 0 is an special environment completely independent and incompatible with the console 2 2 1 Communication The communication between the Metaconsole and the instances is bi directional The Metaconsole connect with the instance database and the instances replicate part of their data to the Metaconsole database Other data such as groups alert templates tags are stored in the Metaconsole AP PANDORAFMS From Version 5 0 INSTANCE 1 INSTANCE 2 INSTANCE N The synchronization is done in a one way From the Metaconsole to the instances METACONSOLE 2 2 2 Synchronization For example Lets suppose that we want to configure some alert templates for the ones that have several or all instances Without exit from the metaconsole we could configure the templates and synchronize them with the instances that we want INSTANCE 1 INSTANCE N METACONSOLE AP PANDORAFMS From Version 5 0 2 2 3 Improvements The Metaconsole from version 5 0 is a much more centralized quick and flexible tool than the previous version It also includes much more views and features and also improvements in the ones that previously exist It does not manage all data in m
248. meter and the second as text to send using for specifying each parameter The script trust in the SSH automatic autentication and in the sms user for the transfer In the local system you can remplace the scp for the cp command or use a system like Tentacle to transfer the file 16 5 1 1 SMS This is the script that sends SMS using Gnokii You should have Gnokii well configured using the file etc gnokii confor similar Probably should be the user root to could launch the script or establish the SETUIDO in the gnokii binary ECTS texto 1 192 AP PANDORAFMS Gateway to Send SMS using a generic hardware and Gnokii number 2 if 2 then echo I need more parameters exit 1 fi bin echo 1 usr local bin gnokii sendsms 2 16 5 1 2 SMS Gateway This is the gateway daemon script bin bash INCOMING_DIR home sms incoming HOME_DIR home sms while 1 do for in 15 INCOMING DIR do if z a 1 then NUMBER cat INCOMING DIR a cut d f 1 MESSAGE cat INCOMING DIR a cut d f 2 TIMESTAMP date Y m d 96H 96M 96S echo TIMESTAMP Sending to NUMBER the message MESSAGE gt gt HOME DIR sms gateway log DIR sms MESSAGE NUMBER echo TIMESTAMP Deleting a gt gt HOME DIR sms gateway log rm Rf INCOMING DIR a sleep 1 fi done sleep 5 done 16 5 1 3 SMS Gateway Launcher This is
249. min critical module max critical module min ff event module delete pending module id agent state module data module timestamp module state module last try module utimestamp e module current interval module running by module last execution try AP PANDORAFMS API Calls Nu module status changes module last status alert id agent module alert id alert template alert internal counter alert last fired alert last reference alert times fired alert disabled alert force execution alert id alert action alert type alert value alert matches value alert max value alert min value alert time threshold alert max alerts alert min alerts alert time from alert time to alert monday alert tuesday alert wednesday alert thursday alert friday alert saturday alert sunday alert recovery notify alert field2 recovery alert field3 recovery alert id alert template module alert fires min alert fires max alert id alert command alert command alert internal alert template modules id alert templates id alert template module actions id alert actions id alert commands id alert templates name alert actions name alert commands name alert templates description AP PANDORAFMS API Calls Su alert commands description alert template modules priority alert templates priority
250. minutes of difference with the Metaconsole the visualization of the time that have passed since their events were generated when these data are shown in the Metaconsole they will be false 6 1 1 Instances One Instance is a Pandora FMS Enterprise typical installation One instance is composed of one Server and one Web Console All details about how to install the Instances will be found in the documentation section Pandora FMS Installation 6 1 2 Metaconsole A Metaconsole is a Pandora FMS Enterprise installation with a metaconsole license A It is not possible to use at the same license the Pandora FMS console and the L4 Metaconsole The Metaconsole is only the Web Console It doesn t use server so it will not host agent neither monitors In some cases it could be necessary the server libraries to execute the database maintenance script in the Metaconsole To simplify it this is done installing the server but without firing it 6 1 3 Metaconsole Additional Configuration The Metaconsole if the node events replication has been activated store event data in its own database For their maintenance these data can be deleted and or move to the metaconsole history AP PANDORAFMS Installation event ddb THis is done as pandora instance through the execution of the ddbb maintenance script that is at usr share pandora_server util pandora_db pl Usually to launch it the server file is used o
251. more in docs about status codes Field 6 Timestamp human string timestamp Field 7 Event description pure text Field 8 utimestamp Unix timestamp numerical seconds since 1970 Field 9 event type tokens representing event type with fixed strings Field 10 ID agent module the numerical ID of the module with raise this event It depends on the event type a new agent event type do not come with any value here 0 Later the API will get the name you dont need to call again the api to resolve the name by asking with the ID Field 11 Id alert THe same with F10 Field 12 Criticity values check out the docs to see the codes Field 13 User comments if provided by the user Field 14 Tags Now comes the API aditional fields not in DB Field 15 Agent name Field 16 Group name Field 17 Group image name Field 18 Long description of the event type Field 19 URL to image representing the event status red ball Field 20 Description of the event criticity Field 12 Field 21 URL to image representing the criticity 327 AP PHNDORAFMS API Calls C ppl 28 3 1 12 get all alert templates Returns the list of alert templates defined into the Pandora Call syntax op get compulsory op2 all alert templates compulsory other cvs separator optional Examples ins 127 0 0 1 pandora console inctude ani php get amp op2 all alert t
252. mple new passwd example email example language example 20comment 1 30 amp other mode url encode separator amp apipass i234 amp user admin amp pass pandora 28 3 2 31 Set delete user Delete a selected user Call syntax op set compulsory op2 delete user compulsory e id nombre usuario compulsory should be an user name Examples http 127 0 0 1 pandora console include api php op set amp op2 delete_user amp id md amp apipass 1234 amp user admin amp pass pandora 28 3 2 32 set enable_disable_user Enable a disabled user Call syntax op set compulsory op2 enable disable user compulsory e id user name compulsory should be an user name Examples Example 1 Disable user example name http 127 0 0 1 pandora console include api php op set amp op2 enable disable user amp id example name amp other O amp other mode url encode separat or amp apipass i234 amp user admin amp pass pandora Example 2 Enable user example 355 AP PHNDORAFMS API Calls A http 127 0 0 1 pandora console include api php op set amp op2 enable disable user amp id example name amp other i amp other mode url encode separat or_ amp apipass 1234 amp user admin amp pass pandora 28 3 2 33 set create_group Create a group Call syntax op set compulsory op2 create_group compulsory e id lt group_ name gt compulsory should be a g
253. n 253 NDBFS s proc 3 s sigld 411879492 length 1 trace 0 sec 0 fragInf 0 Scanning the memory channel every 10ms It is easy to monitor these logs with Pandora itself doing searches of the words WARNING y CRITICAL 18 6 General Procedures The management individual procedures of each kind module are given in the first place and later the start and stop procedure for the cluster 18 6 1 Cluster Manager Process Management As root To start the cluster manager etc init d cluster_mgmt start To check that it is running etc init d cluster_mgmt status To stop the Manager process etc init d cluster_mgmt stop 18 6 2 Nodes Management from the Manager We enter in the shell of the cluster Manager with ndb_mgm AP PANDORAFMS General Procedures 3 We stop the node that we want with 2 stop Being the 2 the ID of the node to stop To start a node we will use the order 2 start 18 6 3 Data Node Management with the start scripts As root To start a data node etc init d cluster_node start to stop a data node etc init d cluster_node stop To start a data node This operation delete the node data of the cluster and restart the redologs and could require a recovery from the backup etc init d ndbmtd initial 18 6 4 SQL Nodes Management with Starting Scripts The SQL nodes are managed in the
254. n 8 0 14 api 86 proto 86 GIT hash bb447522fc9a87d0069b7e14f0234911ebdab0f7 build by philQfat tyre 2008 11 12 16 40 33 1 cs SyncSource st Primary Secondary ds UpToDate Inconsistent C r ns 44032 nr 0 dw 0 dr 44032 al 0 bm 2 10 0 pe 0 ua 0 0 1 sync ed 2 2 2052316 2096348 K finish 0 03 04 speed 11 008 11 008 K sec used 0 61 hits 2749 misses 3 starving 0 dirty 0 changed act log used 0 257 hits 0 misses 0 starving 0 dirty 0 changed 0 17 4 4 Create the partition on primary node Do it ONLY in the primary node will be replicated to the other nodes automatically You operate with the DRBD block device forget to use physical device castor mkfs ext3 dev drbd1 Use is like a standard partition from now and mount to your disk in primary NODE as follow omm mkdir drbd mysql mount dev drbd1 drbd mysql You cannot do this mount in the secondary to do it you before need to promote to primary and previously need to degrade primary to secondary In primary castor castor drbdadm secondary mysql In secondary pollux pollux drbdadm primary mysql 17 4 5 Getting information about system status Executed from current master node castor castor drbdadm state mysql Primary Secondary castor drbdadm dstate mysql UpToDate UpToDate And from pollux backup replicating disk pollux drbdadm s
255. n del mantenimiento programado de base de datos u otros scripts que se ejecuten en el servidor o AP PANDORAFMS Methodology in detail 9395 el servidor de BBBDD Problemas de red derivados de procesos no relacionados p e backup de un servidor en la red que afecten a la velocidad disponibilidad de la red 20 3 4 Servidor de Plugins Red open y HTTP Aqui aplica el mismo concepto que arriba pero de forma mas simplificada Habra que controlar N de hilos Timeouts para calcular la incidencia en el peor de los casos Tiempo medio de chequeo Dimensionar con esos datos un conjunto de prueba y verificar que la capacidad del servidor es constante a lo largo del tiempo 20 3 5 Recepci n de traps Aqui el supuesto es m s sencillo Partimos que el sistema no va a recibir traps de forma constante sino que m s bien se trata de evaluar la respuesta ante una avalancha de traps de los cuales algunos generar n alertas Para ello simplemente hay que hacer un script sencillo que genere traps de forma controlada a gran velocidad bin bash TARGET 192 168 1 1 while 1 do snmptrap 1 c public TARGET 1 3 6 1 4 1 2789 2005 192 168 5 2 6 666 1233433 1 3 6 1 4 1 2789 2005 1 s SRANDOM done NOTA Cortarlo con CTRL C a los pocos segundos pues generar cientos de traps en pocos segundos Una vez montado el entorno hay que validar los siguientes supuestos 1 Inyecci n de traps a un
256. n existent user will be enabled If it s already enabled will showed only a message Example perl pandora_manage pl etc pandora pandora_server conf enable_user User id 29 1 4 5 Disable_user gt 5 0 Parameters lt user_id gt Description An existent user will be disabled If it s already disabled will showed only a message Example perl pandora_manage pl etc pandora pandora_server conf disable_user User id 29 1 4 6 Create_profile Parameters user name gt profile name gt group Description A profile will be added to an user giving it as parameter the names of user profile an group on which they will have the privileges of this profile You should specify the group All if you want that the profile has validity on all groups Example perl pandora manage pl etc pandora pandora server conf create profile usuario002 AP PANDORAFMS Pandora FMS CLI Group coordinator All 29 1 4 7 Delete_profile Parameters lt user name gt lt profile name gt lt group gt Description An user profile will be deleted giving it as parameter the names of user profile and group on which the profiles has the priviledges If the profile to delete is associated to the ALL group we should specify as group All Example perl pandora_manage pl etc pandora pandora_server conf delete profile usuario002 Chief Operator Applications 29 1 4 8 Add_profile_to
257. n ipmi recon pl Description Update Name Discovery Script fullpath home admin ipmi recon pl Path where is the ipmi recon pl file 23 1 3 Monitoring with the IPMI plugin To start the monitoring we need to create a Recon Task that discovers all the IPMI devices This task will create one agent by each device discovered and the modules with all the available checks for each device The following screenshot shows an example to explore the network 192 168 70 0 24 in it all the IPMI devicew have as credentials admin admin AP PANDORAFMS IPMI plugin for Pandora FMS Task name IPMI Discovery 192 168 70 0 24 Recon server CentOSv6 02 Mode Custom script Interval Manual Recon script IPMI Discovery v Group Servers Incident Yes a Explanation Script field 1 192 168 70 0 24 Script field 2 admin Script field 3 admin Script field 4 Parent recursion 5 With this configuration the Recon Task will do a network discovery and will create one agent by each device found with all the available modules In the following image you can see the end result some of the modules created in one agent of the explored network AP PANDORAFMS IPMI plugin for Pandora FMS Full list of monitors mu EX 9 Temp Temperature fio 3 minutes 9 QR BB L1VIOH Voltage eee hol 3 44 minutes 1 1V P1 Voltage EM o
258. n sh amp 19 6 2 1 Contents of scripts etc vip up sh bin bash sbin ifconfig 1 254 2 netmask 255 255 255 0 etc vip down sh bin bash 1 254 down 19 6 2 2 Some proposed scripts etc mysql create full replica sh bin bash echo FLUSH TABLES WITH READ LOCK mysql u root pnone D pandora mysqldump u root pnone pandora B master data gt tmp dbdump sql echo UNLOCK TABLES mysql u root pnone D pandora etc mysql restore replica sh AP PANDORAFMS Setting up the load balancing mechanism 0 0 scp root 192 168 10 101 tmp dbdump sql echo SLAVE STOP drop database pandora SOURCE tmp dbdump sql mysql u root pnone D pandora etc mysql become slave sh echo CHANGE MASTER TO MASTER_HOST 192 168 10 101 MASTER_USER replica MASTER_PASSWORD slayer72 SLAVE START mysql u root pnone etc mysql become master sh echo STOP SLAVE RESET MASTER mysql u root pnone Setting up the load balancing mechanism AP PANDORAFMS 20 CAPACITY STUDY AP PANDORAFMS Introduction SU UI 20 1 Introduction Pandora FMS is a quite complex distributed application that has several key elements that could be a bottleneck if it is not measured and configured correctly The main aim of this study is to detail the scalability of Pandora FMS regarding on an specific serial of parameters to know
259. n the event name or in the Show more icon from the action field The fields of one event are shown in a a new window with several tabs 7 2 2 1 1 1 General AP PANDORAFMS Events Module Gas Level is going to CRITICAL 100 00 General Q Deta Event 1D Event name Module Gas Level is going to CRITICAL 100 00 Timestamp September 26 2013 12 55 Owner N A Type E Going down to critical status Repeated Severity Critica Status New event Acknowledged by N A Group A servers Tags N A ID extra The first tab shows following fields Event ID It is an unique identifier for each event Event Name It is the event name It includes a description of it Date and Hour Date and Hour when the event is created in the event console Owner Name of the user owner of the event Type Type of event There can be the following types Ended Alert Event that happens when an alert is recovered Fired Alert Event that happens when an alert is launched Retrieved Alert Event that happens when an alert is retrieved Configuration change Unknown Network system recognized by the recon Error Monitor in Critical status Monitor in Warning status Monitor in Unknown status Not normal System Manual validation of one alert Repeated It defines if the event is repeated or not Severity It shows the severity of the event There are the following levels Maintenan
260. n the cron and can execute a limited number of tasks without having logged in enterprise extensions cron cron php External view Visual Console This script generates a page with the view of the Visual Console in full screen without menus it doesn t require a login although for the authentication a hash is needed this hash is generated by each Visual Console operation visual_console public_console php Popup detail of Console Networkmap A popup window that shows the agent detail for any item in the Networkmap Console This uses for authentication the session values from the user logged into Pandora Console enterprise operation agentes networkmap_enterprise popup php AP PANDORAFMS Pandora FMS Code architecture Popup Module Graph A popup window that shows a module graph this window has parameters that can be configured to change how the graph is shown This uses for authentication the session values from the user logged into Pandora Console operation agentes stat_win php Static graphs The static graphs are image files that are generated by PHP script if there is a large amount of data then it saves a serialid in special files that the script creates these serialized files have a life time so as to avoid bad access and DOS attack The execution of this file doesn t require authentication in Pandora include graphs fgraph php Reports 27 1 2 6 1
261. n the section of Install and Configure the To avoid problems with the synchronization of groups we shoud have done the Metaconsole 9 3 3 Alert Synchronization This option allows to the user synchronize the alerts already created in the Metaconsole with the Instances 107 AP PANDORAFMS Synchronization Tools AP PRNDORAFMS 00 Alerts synchronization ar 188 Source This metaconsole burbuja Targets Sync gt 9 3 4 Components Synchronization This option allows to the user to synchronize the module components already created in the Metaconsole with the Instances Mm A admin 9 A PANDORAFMS Advanced Components synchronization 198 Source This metaconsole Targets i 11 Sync gt 9 3 5 Tags Synchronization This option allows to the user synchronize the tags already created in the Metaconsole with the Instances 108 AP PANDORAFMS Synchronization Tools EM a admin 0 AP PRNDORAFMS A Advanced Tags synchronization Ar 108 Source This metaconsole burbuja petalo 1 Targets Sync gt 9 4 Data Management 9 4 1 Users It is possible to do the following actions in the user management section User Management Profiles Management Edit my user 9 4 1 1 User Management In the section Advanced User Management User Management we can see the list of the already created users and modify their c
262. nchronization times of the cluster reply if a module is not able to participate in a global checkpoint in the period fixed for this parameter the node will be switched off TransactionDeadlockDetectionTimeout Shows how long the transaction coordinator will wait for another mode will complete a query before aborting the transaction This parameter is important for the deadlocks management and the nodes fail DiskSyncSize Maximum size stored before dumping data to a local checkpoint file DiskCheckpointSpeed transfer velocity in bytes by second of data sent to disk during a local checkpoint DiskCheckpointSpeedInRestart transfer velocity in bytes by second of data sent to disk during a local checkpoint that is part of a Restart operation ArbitrationTimeout times that a node waits for an arbitrator message If this time is out then it will be assumed that the network is divided UndoIndexBuffer is used during the local checkpoints to registry the activities during the local checkpoints writting A It is not safe to reduce the value of this parameter UndoDataBuffer has the same function that the previous one except that in this case it refers to the data memory instead of that of the index A It is not safe to reduce the value of this parameter RedoBuffer registry the update activities in order they could be executed again in case of the system restart and leave the cluster in a consistent state log levels comes from O nothi
263. nclude api php op set amp op2 create netflow filter amp apipass 1234 amp user admin amp pass pandora amp other Filter 20name 9 host 20192 168 50 3 200R 20h0st 20192 168 50 4 200r 20HOST 20192 168 50 6 dstport kilobytes amp other mode url encode separator 28 3 2 59 set create custom field gt 5 0 Create a new custom field Call syntax op set mandatory op2 create_custom_field mandatory e other lt serialized parameters mandatory parameters to configure the custom field lt name gt mandatory flag display front mandatory 0 the field will not be displayed on operation view 1 the field will be displayed Example http 127 0 0 1 pandora console include api php op set amp op2 create custom field amp other mycustomfield O amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 60 set create tag gt 5 0 Create a new tag Sintaxis de la llamada op set mandatory op2 create_tag mandatory other lt serialized parameters gt mandatory parameters to configure the tag lt name gt Tag s name mandatory description Tag s description lt gt Tags URL email Tag s email 367 AP PANDORAFMS API Calls A Ejemplo http 127 0 0 1 pandora_console include api php op set op2 create tag amp other tag name tag description tag url tag email amp other mode url encode separator
264. nclude api php op set amp op2 new_note_incident amp id 5 amp id2 miguel amp other una 20nota 20para 20la 20incidencia amp apipass 1234 amp user admin amp pass pandora 28 3 2 38 set validate_all_alerts Validate all alerts Call syntax op set compulsory op2 validate all alerts compulsory Examples http 127 0 0 1 pandora console include api php op set amp op2 validate all alerts amp apipass 1234 amp user admin amp pass pandora 28 3 2 39 set validate all policy alerts Validate the alerts created from a policy Call syntax op set compulsory op2 validate all policy alerts compulsory Examples http 127 0 0 1 pandora console include api php op set amp op2 validate all policy alerts amp apipass 1234 amp user admin amp pass pandora 28 3 2 40 set event validate filter Validate all events that pass the filter pass as parameters Call syntax op set compulsory e op2 event validate filter compulsory AP PHNDORAFMS API Calls other mode url encode separator optional e other serialized parameters optional Are the following in this order e separator e lt criticity gt De0a4 agent name gt module name gt e alert template name gt e user numeric interval minimum level en unix timestamp numeric interval maximum level en unix timestamp Examples http 127 0 0 1 pandora console include api php op set am
265. nd general data of the Metaconsole such as the language the date hour configuration information about the license or customization about some sections among others It is possible to customize if we want that the Netflow section would be enabled or disabled the tree view classified by tags the visual console and the possibility of web checks creation from the Wizard 100 AP PANDORAFMS Metaconsole Configuration admin 9 y PANDORAFMS Advanced General setup Language code for Pandora English Auto login hash password Time source System Y Enforce https Yes No Attachment store var www html pandora console attachment Timezone setup Europe Bertin Europe Europe Berlin License information 8 Public URL Disable custom live view filters Yes No Disabled sections Enabled sections None E Netflow a 8 Tree view by tags im Y Visual Console jb Web checks Customize sections 4 4 Update O 9 2 2 Password Policy It is possible to set a password policy with limitations in the password number of characters expiration temporary blocking of one user To know more about the password policy go to the manual section Password policy 101 AP PHNDORAFMS Metaconsole Configuration fe PANDORAFMS Passwords setup Passwords Enable password policy Min size password Password must have numbers Password must have symbols Password expiration Forc
266. ng is reported to the log to 15 all related activity is reported to the log 214 A PANDORAFMS Installation and Configuration mn LogLevelStartup log level of activity during the starting process LogLevelShutdown log level of activity during the stopping process LogLevelStatistic log level of statistic events activity reading of primary keys updates insertions etc LogLevelCheckpoint log level of activity during local and global checkpoints LogLevelNodeRestart log level of activity during the restart of a Node LogLevelConnection log level of activity of events generated through connections between nodes LogLevelError log level of warning and error activity LogLevelCongestion Log level of cluster congestion activity LogLevelInfo Log level of the cluster general information activity MemReportFrequency Number of seconds between registers of memory use of the data nodes The data and index memory is recorded either in percentage as in 32KB pages number StartupStatusReportFrequency Shows the reports when the redologs are started because a data node has been fired The redologs start process could be large if the size of these are big and this parameter allow to register the evolution of this start BackupReportFrequency Shows the frecuency with witch the backup evolution is registered in the log during the process of creating a security copy BackupDataBufferSize During the Backup process there are two bu
267. ng one node whose modifications will be discarded this node is referred to as the split brain victim This intervention is made with the following commands me secondary mysql discard my data connect mysql On the other node the split brain survivor if its connection state is also StandAlone you would enter drbdadm connect mysql See the status pollux cat proc drbd version 8 0 14 api 86 proto 86 GIT hash bb447522fc9a87d0069b7e14f0234911ebdab0f7 build by phil fat tyre 2008 11 12 16 40 33 1 cs SyncSource st Primary Secondary ds UpToDate Inconsistent C r ns 34204 nr 0 dw 190916 dr 46649 al 12 bm 24 10 0 pe 4 ua 20 ap 0 gt 1 sync ed 66 7 23268 57348 K AP PANDORAFMS DRDB setup 959 finish 0 00 02 speed 11 360 11 360 K sec resync used 1 61 hits 2149 misses 4 starving 0 dirty 0 changed 4 act_log used 0 257 hits 118 misses 12 starving 0 dirty 0 changed 12 17 4 9 Manual switchover In the current primary 1 Stop mysql etc init d mysql stop 2 Umount partition umount dev drbd1 3 Degrade to secondary ridad secondary mysql In the current secondary 4 Promote to primary primary mysql 5 Mount partition mount dev drbd1 drbd_mysql 6 Start MySQL etc init d mysql start 17 5 Setup Hearbeat 17 5 1 Configuring heartbeat We suppose y
268. ng order name module e disabled e id module type id module group min warning max warning str warning min critical max critical e str critical ff threshold e history data e module port lt snmp_version gt lt community e snmp oid e module interval e post process e min value max value AP PANDORAFMS API Calls lt custom_id gt description e snmp3 priv method AES DES e snmp3 priv pass e snmp3 sec level authNoPriv authPriv noAuthNoPriv gt e snmp3 auth method MD5 SHA e snmp3 auth user e snmp3 auth pass e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 add snmp module policy amp id 1 amp o0ther example 20SNMP 20module 20name 0 15 2 0 0 0 0 15 1 66 3 public 1 3 6 1 2 1 1 1 0 180 50 00 10 60 0 SNMP 20module 20modified 20by 20API AES example priv passw authNoPriv MD5 pepito user example auth passw amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 19 set add_agent_policy Add a agent into a policy Call syntax op set compulsory op2 add agent policy compulsory e id id policy compulsory should be a policy Id e other serialized parameters compulsory are the agent configuration and data seriali
269. ng the temperature in cur using temp sensors Date 2011 07 5 01 279M CHI Update SIMPLEGRAPH SENSOR CPD TEMPERATURA 1DAYS War Value 322 Avg Value 32 33 Min 30 201012794 201100714 2011474 Dios 20 107706 2011 0702 201100716 Luo 0745 290 0736 an 0679765 1207 06 AVG VALUE SENSOR CPD TEMPERATURA 1 MAX VALUE SENSOR CPD TEMPERATURA 1DAYS AP PANDORAFMS Installation and configuration 23 ENERGY EFFICIENCY WITH PANDORA FMS 281 AP PANDORAFMS Energy Efficiency with Pandora FMS eee Sustainability and energy efficiency are saving Different manufacturers both software and hardware They propose different methods strategies and tools Pandora FMS can integrate all of them in a single tool 1 5 ee EDI 23 1 IPMI plugin for Pandora FMS IPMI intelligent Platform Management Interface is an interface created by Intel in order to administrate and monitor IT systems Through IPMI for example check the temperature sensors voltages and ventilator velocity all of them in a remote way 23 1 1 Working of the IPMI plugin Monitoring through IPMI is based on two components A plugin that collects data from the device and a Recon Task that discover in an authomatic way all the devices of one network that supports IPMI 23 1 2 Installing the Plugin and the Recon task 23 1 2 1 Prerequisites Both the plugin and the recon task needs the tool FreeIPMI fr
270. ngMessageBuf fer 4M Logging and Checkpointing Redolog Set NoOfFragmentLogFiles to 6xDataMemory in MB 4 FragmentLogFileSize in MB The 6xDataMemory is a good heuristic and is STRONGLY recommended NoOfFragmentLogFiles 135 NoOfFragmentLogFiles 300 FragmentLogFileSize 3 4G 16M Size of each redo log fragment 4 redo log fragment makes up on fragment log file A bigger Fragment log file size thatn the default 16M works better with high write load and is strongly recommended FragmentLogFileSize 256M FragmentLogFileSize 16M By default fragment log files are created sparsely when performing an initial start of a data node a that is depending on the operating system and file system in use not all bytes are necessarily written to disk Beginning with MySQL Cluster NDB 6 3 19 it is possible to override this behavior and force all bytes to be written regardless of the platform and file system type being used by mean of this parameter InitFragmentLogFiles takes one of two values dk dk dk dk db dt od ik SPARSE Fragment log files are created sparsely This is the default value ik FULL Force all bytes of the fragment log file to be written to disk InitFragmentLogFiles SPARSE FULL SPARSE InitFragmentLogFiles FULL This parameter sets a ceiling on how many internal threads to allocate for open files Any situation requiring a change in this parameter should be reported as a bu
271. nge of filtering options to could meet the user needs If you have available the ACLs in order to manage filters at the bottom left side we will find the options to save the current filter or to load anyone of the already stored ones y Event control filter Group Event type Severity Databases Y Not normal v Critical y Event status Max hours old Repeated Only not validated Y 24 Group events Y v Advanced options Free search Agent search All Alert events Block size for pagination Filter alert events Y 50 M User ack admin Events with following tags Events without following tags configuration critical critical gt configuration network dmz dmz performance network performance 4 a lt z Update Y No filter loaded Event Statistics There is also available a graph of event generated by agent To see this graph click on the button on the upper right side AP PANDORAFMS Events y Event control filter Group Event type Severity Databases Y Not normal M Critical Event status Repeated Events generated by agent Only not validated Y Group events y Advanced options Free search Alert events Filter alert events Y User ack admin Y Events with following tags configuration gt critical ration network dmz performance y 4 7 Ba Ipdate Y No filter loaded Event Details In the event list normal or from history it is possible to see the details of one event clicking o
272. nimize this Setting it to a high value for optimization makes inserts faster but decreases the likelihood that consecutive autoincrement numbers will be used in a batch of inserts Default value 32 Minimum value 1 dk dk dk dk Gb ndb autoincrement prefetch sz 256 engine condition pushdown 1 Options for ndbd process mysql cluster Location of management servers list of host port separated by ndb connectstring 10 1 1 230 1186 10 1 1 220 1186 18 7 3 etc cron daily backup_cluster NOTE as it is a cluster the mysldump is not reliable because the writting is distributed and the coherence could not be warranted Though it is not recommended and it is preferable to do a complete backup of the cluster see the following section you could try to get a valid backup if you limit the writting in the cluster stopping the pandora servers and in the mode single user ver http dev mysql com doc refman 5 1 en mysql cluster single user mode html This backup script does the backup through the secure system command START BACKUP from the cluster management console bin bash LOG TEMPORAL tmp mysql cluster backup script log Directorios de los Backups DIR NODOS3 var lib mysql cluster BACKUPS Nodo DIR NODO4 var lib mysql cluster BACKUPS Nodo 04 Se lanza el backup y se espera a que se complete usr bin ndb_mgm e START BACKUP WAIT COMPLETED gt LOG TEMPORAL echo Procesando Log LOG T
273. nly that as it is a metaconsole there is no server To do this get a copy o fhe file etc pandora pandora_server conf from one of the nodes edit it and modify the data related to the DDBB hostname DDBB name user and password and save the file for example as etc pandora pandora_meta conf Create an script at etc cron daily pandora_meta_db with the following content usr share pandora_server util pandora_db pl etc pandora pandora_meta conf And modify the permissions of it through chmod chmod 755 etc cron daily pandora_meta_db In order to could execute it it is necessary that you have installed the necessary packages to execute even if it doesn t the Pandora FMS server and its Enterprise part Execute it manually to check that it works and it doesn t report errors etc cron daily pandora_meta_db 6 2 Configuration In order that Instances could communicate with the Metaconsole and vice versa you should configure both sides correctly 6 2 1 Instances In Instances there are a serial of parameters to ensure the access of your data with the Metaconsole 6 2 1 1 Giving access to the Metaconsole The Metaconsole could have access to one Instance in two different ways Remote access to the Data Base to see and edit the data stored in the instances Access to the to the API for some actions like the edition of configuration files or the NetFlow monitoring The Instance shou
274. nmp_trap Cisco_FAN_Crash 1 3 3 3 2 12 3 3 4 1 Something happen with the FAN inside the CISCO device probably a failure 3 29 2 Help To obtain general help with the Pandora FMS CLI you only need to writte perl pandora_manage pl h To obtain help of one specific option it would be enough with putting this option without parameters this for the options that use parameters perl pandora_manage pl etc pandora pandora_server conf create_user AP PANDORAFMS Help 30 CONSIDERATIONS ON PLUGIN DEVELOPMENT 401 AP PANDORAFMS Introduction SS 30 1 Introduction The plugins allows to Pandora get information that requires a complex process or that requires the use of complex systems or APIs Examples of plugins could be the Oracle database monitoring that requires a complex process for the monitoring and also some auto discovery tasks Other example could be a simple HTML parse but that requires some that Goliat can t do 30 2 Differences in Implementation and Performance Pandora offers two possibilities when executing plugins execution in the agent or in the server The server plugins do independent executions to collect each information piece The server plugin execution is very difficult so it is only possible for plugins that aren t heavy this is that doesn t need several queries to get a single piece of information A server plugin could be an specific HTML parse plugin that doe
275. nmp_version gt snmp community e snmp oid e module interval e post process min value max value custom id description e snmp3 priv method AES DES e snmp3 priv pass e snmp3 sec level authNoPriv authPriv noAuthNoPriv gt e snmp3 auth method MD5 SHA e snmp3 auth user e snmp3 auth pass e enable unknown events only in version 5 AP PANDORAFMS API Calls Examples Example 1 snmp v 3 snmp3 priv method AES snmp3 priv pass example_priv_passw snmp3 sec level authNoPriv snmp3 auth method MD5 snmp3 auth user pepito user snmp3 auth pass example priv passw http 127 0 0 1 pandora console include api php op set amp op2 create_ snmp module amp id pepito amp other prueba 0 15 1 10 15 16 18 15 0 127 0 0 1 60 3 public 1 3 6 1 2 1 1 1 0 180 0 0 0 0 SNMP 20module 20f rom 20API AES example priv passw authNoPriv MD5 pepito user example auth passw amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora Example 2 snmp v 1 http 127 0 0 1 pandora_console include api php op set amp op2 create snmp module amp id pepitoi1 amp other prueba2 0 15 1 10 15 16 18 15 0 127 0 0 1 60 1 11 1 3 6 1 2 1 1 1 0 180 0 0 0 0 lt 5 module from API amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 9 set update ne
276. nsole Configuration 9 2 5 File Management File manager where it is possible to upload and delete the files from the images folder from the Metaconsole installation images will be not accessible form this manager and it will be necessary to get to the The Metaconsole code re uses some images from the normal console code These installation manually to manage them fF PAINDORAFMS 5 e LM B admin OO Advanced File manager INDEX OF IMAGES IOE D 1 custom_logo October 2 2013 2 45 pm d groups_ smal October 2 2013 2 45 pm status_sets October 2 2013 2 45 pm tab_menu October 2 2013 2 45 pm AB add png October 2 2013 2 45 pm 14 kB of admin png October 2 2013 2 45 pm 14 kB m of advanced_block png October 2 2013 2 45 pm 168 af advise navigator background png October 2 2013 2 45 pm 56 7 kB 9 2 6 String Translation With the string translation feature it is possible to customize translations We do a search of the string in the language that we want to customize The original string will be shown the translation to that language and a third column to writte the customized translation 104 AP PANDORAFMS Metaconsole Configuration AP PANDORAFMS EM 5 e ys 60 Advanced Strings translation Language Espafiol Free text for search Wizard Search Q Total items 5 Update Wizard Asistente Autoprovisi n Wizard SLA Wizard SLA Asistente SLA 9 3 Synchronization
277. nstallation is complete Please reboot to use the installed system Note that updates may be available to ensure the proper functioning of your system and installation of these updates is recommended after the reboot Pandora FMS has been successfully installed Remove the CD from the drive and press the button to restart the system 12 3 2 Installation from the Live CD 158 AP PANDORA Installation aa If you have chosen the live cd or you have not had time to choose an option after the boot this screen with some icons will appear including the Installation disk icon Applications Places System Y X 4 Mon 27 13 45 Pandora FMS default user artica From this step on the installation will be identical to the Graphical installation explained in the previous section 12 3 3 Text mode installation After selecting the text mode installation a welcome screen will appear AP PANDORAFMS Installation Q 00 0 0 0000050505 5000000000000000000 elcome to CentUS Welcome to CentOSt lt Tab lt Alt Tab gt between elements Now it s time to select the language After selecting the language an error may occur when finding the disk In that case please restart the unit elcome to CentUs Language Selection What language would you like to use during the installation process Serbian Serbian Latin Sinhala Slovak Slovenian Swedish Ta jik Eh Ey lt Tab lt Alt Tab be
278. nstalled a Pandora server then you should have this user already created Fix a strong password for this user with the command passwd pandora 2 At the server create home pandora ssh directory with permissions 750 and user pandora root 3 Create in each system where you have an agent that wants to use SSH a pair of keys For it execute the following command with the same user that will be used to execute the Pandora s agent ssh keygen There will be a group of questions that you should answer by simply clicking Enter A public private key for this user has been created in the system Now you should copy it to the destiny system that is the Pandora s server where you want to send the data 4 To copy the public key to the Pandora s server The public key that has just been created could be copied in two ways Manually including the content of the public key file that is on the system where the agent is on the remote keys file that is in Pandora server located at home pandora ssh authorized_keys that should have ownership pandora root and permissions 600 The public key file generated in the sustem where is the agent is root ssh id_rsa pub This file will have a content similar to this one ssh rsa AAAAB3NZaC1yc2EAAAABIWAAAQEAZQyZwhAge5LvRgC8uSm3twWaFV906fHQek7PjxmbBUxTWfvNbbswbFsFO esD3COavziQAUl3rP8DC28vtdWHFRHq RS8fmJbU VpFpN597hGeLPCbDzr2WlMvctZwia7pPAtX9tJI70yC vDxZ7ubuUi bvY7tfgi7b1hJHYyWPa8ik
279. nt gt 5 0 Return the last gis agent data Sintax call op set compulsory op2 gis agent compulsory e id index compulsory agent index Ejemplo http 127 0 0 1 pandora5 include api php apipass caca amp user admin amp pass pandora amp op set amp op2 gis agent amp id 582 amp other mode url enco de separator amp other 2967C29 67 C0 67 C0967 CO 67 C2000 01 01 01 63A0 1 63A0 1967 CO 67 C666 67 Ccaca 967 Cpis 67Cmierda 28 3 2 SET Send data 28 3 2 1 Set new agent Create a new agent with the data passed as parameters Call syntax op set compulsory op2 new agent compulsory other lt serialized parameters compulsory They are the agent configuration and data serial in the following order agent gt lt ip gt e id parent id group cascade protection e interval sec id os e jd server custom id e eaming mode e disabled description AP PANDORAFMS API Calls A Examples http 127 0 0 1 pandora_console include api php opzset amp op2 new agent amp other agente nombre 1 1 1 1 0 4 0 30 8 10 0 0 1a 20descripcion amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 2 Set update_agent Update a new agent with the data passed as parameters Call syntax op set compulsory op2 update agent compulsory e id id agent c
280. nts Example perl pandora manage pl etc pandora pandora server conf create snmp module My module remote snmp inc My agent 192 168 12 123 8080 1 mycommunity myoid Module description 29 1 2 4 Create plugin module Parameters module name gt module kind agent name module address module port plugin name gt user password parameters lt description gt module group min max post process interval warning min warning max critical min critical max history data warning str critical str enable unknown events Description A module kind plugin will be created in an agent with the module name module kind name of the agent where it will be created the module address the associated port and the corresponding plugin name Optionally it will be possible to give it a description the module group min and max values a post process value an interval in seconds values warning min and max critical values min and max and a history data value The values by default are 0 for min and max history data and post process and 300 for the interval Notes The next parameters are only for the Pandora version 5 and next versions AP PANDORAFMS Pandora FMS CLI e lt enable_unknown_events gt Example perl pandora_manage pl etc pandora pandora_server conf create_module My module generic data agent 192 168 12 123 8080 myplugin myuser mypass p
281. obile for each server In first place you should create an sms user in the machine where you want to install it in the SMS sending gateway After this create the directories home sms y home sms incoming If you want to use the SMS sending gateway from another machines you will need to make accessible the directory home sms incoming for other servers through any file sending system or file systems partition NFS SMB SSH scp TCP or Tentacle The SMS sending gateway mechanism is very easy for each file that is at the directory home sms incoming an SMS will be processed deleted and sent with the file content This file should have an specific format which is detailed here Phonenumber SMSText 16 5 1 SMS Gateway Implementation You should create four scripts SMS Script that sends the SMS using Gnokii through an USB data cable This script is only in the system where the sending gateway is the system that has the data cable connected to a GSM mobile SMS GATEWAY Script that process in a periodical way the entry directory home sms incoming processing files that are waiting to be send This script is only in the system that is used as sending gateway SMS GATEWAY LAUNCHER launcherScript for the SMS GATEWAY script start and stop daemon This script is only in the system that does the sending gateway COPY SMS copies an SMS using the scpcommand from a client system to a gateway system Uses the TELEPHONE as first para
282. odology in detail 3595 Luego iremos la herramienta de operaciones masivas ese modulo los otros 2999 agentes Pandora deberia empezar a procesar esos modulos Mediremos con las mismas m tricas que el caso anterior y veremos como evoluciona El objetivo es dejar un sistema operable para el numero de modulos de tipo ICMP requerido sin que ninguno de ellos llegue a estado unknown 20 3 3 Servidor de SNMP Enterprise Aqui hablaremos especificamente del servidor de red SNMP Enterprise En caso de realizar las pruebas para el servidor de red open vea el punto correspondiente al servidor de red gen rico Suponemos que ya tiene el servidor funcionando y configurado Pasaremos a explicar algunos parametros clave para su funcionamiento block_size X Define el numero de peticiones SNMP que har el sistema por cada ejecuci n Hay que tener en cuenta que el servidor los agrupa por IP de destino de forma que ese bloque es orientativo Conviene que no sea muy grande 30 40 maximo Cuando un elemento del bloque falla un contador interno hace que lo reintente el servidor enterprise y si tras X intentos no funciona se lo pasar al servidor open snmp_threads X Evidentemente cuantos mas hilos tenga m s chequeos podr ejecutar Si suma todos los hilos que ejecuta Pandora no deber an llegar a 30 40 No deber a usar m s de 10 hilos aqu aunque depende mucho del tipo de hardware
283. odule will be created EN Group Applications MODULES Agent search Search Q Agent car 001 NL 4 car 001 002 _ SS SSS car_004 ALERTS 005 car 006 car 007 008 car 009 car 010 AGENTS 4 Back Create Module amp After selecting the agent we should click in Create module Now we should select the type of module that we will create Monitor Web Check AP PANDORAFMS Assistant Wizard 4 admin 9 PANDORAFMS Create module Agent car_003 4 EN Module type Monitor Web check MODULES Module group All 4 ALERTS Module Select 8 AGENTS Create A Monitor Creation Monitor creation is done using the module templates components These components are classified by groups The nature of the module local or remote will be transparent for the user and in the selection combos the components of both types will be mixed If we select the component the description of it will be shown AP PANDORAFMS Assistant Wizard A admin 9 AR PANDORAFMS Monitoring Create module Agent car_003 4 E Module type Monitor Web check MODULES Module group Network Management 4 ALERTS Module Check SSH Server Li AGENTS MODULE DESCRIPTION Checks port 22 is opened Create A To configure the monitor we click on Create The configuration of one monitor will be done in 4 steps General Configuration The monitor more general data nam
284. of Pandora The XML content are modules of Pandora FMS which have the network statistics for this IP An example of XML file could be like this agent data interval 300 os name Network os vesion 4 0 2 version N A timestamp AUTO laddress 192 168 70 1 agent_name IP_192 168 70 1 gt lt module gt AP PANDORAFMS Data generated lt name gt Port_67 lt name gt lt type gt async_data lt type gt lt description gt Total bytes of port 67 lt description gt lt interval gt 300 lt interval gt lt data gt 1312 lt data gt lt module gt lt module gt lt name gt Port_67_Protocol_UDP lt name gt lt type gt async_data lt type gt lt description gt Total bytes of port 67 for protocol UDP lt description gt lt interval gt 300 lt interval gt lt data gt 1312 lt data gt lt module gt lt module gt lt name gt IP_192 168 70 141 lt name gt lt type gt async_data lt type gt lt description gt Total bytes of IP 192 168 70 141 lt description gt lt interval gt 300 lt interval gt lt data gt 1312 lt data gt lt module gt lt module gt lt name gt IP_192 168 70 141 Port_67 lt name gt lt type gt async_data lt type gt lt description gt Total bytes of IP 192 168 70 141 for port 67 lt description gt lt interval gt 300 lt interval gt lt data gt 1312 lt data gt lt module gt lt module gt lt name gt Protocol_UDP lt name gt lt type gt async_data lt type gt lt desc
285. of connections in the connection pool the config ini file of the cluster have to define also API nodes at least for each connection ndb cluster connection pool 3 Forces sending of buffers to NDB immediately without waiting for other threads Defaults to ON ndb force send 1 Forces NDB to use a count of records during SELECT COUNT query planning to speed up this type of query The default value is ON For faster queries overall disable this feature by setting the value of ndb_use_exact_count to OFF ndb use exact count 0 This variable can be used to enable recording in the MySQL error log of information specific to the NDB storage engine It is normally of interest only when debugging NDB storage engine code The default value is 0 which means that the only NDB specific A PANDORAFMS Appendix Examples of Configuration Files information written to the MySQL error log relates to transaction handling If the value is greater than 0 but less than 10 NDB table schema and connection events are also logged as well as whether or not conflict resolution is in use and other NDB errors and information If the value is set to 10 or more information about NDB internals such as the progress of data distribution among cluster nodes is also written to the MySQL error log dk dk dk dk dk ndb extra logging 00 Determines the probability of gaps in an autoincremented column Set it to 1 to mi
286. ohn Doe Number of alerts match from to OS Create Action OK the new alert is ready We should see something like this Q d um Q gt Mail tf Jhn Doe Always H E Add action 22 2 5 Step 5 Creating a basic report Finally once we have completed the previous steps it is time to create a report which will contain a basic temperature graphic with the average and maximum values Let s go to the menu Administration gt Reports gt Create report Reporting Y Name CPD Temp Group All Description This is a sample report for showing the temperature in our CRE using temp sensers Click on the key button so we can add new elements to the report Choose a Simple graph element type 278 AP PANDORAFMS Installation and configuration P Reporting CPD Temp E EIE Type Simple graph Description Period 1 days 86400 seconds Agent Sensor_CPD 2 Module Temple v Create item y Following the same procedure create other two elements with types AVG Average value and MAX Maximum value respectively Once created in order to view it we need to click in the report view button first to the left Another choice is to go to the menu Operation gt Report and click on the report we ve just created The report should look like this once it has enough data after some hours days 279 AP PANDORAFMS Installation and configuration bB This i a report for showi
287. om its version 0 7 16 In Debian distributions it s possible to use the command apt get install freeipmi tools AP PANDORAFMS IPMI plugin for Pandora FMS 23 1 2 2 Register of the IPMI plugin The first step is to register the plugin If you have any doubt you can check the section Monitoring with plugins The parameters of the plugin registration are the following ones Name IPMI Plugin Plug in infipmic home admin ipmi plugin pl Plug in type Standard 0 timeout address option Port option User option Password option Description Update amp The values that you should enter in the different fields are these Name IPMI Plugin Plug in Command home admin ipmi plugin pl Path where is the ipmi plugin pl file Plug in type Standard Max timeout 300 IP address option h e Port option vacio User option u Password option p Description This plugin gets information from IPMI devices It s very important to use IPMI Plugin for plugin name because the correct behavior of recon task depends on it AP PANDORAFMS IPMI plugin for Pandora FMS C 23 1 2 3 Registration of the Recon Script The second step to finish the installation is to register the Recon Script You can see the complete process of registration at section Recon Server The registered plugin will be like this Name IPMI Discovery Script fullpath home admi
288. ompulsory other lt serialized parameters compulsory They are the agent configuration and data serial in the following order agent gt lt ip gt e id parent id group cascade protection e interval sec e jd os e jd server custom id e eaming mode e disabled description Examples http 127 0 0 1 pandora console include api php op setg op2 update agent amp other agente 1 1 1 1 0 4 0 30 8 10 0 0 1 20descripcion amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 3 Set delete agent Delete a agent that passed the name as parameter Call syntax op set compulsory op2 delete agent compulsory e id nombre agente compulsory should be an agent name AP PANDORAFMS API Calls A Examples http 127 0 0 1 pandora_console include api php op set amp op2 delete agent amp id agente erroneo amp apipass 1234 amp user admin amp pass pandora 28 3 2 4 set create module template Create a alert from a template pass as id parameter in the module pass as id into other and agent pass as id into the other Call syntax op set compulsory op2 create module template compulsory e id id template compulsory should be a template id e other id module id agent Examples http 127 0 0 1 pandora console include api php
289. onfiguration and also create new users 4 admin 9 PANDORAFMS User management 0 nag Total items 2 admin Name Pandora 1 seconds 4 Pandora Administrator Al Admin Pandora Phone 555 555 5555 E mail admin example com Mano Name Mario 5 days Pandora Administrator Network Phone 7 qn E mail Create user gt 109 A PANDORAFMS Data Management Create an User To add an user click on Create user Next the following form is shown AD PANDORAFMS by LEE Advanced User management 9 non User ID Mano Full display name Mario Language Espa ol y Password Password confirmation Global Profile Administrator Standard User E mail Phone number Comments Interactive charts Yes Metaconsole access 0 Advanced Y Not Login Enable agents managment Enable node access Create A The more remarkable parameters are these User ID identifier that the user will use to authenticate in the application Full Display Name Field to write the complete name Password Field to put the password Password confirmation Field to confirm the password Global Profile you should choose between Administrator and Standard User The Administrator will have absolute permissions on application over the groups where it is defined The standar user will have permissions defined in the profile that they have assigned E mail Field to write the user mail address
290. only could see in the Wizard the alerts that correspond to the alert templates with Basic level and the modules created from Basic level components 5 3 1 2 Advanced Access Users of Advanced access level will see in the Wizard the alerts and modules from both Basic and Advanced levels 5 3 2 Configuration Besides the visibility the access level affects also to the configuration of modules and their alerts In the section Operation Monitoring Wizard we will explain in detail the difference between the configuration of a Basic and an Advanced monitor AP PANDORAFMS Wizard Access Control 6 INSTALLATION AND CONFIGURATION A PANDORAFMS Installation and Configuration In this section will be included all the aspects needed in order to install and configure a Metaconsole and their Instances 6 1 Installation The installations of the Instances and the Metaconsole requires to be hosted in servers that are communicated in both ways In order to do these we should verify that The Metaconsole can contact with the Instances The Instances can contact with the Metaconsole E The Instances don t need to be communicated between them at any moment To understand better this requirement you can take a look to Metaconsole architecture The timezone setting should see the same The more synchronized would be the Instances and Metaconsole would be more exact will be the visualized data For example If an Instance has 5
291. ons Call the boss warning_instructions Call NASA unknown_instructions I want a pizza and maybe beer A few things to have in mind Do not forget any field all fields MUST be defined if you don t have data let it blank like the plugin_pass field in the example above nn Use double quotes to define values who contains special chars or spaces like the field plugin parameter in the above example INI files who contains characters like and others MUST have double quotes Try to avoid use of character in data if you must use it escape with V combination If you have doubts on the purpose or meaning of this fields take a look on tnetwork component in your Pandora FMS database it has almost the same fields When you create a network component is stored in that database try to create a network component who use your plugin and analyze the record entry in that table to understand all the values id module should be 4 always this means this is a plugin module type defines what kind of module is generic data 1 generic proc 2 generic data string 3 or generic data inc 4 as defined in ttipo modulo id group is the PK primary key of the tgrupo table who contain group definitions Group AP PANDORAFMS Structure of plugin_definition ini iin 1 is all groups and acts like an special group e id module group comes from table tmodule group just an association of mo
292. onsole include api php op set amp op2 create network module from component amp id garfio amp id2 0S Total process amp apipass 1234 amp user admin amp pass pandora 28 3 2 53 set module data Add module value Call syntax op set mandatory op2 module_data mandatory e id lt id agente m dulo mandatory other module data and timestamp serialized dato data which must belong to any Pandora data type tiempo could be a specified timestamp of the string now Example http 127 0 0 1 pandora console include api php op set amp op2 module data amp id 14 amp other mode url encode separator amp other 123 now amp apipass 1234 amp user admin amp pass pandora 28 3 2 54 set add module in conf gt 5 0 Only Enterprise Add the configuration into a local module Call syntax op set mandatory e op2 add module in conf mandatory id agente mandatory AP PHNDORAFMS API Calls Nu id2 lt nombre m dulo mandatory other The module data that will be placed in the conf file encoded in base64 mandatory mandatory Examples http 127 0 0 1 pandora_console include api php op set amp op2 add_module_in_conf amp user admin amp pass pandora amp id 9043 amp id2 example_ name amp other bW9kdWx1X2J1721uCm1vZHVsZV9uYW11IGV4YW1IwbGVfbmFtZQptb2R1bGVfdH1wZSBnZW51cm1jX2RhdGE Kbw9kdWx1X2V4ZWMgZWNobyAxOwptb2R1bGVfZW5k Will be returned 0 when success 1 w
293. op set amp op2 create module template amp id 1 amp other 1 10 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 5 set create_network_module Create a network module from the data pass as parameters Call syntax op set compulsory op2 create network module compulsory e id agent name gt compulsory should be an agent name e other serialized parameters compulsory are the module configuration and data serialized in the following order name module e disabled e id module type id module group min warning max warning min critical max critical ff threshold e history data lt ip_target gt e tcp port snmp community e snmp oid e module interval e post process AP PHNDORAFMS API Calls Nu e min e max custom id description e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 create network module amp id pepito amp other prueba 0 7 1 10 15 0 16 18 0 15 0 127 0 0 1 0 0 180 0 0 0 O latency 220ping amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 6 set create_plugin_module Create a module plugin with the data passed as parameters Call sintax op set compulsory op2 create plugin module compul
294. oper size both in terms of number of records BatchSize and in terms of bytes BatchByteSize The actual batch size is limited by both parameters The speed at which queries are performed can vary by more than 40 depending upon how this parameter is set This parameter is measured in bytes and by default is equal to 32 BatchByteSize 32k BatchSize 1 992 64 This parameter is measured in number of records BatchSize 512 MaxScanBatchSize 32k 16M 256k The batch size is the size of each batch sent from each data node Most scans are performed in parallel to protect the MySQL Server from receiving too much data from many nodes in parallel this parameter sets a limit to the total batch size over all nodes dk dk dk dk dk MaxScanBatchSize 8MB SQL node options mysqld id 11 Hostname or IP address hostname 10 1 1 215 mysqld id 12 Hostname or IP address hostname 10 1 1 216 Extra SQL nodes also used for backup amp checks mysqld id 13 mysqld id 14 mysqld id 15 mysqld id 16 mysqld id 17 mysqld id 18 THHHHBHHHHHHHBHHHHER TCP PARAMETERS THHHHBHHHHHHHHHH HER tcp default Increasing the sizes of these 2 buffers beyond the default values helps prevent bottlenecks due to slow disk I O SendBufferMemory 3M ReceiveBufferMemory 3M 18 7 2 etc mysql my cf Configuration file of the SQL Nodes that are also the NDB nodes A PANDORAFMS
295. option Example perl pandora manage pl etc pandora pandora server conf create policy data module policy name module name generic proc module description group name 100 0 300 30 60 61 100 module beginNnmodule name modnameNnmodule end string for warning string for critical 29 1 7 7 Create policy network module gt 5 0 Parameters policy name gt module name gt module type gt module port lt description gt lt module_group gt lt min gt lt max gt lt post_process gt lt interval gt lt warning min gt warning max gt critical min critical max history data ff threshold warning str critical str Description A policy network module will be created The default values are the same of create network module option Example perl pandora manage pl etc pandora pandora server conf create policy network module policy name module name remote icmp proc 22 module description group name 0 100 300 30 60 61 100 0 string for warning string for critical 29 1 7 8 Create policy snmp module gt 5 0 Parameters policy name gt module name gt lt module type module port lt version gt lt community gt lt oid gt lt description gt module group min max lt post_process gt lt interval gt warning min warning max lt critical min lt critical max lt history_data gt 397 AP PANDORAFMS Pandora FMS CLI
296. ora url include api php Ure og pu url url apipass apipass url url amp user user url url amp pass password url url amp 0 op url url amp op2 op2 if curl new then c curl new else c curl easy init end c setopt curl OPT URL url c setopt curl OPT WRITEFUNCTION WriteMemoryCallback c perform for line in string gmatch content 4 n do line string gsub line Xn count 0 for field in string gmatch line 4 do if count 0 then print Agent field end if count 1 then print Name field end if count 2 then print IP field end if count 3 then print Description field end if count 4 then permit OS Y oo Miele end 374 AP PANDORAFMS Examples A if count 5 then print URL field end count count 1 end print end 28 4 6 Brainfuck gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt lt gt
297. ordinates 6 Use this SQL in the SLAVE mes SLAVE STOP myqsl CHANGE MASTER TO MASTER HOST 192 168 10 101 MASTER USER replica MASTER PASSWORD slayer72 MASTER LOG FILE mysql bin 000003 MASTER LOG P0S 234234 SLAVE START 7 Everything should be ok so you can now restart your VIP processes to asssign the VIP to the official master Castor and let Pollux again the slave role AP PANDORAFMS Switchover There is another way to implement failover which supposes MASTER SLAVE role is O not fixed but that means this relative role should be implemented in the VIP model Y using UCARP that means to change the priority in vhid Another way to solve this problem is to use Heartbeat VIP mechanism See our docs about DRBD 19 6 Setting up the load balancing mechanism We are using UCARP which uses CARP protocol http en wikipedia org wiki Common Address Redundancy Protoco More information http ucarp org Get the package and install it Setup is very easy you need to have a ucarp process running on each mysql server 19 6 1 Castor Master ucarp interface ethi srcip 192 168 10 101 vhid 1 pass pandora addr 192 168 10 100 upscript etc vip up sh downscript etc vip down sh amp 19 6 2 Pollux Slave interface ethi srcip 192 168 10 102 vhid 2 pass pandora addr 192 168 10 100 upscript etc vip up sh downscript etc vip dow
298. ormed by scanning all partitions in parallel Each partition scan uses a scan record in the node where the partition is located the number of records being the value of this parameter times the number of nodes The cluster should be able to sustain MaxNoOfConcurrentScans scans concurrently from all nodes in the cluster MaxNoOfConcurrentScans 400 A PANDORAFMS Appendix Examples of Configuration Files iii MaxNoOfLocalScans 32 4G Specifies the number of local scan records if many scans are not fully parallelized If the number of local scan records is not provided it is calculated as the product of MaxNoOfConcurrentScans and the number of data nodes in the system The minimum value is 32 MaxNoOfLocalScans antes 32 MaxNoOfLocalScans 6400 BatchSizePerLocalScan 1 992 64 This parameter is used to calculate the number of lock records used to handle concurrent scan operations The default value is 64 this value has a strong connection to the ScanBatchSize defined in the SQL nodes BatchSizePerLocalScan 512 LongMessageBuffer 512k 4G 4M This is an internal buffer used for passing messages within individual nodes and between nodes Although it is highly unlikely that this would need to be changed it is configurable In MySQL Cluster NDB 6 4 3 and earlier the default is 1MB beginning with MySQL Cluster NDB 7 0 4 it is 4MB LongMessageBuffer antes 32M Lo
299. orum The following sections contain the description of the functions in the API for extensions 33 4 1 extensions_add_operation_menu_option extensions add operation menu option string name gt lt father ID menu gt lt relative path Icon gt this function adds the link to the extension with the given name in the Operations menu The third parameter is optional and is the relative path to the icon image 18x18 pixels to apear next to the link if this parameter is not defined an icon of a plug will be used 33 4 2 extensions_add_godmode_menu_option extensions add godmode menu option lt Name Extension gt lt ACL level gt lt father ID menu gt lt relative path Icon gt this function adds the link to the extension with the given name in the Godmode menu if the user has the required ACL level as indicated by the second parameter The forth parameter is optional and is the relative path to the icon image 18x18 pixels to apear next to the link if this parameter is not defined an icon of a plug E will be used 33 4 3 extensions_add_main_function extensions add main function lt name of main function gt sets the callback function that will be called when the user clicks on the link to the extension in the operation menu 33 4 4 extensions_add_godmode_function extensions add godmode function lt name of godmode function gt add the function of extension for to call one ti
300. ory e id local component name compulsory should be a local component name other lt serialized parameters compulsory are the configuration and data of the local component serialized in the following order description id os e ocal component group configuration data This is the configuration block of the module e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php opzset amp op2 new local component amp id example local component name amp other local 20component 20created 20by 20Api 5 12 module begin Odmodule name 20example_local_component_name Odmodule_type 20generic_data Odmodule_exec 20ps 20 20grep 20pid 20 20wc 20 1 0dmodule_ interval 202 0dmodule_end amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pan dora 28 3 2 24 set create_alert_template Create a template of alert 350 AP PHNDORAFMS API Calls A Call sintax op set compulsory op2 create alert template compulsory e id lt template name gt compulsory will be the template name other lt serialized parameters compulsory the template configuration and data serialized in the following order type regex max_min max min equal not_equal warning critical onchange unknown always gt description e jd alert action lt field1 gt lt field2 gt lt field3 gt v
301. os Events view workspace User s workspace 33 4 8 2 Administration gagente Manage monitoring gmassive Massive operations gmodules Manage modules galertas Manage alerts e gusuarios Manage users godgismaps Manage GIS gserver Manage servers e glog System logs gsetup SetupConfiguraci n gdbman DB Maintenance Administration Enterprise These elements are only available with Enterprise version e gpolicies Manage policies 33 5 Example 417 AP PHNDORAFMS Example m E A 1 servers cow Enter keywords to search COMBINE TABLE OF AGENT GROUP AND MODULE GROUP Thes table show in columns the modules group and for roms agents group The show modules The colours memng Grey when the for tus model group and agent group hasn t modules DM own for this model group anc agent has OK state modules 5 ct group ans agent has at least one madute in critical state ans the rest in any state RESI Yetow when the for thn model group and agent has at least one in warreng state and the rest in green state The extension show a table where the colummns are Modules groups and the rows the Agent groups And each cell have a colour with the next meanings Green when all modules of Group are OK Yellow when at least one monitor in warning Red At least one monitor fails And this e
302. other lt serialized_parameters gt mandatory event s configuration data as follows e event text mandatory id group mandatory e id agent mandatory lt status gt e id user e lt type e severity e id agent module id alert am e critical instructions warning instructions e unknown instructions lt comment gt user comment source tags custom data Custom data should be a base 64 encoded JSON document Examples http 127 0 0 1 pandora trunk include api php op set amp op2 create event amp otherzNewEvent 0 189 apiuser system 1 VMware eyJBbnN3ZXIgdG8gdGhlIFVsdGltYXRlIFFi1ZXNOaW9uIG9mIExpZmUsIHROZSBVbml2ZXJzZSwgYW5kIEV2 ZXJ5dGhpbmciOiAOMnO amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 58 set create_netflow_filter gt 5 0 Create a new filter of netflow Call syntax op set mandatory e op2 create netflow filter mandatory e other lt serialized parameters mandatory filter data in this order e filter name mandatory group id mandatory AP PANDORAFMS API Calls e lt filter gt mandatory e aggregate by Possible values dstip dstport none proto srcip srcport mandatory e output format Possible values kilobytes kilobytespersecond megabytes megabytespersecond mandatory Examples http 127 0 0 1 pandora i
303. ou have installed hearbeat packages and the drbd utils which includes a heartbeat resource file in etc ha d resource d drbddisk First you need to enable forwarding In DEBIAN systems edit etc sysctl conf and modify following line net ipv4 ip_forward 1 AP PANDORAFMS Setup Hearbeat 0 224424242222 SUSE systems just use YAST and set forwarding active the interface for heartbeat in this documentation is eth1 Setup the ip address etc hosts in both hosts 192 168 10 101 castor 192 168 10 102 pollux 17 5 2 Main Heartbeat file etc ha d ha cf Edit etc ha d ha cf file as follows in both nodes Sample file for etc ha d ha cf Artica ST 2010 debugfile var log ha debug logfile var log ha log logfacility localo keepalive 2 deadtime 30 warntime 10 initdead 120 udpport 694 beast eth1 auto_failback on auto_failback on Make the cluster go back to master when master onde gets up auto_failback off Let the master node to secondary when it gets up after a failure ping 192 168 10 1 Gateway de nuestra red que debe responder al ping apiauth ipfail gid haclient uid hacluster o los que corresponda node castor node pollux 17 5 3 HA resources file Edit etc ha d haresources in both hosts castor drbddisk Filesystem dev drbd1 drbd_mysql ext3 mysql 192 168 10 100 This defines the default master node In that lines you defin
304. ou selected the agent you can click on Delete to remove it or in Edit to edit it Edition screen is similar to the creation screen with the same three steps General configuration Edit here the general information about the agent Modules Edit the agent modules Previsualization Just a preview to be sure everything it s ok O Unlike management modules in an agent s edition will also see the modules that have been created with the Wizard Agent administration workflow PANDORAFMS Assistant Wizard Module creation Alerts configuration Module created General data Select web check mode D Aerts Select KN Manage wert b Di Delete Agent creation Modes cor guraton 8 2 Differences Depending on Access Level The modules and alerts have configuration differences depending on the access level based on how was created in the Wizard and templates and the user s access level that you set Setting agents have fewer restrictions but also depends on the level of access 8 2 1 Monitors Configuration of a monitor will change depending of the access level on the component used basic or advanced When the access level is Advanced you will have some additional fields The name in the basic level it takes the name of the component advaned you redefine it Units Macros when are local modules or remote
305. ovided Defines how many modules are defined below You should define at least one for use as example as minimum execution_command If used put this before the script Could be a interpreter like for example ava jar So plugin will be called from Pandora FMS Plugin Server as java jar lt plugin_path gt lt plugin filename gt execution_postcommand If used defines aditional parameters passed to the plugin after the AP PANDORAFMS Structure of plugin_definition ini y 222222222220 plugin filename invisible for the user 31 3 2 Module definition Network components This are defined as dynamic sections section with a incremental name and you may have many as you want and you need to define here the same number of modules as defined in total modules provided in prev section If you have 4 modules section names should be module1 module2 module3 and module4 This is an example of a module definition module1 name Load Average 1 description Get load average from command uptime id_group 12 type 1 max 0 min 0 module_interval 300 id_module_group 4 id_modulo 4 plugin_user root plugin_pass plugin_parameter uptime awk print 10 tr d max_timeout 20 history_data 1 min_warning 2 min_critical 5 str_warning peligro min_critical alerta min_ff_event 0 tcp_port 0 critical_inverse 0 warning_inverse 0 critical_instructi
306. p op2 event validate filter amp other mode url encode separator amp other 2 amp apipass 1234 amp user admin amp pass pandora 28 3 2 41 set event validate filter pro It is the similar to previous call Call syntax op set compulsory e op2 event validate filter pro compulsory other mode url encode separator optional other lt serialized parameters optional are the following in this order e separator lt criticity gt From 0 to 4 lt id agent gt e id module gt e lt id agent module alert e user numeric interval minimum level in unix timestamp numeric interval maximum level in unix timestamp Examples http 127 0 0 1 pandora console include api php op set amp op2 event validate filter pro amp other mode url encode separator amp other 2 amp apipass 1234 amp user admin amp pass pandora 28 3 2 42 set new_alert_template Apply a new alert from a template and module pass as id agent and name of module Call syntax AP PHNDORAFMS API Calls Nur op set ob op2 new alert template compulsory e id agent name gt compulsory id2 alert template name gt compulsory other mode url encode separator optional e other lt serialized parameter optional are the following in this order module name compulsory Examples http 127 0 0 1 pandora console include api php op set amp op2 new alert template
307. peration and status 136 AP PANDORAFMS Data Management tenso Pandos xg Pandora fidos Eg Pando x Ez Pandora 5 192 168 70 60 Indexc x Pandor x tubun x fg Find os y Contacto Fisio Get animation Perfil de Usuario Bokzuy Timeline freenode Group save on delicious 3 index php EAT UNTIL DIE mibs_byoidtree v A PRNDORAFMS Q 5 e y admin O Advanced Policies queue 2E y Queue filter Policy All M All burbuja Basic Local Monitoring burbuja Basic R Mote Checks burbuja Basic Windows Local Monitoring petalo Basic Linux Local Monitoring MS petalo Basic Remote Checks Agents petalo Basic Windows Local Monitoring Operation All Status Complete Y Filter Q Total items 2 petalo Basic Windows Local Monitoring All 10 minutes 50 Apply 1 seconds 0 minutes 54 burbuja Basic Remote Checks All Apply 9 4 7 Categories In this section we can manage the categories Later we will use this in module components A admin 0 AP PANDORAFMS Categories configuration list Create category gt Total items 3 Category Category Category hu 9 4 7 1 Create categories Click on button Create category 137 AP PANDORAFMS Data Management AD PRNDORAFMS 5 e Categories configuration Editor
308. plugin modules In the basic level it will be crated with the default values 8 2 2 WEB Checks When setting up a webcheck user with advanced user level can choose between the step by step configuration or use the detailed low level mode AP PANDORAFMS Differences Depending on Access Level MEE Users with basic level only can use the step by step configuration mode WEB monitoring wizard step by step configuration uses a guided tour to setup up the different options without showing the underlaying syntax Advanced mode editor allow user to write the full sintax WEB monitoring module which is more powerful and flexible but also more complex 8 2 3 Alerts In the alerts the access level Basic or advanced in the associated template only affects to it s visibility Alerts at basic level can be seen by anybody which access to the wizard and the advanced level only by the users which have advanced level access Is the component level which defines the level of the alerts in that module A module can be associated with any of the alerts visible for the user If it is a Basic component or a WEB Check styep by step the alerts will be created with a default action assigned and cannot be changed If it is an Advanced component or a complex advanced WEB Check the default action can be changed 8 2 4 Agents Agent management will give access to all agents accessible to the user depending on it s ACL conf
309. pulsory other par metros serializados gt optional serialized parameters to filter the agent search filter so e filter group e filter module states filter name e filter policy e lt csv_separator gt Examples This example will return all agents which id os is equal to 1 id group equal to 2 state equal to warning their agents will contain 7 and the policy associated equal to 2 http 127 0 0 1 pandora console include api php amp 0 2 11 agents amp return amp 1 2 2 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 1 3 get module last value Returns the last value of module This module is filtered by the ID of module pass as parameter id With the other parameter you can add a error code that your application knows and it is out range of module values Call syntax 319 AP PANDORAFMS API Calls A op get compulsory e op2 module last value compulsory id lt index gt compulsory should be an index of an agent module e other error return optional that you want to it gives back if there is an error usually not located in the database Error return code are error message returns an error in a text message e error value cseparator code or value amp gt gives back this code or error value But it is necessary to enclose it with other_mo
310. r ds 335 28 3 2 12 dui SNMP t RERO 342 20 3213 is A aaa A 343 25 34 17 set add data mod le Pole iii 345 28 9 2 180 set add SNMP mod le Pa ene rr ree eer uo uoto 346 2112 Se add agent 347 28 3 2 23 set n w local A 350 28 32 24 SE Create alert template 350 26 32 25 Set Mpdate alert Template cite e Hae 352 28 2 7 20 ur delete alert template in aa ll ual 353 28 3 2 27 set delete module 353 AB O ii 353 20 32 Oo SOU EW SOM a peat 354 delete E 355 28 3 2 32 set enable disable WSO nin ir e rr 355 2E LOS ETNIA A A A A AA AA 357 EME MOE EE li haga hades dti t RA 358 25 3235 set Validate all alerts ut dud 358 28 3 2 39 sel validate all policy alerts uaa ciuis tau sale a ai be M iata tds 358 28 3 2 40 set event validate 2 2 1 riiiiir siii i ii iiiii piii 358 28 3 81 get event validate filter DEO ui ouai Eois ee aos babct ae oso saeua 359 28 3 2 A Set new alert tear ii 359 28 3 2 43 set alert ACTIONS NPR 360
311. r information extended The events from this list are strictly of monitoring so the system events are omitted Below the table there is one button to get access to the full event visor 7 1 3 Group View The group view is a table with the groups of each Instance and the following information about each one Name of the server of the instance to which it belongs to Status of this group the worst status from their agents Group name Agent total number Number of agents at Unknown status Number of modules in Normal status Number of modules in Warning status Number of modules in Critical status Number of alerts fired w admin OO PANDORAFMS Group view Total tems 4 o Servers petalo e Applications c am a e AP PANDORAFMS Monitoring 7 1 4 Monitor View The monitor view is a table with information about the Instance monitors The modules that are shown are restricted by the ACLs permissions and by the permissions by Tags that the user would have It could be filtered by Group Module status Module group Module name Tags Free search AC PANDORAFMS D 5 e cm a Menitering Monitor view Group All Monitor status All M Module group All Module name All y Tags No tags Search Show 0 Total items 200 9 11213 415161718 91 Contador 1 ge consumo 1 hours 10 minutes
312. r of factors A value greater than 100 is interpreted as a number of bytes StringMemory 25 A PANDORAFMS Appendix Examples of Configuration Files iin Transaction Parameters MaxNoOfConcurrentTransactions 32 4G 4096 Sets the number of parallel transactions possible in a node This parameter must be set to the same value for all cluster data nodes This is due to the fact that when a data node fails the oldest surviving node re creates the transaction state of all transactions that were ongoing in the failed node M Changing the value of MaxNoOfConcurrentTransactions requires a complete shutdown and restart of the cluster MaxNoOfConcurrentTransactions antes 4096 axNoOfConcurrentTransactions 8192 MaxNoOfConcurrentOperations 32 4G 32k Sets the number of records that can be in update phase or locked simultaneously MaxNoOfConcurrentOperations 10000000 MaxNoOfLocalOperations 32 4G Recomentded to set 110 of MaxNoOfConcurrentOperations MaxNoOfLocalOperations 11000000 Transaction Temporary Storage MaxNoOfConcurrentIndexOperations 0 4G 8k For queries using a unique hash index another temporary set of operation records is used during a query s execution phase This parameter sets the size of that pool of records Thus this record is allocated only while executing a part of a query As soon as this part has been executed the record is r
313. r state nodeid 6 freed m_reserved_nodes 0000000000000022 2009 05 26 13 46 44 MgmSrvr INFO Mgmt server state nodeid 6 reserved for ip 10 1 1 220 m_reserved_nodes 0000000000000062 2009 05 26 13 46 44 MgmSrvr INFO Node 6 mysqld server id 0 2009 05 26 13 46 44 MgmSrvr INFO Node 2 Node 6 Connected 2009 05 26 13 46 45 MgmSrvr INFO Node 3 Node 6 Connected 2009 05 26 13 46 45 MgmSrvr INFO Node 3 Node 6 API version 5 0 51 2009 05 26 13 46 45 MgmSrvr INFO Node 2 Node 6 API version 5 0 51 The useful information is identified with the words WARNING ERROR y CRITICAL 18 5 2 Logs of the Nodes Each node of the cluster has its own logs that are divided in two sub logs all logs are at the directory var lib mysql cluster 18 5 2 1 ndb_X_out log The first and most general log is ndb X out log being X the node id This log has the cluster 221 A PANDORAFMS Cluster Logs general information and it is like this 2009 09 29 13 15 51 ndbd INFO Angel pid 30514 ndb pid 30515 NDBMT MaxNoOfExecutionThreads 8 NDBMT workers 4 threads 4 2009 09 29 13 15 51 ndbd INFO NDB Cluster DB node 3 2009 09 29 13 15 51 ndbd INFO mysql 5 1 34 ndb 7 0 6 2009 09 29 13 15 51 ndbd INFO WatchDog timer is set to 40000 ms 2009 09 29 13 15 51 ndbd INFO Ndbd mem manager init 1 min 4266Mb initial 4286Mb Adding 4286Mb to ZONE LO 1 137151 NDBMT num threads 7 thr
314. ra url pandora5 apipass 1234 user admin password pandora op op2 all_agents return_type csv other other_mode url http ip pandora_url include api php uri e url apipass apipass url amp user user url amp pass password url amp op op url amp 2 op2 agents open url do content content each do line agent tokens line split agent id_agent tokens 0 agent name tokens 1 agent ip tokens 2 agent description tokens 3 agent os_name tokens 4 agent url address tokens 5 agents push agent end end agents each do agent print Agent agent id_agent n print Name agent name n print IP agent ip n print Description agent description n print 0S agent os_name n print URL agent url_address n print n 373 AP PANDORAFMS Examples nm end 28 4 5 Lua require curl local content function WriteMemoryCallback s content content s return string len s end ip 192 168 70 110 pandora url pandora5 apipass 1234 user admin password pandora op op2 all_agents return_type csv other other mode url http ip pand
315. rationTimeout 10 4G 1000 This parameter specifies how long data nodes wait for a response from the arbitrator to an arbitration message If this is exceeded the network is assumed to have split ArbitrationTimeout 10 Buffering and Logging UndoIndexBuffer 1M 4G 2M The UNDO index buffer is used during local checkpoints The NDB storage engine uses a recovery scheme based on checkpoint consistency in conjunction with an operational REDO log To produce a consistent checkpoint without blocking the entire system for writes UNDO logging is done while performing the local checkpoint dk dk dk dk dt od This buffer is 2MB by default The minimum value is 1MB which is sufficient for most applications For applications doing extremely large or numerous inserts and deletes together with large transactions and large primary keys it may be necessary to increase the size of this buffer If this buffer is too small the NDB storage engine issues internal error code 677 Index UNDO buffers overloaded IMPORTANT It is not safe to decrease the value of this parameter during a rolling restart ndoIndexBuffer 2M UndoDataBuffer 1M 4G 16M This parameter sets the size of the UNDO data buffer which performs a function similar to that of the UNDO index buffer except the UNDO data buffer is used with regard to data memory rather than index memory If this buffer is too small and gets congested the NDB storage engine issue
316. re the following in this order network module kind gt compulsory action name gt compulsory e lt ip o url gt compulsory e port gt optional description gt optional min gt optional max gt optional post process gt optional module interval gt optional min warning gt optional max warning gt optional min critical gt optional max critical gt optional lt history data gt optional lt enable_unknown_events gt only in version 5 Examples http 127 0 0 1 pandora_console include api php op setgop2 new_modulegid miquel ortatil amp id2 juanito amp other mode url encode separator amp other remote tcp strin localhost 33 descripcion 20larga amp apipass 1234 amp user admin amp pass pandora 28 3 2 45 set delete_module Delete a module Call syntax op set compulsory op2 delete_module compulsory e id lt agent name gt compulsory id2 lt module name gt compulsory other simulate optional Examples http 127 0 0 1 pandora console include api php op zset amp op2 delete module amp id miguel portatil amp id2 juanito amp other simulate amp apipass 1234 amp user admin amp pass pandora http 127 0 0 1 pandora console include api php op zset amp op2 delete modulegid miquel portatil amp id2 juanito amp apipass 1234 amp user admin amp pass pandora 361 AP PAND
317. rees Let s edit the module click on the key inside the edition view or the agent data view 276 AP PANDORAFMS Installation and configuration We need to modify the ranges so the module gets into critical status over 38 C Critical status Min 38 Max 0 00 Now we will have to define an alert action to send an email to a specific email address Let s go to the menu Administration gt Manage alerts gt Actions to create a new one We are going to define an generic alert action to send an email so we can use it with any moudule entering into a CRITICAL status gt Alerts Configure alert action Name Mail to John Doe Group All gt Command eMail Create Command Field 1 john doe artica es e Field 2 PANDORA ARTICA Alert from _agent_ _module_ Hola Esto es un mensaje autom tico de alerta de Pandora EMS Parece que hay un problema Agente agent Field 3 Modulo module Datos data After creating the action we only have to define an alert in the agent which contains the sensor module To achieve this we need to edit the agent by going to the alerts sections Create a new alert starting from the default template alert Critical condition 277 AP PANDORAFMS Installation and configuration Agent configuration Sensor_CPD Alert control filter No alerts defined Module Temp c v Latest value 34 00 Template Critical condition QAP create Template Actions Mail to J
318. ription gt Total bytes of Protocol UDP lt description gt lt interval gt 300 lt interval gt lt data gt 1312 lt data gt lt module gt lt agent_data gt 291 AP PANDORAFMS Data generated 25 BACKUP PROCEDURE AP PANDORAFMS Purpose DISSE 25 1 Purpose The purpose of this document is to illustrate the backup and restore procedures of Pandora FMS v4 1 appliance 25 2 Database backup First we need to backup the existing database ETE u pandora db user p pandora db name gzip gt pandoradb sql gz asy the password in console Caution If you use a history database you must perform a backup of it as well 25 3 Configuration files backup In order to backup Pandora s agents and server configuration files we type tar pcvzf pandora configuration tar gz etc pandora conf 25 4 Agent backup We also need to backup the agent folder This is very important to maintain the already deployed collections and the agent plugins tar pcvzf agent tar gz usr share pandora_agent 25 5 Server backup 25 5 1 Server plugins The default folder of the server plugins is under usr share pandora server the main Pandora s server folder Caution If you have server plugins placed in other folders you must backup them as well tar pcvzf pandora server tar gz usr share pandora server tar pcvzf my plugin folder tar gz home myuser my plugin folder
319. rl amp id2 102 if return_type 5 url amp return type return_type if other url Sother_mode other mode url amp other other curlObj 1_1 1 curl setopt curlObj CURLOPT_URL url curl setopt curlObj CURLOPT RETURNTRANSFER 1 result curl exec S curl0bj curl close curlObj agents array if empty result lines explode n result foreach lines as line fields explode line agent array S agent id agent fields 0 agent name fields 1 g agent ip fields 2 agent description fields 3 agent os name fields 4 agent url address fields 5 agents agent print_list_agents agents function print_list_agents agents echo lt table border 1 style empty cells show gt echo lt thead gt echo lt tr gt echo lt th gt ID lt th gt echo lt th gt Name lt th gt echo lt th gt IP lt th gt echo lt th gt Description lt th gt echo th OS lt th gt echo lt th gt URL lt th gt echo lt tr gt echo lt thead gt foreach agents as agent echo lt tr gt echo lt td gt agent id agent lt td gt echo lt td gt agent name lt td gt echo lt td gt agent ip lt td gt echo l
320. rom source please contact us by email ramon novoa artica es or the SourceForge project web 27 4 3 Cross compiling from Linux To cross compile the Pandora FMS Windows Agent from Linux follow this steps 27 4 3 1 Installing MinGW for Linux For Ubuntu Debian sudo aptitude install mingw32 For SUSE or RPM compatible environments with Zypper of manually from this URL http download opensuse org repositories CrossToolchain mingw openSUSE_11 1 27 4 3 2 Installing the extra libraries needed by the agent win32api odbc curl openssl zlib Boost C libraries http sourceforge net projects boost files For example to install Openssl package Go to http sourceforge net projects devpaks files and download the file openssl 0 9 8e 1cm DevPak AP PANDORAFMS Compiling Windows agent from source ee eee Uncompress the file openssl 0 9 8e 1cm DevPak tar jxvf openssl 0 9 8e 1cm DevPak Copy the libraries and include files to your crossed compiled environment with MinGW lib a usr i586 mingw32msvc lib cp r include usr i586 mingw32msvc include There is a faster alternative but you need to solve problems with dependencies libraries yourself We have made a tarball with all needed libraries and included files available on official Pandora FMS project download site This is called mingw pandorawin32 libraries 9Oct2009 tar gz 27 4 3 3 Compil
321. ros incorrectos gt 106 LINES 179 A PANDORAFMS SNMP Traps Generation Script iin return fi if LINES kK LINES then Log binario truncamos con dd LOGSIZ du k LOG awk print 1 MAXSIZ LINES kK Eliminamos caracter k final typeset i SKIP Nm de bloques de 1K a obviar Ver comando dd abajo if LOGSIZ gt MAXSIZ then echo n LOG Truncando a MAXSIZ Kbytes SKIP LOGSIZ MAXSIZ dd if LOG of TMP1 bs 1040 skip SKIP if eq then Vaciado de LOG gt LOG if 0 then echo PRG Error vaciando fichero LOG return else cat TMP1 gt gt LOG if 921 011 then echo Error rellenando LOG return fi echo gt 1 else echo Error comando dd if LOG of TMP1 bs 1024 skip SKIP fi fi else Log ASCII truncamos con tail NUMLIN wc 1 LOG if NUMLIN gt LINES then echo n LOG Truncando a LINES lineas NUMLIN LINES 1 tail NUMLIN LOG gt TMP1 if eq 9 then Vaciado de LOG gt LOG if 0 then echo PRG Error vaciando fichero LOG return else cat TMP1 gt gt LOG if 0 then echo Error rellenando LOG return fi echo OK gt 1 else echo Error en comando tail NUMLIN LOG gt 1 fi fi fi rm f TMP1 truncate_log 180
322. roup name other lt serialized_parameters gt compulsory Are the following in this order lt icon name gt e parent group id optional description optional Examples Example 1 with parent group Servers http 127 0 0 1 pandora console include api php opzset amp op2 create group amp id example group name amp other applications 2 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora Example 2 without parent group http 127 0 0 1 pandora console include api php opzset amp op2 create group amp id example group name2 amp other computer amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 34 Set add user profile Add a profile into user Call syntax op set compulsory op2 add user profile compulsory e id user name compulsory should be an user name other lt serialized parameters compulsory are the group configuration and data and the profile serialized in the following order group e profile 356 AP PANDORAFMS API Calls A Examples http 127 0 0 1 pandora_console include api php op set op2 add_ user profile amp id md amp other 12 4 amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 35 set delete_user_profile Deattach a profile of user Call syntax op set compulsory op2 delete user prof
323. rs if it has assigned L3 several Tags 7 1 1 2 Levels Groups This is the first level of the Group Tree Displaying the branch of one Group it shows the agents contained in the Group The recount that is next to the group name refers to the number of Agents contained in it that are in each status O Only the not disabled agents that have at least one module not disabled and which is not 5 in status Not initiated status will be shown Tags This is the first level of the tag Tree If you display the branch of one Tag it will show the agents that have at least one module associate to the Tag The recount that is next to the name of the Tags refers to the number of Agents contained in it that are in each status E Only the tags that are associated to some module are shown Agents If you display the branch of one Agent the modules that are contained in the agent will be shown The recount that is next to the name of the Agent refers to the number of Modules contained in it that are in each status Clicking on the agent name it will show information about it on the right Name IP date of last update operative system and also an event graph and other of accesses Modules The module is the last branch of the tree A PANDORAFMS Monitoring O Next to the name of each module in this branch will be shown several buttons Module Graph One pop up will be opened with the module graph Information In
324. rs with non init status for a given set of groups e groups monitor ok group array Returns the number of monitors with normal status for a given set of groups groups monitor critical group array Returns the number of monitors with critical status for a given set of groups A PANDORAFMS Basic functions for agent module and group status groups monitor warning group array Returns the number of monitors with warning status for a given set of groups groups monitor_unknown group_array Returns the number of monitors with unknown status for a given set of groups groups monitor_alerts group_array Returns the number of monitors with alerts for a given set of groups groups monitor fired alerts group array Returns the number of monitors with alerts fired for a given set of groups 27 2 4 Modules These functions return the statistics based on module name Doesn t use disabled agents or modules for the stats modules agents unknown module name Returns the number of agents with unknown status that have a module with the given name modules_agents_ok module_name Returns the number of agents with normal status that have a module with the given name modules agents critical module name Returns the number of agents with critical status that have a module with the given name modules agents warning module name Returns the number of agents with warning status that have a module w
325. rver burbuja Group filter All Agents aaa burbuja Contador 1 Contador 2 Contador 3 Contador 4 Contador 5 Contador 7 Contador 8 Contador 9 Data Management 4 admin 9 Move Y Then you select the origin server and the agents that you want to copy being possible to filter by group to make the search easier Next select the destination server to which all the created agent will be copied O By security reasons what is done is to copy the agent an deactivate it in the origin y instance 9 4 2 2 Group Management We can manage the groups defined in the Metaconsole 117 A PANDORAFMS Data Management fe PANDORAFMS 9 5 e y Advanced Group management Create group gt All 0 6 Enabled Applications Databases 8 Enabled Firewalls 4 Enabled m Network 9 Enabled Servers 2 5 Enabled Unknown 10 6 Enabled Web 13 O Enabled Workstations 1 Ol Enabled Create group gt After creating or updating one group it should be synchronized with the Instances for a correct work Adding one Group To add one group click on Create Group The following form will be shown 118 A PANDORAFMS Data Management fe PANDORAFMS D 5 e y Advanced Group management BE Name New group Icon dock png 0 Parent Applications Y td Alerts Y Propagate ACL w Custom 10 Description Description of the new group example example com Contact Other
326. s and eMail 1 r _field2_ as subject for message _field3_ as text of message Internal Audit 2 This alert save alert in Pandora internal audit system Fields are static and only _feld1_ is used FMS 3 This alert create an special event into Pandora FMS event manager Pandora FMS 4 This is a default alert to write alerts in standard ASCII plaintext log file in var log pandora pandora alert log Alertlog SNMP Trap 5 Send a SNMPTRAP to 192 168 044 Please review config and adapt to your needs this is only a sample not functional itself Syslog 6 Uses field1 and field to generate Syslog alert in facility daemon with alert level Sound Alert 7 Jabber Alert 8 Send jabber alert to chat room in a predefined server configure first sendxmppre file Uses field3 as text message fieldi as useralias for source message and field2 for chatroom name MS 9 Send SMS using the Pandora FMS standard SMS device using smstools Uses field as text message field as destination phone include international prefix aaa e el El Validate Event 10 This alert validate the events matched with a module given the agent name _field1_ and module name _field2_ 11 This command is used to send commands to the Pandora FMS agents with the UDP server enabled The UDP server is used to order agents Windows and 8 eee UNIX to refresh the agent execution that means to force the agent to execute and send data Create gt We can manage th
327. s 8 MaxNoOfExecutionThreads 8 Options for data node A id 3 hostname 10 1 1 215 Hostname or IP address Options for data node B id 4 hostname 10 1 1 216 Hostname or IP address THHHHBHHHHHBNHEHHHHHBHHHHHBHHHBHHHHBHHBHHBHBSHHE SQL NODES also known as API NODES THHHHBHHHHHHHHHHHBHHHHHHHBHHHHBHBHHEHHBHUE Common SQL Nodes Parameters mysqld default This parameter is used to define which nodes can act as arbitrators Only management nodes and SQL nodes can be arbitrators ArbitrationRank can take one of the following values 0 The node will never be used as an arbitrator 1 The node has high priority that is it will be preferred as an arbitrator over low priority nodes 2 Indicates a low priority node which be used as an arbitrator only if a node with a higher priority is not available for that purpose dk dk dk dk dk dk dk Normally the management server should be configured as an arbitrator by setting its ArbitrationRank to 1 the default for management nodes and those for all SQL nodes to the default for SQL nodes ArbitrationRank 2 BatchByteSize 1024 1M 32k 237 A PANDORAFMS Appendix Examples of Configuration Files iin ik For queries that are translated into full table scans or range scans on indexes it is important for best performance to fetch records in properly sized batches It is possible to set the pr
328. s an arbitrator only if a node with a higher priority is not available for that purpose A Normally the management server should be configured as an arbitrator by setting its ArbitrationRank to 1 the default for management nodes and those for all SQL nodes to 0 the default for SQL nodes rbitrationRank 1 Directory for management node log files datadir var lib mysql cluster Using 2 management servers helps guarantee that there is always an arbitrator in the event of network partitioning and so is recommended for high availability Each management server must be 227 A PANDORAFMS Appendix Examples of Configuration Files iin identified by a HostName You may for the sake of convenience specify a node ID for any management server although one will be allocated for it automatically if you do so it must be in the range 1 255 inclusive and must be unique among all IDs specified for cluster nodes ndb_mgmd id 1 Hostname or IP address of management node hostname 10 1 1 230 ndb_mgmd id 2 Hostname or IP address of management node hostname 10 1 1 220 THHHHEHHHHHHRHHHHBRN S STORAGE NODES HHH HH AHH More info at http dev mysql com doc refman 5 1 en mysql cluster ndbd definition html Options affecting ndbd processes on all data nodes ndbd default Redundancy number of replicas Using 2 replicas is recommended to guarant
329. s and modules are in unknown status The script execution time is controlled externaly iface Interface name which is listening for network traffic size Its possible to filter records based on a minimum size disabled with value 0 log path Full path of IPTraf logfile rules There are two kind of rules 1 discard Discard rules are executed first and discard the records that match these rules 2 process Process rules are executed in second place and filter the remaining records which will be included in the tree 24 4 Filtering rules To understand filtering rules first we must understand IPTraf logfile structure 24 4 1 IPTraf logfile structure And example of a log line is Mon Nov 22 15 41 59 2010 TCP eth0 52 bytes from 192 168 50 2 54879 to 91 121 0 208 80 first packet After the date and hour record there is the protocol the interface name the number of bytes transfered the source ip and port and the destination ip and port After will appear some information in this case indicates this communication is the first package Important data in this line are the interface name the number of bytes transfered the source IP and port and the destination IP and port 24 4 2 Collector filtering rules The rules have the following structure process discard ip_src ip_dst ip mask port_src port_dst port protocol protocol The first parameter could be process if you
330. s could be edited clicking on the filter name AP PHNDORAFMS Events B admin O AP PANDORAFMS Manage events Filters E d Y o All events All event Critical events Monitor Critical All event Critical events 24h Monitor Critical All event Delete ff Create filter A In order to create a new filter click on the button create filters There it will show a page where the filter values are configured Filter name Critical events 24h Filter group All Group Event type Monitor Critical v Severity all Event status All event Free search Agent search All Block size for pagination Default Max hours old 24 User ack Any Repeated All events Events with following tags configuration 7 Add O None a Remove Events without following tags configuration M Add O None Remove Alert events All M Update The fields through the filter is done are these AP PANDORAFMS Events Group Combo where you can select the Pandora group Event Type Combo where you can select the event type There are the following types Alert Ceased Alert fired Alert Manual Validation Alert Recovered Error Monitor Down Monitor up Recon host Detected System Unknown Severity Combo where you can select by the event severity The following options are available Critical Informational Maintenance Normal Warning Even
331. s internal error code 891 Data UNDO buffers overloaded IMPORTANT It is not safe to decrease the value of this parameter during a rolling restart Xk dk db dk dk dt db db CC dk dk db db db db dk dk dt UndoDataBuffer 16M RedoBuffer 1M 4G 32M All update activities also need to be logged The REDO log makes it possible to replay these updates whenever the system is restarted The NDB recovery algorithm uses a afuzzya together with the UNDO log and then applies the REDO log to play back all changes up to the restoration point If this buffer is too small the NDB storage engine issues error code 1221 REDO log buffers overloaded IMPORTANT It is not safe to decrease the value of this parameter during a rolling restart RedoBuf fer 32M Logging In managing the cluster it is very important to be able to control the number of log messages sent for various event types to stdout For each event category there are 16 possible event levels numbered through 15 Setting event reporting for a given event category to level 15 means all event reports in that category are sent to stdout setting it to 0 means that there will be no event reports made in that category More info at http dev mysql com doc refman 5 1 en mysql cluster log events html LogLevelStartup 0 15 1 The reporting level for events generated during startup of the process LogLevelStartup 15 LogLevelShutdown 0 15 0 dk dk dk
332. s put the 251 defined in the NNM for Pandora In the field field2 is the criticity level that has been defined MAJOR when sending the trap is a name that is added to the 251 to make the oid The field field3 is the alarm description 182 AP PANDORAFMS Use of the Alert on a Module ALERT ASSOCIATION FORM Alert type SNMP Trap Alert status Enabled i Min Value 2 1 00 Max Value 9 1 00 Alert text Description Serial 0 0 0 0 primaria caida Field 1 Alias name 251 Field 2 Single Line _timestamp_ Agente _agent_ Serial 0 0 0 0 primaria caida Field 3 Full Text Time from 00 00 Time to 00 00 Time threshold 2 30 minutes Y Other Min number of alerts 6 Max number of alerts 1 i Assigned module Serial 0 0 0 0 1801 15 5 Visualizing Data in NNM And this is the final view of the Network Node Manager Console getting events from Pandora FMS 15 35 pandora 03 25 s Agur we wA C 1 1 CONUM oca 15 40 33 pandora A Agwnta Lacencia latencia 47 72 15 41 32 pandora DIR UI ZO 42 11 Agwnta Lacencia oe latencia 45 56 15 44 77 pandora 03 5 Ageme Saslctes 3109 15 43 51 pandora LAR US 3 agate 5stzal UILIV seca caida 15 59 4 pundoca eXe US 25 agente 2 wave de CPU 100 3 15 59 pundo
333. s running with PID PANDORA_PID rc_status iral 17 force reload restart 0 stop 0 start 17 gt echo Usage server start stop restart status exit 1 esac rc_exit A PANDORAFMS Appendix Examples of Configuration Files 19 MySQL Binary REPLICATION MODEL FOR HA 247 AP PANDORAFMS Introduction Pl Is QUU VV 19 1 Introduction This setup is proposed to have a full HA enviroment in Pandora FMS based on an active passive model Standard MySQL not MySQL cluster allow to have a single MASTER allowing INSERT UPDATE operations and several SLAVES allowing only read operations This is used in several enviroments to have a distributed database model in Pandora all operations read write are done against the same DB server so this model cannot be used anyway replication is used also to have a copy of your primary database so in a failure event you can raise the slave to be the master database and use it We use UCARP application to provide the Virtual IP VIP mechanism to have a realtime H A In the simplest model with two UCARP daemons running if the master fails the secondary will take the VIP and proceed with normal operation An slave will resume the MySQL operations on the Pandora FMS Server Console and user will not notice anything After the failover you will need to restore manually because it s a very delicated process the master system and transfer all data from
334. s the 2596 It has been determined that the alert rate per module is 1 3 that is 1 3 alerts per module event tis considered in this case it s an estimation based on our experience that an alert has 196 probabilities of being fired These conclusions are the basis to prepare the estimation and are codified in the Excel spreadsheet used to do the study Probabilidad cambio 25 Probabilidad Disparo Alerta Intervalo medio sec M dulos por agente Alertas Modulo Total Alertas With these start up data and applying the necessary calculations we can estimate size in DDBB n of modules per second that are necessary to process and other essential parameters 20 000 26 000 360 000 10 800 000 144 000 1 000 40 000 33 33 52 000 720 000 2 060 21 600 000 288 000 2 000 80 000 66 67 104 000 1 440 000 4 120 43 200 000 576 000 2 3 000 120 000 100 156 000 2 160 000 6 180 64 800 000 864 000 4 000 160 000 133 33 208 000 2 880 000 8 240 86400000 1 152 000 5 000 200 000 166 67 260 000 3 600 000 10 300 108000000 1 440 000 129 600 000 1 728 000 216 000 000 2 880 000 312 000 4 320 000 520 000 7 200 000 240 000 400 000 20 2 2 Capacity Study Once we ve known the basic requirements for the implementation in each phase modules second AP PANDORAFMS Example of Capacity Study 2 295 rate n of total alerts modules per day and MB month we re going to do real stress
335. same as in the local components it s possible to use macros that will be replaced in this case in their parameters These macros will be shown as normal fields in the plugin type Network Component definition This way they won t be differenced by an user with other one more field of the Component 129 AP PANDORAFMS Data Management TT network performance 4 Plug in UDP port check Y Post process 0 0 Target IP Port Modify Delete Plugins In the plugin list some options are available to modify one plugin and delete it g g g gt v 9 4 4 Alerts In the Metaconsole alerts could be created Alerts same as in a Pandora FMS normal Instance are composed by Commands Actions and Templates In this section there will be an introduction for each one of the sections where they are managed To know more about their performance and configuration you can see the Pandora FMS manual section Alerts System After creating or updating one alert you should synchronize it with the Instances for a correct performance 9 4 4 1 Commands Commands are the alerts lowest level It could be the execution of one script or any other type of reaction to the alert firing 130 AP PANDORAFMS Data Management Ae PANDORAFMS Q v 0 Advanced Commands 1 This alert send an email using internal Pandora FMS Server SMTP capabilities defined in each server using fieldi as destination email addres
336. sistant Wizard METACONSOLE 1 2 1 2 We create from the metaconsole module to monitor the harddisk in each agent COMPONENTS 4 IN CPU HOST_LATENCY HOST ALIVE Now from the wizard we can see the module and edit the created module METACONSOLE 1 DISK_SPACE AGENT_A2 DISK_SPACE AGENT B1 DISK SPACE AGENT B2 DISK SPACE And from each Pandora FMS instance we can see the modules and edit them A PANDORAFMS Assistant Wizard Pi eee SII INSTANCE A INSTANCE AGENTE CPU PORT 80 SSH PORT 21 FREE MEM PORT 22 DISK SPACE DISK SPACE AGENT A2 AGENT B2 CPU CPU SSH HOST LATENCY HOST ALIVE HOST ALIVE DISK SPACE DISK SPACE From the instances is indistinguishable if a module has been created from the metaconsole or not different case happen in the metaconsole three view where you can see all modules where you will see all modules that have access regardless of the actions of the Wizard Y We can also view and delete but not edit the modules created from the Instance when you edit an agent from the wizard 8 1 1 Access There are two ways to access the wizard Direct access to the Wizard from the main page of the metaconsole A admin 9 APPO EI Monitoring Reporting Screens Network traffic Topology Advanced
337. slave to the master again 19 2 Comparison versus other MySQL HA models There are many ways to implement MySQL HA we have explored three MySQL Cluster Very complex and with a performance penalty is the unique way to have a real active active cluster enviroment Described in depth in our documentation MySQL Binary Replica ucarp Simple at fist fast and very standard but with several scripts and complexity to get back the master in the system This documentation DRBD heartbeat Simple fast and based on system block devices Also described in our documentation It s the official way to implement HA in Pandora FMS In our opinion the best way to implement the HA is to have the simplest possible setup because when something fails any extra complexity will led to confusion and data loss if procedures are not extremely well tested and written Most times operators only follow procedures and cannot react to things outside the procedures and HA could be very difficult to have exact procedures in most cases 19 3 Initial enviroment This is a brief overview our test scenario 192 168 10 101 castor gt Master 192 168 10 102 pollux gt Slave 192 168 10 100 virtual ip 192 168 10 1 pandora gt mysql app 19 3 1 Setting up the Mysql Server 19 3 1 1 Master node Castor Edit my cnf file debian systems AP PANDORAFMS Initial enviroment eee mysqld bind address 0 0 0 0 log bin var log my
338. sn t requires lot of queries and so it will not overload the server The agent plugins allow to obtain several modules at the same time and for this reason they are much more flexible than the server plugins They are perfects for plugins that need several queries to get an information piece so they allow more flexibility to the programmer so it s possible to return several modules at the same time 30 3 Recon Tasks To do recon tasks on plugins that need it we have two possibilities The first one consists on using the the Pandora server Recon server To do this it will be necessary to create the ad hoc code for the specific technology or situation The Recon Tasks loads the Pandora server so if for doing the recon task are necessary lot of data requests this option should t be consider It is also possible to create a recon task using an agent plugin Usually the agent plugins returns modules that are attached to the XML that the agent sends to the Pandora server But consider that when installing the agent in a machine with it Tentacle is also installed and this allow to send XML to the Pandora server To do a recon task from an agent plugin it is possible to use this and besides adding the modules to the agent as a common plugin does to give our plugin the capacity to send XMLs to Pandora with the information of other agents updated as a recon task would do The idea is that the plugin besides creating the average modules collects
339. sory id agent name compulsory should be an agent name other serialized parameters compulsory are the module configuration and data serialized in the following order name module e disabled id module type id module group min warning max warning str warning min critical e max critical e str critical ff threshold e history data lt ip_target gt tcp port snmp community e snmp oid e module interval e post process min value max value custom id description e id plugin plugin user AP PHNDORAFMS API Calls Nu plugin pass e plugin gt e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 create plugin module amp id pepito amp other prueba 0 1 2 0 0 0 0 0 O0 127 0 0 1 0 0 300 0 0 0 0 plugin 20module 20from 20api 2 admin pass p 9 20max amp other_mode url_ encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 7 set create data module Create a module from parameters passed With this call you can add database module data but you cannot modify configuration file of the agents associated to the module Call sintax op set compulsory e op2 create data module compulsory e id agent name gt compulsory shoul
340. specified it is calculated as the product of MaxNoOfConcurrentScans by the number of data nodes BatchSizePerLocalScan Shows the number of bloqued registers that are used to deal with concurrent scanning operations LongMessagesBuffer This parameter determines the size of a temporary internal storage for the information exchange between nodes NoOfFragmentLogFiles This parameter shows how many redo log blocks will be generated and together with FragmentLogFileSize allows to determine the total size of the redo log FragmentLogFileSize Size of the redo log extracts makes a redo log and it is the size with wich is reserved the space of redo log A bigger size of the 16M of FragmentLogSize allows a bigger performance when there is much writting In this case it is very recommended to increase the value of this parameter InitFragmentLogFiles this parameter can have two values SPARSE or FULL SPARSE this is the default value The log fragments are created in a separated way FULL forces to that all the bytes of the log fragments are written in disk MaxNoOfOpenfiles This parameter limits the number of threads for the file opening Any situation that requires to change this parameter could be reported as a bug 212 AP PANDORAFMS Installation and Configuration mm InitialNoOfOpenFiles Initial number of threads for the file opening MaxNoOfSavedMessages Maximum number of trace files that are kept before to start overwriting
341. sql mysql bin log server id 1 innodb flush log at trx commit 1 sync binlog 1 binlog do db pandora binlog ignore db mysql 19 3 1 2 Slave node Pollux Edit my cnf file mysqld bind address 0 0 0 0 server id 2 innodb_flush_log_at_trx_commit 1 sync_binlog 1 19 3 1 3 Creating a User for Replication Each slave must connect to the master using a MySQL user name and password so there must be a user account on the master that the slave can use to connect Any account can be used for this operation providing it has been granted the REPLICATION SLAVE privilege CREATE USER replica 192 168 10 102 IDENTIFIED BY slayer72 mysql GRANT REPLICATION SLAVE ON TO replica 192 168 10 102 mysql FLUSH PRIVILEGES 19 3 1 4 Install your pandora DB Create a new one from installation sql files or dump your current one in the master node Castor Login in the master server create database pandora mysql gt use pandora mysql gt source tmp pandoradb sql source tmp pandoradb_data sql 19 3 1 5 Setting Up Replication with Existing Data Now we want to replicate the initial state of the loaded database in the MASTER node castor This is the start point to replicate all information to the slave and assumes you have your database FROZEN in the time you make the photo after doing the photo a coordinates are given and writen in the SQL dump if master
342. ssary one string that is configured in the Instance The autoidentification password This configuration is not necessary to configure the Instance in the Metaconsole but without it if you click on one of the links that take us to the Instance we should have to authenticate 6 2 1 3 Event Replication In order that in the Metaconsole could be seen the Instance events these should have access to the Metaconsole database The Instances will replicate from time to time their events saving the date and hour of the last replicated to continue from there the next time Besides the event replication they will do effective the Metaconsole autovalidation This is for the events that are associated to one module when they will replicate the event to the Metaconsole they will validate all the previous events that are assigned to the same module To configure the event replication in the Instance Enterprise Configuration section be should activate the Event Replication This will be configured Intervale Every how many seconds the server will replicate the events generated from the last replication to the Metaconsole database 3 If is configured for example 60 seconds the first replication will happen 60 seconds 5 after the server has been started Replication Mode If all events will be replicated or only the ones that are validated AP PANDORAFMS Configuration Show list of events in the local console only reading
343. sy so we have our own components adapted to the technologies that we generally use and we only have to apply these components to the new agents There are two kinds of components Network components that groups all the remote type modules wmi tcp snmp icmp plugin web etc and local components that are the definition of the modules that are defined in the software agents configuration defined as text pieces that could be cut and pasted in the agent configuration From the component management section the following actions can be done Component Groups Management Local Components Management e Network Components Management Component Groups Management In the view you can see the list of component groups already created 120 AP PANDORAFMS Data Management 4 admin 9 APRA Component groups v HAS EU EA General group Citrix Antivirus Norton Panda McAfee Bitdefender Kaspersky AVG g g g g g g s el BullGuard 9 4 3 1 1 1 Create Component Group To create a Component Group you only need to click on Create It will show the following form A admin 9 PANDORAFMS Component groups v Norton Parent Antivirus Update 0 Once it is filled in click on Create 9 4 3 1 1 2 Modify Delete Component Group In the category list are available some options to modify a category and delete it 121 AP PANDORAFMS Data
344. t 5 0 Parameters lt agent_name gt Description Get the module list id and name of a given agent Example perl pandora_manage pl etc pandora pandora_server conf get_agent_modules Agent name 29 1 1 10 Get_agents gt 5 0 AP PANDORAFMS Pandora FMS CLI Parameters lt group name os name gt lt status gt lt max_modules gt lt filter_substring gt policy name gt Description Get list of agents with optative filter parameters Possible values for the parameter lt status gt critical warning unknown normal Example perl pandora_manage pl etc pandora pandora_server conf get_agents Network Linux critical Policy name 29 1 1 11 Delete_conf_file gt 5 0 Parameters lt agent_name gt Description The conf file of one agent will be deleted Example perl pandora_manage pl etc pandora pandora_server conf delete_conf_file Agent name 29 1 1 12 Clean_conf_file gt 5 0 Parameters lt agent_name gt Description The conf file of one or all agents without parameters will be cleaned All modules policies file collections and comments will be deleted Example perl pandora_manage pl etc pandora pandora_server conf clean_conf_file Agent name 29 1 1 13 Get bad conf files gt 5 0 Parameters No Description A list of the bad configurated conf files will be showed Files without main tokens server ip server pa
345. t following the previous criteria 20 3 1 4 Evaluating the Purging Transfer of Data Supposing the data storage policy was Deleting of events from more than 72 hours Moving data to history from more than 7 days We should leave the system working only during at least 10 days to evaluate the long term performance We could see a peak 7 days later due to the moving of data to the history ddbb This degradation is IMPORTANT to consider If you can t have so many time available it is possible to replicate with less realism changing the purging interval to 2 days in events and 2 days to move data to history to evaluate this impact AP PANDORAFMS Methodology in detail O 20 3 2 ICMP Server Enterprise Here we talk specifically of the ICMP network server In case of doing the tests for the open network server please see the corresponding section of the network server generic Supposing that you have the server already working and configured we are going to explain some key parameters for its performance block_size X It defines the number of pings that the system will do for any execution If the majority of pings are going to take the same time you can increase the number to considerably high numberm i e 50 or 70 On the contrary the module ping park is heterogeneous and they are in very different networks with different latency times it is not convenient for you to put a high number because the test wil
346. t Status Combo where you can select by the event status There are the following options Allevent Only in process Only new Only not validated Only validated Free search Field the allows a free search of one text Agent Search Combo where you can select the agent origin of the event Max hour old Combo where the hours are shown User Ack Combo where you can select between the users that have validated an event Repeated Combo where you can select between show the events that are repeated or to show all events Besides the search fields in the Event Control filter menu it shows the option Block size for pagination where you can select between the number of event that will be in each page when paginating Managing Responses In events you can configure responses or actions to do in some specific event For example to do a ping to the agent IP which generated the event to connect through SSH with this agent etc AP PANDORAFMS Events admin O APPLE CINMN Y Manage events Responses MID AE Create response gt Ping to host Ping to the agent host m SSH to host Connect via SSH to the agent 6 m Restart the agent with using UDP protocol To use thes response is necessary to have installed Pandora FMS server and Restart agent 9 console in the same machine The configuration of the responses allows to configure both a command and a URL do this you can use both internal
347. t for any critical condition of any agent with one of these five modules We leave the system operating 12 hours under those criteria and evaluate the impact following the previous criteria 20 3 1 2 Evaluating the Purging Transfer of Data Supposing the data storage policy was Deleting of events from more than 72 hours Moving data to history from more than 7 days We should leave the system working only during at least 10 days to evaluate the long term performance We could see a peak 7 days later due to the moving of data to the history ddbb This degradation is IMPORTANT to consider If you can t have so many time available it is possible to replicate with less realism changing the purging interval to 2 days in events and 2 days to move data to history to evaluate this impact 20 3 1 3 Evaluation of the Alert Impact If all was right now we should evaluate the impact of the alert execution performance We apply one alert to five specific modules of each agent from type generic data for the CRITICAL condition Something not really important like creating an event or writting to syslog to not consider the impact that something with hight latency could have like for example sending an email We can optionally create one event correlation alert to generate one alert for any critical condition of any agent with one of these five modules We leave the system operating 12 hours under those criteria and evaluate the impac
348. t localhost etc init d mysqld start Starting mysqld OK root localhost etc init d pandora_server stop Stopping Pandora FMS Server root localhost etc init d pandora_agent_daemon stop Stopping Pandora Agent Then we restore the database root localhost gunzip pandora sql gz root localhost cat pandora sql mysql u root p pandora AP PANDORAFMS Database restore VI Enter password lt enter the password console gt Caution If you use a history database you must perform a restore of it as well 26 3 Configuration files restore First we restore the agents and server configuration files root localhost tar zxvf pandora configuration tar gz C 26 4 Agent restore Now we perform the restore of the agent directory root localhost tar zxvf agent tar gz C 26 5 Server restore 26 5 1 Server plugins We restore the pandora server main folder and every other plugin folder that you may have tar zxvf pandora_server tar gz C bci andi tar zxvf my plugin folder tar gz C 26 5 2 Remote configuration A restore of the remote configuration files and collections must be performed in order to maintain the remote agent s normal behavior EET tar zxvf collections tar gz C root localhost tar zxvf md5 tar gz C root localhost tar zxvf remote_agents_conf tar gz C 26
349. t td gt agent description lt td gt 370 AP PANDORAFMS Examples A UE echo lt td gt agent os name lt td gt echo lt td gt agent url_address lt td gt echo lt tr gt echo lt table gt 28 4 2 Python import pycurl import cStringIO import pprint def main ip 192 168 70 110 pandora url pandora5 apipass 1234 user admin password pandora op2 all_agents return_type csv other other_mode url http ip pandora url include api php url 2 url apipass apipass url amp user user url amp pass password url amp op op url amp op2 op2 buf cStringl0 Stringl0 pycurl Curl c setopt c URL url c setopt c WRITEFUNCTION buf write c perform output buf getvalue buf close lines output split Nn agents for line in lines if not line continue fields line split agent agent id_agent fields 0 agent name fields 1 agent ip fields 2 agent description fields 3 agent os_name fields 4 agent url address fields 5 agents append agent 371 AP PANDORAFMS Examples for agent in agents print Agent agent id_agent print Name agent name 1 print IP agent ip print Description ag
350. tallation of Pandora FMS Since the normal installation of Pandora from packages usually need Internet connection to solve dependencies etc we can consider this last improvement as a big advantage The basic credentials to access the machine when you have set up your application are the following ones SSH Access root defined in the initial installation MySQL access root pandora Pandora FMS Web Console admin pandora 12 1 Minimum Requirements The installation CD has been conceived to preinstall Pandora FMS in medium sized environments However if it is parameterized you can adjust it so it will preinstall Pandora FMS in any kind of environment Nonetheless the following things are required to instal the system 1024 2GB recommended Disk 2GB 8GB recommended 2 4Ghz CPU Dual Core recommended 12 2 Recording image to disk Linux Use a disc burning application brasero k3b wodim brasero k3b wodim Windows Use a disc burning application nero freeisoburner Mac Use the System Disk tool to burn the ISO You will get a bootable CD with the installation system Pandora FMS You can also burn the ISO to a USB stick to boot the system from there Check in your BIOS if your system does not boot using the CD as a source n 12 3 Installation This screen will show up when starting If you do not press any key th
351. talo network serves going UP 1 minutes 40 seconds 11 o 2174 petalo petalo pluginserver going UP 1 minutes 40 seconds 2173 petalo petalo reconserver going UP 1 minutes 40 seconds o 4175 patalo webserver going UP 1 minutes 40 seconds m o 165 EN gt 2166 168 167 9 4152 petalo Module Level is going ta WARNING 92 00 car_004 6 minutes 56 seconds o UNIT Event History It is possible to activate the event history With this feature the oldest events from some time configurable that does not have been validated will be go automatically to a secondary view The event history view This view is like the normal event view and you can have access to it from a tab in the event view admin O O Fenn Events History fin gt Event control filter Total tems 29 K 011 gt DA O mo lt lt gt 479 hubuja burbuja dataserver going UP 1 days o 3 burbuja burbuja invertoryrerver going UP 1 days e q o seo burbuja burbuja network server going UP 1 days omo 152 burbuja burbuja pluginserver going UP 1 days ome ser burbuja burbuja recemserver going UP 1 days o aa burbuja webserver going UP 1 days o A p PA E HQ AP PANDORAFMS Events The activation and configuration of the event history is shown in the section Metconsole administration in this manual Event Filter The event views have available a ra
352. tart the Software Agent from the command line For example etc init d pandora_agent_daemon restart 32 2 3 Check the plugin permissions The plugin and the files which are going to be used for it must have the correct read write and execute permissions In Unix this should be enough chmod 755 lt plugin_path gt 32 2 4 Validate the output An easy way to find the errors is run the plugin manually in the command line Sit down and check the output carefully for example popeye etc pandora plugins pandora_df lt module gt lt name gt lt CDATA dev sda2 gt lt name gt lt type gt lt CDATA generic_data gt lt type gt lt data gt lt CDATA 19 gt lt data gt lt description gt of usage in this volume lt description gt lt module gt lt module gt lt name gt lt CDATA udev gt lt name gt lt type gt lt CDATA generic_data gt lt type gt lt data gt lt CDATA 1 gt lt data gt lt description gt of usage in this volume lt description gt lt module gt 32 2 5 Validate the resulting XML The XML that prints the plugin must have valid XML syntax The XML also needs to be well formed To check if it is you could follow this steps from the command line 1 Create an XML document with the plugin output Plugin pl gt Plugin xml 2 Check the XML document xmllint Plugin xml 32 2 6 Debug mode You can activate the debu
353. tate mysql Secondary Primary AP PANDORAFMS DRDB setup O pollux drbdadm dstate mysql UpToDate UpToDate 17 4 6 Setting up the mysql in the DRDB disk We suppose you have all the information about mysql in following directories may differ depending on Linux distro etc mysql my cnf var lib mysql First stop the mysql in the primary and secondary nodes In the primary node Move all data to mounted partition in the primary nodes and delete all the relevant mysql information in the secondary node mv etc mysql my cnf drbd mysql mv var lib mysql drbd mysql mysql etc mysql1 debian cnf drbd_mysql Link new location to original ubication ln s drbd mysql mysql var lib mysql ln s drbd mysql my cnf etc mysql my cnf ln s etc mysql debian cnf drbd mysql debian cnf Restart mysql In the secondary node rm Rf etc mysql my cnf rm Rf var lib mysql ln s drbd mysql mysql var lib mysql ln s drbd mysql my cnf etc mysql my cnf 17 4 7 Create the Pandora FMS database We assume you have the default SQL files to create the Pandora FMS database files at tmp er u root p mysql gt create database pandora mysql gt use pandora mysql gt source tmp pandoradb sql icd source tmp pandoradb_data sql Set permissions 201 AP PANDORAFMS DRDB setup mysql gt grant all privileges on pandora to pandora 192 168 10 1 i
354. tension This file has the code to load in Pandora Console Subdirectory of extension this is optional and may contain the Icon image file a 18x18 image to show next to the name of the extension in the menu and others files as translations modules images 33 3 Extension Skeleton lt php lt Comments with license author s etc gt lt php auxiliary code as functions variables classes that your extension use gt function lt name of main function gt lt Main function Code gt Adds the link the operation menu extensions add operation menu option Name Extension gt lt father ID menu gt lt relative path Icon Adds the link in the godmode menu extensions add godmode menu option Name Extension gt ACL level gt father ID menu gt relative path Icon gt Sets the callback function to be called when the extension is selected in the operation menu extensions add main function name of main function gt Sets the callback function to be called when the extension is selected in the godmode menu extensions add godmode function name of godmode function gt 2 gt 415 A PANDORAFMS API for Extensions 33 4 API for Extensions A The API for extensions is stil under development and may change in the future You can get more information about the API in the pandora develop mailng list or in the f
355. th temporal logfile Example perl pandora manage pl etc pandora pandora server conf get bad conf files AP PANDORAFMS Pandora FMS CLI 29 1 2 Modules 29 1 2 1 Create data module Parameters module name gt module kind agent name gt lt description gt lt module_group gt lt min gt lt max gt lt post_process gt lt interval gt lt warning_min gt lt warning max gt lt critical min gt lt critical max gt lt history_data gt lt def file gt lt warning_str gt critical str lt enable_unknown_events gt Description A module kind data will be created in an agent with the module name kind of module and name of the agent where it will be created Optionally it will be possible to give a description the module group min and max values a post process value an interval in seconds min and max warning values min and max critical values a history data value and one module definition file The module definition file will contain some like this module begin module name My module module type generic data cat proc meminfo grep MemFree awk print 2 Loss The default values 0 for the minimum and maximum history_data and post_process and 300 for the interval Notes The next parameters are only for the Pandora version 5 and next versions e enable unknown_events gt Example perl pandora manage pl etc pandora pandora server conf creat
356. the information and create and send the XML simulating other agents installed if necessary The reason to create a plugin that sends data through XML and besides does recon task is to could distribute the monitoring load in different machines and not centralize it in the server 30 4 Server Plugin or Agent Plugin A server plugin should be used when The load of each execution is small for example simple queries Ifthe Recon Task requires lot of data process Ifthe Recon Task execution intervals are large for example once a week An agent plugin will be used when The information collection requires lot of process or lot of queries AP PANDORAFMS Server Plugin or Agent Plugin The associated Recon Task requires a high process load or lot of queries The Recon Task execution intervals are close to the common execution intervals for agents for example every 5 minutes AP PANDORAFMS Server Plugin or Agent Plugin 31 SERVERS PLUGIN DEVELOPMENT A PANDORAFMS Pandora Server Plugin Zipfile pspz 31 1 Pandora Server Plugin Zipfile pspz With Pandora FMS 3 0 there is a new way to register plugins and modules who uses the new Plugin like a library of modules depending on the plugin This is basically an admin extension to upload a file in pspz format who is described below System reads the file unpack and install the binaries script in the system register t
357. the launching script form the sms_gateway bin bash SMS Gateway startup script Sancho Lerena lt slerena gmail com gt Linux Version generic Configurable path and filenames SMS_GATEWAY_HOME home sms SMS_PID_DIR var run SMS_PID var run sms pid Main script if d SMS_PID_DIR then echo SMS Gateway cannot write it s PID file in SMS_PID_DIR Please create directory or assign appropiate perms exit 193 A PANDORAFMS Gateway to Send SMS using a generic hardware and Gnokii eee ira if f SMS GATEWAY HOME sms gateway then echo SMS Gateway not found please check setup and read manual exit ir case 1 in start OLD_PATH pwd if f SMS_PID then CHECK_PID cat SMS PID CHECK PID RESULT ps aux grep v grep grep CHECK PID grep sms gateway wc 1 if CHECK PID RESULT 1 then echo SMS Gateway is currently running on this machine with PID CHECK PID Aborting now exit fi ira nohup SMS GATEWAY HOME sms gateway dev null 2 dev null amp 2 dev null dev null sleep 1 MYPID ps aux grep 5 5 GATEWAY HOME sms gateway grep v grep tail 1 awk print 2 if z MYPID then echo MYPID SMS PID echo SMS Gateway is now running with PID MYPID else echo Cannot start SMS Gateway Aborted iral cd S OLD PATH 17 stop if f SMS_PID 1 then echo Stopping SMS Gateway P
358. the origin the status the priority the group and optionally the owner to it The priority will be a number according to the following correspondence 0 Informative 1 Low 2 Medium 3 Important 4 Very important 5 Maintenance the status will be a number according to the following correspondence 0 Active incident 1 Active incident with comments 2 Rejected incident 3 Expired incident 13 Closed incident Example perl pandora_manage pl etc pandora pandora_server conf create_incident Incident Incident Description Other data source 3 2 id_owner_user AP PANDORAFMS Pandora FMS CLI 127ln vII1 C8GO 29 1 7 Policies 29 1 7 1 Apply_policy Parameters lt policy_name gt Description The policy passed as parameter will be apply in a forced way as parameter The creation of the policy modules is comprehended in the policy applying process in all their associated agents and also the creation of policy alerts in the created modules and the changes made in the local agent configuration file that could have the policy to add the created modules and the collections associated to the policy Example perl pandora_manage pl etc pandora pandora_server conf apply_policy My policy 29 1 7 2 Apply_all_policies gt 5 0 Parameters None Description Add to the application queue all the policies The server is who watch the queue and apply the policies Example perl pandora
359. the process blocks by batchs that are used when we do complete scans of the tables or scans by ranks on indexes MaxScanBatchSize total limit for all the cluster of the size of process blocks by batchs that are used when we do complete scans of the tables or scans by ranks on index This parameter avoid that too many data would be sent from many nodes in parallel Total limit for all the cluster of the size of process blocks by batchs that are used when complete scans of tables are done or scans by ranks on indexes This parameter avoids that too many data will be sent from many nodes in parallel 18 2 2 6 Individual Configuration Parameters for each API or SQL node It should be a section mysqld for each API or SQL node there should be also extra sections mysqld to allow check or backup connections For it it is recommended to define these extra connections giving them a node identifier but not a hostname so any host could connect through the extra connections id node identifier It should be unique in all the configuration file Hostname host name or Ip adress of the data node O In our example documentation an architecture we have done that the API SQL nodes and the NDB data node would be phisically in the same system This has not to be like this 216 AP PANDORAFMS Starting the Cluster 18 3 Starting the Cluster 18 3 1 Starting the Manager We have configured the servers for the automatic stop launch of
360. the timeout in which case the cluster may start only if all nodes are available tartPartialTimeout 30000 StartPartitionedTimeout 0 4G 60000 If the cluster is ready to start after waiting for StartPartialTimeout milliseconds but is still possibly in a partitioned state the cluster waits until this timeout has also passed If StartPartitionedTimeout is set to 0 the cluster waits indefinitely This parameter is overridden when performing an initial start or initial restart of the cluster tartPartitionedTimeout 60000 StartFailureTimeout 0 4G 0 If a data node has not completed its startup sequence within the time specified by this parameter the node startup fails Setting this parameter to 0 the default value means that no data node timeout is applied tartFailureTimeout 1000000 HeartbeatIntervalDbDb 10 46 1500 of the primary methods of discovering failed nodes is by the use of heartbeats This parameter states how often heartbeat signals are sent and how often to expect to receive them After missing three heartbeat intervals in a row the node is declared dead Thus the maximum time for discovering a failure through the heartbeat mechanism is four times the heartbeat interval This parameter must not be changed drastically HeartbeatIntervalDbDb 2000 HeartbeatIntervalDbApi 100 4G 1500 Each data node sends heartbeat signals to each MySQL server SQL node to ensure that it remains in contact If a MySQ
361. the user from the Metaconsole an from all Instances Create user gt The edition form for an user is the same to the creation one but including the profile editor 111 AP PANDORAFMS Data Management p PANDORAFMS Advanced User management 0 nnnm User ID Mano Full display name Mario Language Espa ol Password Password confirmation Global Profile Administrator Standard User E mail Phone number Comments Interactive charts Yes Y Metaconsole access 0 Advanced Y Not Login Enable agents managment Enable node access Update PROFILESIGROUPS ASSIGNED TO THIS USER Pandora Administrator Network Any a configuration critical dm network LI None None performance In the profile editor it is possible to assign to the user profiles in specific groups and besides limit those privileges to the selected Tags It tags are not selecte the user will have access to all modules have the associated Tags or not 112 AP PANDORAFMS Data Management 9 4 1 2 Profile Management In the profiles are defined the permissions that an user can have There is a serial of ACLs flags that will give access to the different Pandora FMS functionalities It is possible to see a profile list created by default fp PANDORAFMS Q e Profile management 0 ODO ne ane fmn iwa e ove me me me ere om
362. turned by the plugin you can notice that onece the data has been collected from the following file systems an XML part is created and printe by the standard exit for any one of them This task is done in the following lines while my filesystem use each filesystems 410 A PANDORAFMS Example of Agent Plugin Development iii Remove the trailing chop use Print module output print lt module gt n print lt name gt lt CDATA filesystem gt lt name gt n print lt type gt lt CDATA generic_data gt lt type gt n print lt data gt lt CDATA use gt lt data gt n print lt description gt of usage in this volume lt description gt n print lt module gt n An example of the result that this plugin returns could be lt module gt lt name gt lt CDATA tmpfs gt lt name gt lt type gt lt CDATA generic_data gt lt type gt lt data gt lt CDATA 0 gt lt data gt lt description gt of usage in this volume lt description gt lt module gt lt module gt lt name gt lt CDATA dev mapper VolGroup 1v_home gt lt name gt lt type gt lt CDATA generic_data gt lt type gt lt data gt lt CDATA 26 gt lt data gt lt description gt of usage in this volume lt description gt lt module gt lt module gt lt name gt lt CDATA dev sda9 gt lt name gt lt type gt lt
363. tween elements AP PANDORAFMS Installation Bienvenido a CentOS Selecci n del teclado Qu modelo de teclado est instalado en el ordenador cz us quertz de de latini de latini nodeadkeys dk dk latint dvorak lt Tab gt Alt Tab gt entre clementos Espacio seleccionar In this step you can choose your system time zone welcome to CentOS In which time zone are you located System clock u Europe London Europe Luxembour Europe Malta Europe Mariehamn Tab gt lt Alt Tab gt between elements Here you must introduce the root password k iguiente AP PANDORAFMS Installation QQ elcome to CentUS Root Password Pick a root password You must type it twice to ensure you know it and do not make a typing mistake Password Password confirm lt Tab lt Alt Tab gt between elements One of the last steps is to select the type of partitioning You will have thee options use the entire disk replace the installed system or use the free disk space Partitioning Type Installation requires partitioning of your hard drive The default layout is suitable for most users Select what space to use and which drives to use as the install target Use entire drive Replace existing Linux system Use free space Which drive s do you want to use for this installation x sda 8192 CATA UBOX HARDDISK AP PANDORAFMS Installation QQ Once all the steps ha
364. twork module Update the network module Call syntax op set compulsory op2 update network module compulsory e id module name gt compulsory should be a module name e other serialized parameters compulsory are the module configuration and data serialized in the following order e id agent e disabled id module group min warning max warning str warning min critical max critical e str critical ff threshold e history data lt ip_target gt e module port snmp community e snmp oid e module interval e post process e min lt max gt custom id AP PANDORAFMS API Calls Nu description e disabled types event only in version 5 Examples http 127 0 0 1 pandora console include api php opzset amp op2 update network module amp id example module name amp other 44 0 2 10 15 16 18 7 09 127 0 0 1 0 0 300 30 00 0 0 0 latency 20ping 20modified 20by 20the 20Api amp other_mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 10 set update plugin module Update the plugin module Call sintax op set compulsory op2 update plugin module compulsory e id module name gt compulsory should be a module name e other serialized parameters compulsory are the module configuration and data serialized in the following order e
365. ules in critical status Warning yellow color 1 or more modules in warning status and none in critical status Unknown grey color 1 or more modules in unknown status and none in critical or warning status OK green color all modules in normal status Internal DB status encoding Critical 1 Warning 2 Unknown 3 Ok 0 27 2 2 Agents 27 2 2 1 Status functions These functions return the number of monitors filtered by status or alert fired by an agent For all functions the filter parameter was added to make the function more flexible The filter content is added at the end of the sql query for all functions With this filter you can add some specific sql clauses to create filters using tables tagente_estado tagente and tagente_modulo agents monitor critical id_agent filter Returns the number of critical modules for this agent agents monitor warning id_agent filter Returns the number of warning modules for this agent agents monitor unknown id_agent filter Returns the number of modules with unknown status e agents monitor ok agent filter Returns the number of modules with normal AP PANDORAFMS Basic functions for agent module and group status status agents get alerts fired id_agent filter Returns the number of alerts fired for this agent 27 2 2 2 Auxiliar functions These functions perform some typical tasks related to agents in so
366. ull It is preferable to configure cluster nodes in such a manner that the processor becomes the bottleneck rather than the disks or the network connections dk dk dk dk dk dk dk Xb dt db db db dt BackupLogBufferSize 16M BackupMemory 0 4G 32 This parameter is simply the sum of BackupDataBufferSize and BackupLogBufferSize BackupMemor y 64M BackupWriteSize 2k 4G 256k This parameter specifies the default size of messages written to disk by the backup log and backup data buffers BackupwriteSize 256K BackupMaxWriteSize 2k 4G 1M This parameter specifies the maximum size of messages written to disk by the backup log and backup data buffers BackupMaxWriteSize 1M This parameter specifies the directory in which backups are placed The backups are stored in a subdirectory called BACKUPS BackupDataDir var lib mysql cluster Realtime Performance Parameters This parameters are used in scheduling and locking of threads to specific CPUs on multiprocessor data node hosts NOTE To make use of these parameters the data node process must be run as system root Setting these parameters allows you to take advantage of real time scheduling of NDBCLUSTER threads introduced in MySQL Cluster NDB 6 3 4 to get higher throughput On systems with multiple CPUs these parameters can be used to lock NDBCLUSTER threads to specific CPUs LockExecuteThreadToCPU 0 64k When
367. uration of the nodes that obtain from the manager and keep the redo log space Normal start of the cluster data nodes In case of the restart of one of the nodes due to fall or to some kind of technical stop the nodes will be started using only ndbmtd sin el initial so this parameter does that the configuration loads from zero and it restart the node data files and the redo logs making necessary to restore data from 217 AP PANDORAFMS Starting the Cluster C a Backup ndbmtd You could use the script developed for the control of the demon of the cluster storage node etc init d cluster_node start This script could be used to start the node start and to stop it stop or to restart it restart and also to know its status status Due to the importance of the starting process of the cluster data nodes this process WILL NOT AUTOMATED This is you have to do it manually after a restart the starting process of nodes is very delicate if you have done a messy stop or if the cluster has been left in a non synchronized status then you should check the logs and the manufacturer documentation MySQL to know how solving the problem before firing the nodes The start process of a data node could be an SLOW process It could take between 10 and 20 minutes To check the status in the starting proccess use the SHOW command in the MySQL cluster manager console such as we are going to show later
368. ure and retrieve from the Instances admin 9 PANDORAFMS Advanced Consoles setup Pandora FMS Metaconsole item edition Server name burbuja Auth token hashburbuja Console URL http 192 168 70 61 pandora_conso API password LLLI DB Host 192 168 70 61 08 Name pandora DB User pandora DB Password 0000000 Console User admin Console Password 494 Update gt In the view of the configured Instances we will see that the Instances can be edited disabled and deleted Besides there are some indicators that checks some information of the configuration of each Instance These checks are done when loading this view but the can also be done individually clicking on them A admin 9 PANDORAFMS Consoles setup Last event replication http 192 168 70 61 pandora console 192 168 70 61 34 seconds 0 9 petalo htp 192 168 70 62 pandora_console 192 168 70 62 i Add gt The indicators are these Database If we haven t configured right the Instance database we won t have the necessary permission the indicator will be red and it will give us information about the problem API This indicator will do a test to the Instance API If it fails it will report information AP PANDORAFMS Configuration O about the failure to us Compatibility This indicator will do a check of some requirements that should be between the Instance and the Metaconsole The Instance server nam
369. uster related terms used in Pandora FMS documentation Data Node This kind of node stores the cluster data There are as much data nodes as replicas times the number of fragments at least For example with tow replicas each with two fragments four data nodes are needed There is no need of having more than one replica A data node is started with the command ndbd or ndbmtd if the multithreaded version is started SQL Node or API Node This is the node that access the data stored in the cluster For MySQL Cluster this is a traditional MySQL server using NDB Cluster engine A SQL node is started by the command mysqld with the option ndbcluster added in the my cnf configuration file Manager or MGM This is the cluster administration node The role of this node is to manage all the other nodes in the cluster allowing tasks like give configuration parameters start and stop nodes create backups and in general all the management tasks of the cluster As this is the node that manages the cluster configuration one of this kind of nodes should be started the first one before any other one The management node is started with the command ndb_mgmd 18 1 2 Cluster Architecture to use with Pandora FMS The sample architecture used in this documentation has two servers that will run data nodes and SQL nodes also it has two management servers used to manage the cluster 207 AP PANDORAFMS Introduction Ake Pandora FMS Architecture Sample MyS
370. ve been completed the files must be copied to the disk and the installation will be over 12 4 First boot 163 A PANDORAFMS First boot rr This is how the screen would look when booting the system Applications Places System 4 75 F Satjun 1 01 37 Pandora FMS default user artica Desktop after booting and logging in automatically If you prefer to manually log in remember that the account artica does not have any password You can set one from the system A PANDORAFMS First boot configuration 5 Applications Places do 75 F Satjun 1 01 38 Pandora FMS default user artica About Me Adminstration gt Appearance Help X Assistive Technologies Display File Management Lock Screen Log Out artica Keyboard Shut Down Keyboard Shortcuts Mouse Network Connections Network Proxy gt e Preferred Applications Screensaver Software Updates Sound ES Startup Applications Wacom Tablet Windows From these options you can configure the base system You do not need to do anything from the command console everything can be managed easily from here 165 AP PANDORAFMS First boot Applications Places System 1 75 F Satjun 1 01 38 Pandora FMS default user artica Pandora FMS the Flexible Monitoring System Mozilla Firefox File Edit View History Bookmarks Tools Help E Pandora FMS the Flexible Mon loc
371. ver Name Warning condition Group All M Description p This is a generic alert template to fire on WARNING condition Priority Warning Wizard level Basic N No wizard Condition type Basic Y Advanced Om alert would fire when the module is in warning status Next gt This field defines which users can use this template to create alerts from the Wizard No Wizard This template will not be available in the wizard Basic Any user with wizard access use this template to create alerts Advanced Only users with advanced level access can use this template 9 4 5 Tags From this section it is possible to create and modify tags 133 AP PANDORAFMS Data Management fe PANDORAFMS Q 5 e w admin O Advanced Tags Name Description Filter Q Create tag gt Total items 5 Qo configuration critical Critical modules Qa dmz DMZ Network Zone Qo network Network equipment http artica es 0 performance Performance anda capacity modules Q 0 9 4 5 1 Creating Tags It is possible to create new tags clicking on the Create tag button The following form will be shown eu y enm Advanced Name New tag Description Tag description http www example com example example com E mail 555 555 555 Phone Create gt 134 AP PANDORAFMS Data Management 242442222222 Parameters definition Name Tag name Description Tag description
372. ver Securization Pandora FMS uses among others sftp ssh2 scp to copy data files from the agents to the server Due to this you will need at least one data server with a SSH2 server that listen the pandora user This could be an important risk for a network that needs to bee strictelly securized Open SSH2 is very secure but regarding Computer Security there is nothing that is absolutely secure so you should take measures in order to make it more secure To use SSH it is recommended to use scponly an small tool that forbidden that the remote start sessions use SSH for specific uses This way it is possible to forbid access through SSH for pandora users and allow only sftp s in this system 13 1 1 What is Scponly Scponly is an alternative shell for system administrators that want to give access to remote users to read and write files without giving any remote privilege for execution It could be also described as an intermediate system between the system and the SSH system applications A typical use of Scponly is to create a semi public account that is not similar to the concept of anonymous session start for FTP This allows that an administrator could share files in the same way that a FTP would do it but it should use all the protection that SSH gives This is specially relevant if you consider that the FTP authentications cross public networks in a flat text format Using scponly to securize the pandora user is
373. with character before it indicates you want the records which DON T match with this protocol es el protocolo por el que se realiza la comunicacion Este parametro puede ir negado con el caracter de exclamacion delante indicando que queremos los registros que NO coincidan con ese protocolo You can use the following formats A protocol For example TCP Several protocol separated by comma For example TCP UDP FTP Aspecial word all to match all protocols 24 4 2 1 Examples Some valid rules are discard src ip 192 168 70 222 32 port dst 21 23 80 8080 protocol all process src ip 192 168 70 0 24 port src protocol TCP process src ip 192 168 80 0 24 port dst 80 8080 protocol UDP TCP These rules will process the following records All records with source IP an IP in network 192 168 80 X while don t have 80 or 8080 as destination port and use TCP or UDP protocols All records with source IP in network 192 168 70 X with any source port that don t use TCP protocol except record discard by the first rule The first rule discard record with source IP 192 168 70 222 and destination port different from 21 22 23 80 and 8080 using any protocol 24 5 Data generated The data generated by passive collecter are XML files An XML file per IP detected that match the rules is generated These files are copied in the path defined in parameter incomingdir of configuration file which must be the path to data in folder
374. wn TransactionInactiveTimeout 30000 HHHHHHHHHHHHHHHAKRHHHHHHHHHHHHH TransactionDeadlockDetectionTimeout 50 46 1200 When a node executes a query involving a transaction the node waits for the other nodes in the cluster to respond before continuing A failure to respond can occur for any of the following reasons The node is adeada The node requested to perform the action could be heavily overloaded This timeout parameter states how long the transaction coordinator waits for query execution by another node before aborting the transaction and is important for both node failure handling and deadlock detection TransactionDeadlockDetectionTimeout 1200 DiskSyncSize 32k 4G 4M This is the maximum number of bytes to store before flushing data to a local checkpoint file This is done in order to prevent write buffering which can impede performance significantly This parameter is NOT intended to take the place of TimeBetweenLocalCheckpoints DiskSyncSize 4M DiskCheckpointSpeed 1M 4G 10M The amount of data in bytes per second that is sent to disk during a local checkpoint DiskCheckpointSpeed 10M DiskCheckpointSpeedInRestart 1M 4G 100M The amount of data in bytes per second that is sent to disk during a local checkpoint as part of a restart operation DiskCheckpointSpeedInRestart 100M dk dk dk db dk dt dk d A PANDORAFMS Appendix Examples of Configuration Files iii Arbit
375. xtension hang from the Operation menu in Agents 33 6 Source code php 418 AP PANDORAFMS Source code jr Pandora FMS http pandorafms com Copyright c 2005 2009 Artica Soluciones Tecnologicas This program is free software you can redistribute it and or modify it under the terms of the GNU General Public License as published by the Free Software Foundation for version 2 This program is distributed in the hope that it will be useful but WITHOUT ANY WARRANTY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE See the GNU General Public License for more details i Translate the array texts using gettext i function translate amp item key item _ item main function of module groups and the enter point to execute the code function mainModuleGroups global config the useful global var of Pandora Console it has many data can you use The big query sql select COUNT id_agente AS count estado FROM tagente_estado WHERE utimestamp 0 AND id_agente IN SELECT id_agente FROM tagente WHERE id_grupo d AND disabled IS FALSE AND id_agente_modulo IN SELECT id_agente_modulo FROM tagente_modulo WHERE id_module_group d AND disabled IS FALSE AND delete_pending IS FALSE GROUP BY estado echo lt hi gt _ Combine table of agent group and module group lt h
376. y version de Linux que est usando El servidor de SNMP Enterprise no soporta versi n 3 Esos modulos v3 ser n ejecutuados por la version open La forma m s rapida de probar es mediante un dispositivo SNMP aplicando a todos los interfaces todos los modulos de monitorizaci n b sicos de serie Esto se hace mediante la aplicaci n del SNMP Explorer Agente gt Modo de administracion gt SNMP Explorer Identifique las interfaces y aplica todas las metricas a cada interfaz En un switch de 24 puertos esto genera unos 650 modulos Si genera otro agente con otro nombre peor la misma IP tendr otros 650 modulos Otra opci n puede ser copiar todos los modulos a una serie de agentes que tengan todos la misma IP de forma que los modulos copiados funcionen atacando al mismo switch Otra opci n es utilizar un emulador de SNMP como el Jalasoft SNMP Device Simulator El objetivo de este punto es ser capaz de monitorizar de forma constante un pool de modulos SNMP durante al menos 48 horas monitorizando la infraestructura para asegurarse de que el ratio de monitorizacion de mod seg es constante y no existen periodos de tiempo donde el servidor produce m dulos en estado desconocido Esta situaci n se podr a dar por Escasez de recursos mem CPU Se podr a ver una tendencia de estas m tricas en incremento cont nuo lo cual es una mala se al Problemas puntuales reinicio del servidor diario para rotado de logs ejecuci
377. zed in the following order e jid agent Examples http 127 0 0 1 pandora console include api php op set amp op2 add agent policy amp id 1 amp other 167 amp other mode url encode separator amp apipass 1234 amp user admin amp pass pandora 28 3 2 20 set new_network_component Create a new network component Call syntax op set compulsory op2 new network component compulsory e id network component name compulsory should be the network component name other lt serialized parameters compulsory are the agent configuration and data of the network component serialized in the following order e network component type 347 AP PANDORAFMS API Calls description e module interval max value min value snmp community id module group e max timeout e history data min warning max warning str warning min critical max critical e str critical ff threshold e post process network component group e enable unknown events only in version 5 Examples http 127 0 0 1 pandora console include api php op set amp op2 new network component amp id example network component name amp other 7 network 20component 20created 20by 20Api 300 30 10 11 3 1 10 20 lt 21 30 5 4 1 10 50 00 12 amp 0ther_mode url_encode_separator_ amp apipass 1234

Download Pdf Manuals

image

Related Search

Related Contents

Century Deluxe Series User's Manual  EDITAL DE LICITAÇÃO  HP LT3200 User's Manual  Franke ATG 621  Hostess HW07MA wine bar  Becker Transit 50  Betriebsanleitung TORRO 4500 TORRO 5100 TORRO 5700  GYR Entretien de Freins Validé MANUEL TECHNIQUE - Pro-Cut  scarica pdf  Cartografía Digital  

Copyright © All rights reserved.
Failed to retrieve file