# Скрипты для взаимодействия с wiSLA

## **<span style="font-family: 'Arial',sans-serif;">Поддерживаемые параметры установщика Wisla</span>**

<span style="font-family: 'Arial',sans-serif;">Чтобы узнать доступные параметры установщика Wisla, выполнить команду:</span>

```
./wisla-5.2.9-2502251017.run --help
```

<span style="font-family: 'Arial',sans-serif;">Будет следующий вывод:</span>

```
wiSLA 5.2.9 build 2502251017 installer
usage: ./wisla-5.2.9-2502251017.run <options>
This script installs the wiSLA system cluster.
OPTIONS:
    Installer options
    -h      Show this message
    -t      Text mode only
    --hadoop-install                        Install hadoop system only
    --silent-install                        Silent install
    --silent-update                         Silent update
    --silent-fast-update                    Silent update without backup stage
    --silent-fast-update-with-new-db <Postrgres DB dump path>  Silent update without backup stage with new database restoring
    --silent-fast-update-replace-db-n-hbase <Postgres DB dump path> <HBase data dump path>  Silent update without backup stage with complete data overwrite
    
    Package options
    -x      Unpack distribution from self
    -v      Display version information

ENVIRONMENT:
    INSTALL_TEMP - directory used to store temporary files. Default: /tmp/
    INSTALL_LOG  - installation log name. Default: install.YYYY-MM-dd_HH:mm:ss.log
    EXTERNAL_DISTRIBUTION_FILE - used to specify external distribution file
    SCENARIO - used to switch default scenario

```

## **<span style="font-family: 'Arial',sans-serif;">Варианты обновления системы</span>**

<span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">1. Установка wisla с нуля </span>**</span>

<span style="font-family: 'Arial',sans-serif;">Убедиться что в системе отсутствуют установленные ранее папки : hadoop, postgresql, zookeeper, hbase. Иначе будет полуавтоматический режим установки, где необходимо будет подтверждать очистку каталогов, а при попытке нажать No процесс установки будет прерван.</span>

```
./wisla-5.2.9-xxxxxxxx.run --silent-install
```

<span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">2. Стандартное обновление (с резервным копированием)</span>**</span>

```
./wisla-5.2.9-xxxxxxxx.run --silent-update
```

<span style="font-family: 'Arial',sans-serif;">Этот режим выполняет обновление системы с сохранением резервных копий данных.</span>

<span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">3. Быстрое обновление без резервного копирования</span>**</span>

```
./wisla-5.2.9-xxxxxxxx.run --silent-fast-update
```

<span style="font-family: 'Arial',sans-serif;">Этот режим пропускает этап создания резервных копий, ускоряя процесс обновления.</span>

<span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">4. Быстрое обновление с восстановлением новой базы данных PostgreSQL</span>**</span>

```
./wisla-5.2.9-xxxxxxxx.run --silent-fast-update-with-new-db /path/to/postgres_dump.sql
```

<span style="font-family: 'Arial',sans-serif;">Здесь </span>`<span style="font-size: 10.0pt; font-family: 'Arial',sans-serif;">/path/to/postgres_dump.sql</span>`<span style="font-family: 'Arial',sans-serif;"> — путь к файлу дампа PostgreSQL, который будет использован для восстановления данных.</span>

<span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">5. Полная замена базы данных и HBase</span>**</span>

```
./wisla-5.2.9-xxxxxxxx.run --silent-fast-update-replace-db-n-hbase /path/to/postgres_dump.sql /path/to/hbase_data
```

<span style="font-family: 'Arial',sans-serif;">Где:</span>

- `<span lang="EN-US" style="font-size: 10.0pt; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US;">/path/to/postgres_dump.sql</span>`<span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> — </span><span style="font-family: 'Arial',sans-serif;">путь</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">к</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">дампу</span><span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> PostgreSQL.</span>
- `<span lang="EN-US" style="font-size: 10.0pt; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US;">/path/to/hbase_data</span>`<span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> — </span><span style="font-family: 'Arial',sans-serif;">путь</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">к</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">данным</span><span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> HBase</span>**<span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;">.</span>**

