Compare commits

..

11 Commits

Author SHA1 Message Date
093d0fa56a Software fix
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:31:13 +03:00
eca352baab Software: qemu-ga check
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:30:32 +03:00
32f03ed5dc Speedup playbook
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:25:46 +03:00
d688810304 Speedup playbook
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:24:45 +03:00
0e8662c390 Check software
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:24:07 +03:00
501f2be89e Check software
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:22:27 +03:00
9d6b6a7afc Больше негде тестить. Пушим сразу в прод
All checks were successful
continuous-integration/drone/push Build is passing
2023-05-17 22:05:31 +03:00
555358a851 More OOB actions
Some checks reported errors
continuous-integration/drone/push Build is passing
continuous-integration/drone Build was killed
2022-01-13 13:49:13 +00:00
3c81d6c07f Логи
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone Build is passing
2022-01-13 12:44:47 +00:00
14a03d53b8 kawaii 2022-01-13 12:04:17 +00:00
696a047e32 remove "nginx: configuration is ok" 2022-01-13 12:00:21 +00:00
4 changed files with 159 additions and 96 deletions

View File

@@ -1,21 +1,3 @@
---
kind: pipeline
type: exec
name: test
trigger:
event:
exclude:
- promote
steps:
- name: Check playbook
commands:
- ansible-playbook -C playbook.yml
node:
target: local
---
kind: pipeline
type: exec
@@ -32,56 +14,3 @@ steps:
node:
target: shell-scripts
trigger:
event:
- promote
target:
- production
---
kind: pipeline
type: exec
name: deploy to local test
steps:
- name: Check playbook
commands:
- ansible-playbook -C playbook.yml
- name: Run playbook
commands:
- ansible-playbook playbook.yml
node:
target: local
trigger:
event:
- promote
target:
- local
---
kind: pipeline
type: exec
name: deploy to public test
steps:
- name: Check playbook
commands:
- ansible-playbook -C playbook.yml
- name: Run playbook
commands:
- ansible-playbook playbook.yml
node:
target: shell-testing
trigger:
event:
- promote
target:
- testing

View File

@@ -6,8 +6,7 @@
become: yes
apt:
name: nginx-light
update_cache: yes
state: latest
state: present
- name: Create dir
file:
path: /var/www

View File

@@ -36,7 +36,7 @@ totalmem=`free -m | head -2 | tail -1 | awk '{print $2}'`
echo 'LA: ' $la ' of ' $nproc
echo 'RAM: ' $usedmem 'Mb of ' $totalmem Mb
echo -e "${TEXT_COLOR_GOOD} - Disk: ${TEXT_COLOR_OFF}\n"
echo -e "\n${TEXT_COLOR_GOOD} - Disk: ${TEXT_COLOR_OFF}\n"
df -h | head -n 1
df -h | grep '/dev/vd'
@@ -45,7 +45,7 @@ echo "- Inodes:"
df -hi | grep '/dev/vd'
echo -e "\n ${TEXT_COLOR_GOOD} - Installed panel: ${TEXT_COLOR_OFF}\n"
echo -e "\n${TEXT_COLOR_GOOD} - Installed panel: ${TEXT_COLOR_OFF}\n"
#if zero - false
[[ -d /opt/webdir/bin/ ]] && echo "Bitrix!"
@@ -53,19 +53,40 @@ echo -e "\n ${TEXT_COLOR_GOOD} - Installed panel: ${TEXT_COLOR_OFF}\n"
[[ -d /usr/local/mgr5/ ]] && echo "ISPManager!"
[[ -d /usr/local/fastpanel2 ]] && echo "Fastpanel 2"
echo -e "${TEXT_COLOR_GOOD} - Installed packages: ${TEXT_COLOR_OFF}\n"
echo -e "${TEXT_COLOR_GOOD} - OOMS: ${TEXT_COLOR_OFF}\n"
dmesg -T | grep "Out of memory" | tail -20
list=$(apt list --installed 2>&1 |egrep 'atop')
echo $list
# Top RAM
echo -e "${TEXT_COLOR_GOOD} - Top RAM usage:${TEXT_COLOR_OFF}"
ps axk-%mem ouser,%cpu,%mem,command | head
echo
# Top CPU
echo -e "${TEXT_COLOR_GOOD} - Top CPU usage:${TEXT_COLOR_OFF}"
ps axk-%cpu ouser,%cpu,%mem,command | head
echo
# Какое ПО стоит? Docker/atop
echo -e "\n${TEXT_COLOR_GOOD} - Installed software: ${TEXT_COLOR_OFF}\n"
for i in "docker" "atop" "qemu-ga"
do
if which $i
then
echo "$i is installed"
else
echo "$i is NOT installed"
fi
echo
done
while true
do
echo -e "
---
1. Посмотреть жрущие ЦПУ/ОЗУ процессы
2. Вывести OOM'ы
3. nginx: Посмотреть конфиги и домены в них
2. nginx: Посмотреть конфиги и домены в них
3. Запустить logs
0. Выход
"
@@ -75,21 +96,13 @@ echo -e "
0)
harakiri
;;
1)
echo "- Top RAM usage:"
ps axk-%mem ouser,%cpu,%mem,command | head
echo
echo "- Top CPU usage:"
ps axk-%cpu ouser,%cpu,%mem,command | head
;;
2)
echo "- OOMS:"
dmesg -T | grep "Out of memory"
nginx -T 2> /dev/null | egrep "configuration file|server_name"
;;
3)
nginx -T | egrep "configuration file|server_name"
3)
wget -O /tmp/nginx.sh 94.228.126.204/nginx.sh
bash /tmp/nginx.sh
rm /tmp/nginx.sh
;;
esac
done

