X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=todo;h=f69785fcdb23d61310d1869681fea06a8c6e49c2;hb=13701d18d65fac36dd9f9c788c63a3a4d0889bcc;hp=d7370ef958f703dc8b4c8143d92488f8ed1239b0;hpb=6d46ab9b534b60675a3dcb11fcb664589a3691f8;p=monitor.git diff --git a/todo b/todo index d7370ef..f69785f 100644 --- a/todo +++ b/todo @@ -1,11 +1,113 @@ +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 * had to mount -t devpts devpts /dev/pts to get ssh to work inside the chroot. also, disable the pam modules in /etc/pam.d/sshd + * blue * auto configuration for php configuration. maybe run translation of monitor.conf before loading monitorconfig.php? + * blue2 * A setup script of some kind would be nice that walked through : - writing monitorconfig.py @@ -14,9 +116,9 @@ TODO: - testapi.py - findbad.py on sample site. - nodebad.py + - findbadpcus.py - nodequery.py - nodegroups.py - - findbadpcus.py - loads webpage for those retreived values to confirm setup succeeded. * reimplement the config.py / .config mechanism. I'd like for many commands