<span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">6. Установка только Hadoop</span>**</span>

```
./wisla-5.2.9-xxxxxxxx.run --hadoop-install
```

## **<span style="font-family: 'Arial',sans-serif;">Дополнительно:</span>**

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Просмотр логов</span>**</span>

<span style="font-family: 'Arial',sans-serif;">По умолчанию логи установки сохраняются в файл </span>`<span style="font-size: 10.0pt; font-family: 'Arial',sans-serif;">install.YYYY-MM-dd_HH:mm:ss.log</span>`<span style="font-family: 'Arial',sans-serif;">. Изменить имя лога можно так:</span>

```
export INSTALL_LOG=my_install_log.txt
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Изменение временной директории</span>**</span>

```
export INSTALL_TEMP=/custom/temp/dir
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Режим текстового интерфейса</span>**</span>

```
./wisla-5.2.9-xxxxxxxx.run -t
```

##  

## **<span style="font-family: 'Arial',sans-serif;">Управление всеми сервисами Wisla</span>**

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Проверка статуса запущенных сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla5.sh status
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Остановка всех сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla5.sh stop
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Запуск всех сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla5.sh start
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Перезапуск</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">всех сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla5.sh restart
```

##  

## **<span style="font-family: 'Arial',sans-serif;">Управление только сервисом Wisla</span>**

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Проверка статуса запущенных сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla.sh status
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Остановка всех сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla.sh stop
```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Запуск всех сервисов</span>**</span>

```
/opt/wisla5/scripts/wisla.sh start
```

- **<span style="font-family: 'Arial',sans-serif;">Перезапуск</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">сервиса</span><span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> Wisla</span>**

```
/opt/wisla5/scripts/wisla.sh restart
```

Скрипт:

