Назад | Перейти на главную страницу

Сервер Ubuntu выходит из строя ежедневно

Симптомы:

Внесены изменения:

Возможные причины:

Обязанности:

Предлагаемые решения:

Боковые примечания:

Я никогда не использую prtg, но если я правильно читаю диаграмму, у вас заканчивается память. И проблема с сервером была последней, если не полностью, с 1 до 2–3 ночи. Хотя проблема, кажется, начинается с 12 утра. В этот момент нагрузка на ваш сервер резко возрастает.

В этот период времени:

  • Диаграмма Память (подкачка) Свободна 2, использование подкачки до 6G-7G, что много по сравнению с 1G физической памяти
  • Диаграмма Память (реальная) Свободна 2 / SNMP Linux Meminfo 2, весь барабан используется

Хотя память кажется главной причиной. Это возможно (или частично) из-за недостаточной мощности процессора. Поскольку предыдущий запрос все еще обрабатывается, приходит новый запрос, все больше и больше запросов накапливаются на сервере.

Я бы посоветовал увеличить память, а также узнать, что запускается в 12 часов утра.

В 99,9% случаев при настройке, подобной той, что у вас есть, происходит неправильная конфигурация mysql в поле, которое слишком мало для обработки назначенного количества подключений. Очень средний настройка mysql устанавливает лимит подключения на 200, каждое входящее соединение обычно занимает от 10 до 100 МБ в зависимости от запросов / кеширования и т. д.

Я видел, как многие компании устанавливают ограничения на количество подключений, превышающие максимальный объем памяти, имеющийся на фактическом компьютере, в зависимости от того, как они его настраивают. Когда MySQL пытается обратиться к памяти и вместо этого ему назначается свопинг, это приводит к сбою системы. Обычно вы можете увидеть следы в dmesg.

Опубликуйте свою конфигурацию MySQL + количество ЦП / ВЦП и памяти, вероятно, это MySQL, который настроен неправильно. За документацией по mysql сложно следовать, но есть несколько вспомогательных сценариев, которые могут дать вам представление. Я постараюсь найти один из тех, что я использовал в прошлом, который будет наиболее точным, к сожалению, я не припоминаю название сценария с головы до ног.

Также имейте в виду, что просмотр журналов mysql не покажет вам истинной истории.

Похоже, вам нужно провести реальный анализ первопричины (причин).

  • Настраивать и контролировать apache Статус сервера чтобы почувствовать нагрузку на веб-сервер.
  • Настройте мониторинг системы для основных показателей (ЦП, память, активность диска), чтобы узнать, где именно находится узкое место
  • Монитор dmesg внимательно, как при перезапуске, так и во время нормальной работы, чтобы убедиться в отсутствии очевидных проблем с оборудованием.

Как только у вас будет несколько дней надежных данных, вы можете сделать следующий шаг (тот, который, как вы думали, вы делаете сейчас - спросите совета).