Однажды на одном высоконагруженном сервере доступа с трафиком около 5 Gb/s в /var/log/syslog начали часто отображаться ошибки:
Читать далее «Решение «TX driver issue detected, PF reset issued»»Архивы меток:Performance
Установка и использование innotop
innotop — утилита для мониторинга состояния MySQL сервера.
Приведу пример установки innotop в Ubuntu. Так как innotop присутствует в mysql-client, то установим его и необходимые компоненты:
Скрипт просмотра PPS (Packets Per Second)
Скрипт ежесекундно отображает количество входящих и исходящих пакетов в секунду на указанном сетевом интерфейсе.
Содержимое скрипта поместим в файл, например pps.sh и выполним указав имя сетевого интерфейса (остановить выполнение скрипта можно клавишами CTRL+C):
Изменение CPU Scaling Governor в Linux
Благодаря «Scaling Governor», можно выбрать оптимальную схему управления частотой процессора, что влияет на потребление электроэнергии и производительность.
На высоко нагруженных серверах доступа у знакомых были случаи зависания сервера при «ondemand», хотя у меня таких случаев не было, но все же рекомендую изменить на «performance».
На ноутбуках и слабо нагруженных серверах можно оставить «ondemand» для экономии электроэнергии.
BGP. Балансировка каналов на Quagga
Приведу пример балансировки только входящего трафика при двух каналах используя Quagga.
На тесте буду использовать Ubuntu 16.04.4 LTS и Quagga 0.99.24.1, сетевой интерфейс ens1f0 для второго провайдера с одним neighbors и ens2f0 для первого провайдера с двумя neighbors, в ens2f1 будет подключена локальная сеть. Оба провайдера анонсируют «default».
3.3.3.0/23 это будет моя сеть с белыми IP адресами.
Читать далее «BGP. Балансировка каналов на Quagga»
Установка NetData
NetData — система мониторинга, отображающая на веб-панелях статистику в реальном времени.
На тесте выполню установку NetData в Ubuntu 18.04 и Ubuntu 16.04.
Перед установкой можно обновить систему:
sudo apt-get update sudo apt-get upgrade
Если версия Ubuntu 18.04 и новее, то NetData устанавливается командой:
sudo apt-get install netdata
После установки конфигурация будет находится в /etc/netdata/, логи в /var/log/netdata/.
На Ubuntu 16.04 и старее, можно установить так (установка выполнится в /opt/netdata/):
sudo bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh)
Перезапустить NetData можно командой:
sudo systemctl restart netdata
Посмотреть статус:
sudo systemctl status netdata sudo ps ax | grep netdata
После установки NetData сразу можно открыть в браузере http://HOST:19999
Рекомендую сразу ограничить доступ к порту tcp 19999, например через iptables.
Установка и использование mysqltuner.pl
MySQLTuner — это Perl скрипт, который даст рекомендации по повышению производительности и стабильности MySQL сервера.
Читать далее «Установка и использование mysqltuner.pl»Установка Apache JMeter в Ubuntu
Apache JMeter — инструмент для нагрузочного тестирования.
Для Apache JMeter необходимо установить Java, смотрите мою статью — Установка Java в Linux.
Для примера установлю Apache JMeter в Ubuntu Desktop 18.04.
После того как Java установлен, скопируем ссылку на архив с последней версией Apache JMeter с официального сайта http://jmeter.apache.org/download_jmeter.cgi и скачаем его:
wget http://apache.volia.net//jmeter/binaries/apache-jmeter-4.0.tgz
Распакуем архив:
tar -xf apache-jmeter-4.0.tgz
Запустим:
cd apache-jmeter-4.0/bin/ ./jmeter
После запуска отобразилось сообщение, что в графическом режиме Apache JMeter можно создавать тесты, а выполнять их можно только из терминала, например так:
jmeter -n -t [jmx file] -l [results file] -e -o [Path to web report folder]
Кстати Apache JMeter в Windows запускается через файл jmeter.bat.
Управление мощностью ядер процессора в Linux
Чтобы посмотреть минимальную, текущую и максимальную частоту ядер процессора выполним команду:
Читать далее «Управление мощностью ядер процессора в Linux»Установка и использование ioping
ioping — простой инструмент для мониторинга задержек ввода-вывода диска в режиме реального времени, аналогично как ping показывает задержку сети.
Установить в Ubuntu/Debian можно командой:
sudo apt-get install ioping
Приведу пример запуска с 10 запросами теста задержек к директории /tmp:
ioping -c 10 /tmp
Пример запроса с интервалом 0.2мс и увеличенным размером запроса:
ioping -i 0.2 -c 10 -s 1M -S 5M /tmp
Тест к диску:
ioping -R /dev/sda ioping -RL /dev/sda
Опишу возможные опции запуска:
-c count (остановить после указанного количества запросов)
-w deadline (остановить после указанного количества времени)
-p period (отображать raw статистику после каждого указанного количества запросов)
-P period (отображать raw статистику после каждого указанного количества секунд)
-i interval (интервал между запросами в секундах)
-s size (размер запроса (4k))
-S size (размер рабочего набора)
-k (по завершению команды оставить (не удалять) рабочий файл ioping.tmp)
-L (последовательные операции вместо случайных, это также задаст размер запроса до 256k (как и -s 256k))
-A (асинхронный I/O)
-C (кешированный I/O)
-D (прямой I/O)
-B (не отображать информацию выполнения, она отобразится только по завершении команды в raw формате)
-q (не отображать информацию выполнения, она отобразится только по завершении команды)
-h (отображение краткой справки)
-v (просмотр версии)