```bash
#!/bin/bash

# Source function library.
WILDFLY_WORK=/opt/wisla5/wildfly/current
wildfly_pid_calc=$(pgrep -u wisla -f "jboss.home.dir=${WILDFLY_WORK}" | wc -l)

keyphrase_blank_wildfly_started="WildFly .* started in"

function start_blank_wildfly() {
	# Р°РЅР°Р»РёР· log-С„Р°Р№Р»Р°
	[ -r $WILDFLY_WORK/standalone/log/server.log ] && basic_blank_wildfly_started_counter=$(egrep -c "keyphrase_blank_wildfly_started" $WILDFLY_WORK/standalone/log/server.log)
	[ -z "basic_blank_wildfly_started_counter" ] && basic_blank_wildfly_started_counter=0
	# Р·Р°РїСѓСЃРє РїСѓСЃС‚РѕРіРѕ Wildfly
	cd $WILDFLY_WORK/bin
	nohup ./standalone.sh > /dev/null 2>&1&
}

function start_deploy() {
	cd $WILDFLY_WORK/standalone/deployments
	for file in *.?ar;
	do
		touch "$file".dodeploy
	done
}

function wait_for_blank_wildfly() {
    timeout=300
    blank_wildfly_counter_started=0
    blank_wildfly_current_counter_started=0
    if [ ! -e "$WILDFLY_WORK/standalone/log/server.log" ] ; then
        touch "$WILDFLY_WORK/standalone/log/server.log"
    fi
    basic_blank_wildfly_started_counter=$(egrep -c "$keyphrase_blank_wildfly_started" $WILDFLY_WORK/standalone/log/server.log)
    for i in $(seq 1 $timeout);
    do
	blank_wildfly_started_counter=$(egrep -c "$keyphrase_blank_wildfly_started" $WILDFLY_WORK/standalone/log/server.log)
	((total_wildfly_start_time = total_wildfly_start_time + 1))
	if [ $blank_wildfly_started_counter -eq $((basic_blank_wildfly_started_counter+1)) ]
	then
	    echo "Starting blank Wildfly..."
	    return
	fi
    sleep 1
    done
    echo "Error during blank Wildfly start!"
}

function start() {
	wildfly_pid_calc=$(pgrep -u wisla -f "jboss.home.dir=${WILDFLY_WORK}" | wc -l)
	if [ "$wildfly_pid_calc" -eq 0 ]
	then
		total_wildfly_start_time=0
		# РѕС‡РёСЃС‚РєР° РєР°С‚Р°Р»РѕРіРѕРІ deployments (РєСЂРѕРјРµ war, ear) Рё tmp РїРµСЂРµРґ Р·Р°РїСѓСЃРєРѕРј
		find $WILDFLY_WORK/standalone/deployments -regextype posix-egrep ! -regex ".*(ear|war)" -type f -exec rm -f {} \;
		rm -rf $WILDFLY_WORK/standalone/tmp/*
		rm -rf /tmp/workspace_*-*-*-*-*
		cd $WILDFLY_WORK/standalone
		# Р·Р°РїСѓСЃРє РїСѓСЃС‚РѕРіРѕ wildfly
		echo "Waiting for the blank Wildfly application server to start (up to 5 minutes)... "
		start_blank_wildfly
		# РѕР¶РёРґР°РЅРёРµ Р·Р°РїСѓСЃРєР° РїСѓСЃС‚РѕРіРѕ Wildfly
		wait_for_blank_wildfly
		# РЅР°С‡Р°Р»Рѕ РґРµРїР»РѕСЏ Р°СЂС‚РµС„Р°РєС‚РѕРІ (РІ РїРѕСЂСЏРґРєРµ, РІС‹Р±СЂР°РЅРЅРѕРј Wildfly)
		start_deploy
	else
        echo "Error. Wildfly is already running!"
		return 1
	fi
}


function stop() {
    echo "wiSLA is stopping..."
    kill `pgrep -f "jboss.home.dir=${WILDFLY_WORK}"` &> /dev/null
    ATTEMPTS=0
    while [[ ! -z `pgrep -f "jboss.home.dir=${WILDFLY_WORK}"` ]]; do
        echo "Waiting for the Wildfly application server to stop..."
        (( ATTEMPTS = ATTEMPTS + 1 ))
        if [ $ATTEMPTS -gt 10 ]
            then
            echo "60 seconds is elapsed, trying to stop the process with -9 signal"
            kill -9 `pgrep -f "jboss.home.dir=${WILDFLY_WORK}"`
        fi
        sleep 5
    done
}

function status() {
    PID=`pgrep -f "jboss.home.dir=${WILDFLY_WORK}"`
    [[ ! -z $PID ]] && echo "Started with PID : $PID" || echo "Stopped"
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    restart)
        stop
        start
        ;;
    try-restart)
        stop
        start
        ;;
    status)
        status
        ;;
    *) exit 1
esac

exit 0

```

##  

## **<span style="font-family: 'Arial',sans-serif;">Реиндексация</span>**

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Стандартная реиндексация (требует запущенной системы)</span>**</span>

```
/opt/wisla5/scripts/wi-reindex.sh
```

Скрипт:

```bash
#!/bin/bash
# Source function library.
JRE_WORK="/opt/wisla5/jre/current"

echo "Reindexing wisla engine lucene database..."
${JRE_WORK}/bin/java -jar /opt/wisla5/util/jmx/cmdline-jmxclient-0.10.3.jar - localhost:1090 "wisla-engine:name=nodeReindexer" reindexFullTextSearch

exit 0

```

###  

- **<span style="font-family: 'Arial',sans-serif;">Независимая реиндексация (не зависит от состояния деплоя)</span>**

```
/opt/wisla5/scripts/wi-reindex-standalone.sh
```

Скрипт:

```bash
#!/bin/bash
# Source function library.
JRE_WORK="/opt/wisla5/jre/current"
POSTGRES_HOST="alfa-test"
DB_NAME="wisla"
USER="wisla"

echo "Reindexing database"
${JRE_WORK}/bin/java -jar -Dhibernate.connection.username="${USER}" \
-Dhibernate.search.base_indexes_directory="/opt/wisla5/wildfly/current/bin/searchindexes/engine/" \
-Dhibernate.connection.url="jdbc:postgresql://${POSTGRES_HOST}:5462/${DB_NAME}" \
-Dcom.sun.xml.bind.v2.bytecode.ClassTailor.noOptimize=true \
/opt/wisla5/util/reindexer/wisla-reindexer.jar
echo "Reindex finished"
exit 0

```

