From 07f775e4c9a67d339e0280802bd32f003a07d7a1 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Zolt=C3=A1n=20Felleg?= Date: Tue, 1 Oct 2024 21:50:57 +0200 Subject: [PATCH] Deleted vhost1.in and vhost2.in. --- sources/vhost1.in/01_setupnetworking.sh | 225 ----------- sources/vhost1.in/02_setupcluster.sh | 83 ---- sources/vhost1.in/99_setupsystem.sh | 37 -- sources/vhost1.in/etc/lxc/lxc.conf | 1 - sources/vhost1.in/etc/sysconfig/opensm | 3 - sources/vhost1.in/etc/sysctl.d/01-lxc.conf | 8 - sources/vhost1.in/root/temperature.cfg | 29 -- sources/vhost1.in/root/temperature.sh | 439 --------------------- sources/vhost2.in/01_setupnetworking.sh | 225 ----------- sources/vhost2.in/99_setupsystem.sh | 37 -- sources/vhost2.in/etc/lxc/lxc.conf | 1 - sources/vhost2.in/etc/sysconfig/opensm | 3 - sources/vhost2.in/etc/sysctl.d/01-lxc.conf | 8 - sources/vhost2.in/root/temperature.cfg | 29 -- sources/vhost2.in/root/temperature.sh | 439 --------------------- 15 files changed, 1567 deletions(-) delete mode 100755 sources/vhost1.in/01_setupnetworking.sh delete mode 100755 sources/vhost1.in/02_setupcluster.sh delete mode 100755 sources/vhost1.in/99_setupsystem.sh delete mode 100644 sources/vhost1.in/etc/lxc/lxc.conf delete mode 100644 sources/vhost1.in/etc/sysconfig/opensm delete mode 100644 sources/vhost1.in/etc/sysctl.d/01-lxc.conf delete mode 100644 sources/vhost1.in/root/temperature.cfg delete mode 100755 sources/vhost1.in/root/temperature.sh delete mode 100755 sources/vhost2.in/01_setupnetworking.sh delete mode 100755 sources/vhost2.in/99_setupsystem.sh delete mode 100644 sources/vhost2.in/etc/lxc/lxc.conf delete mode 100644 sources/vhost2.in/etc/sysconfig/opensm delete mode 100644 sources/vhost2.in/etc/sysctl.d/01-lxc.conf delete mode 100644 sources/vhost2.in/root/temperature.cfg delete mode 100755 sources/vhost2.in/root/temperature.sh diff --git a/sources/vhost1.in/01_setupnetworking.sh b/sources/vhost1.in/01_setupnetworking.sh deleted file mode 100755 index 6de335c..0000000 --- a/sources/vhost1.in/01_setupnetworking.sh +++ /dev/null @@ -1,225 +0,0 @@ -#!/bin/sh -set -x - -# network interfaces are: -# eno1: port 1 of sysplanar NetXtreme II, used for internal host bond -# eno2: port 2 of sysplanar NetXtreme II, used for internal container bond -# eno3: port 3 of sysplanar NetXtreme II, used for external container bond -# eno4: port 4 of sysplanar NetXtreme II, unused -# ens2f0: port 0 of PCIe NetXtreme, used for internal host bond -# ens2f1: port 1 of PCIe NetXtreme, used for internal container bond -# ens2f2: port 2 of PCIe NetXtreme, used for external container bond -# ens2f3: port 3 of PCIe NetXtreme, unused -# enp0s29f0u2: IMM -# enp0s29f7u6: Huawei E3372H-320 LTE USB modem -# ens4: port 1 of Mellanox ConnectX-3 Pro, used for 10g network -# ens4d1: port 2 of Mellanox ConnectX-3 Pro, unused - - -INTERNAL_HOST_BOND_NAME=bondhi -INTERNAL_HOST_BOND_DEVICE=${INTERNAL_HOST_BOND_NAME}-dev -INTERNAL_HOST_BOND_SLAVE_1_NAME=${INTERNAL_HOST_BOND_NAME}-slave-1 -INTERNAL_HOST_BOND_SLAVE_1_DEVICE=eno1 -INTERNAL_HOST_BOND_SLAVE_2_NAME=${INTERNAL_HOST_BOND_NAME}-slave-2 -INTERNAL_HOST_BOND_SLAVE_2_DEVICE=ens2f0 - -INTERNAL_CONTAINER_BOND_NAME=bondci -INTERNAL_CONTAINER_BOND_DEVICE=${INTERNAL_CONTAINER_BOND_NAME}-dev -INTERNAL_CONTAINER_BOND_SLAVE_1_NAME=${INTERNAL_CONTAINER_BOND_NAME}-slave-1 -INTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE=eno2 -INTERNAL_CONTAINER_BOND_SLAVE_2_NAME=${INTERNAL_CONTAINER_BOND_NAME}-slave-2 -INTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE=ens2f1 - -INTERNAL_CONTAINER_BRIDGE_NAME=brci -INTERNAL_CONTAINER_BRIDGE_DEVICE=${INTERNAL_CONTAINER_BRIDGE_NAME}-dev - -HOST_ONLY_CONTAINER_BRIDGE_NAME=brch -HOST_ONLY_CONTAINER_BRIDGE_DEVICE=${HOST_ONLY_CONTAINER_BRIDGE_NAME}-dev - -EXTERNAL_CONTAINER_BOND_NAME=bondce -EXTERNAL_CONTAINER_BOND_DEVICE=${EXTERNAL_CONTAINER_BOND_NAME}-dev -EXTERNAL_CONTAINER_BOND_SLAVE_1_NAME=${EXTERNAL_CONTAINER_BOND_NAME}-slave-1 -EXTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE=eno3 -EXTERNAL_CONTAINER_BOND_SLAVE_2_NAME=${EXTERNAL_CONTAINER_BOND_NAME}-slave-2 -EXTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE=ens2f2 - -EXTERNAL_CONTAINER_BRIDGE_NAME=brce -EXTERNAL_CONTAINER_BRIDGE_DEVICE=${EXTERNAL_CONTAINER_BRIDGE_NAME}-dev - -TENG_CONNECTION_NAME=10g -TENG_CONNECTION_DEVICE=ens4 - -HUAWEI_CONNECTION_NAME=huawei -HUAWEI_CONNECTION_DEVICE=enp0s29f7u6 - -IMM_CONNECTION_NAME=imm -IMM_CONNECTION_DEVICE=enp0s29f0u2 - - -CONNECTIONS=$(nmcli --terse connection show | wc -l) -while [ $CONNECTIONS -gt 1 ] -do - CONNECTION_LINE=$(nmcli --terse connection show \ - | grep --invert-match '^lo:' | head -n 1) - CONNECTION_UUID=$(echo $CONNECTION_LINE | cut -f 2 -d ':') - nmcli connection delete uuid "$CONNECTION_UUID" - CONNECTIONS=$(nmcli --terse connection show | wc -l) -done - - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_HOST_BOND_NAME \ - connection.interface-name $INTERNAL_HOST_BOND_DEVICE \ - connection.type bond \ - bond.options "mode=802.3ad,lacp_rate=fast,miimon=100,xmit_hash_policy=layer2+3" \ - ipv4.addresses "10.228.93.1/16" \ - ipv4.dns "10.228.109.159, 10.228.92.159" \ - ipv4.dns-search "in.useribm.hu" \ - ipv4.gateway "10.228.109.254" \ - ipv4.method "manual" \ - ipv4.route-metric "100" \ - ipv6.addresses "2001:1aa1:000a:7dae:e41f:13ff:febc:c320/64" \ - ipv6.dns "2001:1aa1:000a:7dae:000c:18ff:fe03:5c9f, 2001:1aa1:000a:7dae:000c:18ff:fe03:6d9f" \ - ipv6.dns-search "in.useribm.hu" \ - ipv6.gateway "2001:1aa1:000a:7dae:000c:18ff:fe03:6dfe" \ - ipv6.method "manual" \ - ipv6.route-metric "100" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_HOST_BOND_SLAVE_1_NAME \ - connection.interface-name $INTERNAL_HOST_BOND_SLAVE_1_DEVICE \ - connection.master $INTERNAL_HOST_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_HOST_BOND_SLAVE_2_NAME \ - connection.interface-name $INTERNAL_HOST_BOND_SLAVE_2_DEVICE \ - connection.master $INTERNAL_HOST_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BRIDGE_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.type bridge \ - ipv4.method "disabled" \ - ipv6.method "disabled" \ - bridge.stp no \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BOND_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BOND_DEVICE \ - connection.type bond \ - connection.master $INTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.slave-type bridge \ - bond.options "mode=802.3ad,lacp_rate=fast,miimon=100,xmit_hash_policy=layer2+3" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BOND_SLAVE_1_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE \ - connection.master $INTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BOND_SLAVE_2_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE \ - connection.master $INTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $HOST_ONLY_CONTAINER_BRIDGE_NAME \ - connection.interface-name $HOST_ONLY_CONTAINER_BRIDGE_DEVICE \ - connection.type bridge \ - ipv4.method "disabled" \ - ipv6.method "disabled" \ - bridge.stp no \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BRIDGE_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.type bridge \ - ipv4.method "disabled" \ - ipv6.method "disabled" \ - bridge.stp no \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BOND_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BOND_DEVICE \ - connection.type bond \ - connection.master $EXTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.slave-type bridge \ - bond.options "mode=active-backup,miimon=100" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BOND_SLAVE_1_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE \ - connection.master $EXTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BOND_SLAVE_2_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE \ - connection.master $EXTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $TENG_CONNECTION_NAME \ - connection.interface-name $TENG_CONNECTION_DEVICE \ - connection.type 802-3-ethernet \ - ipv4.addresses "172.24.107.1/24" \ - ipv4.method "manual" \ - ipv6.addresses "2001:1aa1:000a:006b:7cfe:90ff:febc:d320/64" \ - ipv6.dns "2001:1aa1:000a:7dae:000c:18ff:fe03:5c9f, 2001:1aa1:000a:7dae:000c:18ff:fe03:6d9f" \ - ipv6.dns-search "in.useribm.hu" \ - ipv6.method "manual" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $HUAWEI_CONNECTION_NAME \ - connection.interface-name $HUAWEI_CONNECTION_DEVICE \ - connection.type 802-3-ethernet \ - ipv4.method "auto" \ - ipv4.route-metric "1000" \ - ipv6.method "disabled" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $IMM_CONNECTION_NAME \ - connection.interface-name $IMM_CONNECTION_DEVICE \ - connection.type 802-3-ethernet \ - ipv4.method "auto" \ - ipv4.route-metric "2000" \ - ipv6.method "disabled" \ - save yes diff --git a/sources/vhost1.in/02_setupcluster.sh b/sources/vhost1.in/02_setupcluster.sh deleted file mode 100755 index 7380c8f..0000000 --- a/sources/vhost1.in/02_setupcluster.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/bin/sh - - -echo "quorum:" -echo "dnf install corosync-qnetd pcs" -echo "pcs qdevice setup model net --enable --start" -echo "pcs qdevice status net --full" -echo -echo "vhost1, vhost2:" -echo "dnf install corosync-qdevice fence-agents-all pcs pacemaker" -echo -echo "quorum, vhost1, vhost2:" -echo "systemctl start pcsd.service" -echo "systemctl enable pcsd.service" -echo -echo "passwd hacluster (Passw@rd01)" -echo "pcs host auth quorum.in.useribm.hu" -echo "pcs host auth vhost1.in.useribm.hu" -echo "pcs host auth vhost2.in.useribm.hu" -echo -echo "vhost1 only:" -echo "[pcs cluster destroy --all]" -echo 'pcs cluster setup lxc-cluster \' -echo ' vhost1 addr=10.228.93.1 addr=172.24.107.1 \' -echo ' vhost2 addr=10.228.93.2 addr=172.24.107.2' -echo "pcs cluster start --all" -echo "pcs cluster enable --all" -echo -echo "pcs quorum status" -echo "pcs quorum device add model net host=quorum.in.useribm.hu algorithm=ffsplit" -echo "pcs quorum status" -echo -echo "pcs property set maintenance-mode=true" -echo -echo 'pcs stonith create vhost1-fence fence_imm \' -echo ' ip="vhost1imm.in.useribm.hu" \' -echo ' pcmk_host_list="vhost1.in.useribm.hu" \' -echo ' username="hacluster" password="Passw@rd01"' -echo 'pcs constraint location vhost1-fence avoids vhost1' -echo 'pcs stonith create vhost2-fence fence_imm \' -echo ' ip="vhost2imm.in.useribm.hu" \' -echo ' pcmk_host_list="vhost2.in.useribm.hu" \' -echo ' username="hacluster" password="Passw@rd01"' -echo 'pcs constraint location vhost2-fence avoids vhost2' -echo "[fence_imm -a vhost1imm.in.useribm.hu -l hacluster -p Passw@rd01 -o status]" -echo "[fence_imm -a vhost2imm.in.useribm.hu -l hacluster -p Passw@rd01 -o status]" -echo -#vi /etc/lvm/lvm.conf (on both sides!!!): -# # Configuration option global/system_id_source. -# system_id_source = "uname" -#[lvm systemid; uname -n] -#pvcreate /dev/mapper/ -#vgcreate --setautoactivation n /dev/mapper/ -#[vgs -o+systemid] -#lvcreate --size ...GiB --name -#[lvs] -#mkfs.ext4 -L /dev// -#lvmdevices --adddev /dev/ (on both sides!!!) - -#pcs resource create lxc-lvm ocf:heartbeat:LVM-activate \ -# vgname= vg_access_mode=system_id --group lxc-group -echo 'pcs resource create lxc-fs ocf:heartbeat:Filesystem \' -echo ' device="/dev/mapper/lxc" \' -echo ' directory="/lxc" fstype="ext4" --group lxc-group' -echo "pcs resource update lxc-fs op stop timeout=300s" -echo "pcs resource create lxc-service systemd:lxc --group lxc-group" -echo "pcs resource update lxc-service op start timeout=600s" -echo "pcs resource update lxc-service op stop timeout=600s" -echo -echo "pcs property set maintenance-mode=false" -#pcs resource unmanage lxc-service -echo -echo "pcs node standby " -echo "pcs node unstandby " -echo "pcs status" -echo "pcs cluster status" -echo "pcs quorum status" -echo "pcs cluster config show" -echo "pcs resource config " -echo -echo "pcs resource move " -echo "pcs constraint" -echo "pcs resource clear " diff --git a/sources/vhost1.in/99_setupsystem.sh b/sources/vhost1.in/99_setupsystem.sh deleted file mode 100755 index f7d8e85..0000000 --- a/sources/vhost1.in/99_setupsystem.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh - - -hostnamectl set-hostname vhost1.in.useribm.hu -timedatectl set-timezone Europe/Budapest - -dnf install \ - chrony \ - cronie \ - infiniband-diags \ - ipmitool \ - logrotate \ - lxc \ - lxc-templates \ - mailx \ - mercurial-py3 \ - opensm \ - postfix \ - rdma-core \ - rsyslog \ - screen \ - vim-enhanced \ - wget - -systemctl disable firewalld.service - -systemctl enable logrotate.timer -systemctl enable lxc.service -systemctl enable opensm.service -systemctl enable rsyslog.service - -systemctl start logrotate.timer -systemctl start lxc.service -systemctl start opensm.service -systemctl start rsyslog.service - -systemctl stop firewalld.service diff --git a/sources/vhost1.in/etc/lxc/lxc.conf b/sources/vhost1.in/etc/lxc/lxc.conf deleted file mode 100644 index 48f7ddf..0000000 --- a/sources/vhost1.in/etc/lxc/lxc.conf +++ /dev/null @@ -1 +0,0 @@ -lxc.lxcpath = /lxc/containers diff --git a/sources/vhost1.in/etc/sysconfig/opensm b/sources/vhost1.in/etc/sysconfig/opensm deleted file mode 100644 index 5feabe4..0000000 --- a/sources/vhost1.in/etc/sysconfig/opensm +++ /dev/null @@ -1,3 +0,0 @@ -# (Port) GUIDS queried by ibstat -GUIDS="0x5849560e62c30201 0x5849560e62c30202" -PRIORITY=15 diff --git a/sources/vhost1.in/etc/sysctl.d/01-lxc.conf b/sources/vhost1.in/etc/sysctl.d/01-lxc.conf deleted file mode 100644 index 77fcb19..0000000 --- a/sources/vhost1.in/etc/sysctl.d/01-lxc.conf +++ /dev/null @@ -1,8 +0,0 @@ -#fs.inotify.max_queued_events = 16384 -# This is the default. - -fs.inotify.max_user_instances = 1024 -# The default is 128. - -#fs.inotify.max_user_watches = 8192 -# This is the default. diff --git a/sources/vhost1.in/root/temperature.cfg b/sources/vhost1.in/root/temperature.cfg deleted file mode 100644 index 8cabc21..0000000 --- a/sources/vhost1.in/root/temperature.cfg +++ /dev/null @@ -1,29 +0,0 @@ -MODEM_IP="192.168.8.1" - -ZFELLEG_NUM="+36209541513" -CSGULYAS_NUM="+36303744065" -FSCHNELL_NUM="+36309502529" -RRENDEK_NUM="+36309775888" -MSZABO_NUM="+36704581234" - -AKOSZTOLANYI_NUM="+36205837539" -TLEVAI_NUM="+36302976481" - -ZSSZALAI_NUM="+36309406111" - - -HEARTBEAT_NUMS="$ZFELLEG_NUM $CSGULYAS_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" - -TEST_NUMS="$ZFELLEG_NUM" - -#TEXT_NUMS="$ZFELLEG_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" -#TEXT_NUMS="$ZSSZALAI_NUM $ZFELLEG_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" -TEXT_NUMS="$AKOSZTOLANYI_NUM $TLEVAI_NUM $ZSSZALAI_NUM $ZFELLEG_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" - - -WARNING_THRESHOLD=25 -ERROR_THRESHOLD=30 -CRITICAL_THRESHOLD=35 - -HOST_SERIAL=$(hostname | cut -c 6) -IMM_FQDN="vhost${HOST_SERIAL}imm.in.useribm.hu" diff --git a/sources/vhost1.in/root/temperature.sh b/sources/vhost1.in/root/temperature.sh deleted file mode 100755 index 8df0c34..0000000 --- a/sources/vhost1.in/root/temperature.sh +++ /dev/null @@ -1,439 +0,0 @@ -#!/bin/sh - - -SCRIPT_PATH=$(dirname $(realpath $0)) -SCRIPT_BASE=$(basename $(realpath $0) .sh) -SCRIPT_CONFIG=$SCRIPT_PATH/${SCRIPT_BASE}.cfg -SCRIPT_STOP=$SCRIPT_PATH/${SCRIPT_BASE}.stop -SSH_KEYS_PATH=$SCRIPT_PATH/user-ssh - - -source $SCRIPT_CONFIG - - -delete_logs() { - LOG_COUNT=$(ls /var/log/temperature-????????.log | wc -l) - if [ $LOG_COUNT -gt 14 ] - then - FIRST_LOG=$(ls /var/log/temperature-????????.log | head -n 1) - rm -f $FIRST_LOG - fi - LOG_COUNT=$(ls /var/log/temperature-script-????????.log | wc -l) - if [ $LOG_COUNT -gt 14 ] - then - FIRST_LOG=$(ls /var/log/temperature-script-????????.log | head -n 1) - rm -f $FIRST_LOG - fi - LOG_COUNT=$(ls /var/log/temperature-std???-????????.log | wc -l) - if [ $LOG_COUNT -gt 14 ] - then - FIRST_LOG=$(ls /var/log/temperature-std???-????????.log | head -n 1) - rm -f $FIRST_LOG - fi -} - -delete_mail() { - echo 'delete (from "Cron Daemon")' | mail -N -} - -delete_received_smses() { - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' 1201001" \ - http://$MODEM_IP/api/sms/sms-list \ - | grep '' \ - | while read LINE - do - INDEX=$(echo $LINE | sed 's|^.*\([0-9]*\).*$|\1|') - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: delete_received_smses" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "$INDEX" \ - http://$MODEM_IP/api/sms/delete-sms >>/var/log/temperature-script-${PRG_DATE}.log - - touch $SCRIPT_STOP - done -} - -delete_sent_smses() { - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' 1202001" \ - http://$MODEM_IP/api/sms/sms-list \ - | grep '' \ - | while read LINE - do - INDEX=$(echo $LINE | sed 's|^.*\([0-9]*\).*$|\1|') - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: delete_sent_smses" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "$INDEX" \ - http://$MODEM_IP/api/sms/delete-sms >>/var/log/temperature-script-${PRG_DATE}.log - done -} - -log_temperature() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - echo "${STR_DATE}: ${MESSAGE_TYPE}: $TEMPERATURE" | tee -a /var/log/temperature-${PRG_DATE}.log -} - -process_received_smses() { - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' 1201001" \ - http://$MODEM_IP/api/sms/sms-list \ - > /tmp/received_smses.txt - grep -i 'Stop' /tmp/received_smses.txt \ - | while read LINE - do - echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: process_received_smses" >>/var/log/temperature-script-${PRG_DATE}.log - touch $SCRIPT_STOP - done -} - -send_heartbeat_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - if [ -f $SCRIPT_STOP ] - then - SEND_STATUS="does NOT" - else - SEND_STATUS="DOES" - fi - MESSAGE="$MESSAGE_PREFIX Heartbeat ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." - SMS_TARGETS="" - for NUM in $HEARTBEAT_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_heartbeat_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -send_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - MESSAGE="$MESSAGE_PREFIX ${MESSAGE_TYPE}: temperature is $TEMPERATURE" - SMS_TARGETS="" - for NUM in $TEXT_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -send_stop_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - if [ ! -f $SCRIPT_STOP ] - then - return - fi - RECEIVED_SMS_COUNT=$(grep '' /tmp/received_smses.txt \ - | sed 's|^.*\([0-9]*\).*$|\1|') - if [ $RECEIVED_SMS_COUNT -lt 1 ] - then - return - fi - STOP_NUMBER=$(grep '' /tmp/received_smses.txt \ - | sed 's/.*\(.*\)<\/Phone>.*$/\1/') - MESSAGE="$MESSAGE_PREFIX Stopped by ${STOP_NUMBER}, ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system does NOT send SMSs for the next 24 hours." - SMS_TARGETS="" - for NUM in $TEXT_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_stop_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -send_test_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - if [ -f $SCRIPT_STOP ] - then - SEND_STATUS="does NOT" - else - SEND_STATUS="DOES" - fi - MESSAGE="$MESSAGE_PREFIX Test ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." - SMS_TARGETS="" - for NUM in $TEST_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_test_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -shutdown_hosts() { - SEVERITY=$1 - - echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log - echo "shutting down hosts at $SEVERITY" >>/var/log/temperature-script-${PRG_DATE}.log - if [ $SEVERITY -le 1 ] - then - echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff - fi - if [ $SEVERITY -gt 1 ] - then - echo "shutting down aiac922.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 aiac922.in.useribm.hu poweroff - echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff - fi -} - - -IPMI_PROCESSES=$(ps -ef | grep [i]pmitool | wc -l) -if [ $IPMI_PROCESSES -ne 0 ] -then - echo "$IPMI_PROCESSES ipmitool processes running, exiting." >&2 - exit 1 -fi - -TEMPERATURE=$(ipmitool -H $IMM_FQDN -I open -P pwd sensor get 'Ambient Temp' \ - | grep 'Sensor Reading' \ - | sed 's/^ Sensor Reading : \([^ ]*\) (+\/- .) degrees C$/\1/') - -MESSAGE_PREFIX="[$(hostname --short)]" -MESSAGE_TYPE="Info" -SEVERITY=0 - -if [ $TEMPERATURE -ge $WARNING_THRESHOLD ] -then - MESSAGE_TYPE="Warning" - SEVERITY=1 -fi - -if [ $TEMPERATURE -ge $ERROR_THRESHOLD ] -then - MESSAGE_TYPE="Error" - SEVERITY=2 -fi - -if [ $TEMPERATURE -ge $CRITICAL_THRESHOLD ] -then - MESSAGE_TYPE="Critical" - SEVERITY=3 -fi - -if [ "$1" == "test" ] -then - send_test_sms $MESSAGE_TYPE $TEMPERATURE - exit 0 -fi - -log_temperature $MESSAGE_TYPE $TEMPERATURE - -if [ -f $SCRIPT_STOP ] -then - CURRENT_TS=$(date +%s) - SCRIPT_STOP_TS=$(stat --format=%Y $SCRIPT_STOP) - TS_DIFF=$(( $CURRENT_TS - $SCRIPT_STOP_TS )) - if [ $TS_DIFF -gt 86400 ] - then - rm -f $SCRIPT_STOP - fi -fi - -DAY_HOUR_MINUTE=$(date "+%u%H%M") -if [ "$DAY_HOUR_MINUTE" == "11000" ] -then - send_heartbeat_sms $MESSAGE_TYPE $TEMPERATURE -fi - -if [ -f $SCRIPT_STOP ] -then - exit 0 -fi - -MINUTE_LASTDIGIT=$(date "+%M" | cut -c 2) -case "$MINUTE_LASTDIGIT" in - "1" | "3" | "5" | "7" | "9") - PARITY=1 - ;; - "0" | "2" | "4" | "6" | "8") - PARITY=2 - ;; -esac - -if [ "$PARITY" != "$HOST_SERIAL" ] -then - exit 0 -fi - -if [ $SEVERITY -gt 0 ] -then - shutdown_hosts $SEVERITY - send_sms $MESSAGE_TYPE $TEMPERATURE -fi -delete_logs -delete_mail -process_received_smses -send_stop_sms $MESSAGE_TYPE $TEMPERATURE -delete_received_smses -delete_sent_smses diff --git a/sources/vhost2.in/01_setupnetworking.sh b/sources/vhost2.in/01_setupnetworking.sh deleted file mode 100755 index b276e9d..0000000 --- a/sources/vhost2.in/01_setupnetworking.sh +++ /dev/null @@ -1,225 +0,0 @@ -#!/bin/sh -set -x - -# network interfaces are: -# eno1: port 1 of sysplanar NetXtreme II, used for internal host bond -# eno2: port 2 of sysplanar NetXtreme II, used for internal container bond -# eno3: port 3 of sysplanar NetXtreme II, used for external container bond -# eno4: port 4 of sysplanar NetXtreme II, unused -# ens2f0: port 0 of PCIe NetXtreme, used for internal host bond -# ens2f1: port 1 of PCIe NetXtreme, used for internal container bond -# ens2f2: port 2 of PCIe NetXtreme, used for external container bond -# ens2f3: port 3 of PCIe NetXtreme, unused -# enp0s29f0u2: IMM -# enp0s29f7u6: Huawei E3372H-320 LTE USB modem -# ens4: port 1 of Mellanox ConnectX-3 Pro, used for 10g network -# ens4d1: port 2 of Mellanox ConnectX-3 Pro, unused - - -INTERNAL_HOST_BOND_NAME=bondhi -INTERNAL_HOST_BOND_DEVICE=${INTERNAL_HOST_BOND_NAME}-dev -INTERNAL_HOST_BOND_SLAVE_1_NAME=${INTERNAL_HOST_BOND_NAME}-slave-1 -INTERNAL_HOST_BOND_SLAVE_1_DEVICE=eno1 -INTERNAL_HOST_BOND_SLAVE_2_NAME=${INTERNAL_HOST_BOND_NAME}-slave-2 -INTERNAL_HOST_BOND_SLAVE_2_DEVICE=ens2f0 - -INTERNAL_CONTAINER_BOND_NAME=bondci -INTERNAL_CONTAINER_BOND_DEVICE=${INTERNAL_CONTAINER_BOND_NAME}-dev -INTERNAL_CONTAINER_BOND_SLAVE_1_NAME=${INTERNAL_CONTAINER_BOND_NAME}-slave-1 -INTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE=eno2 -INTERNAL_CONTAINER_BOND_SLAVE_2_NAME=${INTERNAL_CONTAINER_BOND_NAME}-slave-2 -INTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE=ens2f1 - -INTERNAL_CONTAINER_BRIDGE_NAME=brci -INTERNAL_CONTAINER_BRIDGE_DEVICE=${INTERNAL_CONTAINER_BRIDGE_NAME}-dev - -HOST_ONLY_CONTAINER_BRIDGE_NAME=brch -HOST_ONLY_CONTAINER_BRIDGE_DEVICE=${HOST_ONLY_CONTAINER_BRIDGE_NAME}-dev - -EXTERNAL_CONTAINER_BOND_NAME=bondce -EXTERNAL_CONTAINER_BOND_DEVICE=${EXTERNAL_CONTAINER_BOND_NAME}-dev -EXTERNAL_CONTAINER_BOND_SLAVE_1_NAME=${EXTERNAL_CONTAINER_BOND_NAME}-slave-1 -EXTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE=eno3 -EXTERNAL_CONTAINER_BOND_SLAVE_2_NAME=${EXTERNAL_CONTAINER_BOND_NAME}-slave-2 -EXTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE=ens2f2 - -EXTERNAL_CONTAINER_BRIDGE_NAME=brce -EXTERNAL_CONTAINER_BRIDGE_DEVICE=${EXTERNAL_CONTAINER_BRIDGE_NAME}-dev - -TENG_CONNECTION_NAME=10g -TENG_CONNECTION_DEVICE=ens4 - -HUAWEI_CONNECTION_NAME=huawei -HUAWEI_CONNECTION_DEVICE=enp0s29f7u6 - -IMM_CONNECTION_NAME=imm -IMM_CONNECTION_DEVICE=enp0s29f0u2 - - -CONNECTIONS=$(nmcli --terse connection show | wc -l) -while [ $CONNECTIONS -gt 1 ] -do - CONNECTION_LINE=$(nmcli --terse connection show \ - | grep --invert-match '^lo:' | head -n 1) - CONNECTION_UUID=$(echo $CONNECTION_LINE | cut -f 2 -d ':') - nmcli connection delete uuid "$CONNECTION_UUID" - CONNECTIONS=$(nmcli --terse connection show | wc -l) -done - - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_HOST_BOND_NAME \ - connection.interface-name $INTERNAL_HOST_BOND_DEVICE \ - connection.type bond \ - bond.options "mode=802.3ad,lacp_rate=fast,miimon=100,xmit_hash_policy=layer2+3" \ - ipv4.addresses "10.228.93.2/16" \ - ipv4.dns "10.228.109.159, 10.228.92.159" \ - ipv4.dns-search "in.useribm.hu" \ - ipv4.gateway "10.228.109.254" \ - ipv4.method "manual" \ - ipv4.route-metric "100" \ - ipv6.addresses "2001:1aa1:000a:7dae:e41f:13ff:febc:e0d0/64" \ - ipv6.dns "2001:1aa1:000a:7dae:000c:18ff:fe03:5c9f, 2001:1aa1:000a:7dae:000c:18ff:fe03:6d9f" \ - ipv6.dns-search "in.useribm.hu" \ - ipv6.gateway "2001:1aa1:000a:7dae:000c:18ff:fe03:6dfe" \ - ipv6.method "manual" \ - ipv6.route-metric "100" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_HOST_BOND_SLAVE_1_NAME \ - connection.interface-name $INTERNAL_HOST_BOND_SLAVE_1_DEVICE \ - connection.master $INTERNAL_HOST_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_HOST_BOND_SLAVE_2_NAME \ - connection.interface-name $INTERNAL_HOST_BOND_SLAVE_2_DEVICE \ - connection.master $INTERNAL_HOST_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BRIDGE_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.type bridge \ - ipv4.method "disabled" \ - ipv6.method "disabled" \ - bridge.stp no \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BOND_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BOND_DEVICE \ - connection.type bond \ - connection.master $INTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.slave-type bridge \ - bond.options "mode=802.3ad,lacp_rate=fast,miimon=100,xmit_hash_policy=layer2+3" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BOND_SLAVE_1_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE \ - connection.master $INTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $INTERNAL_CONTAINER_BOND_SLAVE_2_NAME \ - connection.interface-name $INTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE \ - connection.master $INTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $HOST_ONLY_CONTAINER_BRIDGE_NAME \ - connection.interface-name $HOST_ONLY_CONTAINER_BRIDGE_DEVICE \ - connection.type bridge \ - ipv4.method "disabled" \ - ipv6.method "disabled" \ - bridge.stp no \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BRIDGE_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.type bridge \ - ipv4.method "disabled" \ - ipv6.method "disabled" \ - bridge.stp no \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BOND_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BOND_DEVICE \ - connection.type bond \ - connection.master $EXTERNAL_CONTAINER_BRIDGE_DEVICE \ - connection.slave-type bridge \ - bond.options "mode=active-backup,miimon=100" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BOND_SLAVE_1_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BOND_SLAVE_1_DEVICE \ - connection.master $EXTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $EXTERNAL_CONTAINER_BOND_SLAVE_2_NAME \ - connection.interface-name $EXTERNAL_CONTAINER_BOND_SLAVE_2_DEVICE \ - connection.master $EXTERNAL_CONTAINER_BOND_DEVICE \ - connection.slave-type bond \ - connection.type 802-3-ethernet \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $TENG_CONNECTION_NAME \ - connection.interface-name $TENG_CONNECTION_DEVICE \ - connection.type 802-3-ethernet \ - ipv4.addresses "172.24.107.2/24" \ - ipv4.method "manual" \ - ipv6.addresses "2001:1aa1:000a:006b:e41d:2dff:feb9:7170/64" \ - ipv6.dns "2001:1aa1:000a:7dae:000c:18ff:fe03:5c9f, 2001:1aa1:000a:7dae:000c:18ff:fe03:6d9f" \ - ipv6.dns-search "in.useribm.hu" \ - ipv6.method "manual" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $HUAWEI_CONNECTION_NAME \ - connection.interface-name $HUAWEI_CONNECTION_DEVICE \ - connection.type 802-3-ethernet \ - ipv4.method "auto" \ - ipv4.route-metric "1000" \ - ipv6.method "disabled" \ - save yes - -nmcli connection add \ - connection.autoconnect yes \ - connection.id $IMM_CONNECTION_NAME \ - connection.interface-name $IMM_CONNECTION_DEVICE \ - connection.type 802-3-ethernet \ - ipv4.method "auto" \ - ipv4.route-metric "2000" \ - ipv6.method "disabled" \ - save yes diff --git a/sources/vhost2.in/99_setupsystem.sh b/sources/vhost2.in/99_setupsystem.sh deleted file mode 100755 index a791aad..0000000 --- a/sources/vhost2.in/99_setupsystem.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/sh - - -hostnamectl set-hostname vhost2.in.useribm.hu -timedatectl set-timezone Europe/Budapest - -dnf install \ - chrony \ - cronie \ - infiniband-diags \ - ipmitool \ - logrotate \ - lxc \ - lxc-templates \ - mailx \ - mercurial-py3 \ - opensm \ - postfix \ - rdma-core \ - rsyslog \ - screen \ - vim-enhanced \ - wget - -systemctl disable firewalld.service - -systemctl enable logrotate.timer -systemctl enable lxc.service -systemctl enable opensm.service -systemctl enable rsyslog.service - -systemctl start logrotate.timer -systemctl start lxc.service -systemctl start opensm.service -systemctl start rsyslog.service - -systemctl stop firewalld.service diff --git a/sources/vhost2.in/etc/lxc/lxc.conf b/sources/vhost2.in/etc/lxc/lxc.conf deleted file mode 100644 index 48f7ddf..0000000 --- a/sources/vhost2.in/etc/lxc/lxc.conf +++ /dev/null @@ -1 +0,0 @@ -lxc.lxcpath = /lxc/containers diff --git a/sources/vhost2.in/etc/sysconfig/opensm b/sources/vhost2.in/etc/sysconfig/opensm deleted file mode 100644 index ba0cc39..0000000 --- a/sources/vhost2.in/etc/sysconfig/opensm +++ /dev/null @@ -1,3 +0,0 @@ -# (Port) GUIDS queried by ibstat -GUIDS="0x5849560e62c30901 0x5849560e62c30902" -PRIORITY=0 diff --git a/sources/vhost2.in/etc/sysctl.d/01-lxc.conf b/sources/vhost2.in/etc/sysctl.d/01-lxc.conf deleted file mode 100644 index 77fcb19..0000000 --- a/sources/vhost2.in/etc/sysctl.d/01-lxc.conf +++ /dev/null @@ -1,8 +0,0 @@ -#fs.inotify.max_queued_events = 16384 -# This is the default. - -fs.inotify.max_user_instances = 1024 -# The default is 128. - -#fs.inotify.max_user_watches = 8192 -# This is the default. diff --git a/sources/vhost2.in/root/temperature.cfg b/sources/vhost2.in/root/temperature.cfg deleted file mode 100644 index 8cabc21..0000000 --- a/sources/vhost2.in/root/temperature.cfg +++ /dev/null @@ -1,29 +0,0 @@ -MODEM_IP="192.168.8.1" - -ZFELLEG_NUM="+36209541513" -CSGULYAS_NUM="+36303744065" -FSCHNELL_NUM="+36309502529" -RRENDEK_NUM="+36309775888" -MSZABO_NUM="+36704581234" - -AKOSZTOLANYI_NUM="+36205837539" -TLEVAI_NUM="+36302976481" - -ZSSZALAI_NUM="+36309406111" - - -HEARTBEAT_NUMS="$ZFELLEG_NUM $CSGULYAS_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" - -TEST_NUMS="$ZFELLEG_NUM" - -#TEXT_NUMS="$ZFELLEG_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" -#TEXT_NUMS="$ZSSZALAI_NUM $ZFELLEG_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" -TEXT_NUMS="$AKOSZTOLANYI_NUM $TLEVAI_NUM $ZSSZALAI_NUM $ZFELLEG_NUM $FSCHNELL_NUM $RRENDEK_NUM $MSZABO_NUM" - - -WARNING_THRESHOLD=25 -ERROR_THRESHOLD=30 -CRITICAL_THRESHOLD=35 - -HOST_SERIAL=$(hostname | cut -c 6) -IMM_FQDN="vhost${HOST_SERIAL}imm.in.useribm.hu" diff --git a/sources/vhost2.in/root/temperature.sh b/sources/vhost2.in/root/temperature.sh deleted file mode 100755 index 8df0c34..0000000 --- a/sources/vhost2.in/root/temperature.sh +++ /dev/null @@ -1,439 +0,0 @@ -#!/bin/sh - - -SCRIPT_PATH=$(dirname $(realpath $0)) -SCRIPT_BASE=$(basename $(realpath $0) .sh) -SCRIPT_CONFIG=$SCRIPT_PATH/${SCRIPT_BASE}.cfg -SCRIPT_STOP=$SCRIPT_PATH/${SCRIPT_BASE}.stop -SSH_KEYS_PATH=$SCRIPT_PATH/user-ssh - - -source $SCRIPT_CONFIG - - -delete_logs() { - LOG_COUNT=$(ls /var/log/temperature-????????.log | wc -l) - if [ $LOG_COUNT -gt 14 ] - then - FIRST_LOG=$(ls /var/log/temperature-????????.log | head -n 1) - rm -f $FIRST_LOG - fi - LOG_COUNT=$(ls /var/log/temperature-script-????????.log | wc -l) - if [ $LOG_COUNT -gt 14 ] - then - FIRST_LOG=$(ls /var/log/temperature-script-????????.log | head -n 1) - rm -f $FIRST_LOG - fi - LOG_COUNT=$(ls /var/log/temperature-std???-????????.log | wc -l) - if [ $LOG_COUNT -gt 14 ] - then - FIRST_LOG=$(ls /var/log/temperature-std???-????????.log | head -n 1) - rm -f $FIRST_LOG - fi -} - -delete_mail() { - echo 'delete (from "Cron Daemon")' | mail -N -} - -delete_received_smses() { - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' 1201001" \ - http://$MODEM_IP/api/sms/sms-list \ - | grep '' \ - | while read LINE - do - INDEX=$(echo $LINE | sed 's|^.*\([0-9]*\).*$|\1|') - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: delete_received_smses" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "$INDEX" \ - http://$MODEM_IP/api/sms/delete-sms >>/var/log/temperature-script-${PRG_DATE}.log - - touch $SCRIPT_STOP - done -} - -delete_sent_smses() { - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' 1202001" \ - http://$MODEM_IP/api/sms/sms-list \ - | grep '' \ - | while read LINE - do - INDEX=$(echo $LINE | sed 's|^.*\([0-9]*\).*$|\1|') - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: delete_sent_smses" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "$INDEX" \ - http://$MODEM_IP/api/sms/delete-sms >>/var/log/temperature-script-${PRG_DATE}.log - done -} - -log_temperature() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - echo "${STR_DATE}: ${MESSAGE_TYPE}: $TEMPERATURE" | tee -a /var/log/temperature-${PRG_DATE}.log -} - -process_received_smses() { - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' 1201001" \ - http://$MODEM_IP/api/sms/sms-list \ - > /tmp/received_smses.txt - grep -i 'Stop' /tmp/received_smses.txt \ - | while read LINE - do - echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: process_received_smses" >>/var/log/temperature-script-${PRG_DATE}.log - touch $SCRIPT_STOP - done -} - -send_heartbeat_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - if [ -f $SCRIPT_STOP ] - then - SEND_STATUS="does NOT" - else - SEND_STATUS="DOES" - fi - MESSAGE="$MESSAGE_PREFIX Heartbeat ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." - SMS_TARGETS="" - for NUM in $HEARTBEAT_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_heartbeat_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -send_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - MESSAGE="$MESSAGE_PREFIX ${MESSAGE_TYPE}: temperature is $TEMPERATURE" - SMS_TARGETS="" - for NUM in $TEXT_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -send_stop_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - if [ ! -f $SCRIPT_STOP ] - then - return - fi - RECEIVED_SMS_COUNT=$(grep '' /tmp/received_smses.txt \ - | sed 's|^.*\([0-9]*\).*$|\1|') - if [ $RECEIVED_SMS_COUNT -lt 1 ] - then - return - fi - STOP_NUMBER=$(grep '' /tmp/received_smses.txt \ - | sed 's/.*\(.*\)<\/Phone>.*$/\1/') - MESSAGE="$MESSAGE_PREFIX Stopped by ${STOP_NUMBER}, ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system does NOT send SMSs for the next 24 hours." - SMS_TARGETS="" - for NUM in $TEXT_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_stop_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -send_test_sms() { - MESSAGE_TYPE=$1 - TEMPERATURE=$2 - PRG_DATE=$(date +%Y%m%d) - STR_DATE=$(LC_TIME=C.UTF-8 date) - - - if [ -f $SCRIPT_STOP ] - then - SEND_STATUS="does NOT" - else - SEND_STATUS="DOES" - fi - MESSAGE="$MESSAGE_PREFIX Test ${MESSAGE_TYPE}: temperature is ${TEMPERATURE}, the system $SEND_STATUS send SMSs." - SMS_TARGETS="" - for NUM in $TEST_NUMS - do - SMS_TARGETS="${SMS_TARGETS}${NUM}" - done - - curl --output /tmp/ses_tok.xml \ - --request GET \ - --silent \ - "http://$MODEM_IP/api/webserver/SesTokInfo" - - SESSION_ID=$(sed 's|^.*\(.*\).*$|\1|' \(.*\).*$|\1|' >/var/log/temperature-script-${PRG_DATE}.log - echo "${STR_DATE}: send_test_sms" >>/var/log/temperature-script-${PRG_DATE}.log - curl --header "Cookie: $SESSION_ID" \ - --header "__RequestVerificationToken: $TOKEN" \ - --request POST \ - --silent \ - --data "-1${SMS_TARGETS}${MESSAGE}-11-1" \ - http://$MODEM_IP/api/sms/send-sms >>/var/log/temperature-script-${PRG_DATE}.log -} - -shutdown_hosts() { - SEVERITY=$1 - - echo "----------------" >>/var/log/temperature-script-${PRG_DATE}.log - echo "shutting down hosts at $SEVERITY" >>/var/log/temperature-script-${PRG_DATE}.log - if [ $SEVERITY -le 1 ] - then - echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff - fi - if [ $SEVERITY -gt 1 ] - then - echo "shutting down aiac922.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 aiac922.in.useribm.hu poweroff - echo "shutting down store.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 store.in.useribm.hu poweroff - echo "shutting down tsm.in.useribm.hu" >>/var/log/temperature-script-${PRG_DATE}.log - ssh -i $SSH_KEYS_PATH/scripts -l root -o ConnectTimeout=1 tsm.in.useribm.hu poweroff - fi -} - - -IPMI_PROCESSES=$(ps -ef | grep [i]pmitool | wc -l) -if [ $IPMI_PROCESSES -ne 0 ] -then - echo "$IPMI_PROCESSES ipmitool processes running, exiting." >&2 - exit 1 -fi - -TEMPERATURE=$(ipmitool -H $IMM_FQDN -I open -P pwd sensor get 'Ambient Temp' \ - | grep 'Sensor Reading' \ - | sed 's/^ Sensor Reading : \([^ ]*\) (+\/- .) degrees C$/\1/') - -MESSAGE_PREFIX="[$(hostname --short)]" -MESSAGE_TYPE="Info" -SEVERITY=0 - -if [ $TEMPERATURE -ge $WARNING_THRESHOLD ] -then - MESSAGE_TYPE="Warning" - SEVERITY=1 -fi - -if [ $TEMPERATURE -ge $ERROR_THRESHOLD ] -then - MESSAGE_TYPE="Error" - SEVERITY=2 -fi - -if [ $TEMPERATURE -ge $CRITICAL_THRESHOLD ] -then - MESSAGE_TYPE="Critical" - SEVERITY=3 -fi - -if [ "$1" == "test" ] -then - send_test_sms $MESSAGE_TYPE $TEMPERATURE - exit 0 -fi - -log_temperature $MESSAGE_TYPE $TEMPERATURE - -if [ -f $SCRIPT_STOP ] -then - CURRENT_TS=$(date +%s) - SCRIPT_STOP_TS=$(stat --format=%Y $SCRIPT_STOP) - TS_DIFF=$(( $CURRENT_TS - $SCRIPT_STOP_TS )) - if [ $TS_DIFF -gt 86400 ] - then - rm -f $SCRIPT_STOP - fi -fi - -DAY_HOUR_MINUTE=$(date "+%u%H%M") -if [ "$DAY_HOUR_MINUTE" == "11000" ] -then - send_heartbeat_sms $MESSAGE_TYPE $TEMPERATURE -fi - -if [ -f $SCRIPT_STOP ] -then - exit 0 -fi - -MINUTE_LASTDIGIT=$(date "+%M" | cut -c 2) -case "$MINUTE_LASTDIGIT" in - "1" | "3" | "5" | "7" | "9") - PARITY=1 - ;; - "0" | "2" | "4" | "6" | "8") - PARITY=2 - ;; -esac - -if [ "$PARITY" != "$HOST_SERIAL" ] -then - exit 0 -fi - -if [ $SEVERITY -gt 0 ] -then - shutdown_hosts $SEVERITY - send_sms $MESSAGE_TYPE $TEMPERATURE -fi -delete_logs -delete_mail -process_received_smses -send_stop_sms $MESSAGE_TYPE $TEMPERATURE -delete_received_smses -delete_sent_smses -- 2.54.0