View File

@@ -1,3 +1,125 @@
#!/bin/bash
echo "- Sort by IP"
cat /var/log/nginx/access.log | awk '{print $1}' | sort | uniq -c | sort -hr | head -n 30
# trap 'echo " Vyhody cherez menu"' INT
TEXT_COLOR_GOOD="\033[92m"
TEXT_COLOR_BAD="\033[91m"
TEXT_COLOR_OFF="\033[0m"
echo -e "
${TEXT_COLOR_GOOD}
__
/ /___ ____ ______
/ / __ \/ __ / ___/
/ / /_/ / /_/ (__ )
/_/\____/\__, /____/
/____/
${TEXT_COLOR_OFF}
"
menu() {
[[ -d /opt/webdir/bin/ ]] && menu_bx
[[ -d /usr/local/vesta/ ]] && menu_vesta
[[ -d /usr/local/mgr5/ ]] && menu_isp
[[ -d /usr/local/fastpanel2 ]] && menu_fastpanel
}
menu_fastpanel() {
clear
readarray -t lines < <(ls /var/www/fastuser/data/logs/ | awk -F"-" '{print $1}' | uniq )
echo "Выбери сайт:"
select c in "${lines[@]}"; do
[[ -n $c ]] || { echo "Некорректный выбор." >&2; continue; }
break
done
read -r a <<<"$c"
clear
echo -n "Для $c:
1. Access Log
2. Error Log
3. (DDoS) Количество запросов в минуту
4. DDoS Топ запросов
5. DDoS Топ IP-адресов
6. Топ user-агентов
7. Спам через форму
8. Количество запроосов по часам
9. Проверка кодов ответа
0. Выход
"
read -r b
case $b in
0)
exit ;;
1)
clear
cat /var/www/fastuser/data/logs/$c-frontend.access.log
read -p 'Для выхода в меню нажми Enter'
;;
2)
clear
cat /var/www/fastuser/data/logs/$c-frontend.error.log
read -p 'Для выхода в меню нажми Enter'
;;
3)
clear
wc -l "/var/www/fastuser/data/logs/$c-frontend.access.log"
echo "Подождем минуту..."
sleep 1m
wc -l "/var/www/fastuser/data/logs/$c-frontend.access.log"
read -p 'Для выхода в меню нажми Enter'
;;
4)
clear
cat /var/www/fastuser/data/logs/$c-frontend.access.log | awk '{print $7}' | sort | uniq -c | sort -rn | head
read -p 'Для выхода в меню нажми Enter'
;;
5)
clear
cat /var/www/fastuser/data/logs/$c-frontend.access.log | awk '{print $1}' | sort | uniq -c | sort -rn | head
read -p 'Для выхода в меню нажми Enter'
;;
6)
cat /var/www/fastuser/data/logs/$c-frontend.access.log | awk ' {for (i = 12; i <= (NF-1); i++) printf("%s%s",$i,(i==(NF-1))?"\n":OFS)}' | sort | uniq -c |sort -rn |head
read -p 'Для выхода в меню нажми Enter'
;;
7)
clear
cat /var/www/fastuser/data/logs/$c-frontend.access.log | grep POST |awk '{print $6,$7}' | sort | uniq -c | sort -rn | head
read -p 'Для выхода в меню нажми Enter'
;;
8)
clear
cat /var/www/fastuser/data/logs/$c-frontend.access.log | awk '{print $4}' | sed 's/:[0-9][0-9]:[0-9][0-9]$//g' | uniq -c
read -p 'Для выхода в меню нажми Enter'
;;
9)
clear
cat /var/www/fastuser/data/logs/$c-frontend.access.log | awk '{print $9}' | sort | uniq -c | sort -rn | head
read -p 'Для выхода в меню нажми Enter'
;;
esac
menu_fastpanel
}
menu_bx() {
clear
echo "В процессе запила"
menu_exit
}
menu_vesta() {
clear
echo "В процессе запила"
menu_exit
}
menu_isp() {
clear
echo "В процессе запила"
menu_exit
}
menu