##  

## **<span style="font-family: 'Arial',sans-serif;">Создание резервных копий баз данных</span>**

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">PostgreSQL</span>**</span>

<span style="font-family: 'Arial',sans-serif;">Файл</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">шаблона</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">скрипта</span><span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;">: </span>`<span lang="EN-US" style="font-size: 10.0pt; font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;">/opt/wisla5/backup_scripts/postgres_backup_template.sh</span>`

<span style="font-family: 'Arial',sans-serif;">Пример</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">запуска</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">резервного</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">копирования</span><span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;">:</span>

```
pg_dump --host "wisla" --port 5432 --username "wisla" --format custom --blobs --no-owner --encoding UTF8 --verbose --file /home/wisla/backup/wisla.backup
```

<span style="font-family: 'Arial',sans-serif;">Альтернативный способ через шаблонный скрипт:</span>

```
sed "s|{{FILE-NAME}}|/home/wisla/backup/wisla.backup|" /opt/wisla5/backup_scripts/postgres_backup_template.sh | bash
```

Скрипт:

```bash
#!/bin/bash
pg_dump --host "alfa-test" --port 5432 --username "wisla" --format custom --blobs --no-owner --encoding UTF8 --verbose --file {{FILE-NAME}} wisla
ssh {{LOGIN}}@{{BACKUP-SERVER}} "mkdir -p {{DESTINATION}}"
scp ./{{FILE-NAME}} {{LOGIN}}@{{BACKUP-SERVER}}:{{DESTINATION}}
rm -f ./{{FILE-NAME}}
```

###   


- <span style="color: rgb(0, 0, 0);">**<span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;">HBase</span>**</span>

<span lang="EN-US" style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"><span style="font-family: 'Arial',sans-serif;">Файл</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">шаблона</span><span style="font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;"> </span><span style="font-family: 'Arial',sans-serif;">скрипта</span>: `<span lang="EN-US" style="font-size: 10.0pt; font-family: 'Arial',sans-serif; mso-ansi-language: EN-US;">/opt/wisla5/backup_scripts/<span lang="EN-US" style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">hbase</span><span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: RU; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">_</span><span lang="EN-US" style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">backup</span><span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: RU; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">_</span><span lang="EN-US" style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">template</span><span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: RU; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">.</span><span lang="EN-US" style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif; mso-fareast-font-family: Calibri; mso-fareast-theme-font: minor-latin; mso-ansi-language: EN-US; mso-fareast-language: EN-US; mso-bidi-language: AR-SA;">sh</span></span>`</span><span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif;">, но корректность работы проверить не удалось, пробовал<span style="mso-spacerun: yes;"> </span>переписать скрипт, но возникает проблема при выполнении команды импорта снимков в папку.</span>

