X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=todo;h=f69785fcdb23d61310d1869681fea06a8c6e49c2;hb=17b11b54e2c212d5b3a8f8a15f49284abd91b50e;hp=98ace66461a76d714bf8e7e2a382edb2b817870f;hpb=fed1a01182f67c773f1b873aaf9ca0df359785d4;p=monitor.git diff --git a/todo b/todo index 98ace66..f69785f 100644 --- a/todo +++ b/todo @@ -1,3 +1,103 @@ +Structure: + +monitor module + plc wrapper + util functions + pkl database access + database models + third-party data sources + +pcucontrol + maps types to code + reboot.py + interface.py + + transport: + pyssh + ssh + telnetlib + models: + hpilo cmds + intelamt cmds + racadm cmd + ipmitool cmd + +web + cgi scripts + tgweb + project... + +cmds + py scripts + node + site + pcu + query + grouprins + +bootman + rpyc + + + + + +############################### +for each node: + Check Status -> + if Pass Threshold -> + Create Issue -> + Take Action -> + email + bm + pcu + plc reset + apply penalties + flag for admin + +for each issue + check issue.status + if issue.status is "open": + issue.take_next_action() + if issue.closed: + issue.shutdown() + if issue.paused: + pass + +action_list for issuetype (pcudown) + send email + yield + send email, apply penalty + yield + send email, apply second penalty + yield + send email + +action_list for issuetype (badhardware) +action_list for issuetype (dnserror) +action_list for issuetype (nodeconfig) +action_list for issuetype (oldbootcd) + +action_list for issuetype (nodedown) + if pcuok, reboot + yield + if pcuok, and reboot failed, set rins, reboot + yield + create_issue pcubroken + send email + yield + send email, apply penalty + yield + send email, apppy second penalty + yield + send email + + +TOOLS: + * add a '--nocache' to the default set of options. + * add a cache parameter in the monitor.conf file. + + TODO: * install openssh-server, passwd, perl-libwww-perl (for rt), rt-3.4.1, MySQL-python