1. 26 Jun, 2019 1 commit
    • chuck cranor's avatar
      add power support for IBM BladeCenter chassis · f66517f5
      chuck cranor authored
      Add power support for the IBM BladeCenter chassis (power_ibmbc.pm).
      This is the chassis used in the old Roadrunner cluster at LANL.  Each
      chassis has 14 blades in it.  The management IP API is accessed from
      boss via ssh.  A ssh keypair should be setup to allow for passwordless
      ssh access.  We assume the admin has installed the keypair on boss
      (in /usr/testbed/etc/{ibmbc,ibmbc.pub}) and on each chassis for
      the standard "USERID" account.  The key files should be owned by
      an account like "operator" to avoid ssh complaining about key file
      permissions in some cases.
      
      The module will end up running commands like:
      
            ssh USERID@chassis-mm power -on -T 'blade[1]'
            ssh USERID@chassis-mm power -off -T 'blade[1]'
            ssh USERID@chassis-mm power -cycle -T 'blade[1]'
      
      (we'll add "-i /usr/testbed/etc/ibmbc" to "ssh" if the key file is present)
      
      using this requires the following "mysql tbdb" cmds on boss:
        one-time operation:
           insert into node_types (class,type) values ('power', 'ibmbc');
      
        per-chassis operations:
           # assumes that "rr1" is blade1 of chassis "bch1"
           insert into nodes (node_id,type,phys_nodeid,role,priority,status,
                              eventstate,op_mode,allocstate)
           values ('bch1', 'ibmbc', 'bch1', 'powerctrl', 10001, 'down',
                              'ISUP', 'NONE', 'FREE_DIRTY');
      
           # adds IP of the chassis management module
           insert into interfaces (node_id,IP,mask,interface_type,iface,role) values
                ('bch1', '172.19.148.61', '255.255.240.0','','eth0','other');
      
        per-blade operation:
           insert into outlets (node_id,power_id,outlet)
                  values ('rr1', 'bch1', 1);   # outlet 1==blade1, etc.
      f66517f5