```bash
#!/bin/bash

BACKUP_DIR=$(mktemp -d -t -p ~/ hbase_backup.XXXXXXXX)
mkdir ${BACKUP_DIR}/backup
BACKUP_PARRENT_DIR=${BACKUP_DIR}
BACKUP_DIR=${BACKUP_DIR}/backup

hbase org.apache.hadoop.hbase.mapreduce.Export -D mapred.output.compress=true {{TABLE-PREFIX}}-tsdb {{TABLE-PREFIX}}-tsdb-backup 1 {{START-TIMESTAMP}} {{END-TIMESTAMP}}
hbase org.apache.hadoop.hbase.mapreduce.Export -D mapred.output.compress=true {{TABLE-PREFIX}}-tsdb-uid {{TABLE-PREFIX}}-tsdb-uid-backup 1 {{START-TIMESTAMP}} {{END-TIMESTAMP}}
hbase org.apache.hadoop.hbase.mapreduce.Export -D mapred.output.compress=true {{TABLE-PREFIX}}-tsdb-nf {{TABLE-PREFIX}}-tsdb-nf-backup 1 {{START-TIMESTAMP}} {{END-TIMESTAMP}}
hbase org.apache.hadoop.hbase.mapreduce.Export -D mapred.output.compress=true {{TABLE-PREFIX}}-tsdb-uid-nf {{TABLE-PREFIX}}-tsdb-uid-nf-backup 1 {{START-TIMESTAMP}} {{END-TIMESTAMP}}
hbase org.apache.hadoop.hbase.mapreduce.Export -D mapred.output.compress=true {{TABLE-PREFIX}}-tsdb-lts {{TABLE-PREFIX}}-tsdb-lts-backup 1 {{START-TIMESTAMP}} {{END-TIMESTAMP}}

hdfs dfs -copyToLocal /user/wisla/{{TABLE-PREFIX}}-tsdb-backup ${BACKUP_DIR}/{{TABLE-PREFIX}}-tsdb
hdfs dfs -copyToLocal /user/wisla/{{TABLE-PREFIX}}-tsdb-uid-backup ${BACKUP_DIR}/{{TABLE-PREFIX}}-tsdb-uid
hdfs dfs -copyToLocal /user/wisla/{{TABLE-PREFIX}}-tsdb-nf-backup ${BACKUP_DIR}/{{TABLE-PREFIX}}-tsdb-nf
hdfs dfs -copyToLocal /user/wisla/{{TABLE-PREFIX}}-tsdb-uid-nf-backup ${BACKUP_DIR}/{{TABLE-PREFIX}}-tsdb-uid-nf
hdfs dfs -copyToLocal /user/wisla/{{TABLE-PREFIX}}-tsdb-lts-backup ${BACKUP_DIR}/{{TABLE-PREFIX}}-tsdb-lts

cd ${BACKUP_DIR}/..
tar -czvf {{FILE-NAME}} backup
hdfs dfs -rm -r /user/wisla/{{TABLE-PREFIX}}-tsdb-backup
hdfs dfs -rm -r /user/wisla/{{TABLE-PREFIX}}-tsdb-uid-backup
hdfs dfs -rm -r /user/wisla/{{TABLE-PREFIX}}-tsdb-nf-backup
hdfs dfs -rm -r /user/wisla/{{TABLE-PREFIX}}-tsdb-uid-nf-backup
hdfs dfs -rm -r /user/wisla/{{TABLE-PREFIX}}-tsdb-lts-backup

ssh {{LOGIN}}@{{BACKUP-SERVER}} "mkdir -p {{DESTINATION}}"
scp ./{{FILE-NAME}} {{LOGIN}}@{{BACKUP-SERVER}}:{{DESTINATION}}

rm -f ./{{FILE-NAME}}
cd ../
rm -r ${BACKUP_PARRENT_DIR}

```

<span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif;">**!!!Но для выполнения скрипта надо настраивать hbase и hadoop**</span>

<span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif;">  
</span>

### **<span style="font-family: 'Arial',sans-serif;">Дополнительно:</span>**

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Перезагрузка плагинов в приложении wiSLA</span>**</span>

```
/opt/wisla5/scripts/reload-plugins.sh
```

Скрипт:

```bash
#!/bin/bash
# Source function library.
JRE_WORK=/opt/wisla5/jre/current

${JRE_WORK}/bin/java -jar /opt/wisla5/util/jmx/cmdline-jmxclient-0.10.3.jar - localhost:1090 "wisla-engine:name=pluginManager" reloadPlugins

exit 0

```

- <span style="color: rgb(0, 0, 0);">**<span style="font-family: 'Arial',sans-serif;">Удаление старых лог файлов</span>**</span>

```
/opt/wisla5/scripts/remove-old-logs.sh
```

Скрипт:

```bash
#!/bin/bash
DAYS=10
LOG_DIR=/opt/wisla5/wildfly/current/standalone/log
for file in "$( find ${LOG_DIR}/ -maxdepth 1 -type f -mtime +${DAYS} )"
do
    rm -f ${file}
done

```

###  

<span style="font-size: 10.0pt; line-height: 107%; font-family: 'Arial',sans-serif;">  
</span>