cs151003
5 years ago
4 changed files with 147 additions and 0 deletions
@ -0,0 +1,3 @@ |
|||
#!/bin/sh |
|||
|
|||
nslookup tasks.ondemand_mpi2_worker | grep Addr | cut -d':' -f2 | grep -v 127.0. |
@ -0,0 +1,73 @@ |
|||
#!/bin/sh |
|||
|
|||
ROLE="undefined" |
|||
MPI_MASTER_SERVICE_NAME="mpi2_master" |
|||
MPI_WORKER_SERVICE_NAME="mpi2_worker" |
|||
|
|||
####################### |
|||
# ARGUMENTS PARSER |
|||
|
|||
while [ "$1" != "" ]; |
|||
do |
|||
PARAM=$(echo "$1" | awk -F= '{print $1}') |
|||
VALUE=$(echo "$1" | awk -F= '{print $2}') |
|||
|
|||
case $PARAM in |
|||
role) |
|||
[ "$VALUE" ] && ROLE=$VALUE |
|||
;; |
|||
|
|||
mpi_master_service_name) |
|||
[ "$VALUE" ] && MPI_MASTER_SERVICE_NAME=$VALUE |
|||
;; |
|||
|
|||
mpi_worker_service_name) |
|||
[ "$VALUE" ] && MPI_WORKER_SERVICE_NAME=$VALUE |
|||
;; |
|||
*) |
|||
echo "ERROR: unknown parameter \"$PARAM\"" |
|||
exit 1 |
|||
;; |
|||
esac |
|||
shift |
|||
done |
|||
|
|||
|
|||
|
|||
cat > /etc/opt/service_names <<- EOF |
|||
MPI_MASTER_SERVICE_NAME=${MPI_MASTER_SERVICE_NAME} |
|||
MPI_WORKER_SERVICE_NAME=${MPI_WORKER_SERVICE_NAME} |
|||
EOF |
|||
|
|||
case $ROLE in |
|||
"master") |
|||
|
|||
# Auto update default host file in background and dumb all output |
|||
auto_update_hosts "${HYDRA_HOST_FILE}" > /dev/null 2>&1 & |
|||
|
|||
/bin/bash /home/ubuntu/startup.sh |
|||
# Start ssh server |
|||
#/usr/sbin/sshd -D |
|||
;; |
|||
|
|||
|
|||
"worker") |
|||
|
|||
# Start ssh server in background |
|||
/bin/bash /home/ubuntu/startup.sh & |
|||
/usr/sbin/sshd -D & |
|||
|
|||
# Keep trying to connect to master node and stay there indefinitely so that master node can see |
|||
# the connected hosts that are ready for MPI work |
|||
while sleep 1 |
|||
do |
|||
# shellcheck disable=SC2086 |
|||
ssh -T -o "StrictHostKeyChecking no" \ |
|||
-i "${USER_HOME}/.ssh/id_rsa" \ |
|||
${USER}@${MPI_MASTER_SERVICE_NAME} \ |
|||
"tail -f /dev/null" |
|||
done |
|||
;; |
|||
*) |
|||
echo 'role argument only accepts "master" or "worker"' |
|||
esac |
@ -0,0 +1,61 @@ |
|||
#!/bin/bash |
|||
|
|||
#if [ ! -f $HOME/.vnc/passwd ] ; then |
|||
# |
|||
# if [ -z "$PASSWORD" ] ; then |
|||
# PASSWORD=`pwgen -c -n -1 12` |
|||
# echo -e "PASSWORD = $PASSWORD" > $HOME/password.txt |
|||
# fi |
|||
# |
|||
# echo "$USER:$PASSWORD" | chpasswd |
|||
# |
|||
# # Set up vncserver |
|||
# su $USER -c "mkdir $HOME/.vnc && echo '$PASSWORD' | vncpasswd -f > $HOME/.vnc/passwd && chmod 600 $HOME/.vnc/passwd && touch $HOME/.Xresources" |
|||
##vncpasswd -f <<<"write"$'\n'"view" >"$HOME/.vnc/passwd" |
|||
#vncpasswd -f >"$HOME/.vnc/passwd" <<EOF |
|||
#$PASSWORD |
|||
#$PASSWORDVIEW |
|||
#EOF |
|||
# |
|||
# chown -R $USER:$USER $HOME |
|||
# |
|||
# if [ ! -z "$SUDO" ]; then |
|||
# case "$SUDO" in |
|||
# [yY]|[yY][eE][sS]) |
|||
# adduser $USER sudo |
|||
# esac |
|||
# fi |
|||
# |
|||
#else |
|||
# |
|||
# VNC_PID=`find $HOME/.vnc -name '*.pid'` |
|||
# if [ ! -z "$VNC_PID" ] ; then |
|||
# vncserver -kill :1 |
|||
# rm -rf /tmp/.X1* |
|||
# fi |
|||
# |
|||
#fi |
|||
# |
|||
#if [ ! -z "$NGROK" ] ; then |
|||
# case "$NGROK" in |
|||
# [yY]|[yY][eE][sS]) |
|||
# su ubuntu -c "$HOME/ngrok/ngrok http 6080 --log $HOME/ngrok/ngrok.log --log-format json" & |
|||
# sleep 5 |
|||
# NGROK_URL=`curl -s http://127.0.0.1:4040/status | grep -P "http://.*?ngrok.io" -oh` |
|||
# su ubuntu -c "echo -e 'Ngrok URL = $NGROK_URL/vnc.html' > $HOME/ngrok/Ngrok_URL.txt" |
|||
# esac |
|||
#fi |
|||
# |
|||
#if [ "$SERVERROLE" == "master" ] ; then |
|||
#nslookup tasks.$SERVICENAME | grep Addr | cut -d':' -f2 | grep -v 127.0. > /tmp/hoststmp |
|||
#echo "" > /home/ubuntu/vnc.config.d/token.list |
|||
#c=1 |
|||
#while read -r line; |
|||
# do |
|||
# echo "s$c: $line:5901" >> /home/ubuntu/vnc.config.d/token.list |
|||
# ((c++)) |
|||
#done < /tmp/hoststmp |
|||
#fi |
|||
# |
|||
|
|||
/usr/bin/supervisord -n -c /etc/supervisor/supervisord.conf |
@ -0,0 +1,10 @@ |
|||
[program:apache2] |
|||
command=bash -c 'sleep 5 && /usr/sbin/apache2 -DFOREGROUND' |
|||
autorestart=true |
|||
|
|||
[program:sshd] |
|||
#command=bash -c 'sleep 5 && /usr/sbin/sshd -D' |
|||
command=/usr/sbin/sshd -D |
|||
stdout_logfile=/var/log/sshd.log |
|||
autorestart=true |
|||
|
Loading…
Reference in new issue