Архивы рубрики ‘Работа’

Исправляем ошибку nf_conntrack: table full, dropping packet

Если в dmesg появляется большое количество сообщений: [3346432.018226] nf_conntrack: table full, dropping packet. то это означает, что ОС не справляется с обработкой сетевых соединений и часть из них будет сброшена. На CentOS 6 проблема решается тривиально: 1. Смотрим текущие ограничения: # sysctl -a | grep conntrack_max net.netfilter.nf_conntrack_max = 1048576 net.nf_conntrack_max = 1048576

Очистка очереди сообщений в Zabbix

Несколько раз сталкивался с ситуацией, что из-за ошибки конфигурации или системного сбоя, Zabbix начинал отправлять сотни уведомлений. А так как он их отправить моментально не может, то их доставка затягивалась на большой период и отвлекала от работы. Есть простой способ избавится от всех недоставленных сообщений: подключаемся к базе данных и выполняем запрос: UPDATE alerts SET […]

Блокировка доступа к сайту для определенных браузеров с помощью Nginx

Название используемого посетителем браузера nginx хранит в переменной $http_user_agent, поэтому для блокировки доступа к сайту необходимо добавить в конфигурацию nginx следующее правило : if ($http_user_agent ~* «wget|Chrome|Firefox/28.0» ) { return 403; } и перезапустить веб-сервер: service nginx reload

Активация страницы «Apache Server Status» на сайте созданном с помощью CMS Битрикс

Если на виртуальном хосте работает сайт под управлением CMS Битрикс, то для активации страницы «Apache Server Status» необходимо сделать следующее: 1. Добавить location в nginx: location ^~ /server-status { proxy_pass http://127.0.0.1:8888; } 2. Перезапустить nginx: service nginx reload

Тестирование сайта из консоли.

Проверить работу сайта по протоколу HTTP можно с помощью программы telnet: # telnet firefly.by 80 Trying 178.159.249.221… Connected to firefly.by. Escape character is ‘^]’. GET / HTTP/1.0 Host: firefly.by HTTP/1.1 302 Moved Temporarily Server: nginx/1.0.15 Date: Wed, 21 May 2014 08:18:34 GMT Content-Type: text/html Content-Length: 161 Connection: close Location: http://www.firefly.by/ А для проверки протокола HTTPS […]

Восстанавливаем репликацию MySQL после повреждения relay-лога

Иногда MySQL-репликация останавливается на Slave-сервере с ошибкой: Last_SQL_Error: Relay log read failure: Could not parse relay log event entry. Эта ошибка может быть вызвана повреждением бинарного лога на master-сервере, проблемами с сетью, либо повреждением relay-лога на slave-сервере. Проверить состояние бинарного лога на мастере можно с помощью утилиты mysqlbinlog, а проблему на стороне slave-сервера проще решить […]

Настройка geoDNS с помощью powerDNS

geoDNS — это возможность предоставления для клиентов из разных регионов/стран различных ДНС записей. С помощью geodns можно организовать свою CDN, либо бороться с DDOS-атакой. В PowerDNS этот функционал предоставляет модуль geo. Установим PowerDNS и модуль geo из репозитория epel: rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum install pdns pdns-backend-geo Переименуем конфигурационный файл PowerDNS поставляющийся вместе с пакетом: cd […]

Автоматическая синхронизация времени в CentOS

Точное время имеет очень важное значение для всех серверов взаимодействующих с внешними сервисами, но наибольшую роль оно играет в работе серверов баз данных. Настройка этого демона проста и не требует много времени, производится один раз за все время жизни сервера. В начале необходимо установить последние версии программы ntp и обновить пакет tzdata: #yum update -y […]

SMART — 4 основные параметра

1. Количество ошибок сканирования (scan error count) — ненулевое значение этого параметра повышает вероятность отказа жесткого диска в течении 60 дней в 39 раз по сравнению с диском имеющим нулевую велечину этого параметра. 2. Количество повторных перераспределений памяти(reallocation count) — вероятность отказа в течении 60 дней выше в 14 раз. 3. Количество автономных повторных распределений […]

Оптимизация изображений на сайте

При открытии сайта основной объем передаваемых данных занимают изображения, поэтому есть необходимо оптимизировать их размер. Для того что бы не выполнять работы по оптимизации размера изображений вручную я написал небольшой скрипт. Он ищет изображения в папке и пытается выполнить их сжатие.