Example: from you jump server
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
#!/bin/ksh
#---------------------------------------------------------------
# Purpose : Search for an LPAR name across multiple HMCs
# Platform : AIX
# Author : adminCtrlX
#---------------------------------------------------------------
LPARNAME=$1
LPAR_FILE="/tmp/lpar_name"
if [ -z "$LPARNAME" ]; then
echo "Usage: $0 <lpar_name>"
exit 1
fi
# Empty the output file before use
> "$LPAR_FILE"
# List of HMCs
HMC_LIST="hmc1 hmc2 hmc3"
# HMC login user
HMC_USER="hscroot"
for HMC in $HMC_LIST; do
echo "========================================"
echo "HMC: $HMC"
echo "========================================"
ssh -o BatchMode=yes -o ConnectTimeout=10 ${HMC_USER}@${HMC} "
for m in \$(lssyscfg -r sys -F name); do
printf \"\n=== \$m ===\n\"
lssyscfg -r lpar -m \$m -F lpar_id:name:state | sort -n
done
" | grep -i "$LPARNAME" | awk -v hmc="$HMC" '{print hmc, \$0}' >> "$LPAR_FILE"
done
echo ""
echo "===== Matching LPARs Found ====="
cat "$LPAR_FILE"
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1. Add the above script contents
# vi find_lpar_multi_hmc.ksh
2. Make it executable
# chmod +x find_lpar_multi_hmc.ksh
3. Run script
# ./find_lpar_multi_hmc.ksh mylpar01
or
# sh ./find_lpar_multi_hmc.ksh mylpar01
Script Output:
========================================
HMC: hmc1
========================================
hmc1 === P9-SERVER-01 ===
hmc1 5:mylpar01:Running
========================================
HMC: hmc3
========================================
hmc3 === P8-SERVER-03 ===
hmc3 12:mylpar01:Not Activated
===== Matching LPARs Found =====
hmc1 === P9-SERVER-01 ===
hmc1 5:mylpar01:Running
hmc3 === P8-SERVER-03 ===
hmc3 12:mylpar01:Not Activated
> "$LPAR_FILE"
# List of HMCs
HMC_LIST="hmc1 hmc2 hmc3"
# HMC login user
HMC_USER="hscroot"
for HMC in $HMC_LIST; do
echo "========================================"
echo "HMC: $HMC"
echo "========================================"
ssh -o BatchMode=yes -o ConnectTimeout=10 ${HMC_USER}@${HMC} "
for m in \$(lssyscfg -r sys -F name); do
printf \"\n=== \$m ===\n\"
lssyscfg -r lpar -m \$m -F lpar_id:name:state | sort -n
done
" | grep -i "$LPARNAME" | awk -v hmc="$HMC" '{print hmc, \$0}' >> "$LPAR_FILE"
done
echo ""
echo "===== Matching LPARs Found ====="
cat "$LPAR_FILE"
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1. Add the above script contents
# vi find_lpar_multi_hmc.ksh
2. Make it executable
# chmod +x find_lpar_multi_hmc.ksh
3. Run script
# ./find_lpar_multi_hmc.ksh mylpar01
or
# sh ./find_lpar_multi_hmc.ksh mylpar01
Script Output:
========================================
HMC: hmc1
========================================
hmc1 === P9-SERVER-01 ===
hmc1 5:mylpar01:Running
========================================
HMC: hmc3
========================================
hmc3 === P8-SERVER-03 ===
hmc3 12:mylpar01:Not Activated
===== Matching LPARs Found =====
hmc1 === P9-SERVER-01 ===
hmc1 5:mylpar01:Running
hmc3 === P8-SERVER-03 ===
hmc3 12:mylpar01:Not Activated
No comments:
Post a Comment