Диагностика VPS или что делать, если сервер упал речь о сервере под управлением CentOS и ISPmanager

Если сервер упал и совсем не отвечает даже по прямому запросу по IP-адресу, то нужно его перезагрузить. Что делать, если это не помогло, читайте далее. В этой статье мы опишем свой непрофессиональный опыт администрирования серверов на базе CentOS, а именно выходов из самых разных стрессовых ситуаций собственными силами. Даже хорошая техподдержка хостинга - это не панацея, если проблема возникла в воскресенье, например. Или если она возникает периодически. Или если ее очень нужно решить прямо сейчас.

Мы (пока что) пользуемся Windows, поэтому бородатым тру-админам чтение доставит лулзов и хихихохонек. С другой стороны, почему-то бородатые тру-админы не дают себе труда публично изложить свои навыки простыми русскими словами на благо всего человечества. А мы даем.

Итак, самые популярные проблемы виртуальных серверов.

Нехватка оперативной памяти

Проявляется, обычно, в самопроизвольном завершении работы тех или иных сервисов. Отключиться может apache, mysql, ftp или обслуживание dns.

Как лечить:

  • немедленно : перезагрузить сервер, и все заработает. Можно даже просто вручную запустить нужный сервис заново.
  • краткосрочно: настроить WatchDog, который будет автоматом перезапускать сервисы, когда они будут "падать". Костыльный способ, но полезно, так как никогда не знаешь, когда именно момент нехватки памяти настанет. Главное, чтобы на email присылались оповещения о перезапуске сервисов.
    • update: может это и не костыльный способ, в последних версиях ISP Manager'a WatchDog включен по-умолчанию для всех процессов
  • долгосрочно: отключить ненужные сервисы или увеличить объем ОЗУ (удивительно, да? :))

Dos-атака из внешнего мира

Например, кто-то решил спарсить ваш контент или найти дыру в безопасности сайта. Ваш сервер перестает выдерживать высокую синтетическую нагрузку и тупит.

Как лечить:

  • определить, на какой домен идет атака. Для этого надо:
    • заранее подумать о правильном разделении ваших сайтов по пользователям, а не пихать все сайты в одну кучу;
    • в консоли набрать top и увидеть множество процессов от имени атакуемого пользователя
  • ограничить доступ к атакуемому сайту только своим IP-адресом через htaccess:
    • или вот так:
deny from all 
allow from *.*.*.*
  • или выключив домен в ISPmanager;
  • проанализировать логи и найти зловреда;
  • если возможно, забанить его через встроенный Firewall : /ispmgr?startform=firewall
  • или же забанить его через htaccess примерно вот так:
# отсеиваем злых ботов
SetEnvIfNoCase User-Agent "^DigExt; DTS Agent" bad_bot

Нехватка дискового пространства

Очень частая проблема, поскольку компьютеры склонны генерировать данные неутомимо, бездумно и безостановочно :)

Как лечить:
Превентивно следует назначить сайтам квоты по использованию диска. Именно затем они (квоты) и нужны - если один сайт начнет вести себя плохо, он не утянет за собой весь сервер целиком. Не хотите думать над квотами - поставьте каждому сайту равный % от общего объема диска. Более одного сайта сразу обычно не ломаются, так что это вполне решит проблему переполнения диска.

Также следует сделать автоматизированную проверку свободного объема диска, например через Ping-admin и служебный домен для проведения различных автотестов сервера.

Что делать, если вы всего этого не сделали заранее, а место уже кончилось? Скорее всего вы заметите это по тому, что сайты работают, но глючно. Сессии не пишутся, файлы отдаются не целиком и т.д

  • перезагрузите сервер, и пока он еще не завис, попробуйте оперативно удалить что-нибудь большое и наверняка не нужное. Также поможет временное отключение mysql и apache, дабы большая часть функционала отключилась и не влияла на диагностику.
  • через WinSCP подключитесь к серверу по SSH как root
  • откройте Excel , пригодится для оценки
  • проведите диагностику объемов директорий сайта, начиная с корня, выполняя команду du -sh * через терминал (вызывается по ctrl+t ).
    • если проблема кроется в объеме директории /var/cache/yum/, то ее можно почистить командой yum clean all. При этом надо понимать, что, скорее всего, ее рост связан с попыткой Cent OS самообновиться. Если это происходит, то в долгосрочной перспективе самое лучшее , что можно сделать - это изыскать где-то место и таки дать ей обновиться. Поскольку иначе ситуация снова повторится через какое-то время.

Так довольно быстро вы найдете, куда именно утекло дисковое пространство. Что делать дальше уже зависит от ваших знаний. Если вопрос касается одного из ваших сайтов, придется включать мозг и искать причину.

Блог

Поломка админки NetCat 4.7 в Google Chrome и Opera

В современных версиях Google Chrome и Opera, вышедших в прошлом месяце, админка CMS NetCat 4.7 и младше вдруг сломалась. Поломка проявляется в том, что в правой части админки перестала показываться нижняя панель редактирования (там, где кнопки Добавить и прочие), а скролл-прокрутка не осуществляется до конца. Работать с сайтом и добавлять новые материалы не представляется возможным.

далее

NetCat: техническая поддержка и доработка сайтов

Мы работаем с CMS NetCat уже больше 10 лет. У нас большой опыт и ответственный подход к делу.

далее

Права Доступа в Компонентах: работают не так, как ожидается; но можно накостылить патч

Если в настройках Раздела или Инфоблока NetCat попробовать дать доступ на изменение объекта ВСЕМ, ничего не получится. Просмотр и Добавление работают одним образом, а Изменение, Включение и Удаление -- другим.

далее

Как расставить запятые между тегами на CSS?

Иногда проще что-то сделать на чистом CSS, чем на серверной стороне. Например, расставить запятые между тегами. Попробуем разделить подчеркнутые теги-ссылки на чистом CSS.

далее

Весь блог тут