mirror of
https://github.com/xcat2/xcat-core.git
synced 2025-05-21 11:12:04 +00:00
68 lines
1.7 KiB
Bash
68 lines
1.7 KiB
Bash
#!/bin/bash
|
|
# IBM(c) 2016 EPL license http://www.eclipse.org/legal/epl-v10.html
|
|
#(C)IBM Corp
|
|
# Sample Master postscript, designed to be run with or without arguments.
|
|
|
|
usage()
|
|
{
|
|
cat << EOF
|
|
Usage ibm-csm-master options:
|
|
|
|
Modifies the csm configuration files (if /etc/ibm/csm/ is empty), then executes the local
|
|
post scripts to reflect the change.
|
|
|
|
OPTIONS
|
|
-h Displays this message
|
|
-c <group> Sets the xCAT group for the compute nodes (default: compute)
|
|
-a <group> Sets the xCAT group for the aggregator nodes (default: aggregator)
|
|
-u <group> Sets the xCAT group for the utility nodes (default: utility)
|
|
|
|
EOF
|
|
}
|
|
|
|
# Determine the master ip address.
|
|
master=$(lsdef -t site clustersite -i master | awk -F "=" '/master/{print $2}')
|
|
|
|
# Daemon names.
|
|
master_daemon="csmd-master"
|
|
aggregator_daemon="csmd-aggregator"
|
|
|
|
# The node groups for utility, compute, and aggregator.
|
|
utility_nodes="utility"
|
|
compute_nodes="compute"
|
|
aggregator_nodes="aggregator"
|
|
|
|
# Parse the option strings.
|
|
optstring="u:c:a:h"
|
|
while getopts $optstring OPTION
|
|
do
|
|
case $OPTION in
|
|
u)
|
|
utility_nodes=$OPTARG;;
|
|
c)
|
|
compute_nodes=$OPTARG;;
|
|
a)
|
|
aggregator_nodes=$OPTARG;;
|
|
h)
|
|
usage; exit 1;;
|
|
esac
|
|
done
|
|
|
|
# Replace the master tags in the configuation files.
|
|
if [[ $(ls -l /etc/ibm/csm/ | wc -l) == 0 ]]
|
|
then
|
|
echo "here"
|
|
mkdir -p /etc/ibm/csm/
|
|
cp /opt/ibm/csm/share/etc/* /etc/ibm/csm/
|
|
sed -i "s/__MASTER__/$master/g" /etc/ibm/csm/*
|
|
fi
|
|
|
|
# Start the daemons.
|
|
systemctl restart ${master_daemon}
|
|
systemctl restart ${aggregator_daemon}
|
|
|
|
# Run the post scripts on the other nodes.
|
|
updatenode ${utility_nodes} -P ibm-csm-utility
|
|
#updatenode ${aggregator_nodes} -P ibm-csm-aggregator
|
|
updatenode ${compute_nodes} -P ibm-csm-compute
|