Одной из причин может быть нехватка памяти.Посмотреть вложение 522
Иногда примерно через день выскакивает вот такая ошибка, после перезагрузки сервера всё начинает нормально работать. В чем проблема может быть?
Last login: Tue Jun 25 12:12:54 2024 from ipОдной из причин может быть нехватка памяти.
df -h в консоли.
Почистите папку log в папке с сайтом. Саму папку не удаляйте.
CСдела всё так но ошибка так и происходит примерно раз в сутки и приходиться перезагрузку делатьОдной из причин может быть нехватка памяти.
df -h в консоли.
Почистите папку log в папке с сайтом. Саму папку не удаляйте.
Last login: Tue Jun 25 12:12:54 2024 from ip
root@site:~# df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 894M 1.3M 893M 1% /run
/dev/vda1 20G 9.2G 9.6G 49% /
tmpfs 4.4G 16K 4.4G 1% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
overlay 20G 9.2G 9.6G 49% /var/lib/docker/overlay2/0584f48e713a9db6d c143f83f72088a5b5545057dd890207249ff0025fac0fbb/merged
overlay 20G 9.2G 9.6G 49% /var/lib/docker/overlay2/58d3936f8a9c566ce fc9ccbee5b51ba178a3f0438ac1453cd4ac2e4c19a327c6/merged
overlay 20G 9.2G 9.6G 49% /var/lib/docker/overlay2/90010adb42087b5e7 9a1ec7862a49056be1ea98e1e60e354a77acf41242a72a3/merged
overlay 20G 9.2G 9.6G 49% /var/lib/docker/overlay2/0887a2056dcca8431 0e4f2417a2387f120d24b98c9166b06bd95e32a57d5d627/merged
tmpfs 894M 4.0K 894M 1% /run/user/0
root@site:~#
Доброе утро, проблем с памятью в корневом разделе нет, из 20 доступных гигабайт у вас использовано 9,2Gb и свободно 9.6Gb.
Я бы посмотрел в сторону объема памяти ОЗУ.
Команда: free -h
FAQ:
Команда free -h показывает информацию об использовании памяти, включая общее количество ОЗУ.
Опция -h выводит информацию в удобном для чтения формате (с использованием единиц измерения, таких как MB, GB).
Как посмотреть это? какая команда нужна для sshЧто говоритcinemapress log
?
Это и есть командаКак посмотреть это? какая команда нужна для ssh
Нет, сама проблема не решилась, но я нашел пути отхода: написал скрипт, который проверяет ответ сайта, и если ответ меняется на 502, то скрипт перезагружает сервер. Может, кому пригодится.Доброго времени суток, удалось решить проблему?
import time
import requests
import paramiko
# Настройки
URL = "https://site_kino.ru/" # Тут адресс сайта
SERVER_IP = "1.1.1.1" # Ip сервера
USERNAME = "root" # Лонин
PASSWORD = "PassworD" #Пароль
RESTART_COMMAND = "reboot" # Команда для перезагрузки сервера
def check_site(url):
try:
response = requests.get(url)
return response.status_code
except requests.RequestException as e:
print(f"Ошибка запроса: {e}")
return None
def restart_server(ip, username, password, command):
try:
# Создание SSH-клиента
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(ip, username=username, password=password)
# Выполнение команды перезагрузки
stdin, stdout, stderr = ssh.exec_command(command)
print(stdout.read().decode())
print(stderr.read().decode())
ssh.close()
except paramiko.SSHException as e:
print(f"Ошибка SSH: {e}")
def main():
while True:
status_code = check_site(URL)
if status_code == 502:
print("Получен 502 Bad Gateway. Перезагрузка сервера...")
restart_server(SERVER_IP, USERNAME, PASSWORD, RESTART_COMMAND)
else:
print(f"Статус сайта: {status_code}")
# Ожидание 120 секунд это время когда скрипт проверяет ответ от сайта
time.sleep(120) # Тут меняете значение на свой например 600 это будет 10 минут
if __name__ == "__main__":
main()
Нет, сама проблема не решилась, но я нашел пути отхода: написал скрипт, который проверяет ответ сайта, и если ответ меняется на 502, то скрипт перезагружает сервер. Может, кому пригодится.
Python:import time import requests import paramiko # Настройки URL = "https://site_kino.ru/" # Тут адресс сайта SERVER_IP = "1.1.1.1" # Ip сервера USERNAME = "root" # Лонин PASSWORD = "PassworD" #Пароль RESTART_COMMAND = "reboot" # Команда для перезагрузки сервера def check_site(url): try: response = requests.get(url) return response.status_code except requests.RequestException as e: print(f"Ошибка запроса: {e}") return None def restart_server(ip, username, password, command): try: # Создание SSH-клиента ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(ip, username=username, password=password) # Выполнение команды перезагрузки stdin, stdout, stderr = ssh.exec_command(command) print(stdout.read().decode()) print(stderr.read().decode()) ssh.close() except paramiko.SSHException as e: print(f"Ошибка SSH: {e}") def main(): while True: status_code = check_site(URL) if status_code == 502: print("Получен 502 Bad Gateway. Перезагрузка сервера...") restart_server(SERVER_IP, USERNAME, PASSWORD, RESTART_COMMAND) else: print(f"Статус сайта: {status_code}") # Ожидание 120 секунд это время когда скрипт проверяет ответ от сайта time.sleep(120) # Тут меняете значение на свой например 600 это будет 10 минут if __name__ == "__main__": main()
Да как идея сделать бота в телеграм. Но это так пока такое решение временное потом нужно будет найти причинуЭто костыль)
Я бы добавил в код логирование, со счетчиком ошибок и ребутов, а так же лучше подвязать бота в ТГ, с условием к примеру если сайт чаще чем 2 раза в час ребутнется то уведомлять владельца, а если ваще чем 5 раз в неделю то к уведомлению прикладывать лог. Для удобства)