diff --git a/sysadmin/grid5000/cassandra/02-reserve_nodes.sh b/sysadmin/grid5000/cassandra/02-reserve_nodes.sh index c1463d5..e21601c 100755 --- a/sysadmin/grid5000/cassandra/02-reserve_nodes.sh +++ b/sysadmin/grid5000/cassandra/02-reserve_nodes.sh @@ -1,25 +1,26 @@ #!/usr/bin/env bash -set -eu +# set -eu SCRIPT_DIR="$(pwd $(dirname @0))" source "${SCRIPT_DIR}/environment.cfg" NODE_FILTER="" for node in ${CASSANDRA_HOSTS} ${STORAGE_HOSTS} ${JOURNAL_CLIENT_HOSTS} ${MONITORING_HOSTS}; do NODE_FILTER="${NODE_FILTER},'${node}.${G5K_SITE}'" done NODE_FILTER="$(echo ${NODE_FILTER} | sed 's/^,//')" NODE_COUNT="$(echo ${NODE_FILTER} | tr ',' ' ' | wc -w)" if [ -e OAR_JOB_ID ]; then echo "Running in reservation mode, nodes should be already reserved" ${SCRIPT_DIR}/03-deploy_nodes.sh else echo "Reserving and installing nodes" - oarsub -l "{host in (${NODE_FILTER})}/nodes=${NODE_COUNT},walltime=${NODE_RESERVATION_DURATION}" -t deploy ${SCRIPT_DIR}/03-deploy_nodes.sh + # oarsub -l "{host in (${NODE_FILTER})}/nodes=${NODE_COUNT},walltime=${NODE_RESERVATION_DURATION}" -t deploy ${SCRIPT_DIR}/03-deploy_nodes.sh + oarsub -r '2021-06-17 19:05:00' -l "{host in (${NODE_FILTER})}/nodes=${NODE_COUNT},walltime=${NODE_RESERVATION_DURATION}" -t deploy ${SCRIPT_DIR}/03-deploy_nodes.sh # -t besteffort # -r '2021-06-08 19:05:00' fi diff --git a/sysadmin/grid5000/cassandra/03-deploy_nodes.sh b/sysadmin/grid5000/cassandra/03-deploy_nodes.sh index be57a20..12dc41c 100755 --- a/sysadmin/grid5000/cassandra/03-deploy_nodes.sh +++ b/sysadmin/grid5000/cassandra/03-deploy_nodes.sh @@ -1,35 +1,35 @@ #!/usr/bin/env bash -set -eux +# set -eux SCRIPT_DIR="$(pwd $(dirname @0))" source "${SCRIPT_DIR}/environment.cfg" echo "########### Nodes:" uniq "${OAR_FILE_NODES}" echo "########### Installing os on nodes" INSTALLED_OS_STAMP="${OAR_JOB_ID}.os.stamp" if [ ! -e "${SCRIPT_DIR}/${INSTALLED_OS_STAMP}" ]; then ${SCRIPT_DIR}/_install_os.sh touch "${SCRIPT_DIR}/${INSTALLED_OS_STAMP}" fi uniq "${OAR_NODE_FILE}" > ${SCRIPT_DIR}/nodes.lst NODE_COUNT="$(wc -l ${SCRIPT_DIR}/nodes.lst | cut -f1 -d' ')" echo "${CASSANDRA_HOSTS}" | sed 's/ /,/g' > ${SCRIPT_DIR}/cassandra_seeds.lst time parallel -j${NODE_COUNT} rsync -avP . "${SSH_USER}"@{}:install < ${SCRIPT_DIR}/nodes.lst time parallel -j${NODE_COUNT} -u ssh ${SSH_OPTIONS} "${SSH_USER}"@{} install/_provision_node.sh < ${SCRIPT_DIR}/nodes.lst echo "########### Cassandra installation done" touch ${SCRIPT_DIR}/nodes.installed # The script must not exit to avoid the oar job to be killed echo "########### Sleeping" sleep infinity diff --git a/sysadmin/grid5000/cassandra/_provision_node.sh b/sysadmin/grid5000/cassandra/_provision_node.sh index 809b1dd..1f72621 100755 --- a/sysadmin/grid5000/cassandra/_provision_node.sh +++ b/sysadmin/grid5000/cassandra/_provision_node.sh @@ -1,12 +1,12 @@ #!/usr/bin/env bash -set -eux +#set -eux apt update apt install -y ansible cd /root/install/ansible CASSANDRA_SEEDS="$(cat ../cassandra_seeds.lst)" NODES="$(cat ../nodes.lst ../besteffort_nodes.lst | tr '\n' ',')" ansible-playbook -i hosts.yml -e @/root/install/.credentials --vault-password-file=/root/install/.vault_password -l "$(hostname)" playbook.yml --extra-vars "cassandra_seed_ips=${CASSANDRA_SEEDS}" --extra-vars "nodes=${NODES}"