From 7cf065cc0271d10979ea82738d7ccbd16a2adde4 Mon Sep 17 00:00:00 2001 From: Nico Schottelius Date: Fri, 17 Apr 2009 19:49:09 +0200 Subject: [PATCH] add scripts to control a cluster via ipmi Signed-off-by: Nico Schottelius --- eth/ipmi-cluster-change-password.sh | 37 +++++++++++++++++++++++++++++ eth/ipmi-cluster-power-off.sh | 36 ++++++++++++++++++++++++++++ eth/ipmi-cluster-power-on.sh | 37 +++++++++++++++++++++++++++++ eth/ipmi-cluster-power-status.sh | 35 +++++++++++++++++++++++++++ 4 files changed, 145 insertions(+) create mode 100755 eth/ipmi-cluster-change-password.sh create mode 100755 eth/ipmi-cluster-power-off.sh create mode 100755 eth/ipmi-cluster-power-on.sh create mode 100755 eth/ipmi-cluster-power-status.sh diff --git a/eth/ipmi-cluster-change-password.sh b/eth/ipmi-cluster-change-password.sh new file mode 100755 index 0000000..c3e646e --- /dev/null +++ b/eth/ipmi-cluster-change-password.sh @@ -0,0 +1,37 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-nsbin at schottelius.org) +# +# This file is part of nsbin. +# +# nsbin 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, either version 3 of the License, or +# (at your option) any later version. +# +# nsbin 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. +# +# You should have received a copy of the GNU General Public License +# along with nsbin. If not, see . +# +# +# Usage: $0 username password clusterprefix number-of-nodes +# + + +# user/pass for ipmi +user="$1"; shift +pass="$1"; shift +cluster="$1"; shift +count="$1"; shift +userid="$1"; shift +passnew="$1"; shift + +for i in $(seq 1 16); do + num=$(printf "%0.2d" $i) + echo Trying $cluster/${num}: + ipmitool -U "$user" -P "$pass" -H ${cluster}-ra${num} user set password $userid $passnew +done diff --git a/eth/ipmi-cluster-power-off.sh b/eth/ipmi-cluster-power-off.sh new file mode 100755 index 0000000..35e8231 --- /dev/null +++ b/eth/ipmi-cluster-power-off.sh @@ -0,0 +1,36 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-nsbin at schottelius.org) +# +# This file is part of nsbin. +# +# nsbin 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, either version 3 of the License, or +# (at your option) any later version. +# +# nsbin 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. +# +# You should have received a copy of the GNU General Public License +# along with nsbin. If not, see . +# +# +# Usage: $0 username password clusterprefix number-of-nodes +# + + +# user/pass for ipmi +user="$1"; shift +pass="$1"; shift +cluster="$1"; shift +count="$1"; shift + +for i in $(seq 1 16); do + num=$(printf "%0.2d" $i) + echo Trying $cluster/${num}: + ipmitool -U "$user" -P "$pass" -I lanplus -H ${cluster}-ra${num} power off + ipmitool -U "$user" -P "$pass" -I lanplus -H ${cluster}-ra${num} power status +done diff --git a/eth/ipmi-cluster-power-on.sh b/eth/ipmi-cluster-power-on.sh new file mode 100755 index 0000000..3f83a42 --- /dev/null +++ b/eth/ipmi-cluster-power-on.sh @@ -0,0 +1,37 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-nsbin at schottelius.org) +# +# This file is part of nsbin. +# +# nsbin 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, either version 3 of the License, or +# (at your option) any later version. +# +# nsbin 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. +# +# You should have received a copy of the GNU General Public License +# along with nsbin. If not, see . +# +# +# Usage: $0 username password clusterprefix number-of-nodes +# + + +# user/pass for ipmi +user="$1"; shift +pass="$1"; shift +cluster="$1"; shift +count="$1"; shift + +for i in $(seq 1 16); do + num=$(printf "%0.2d" $i) + echo Trying $cluster/${num}: + + ipmitool -U "$user" -P "$pass" -I lanplus -H ${cluster}-ra${num} power on + ipmitool -U "$user" -P "$pass" -I lanplus -H ${cluster}-ra${num} power status +done diff --git a/eth/ipmi-cluster-power-status.sh b/eth/ipmi-cluster-power-status.sh new file mode 100755 index 0000000..c305524 --- /dev/null +++ b/eth/ipmi-cluster-power-status.sh @@ -0,0 +1,35 @@ +#!/bin/sh +# +# 2008 Nico Schottelius (nico-nsbin at schottelius.org) +# +# This file is part of nsbin. +# +# nsbin 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, either version 3 of the License, or +# (at your option) any later version. +# +# nsbin 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. +# +# You should have received a copy of the GNU General Public License +# along with nsbin. If not, see . +# +# +# Usage: $0 username password clusterprefix number-of-nodes +# + + +# user/pass for ipmi +user="$1"; shift +pass="$1"; shift +cluster="$1"; shift +count="$1"; shift + +for i in $(seq 1 16); do + num=$(printf "%0.2d" $i) + echo Trying $cluster/${num}: + ipmitool -U "$user" -P "$pass" -I lanplus -H ${cluster}-ra${num} power status +done