- Стресс тест процессора и памяти (VM) на Linux
- Инструмент # 1: Начало работы с инструментом stress
- Установите пакет stress
- Установка на CentOS, RHEL, и Fedora Linux
- Как провести стресс-тестирование вашей системы Linux
- Создаем циклы своими руками
- Специализированные инструменты для добавления нагрузки
- Как провести стресс-тестирование вашей системы Linux
- Создаем циклы своими руками
- Специализированные инструменты для добавления нагрузки
- Максимально нагрузить сервер
Стресс тест процессора и памяти (VM) на Linux
Я хочу проверить свой сервер Linux, OpenBSD, FreeBSD и Unix как он выдержит большую нагрузку и как он будет работать в такой ситуации. Какими средствами я буду тестировать нагрузку на память, процессор и подсистему ввода-вывода в Linux или Unix-подобных?
Администратор может попробовать любой из следующих инструмент для формирования определенной нагрузки. Случаи, в которых это полезно включать в себя те, в которых системный администратор хочет, чтобы выполнить настройки ядра или программист желает оценить при каких условиях произойдет отказ сервиса, и проверить свои системы исключительно на высокой нагрузке с мониторингом состояния и т.д. Также эти утилиты полезны системным администраторам, системным интеграторам и оверклокерам, которые хотят проверить оборудования в условиях высокой нагрузки и контролировать стабильность и среду.
- Stress: Это простой генератор рабочей нагрузки для систем POSIX. Имеет конфигурируемый количество ЦП, памяти, ввода-вывода и дискового стресса в системе. Написано на C, и является свободным программным обеспечением под лицензией GPLv2. Это не тест, а скорее инструмент, предназначенный
- Stress-ng: Это обновленная версия инструмента stress, и он может провести стресс-тест сервера для следующих функций:
- CPU
- Cache
- Тестирования привода
- Синхронизация ввода / вывода
- VM тест
- Тест Socket,
- Переключение контекста
- Создание процесса и прекращение
- Он включает в себя более 60 различных стресс-тестов, более 50 процессоров конкретных стресс-тестов, которые осуществляют с плавающей точкой, целое число, манипуляции с битами и контроль потока, более 20 виртуальных стресс-тестов памяти.
Предупреждение: Запуск следующего инструмента рекомендуется с root привилегиями что бы избежать ошибок памяти и других. Кроме того, обратите внимание, что средства будут использовать ресурсы сервера быстро, так что используйте следующую команду рассудительно.
Инструмент # 1: Начало работы с инструментом stress
Эта программа проста в использовании и рекомендуется для новичков администраторов. Инструмент как известно, работает на платформах x86 и Linux и FreeBSD / OpenBSD, PowerPC AIX и Linux, SPARC Solaris, Compaq Alpha Tru64 UNIX, и многие другие.
Установите пакет stress
Вы можете установить stress как часть дистрибутива.
Установка на CentOS, RHEL, и Fedora Linux
Во-первых, нужно включить epel repo , а затем введите следующую команду , чтобы установить пакет:
Как провести стресс-тестирование вашей системы Linux
Повышение нагрузки на серверы Linux может быть хорошей идеей, если вы хотите увидеть, насколько хорошо они работают, когда они загружены. В этой статье мы рассмотрим некоторые инструменты, которые помогут вам нагрузить сервер и оценить результаты.
Для чего вам необходимо подвергать свою систему Linux нагрузке? Потому что иногда вам может потребоваться узнать, как система будет вести себя, когда она находится под большим давлением из-за большого количества запущенных процессов, интенсивного сетевого трафика, чрезмерного использования памяти и т. д. Этот вид тестирования позволяет убедиться, что система готова к использованию.
Если вам нужно спрогнозировать, сколько времени потребуется приложениям для ответа и какие процессы могут выйти из строя или работать медленно под большой нагрузкой, проведение стресс-тестирования заранее является очень хорошей идеей.
К счастью для тех, кому нужно знать, как система Linux отреагирует на нагрузку, есть несколько полезных методов, которые вы можете использовать, и есть инструменты, которые вы можете использовать, чтобы упростить этот процесс. В этой статье мы рассмотрим несколько вариантов.
Создаем циклы своими руками
Данный первый метод предполагает запуск некоторых циклов в командной строке и наблюдение за тем, как они влияют на систему. Этот метод нагружает ЦП, значительно увеличивая нагрузку. Результаты можно легко увидеть с помощью команды uptime или аналогичных команд.
В приведенной ниже примере мы начинаем четыре бесконечных цикла. Вы можете увеличить количество циклов, добавляя цифры или используя выражение bash , например вместо «1 2 3 4».
for i in 1 2 3 4; do while : ; do : ; done & done
В примере выше, команда, запускает четыре бесконечных цикла в фоновом режиме.
$ for i in 1 2 3 4; do while : ; do : ; done & done [1] 205012 [2] 205013 [3] 205014 [4] 205015
В этом случае были запущены задания 1-4. Отображаются как номера заданий, так и идентификаторы процессов.
Чтобы увидеть влияние на средние значения нагрузки, используйте команду, подобную показанной ниже. В этом случае команда uptime запускается каждые 30 секунд:
$ while true; do uptime; sleep 30; done
Если вы собираетесь периодически запускать подобные тесты, вы можете поместить команду цикла в скрипт:
#!/bin/bash while true do uptime sleep 30 done
В выходных данных вы можете увидеть, как средние значения нагрузки увеличиваются, а затем снова начинают снижаться после завершения циклов.
Поскольку показанные нагрузки представляют собой средние значения за 1, 5 и 15 минут, потребуется некоторое время, чтобы значения вернулись к нормальным для системы значениям.
Чтобы остановить циклы, выполните команду kill , подобную приведенной ниже — при условии, что номера заданий равны 1-4, как было показано ранее в этой статье. Если вы не уверены, используйте команду jobs , чтобы проверить ID.
Специализированные инструменты для добавления нагрузки
Другой способ создать системный стресс — это использовать инструмент, специально созданный для того, чтобы нагружать систему за вас. Один из них называется stress и может воздействовать на систему разными способами. Стресс-инструмент — это генератор рабочей нагрузки, который обеспечивает стресс-тесты ЦП, памяти и I/O.
С параметром —cpu команда stress использует функцию извлечения квадратного корня, чтобы заставить ЦП усердно работать. Чем больше указано количество ЦП, тем быстрее будет нарастать нагрузка.
Второй сценарий watch-it (watch-it-2) может использоваться для оценки влияния на использование системной памяти. Обратите внимание, что он использует команду free , чтобы увидеть эффект стресса.
$ cat watch-it-2 #!/bin/bash while true do free sleep 30 done
Начало и наблюдение за стрессом:
Чем больше ЦП указано в командной строке, тем быстрее будет нарастать нагрузка.
Команда stress также может вызвать нагрузку на систему, добавив I/O и загрузку памяти с помощью параметров —io (input/output) и —vm (memory).
В следующем примере выполняется команда для добавления нагрузки на память, а затем запускается сценарий watch-it-2 :
Другой вариант для стресса — использовать параметр —io , чтобы добавить в систему действия по вводу/выводу. В этом случае вы должны использовать такую команду:
После чего вы можете наблюдать за стрессовым I/O с помощью iotop . Обратите внимание, что iotop требует привилегий root .
stress — это лишь один из множества инструментов для добавления нагрузки в систему.
Как провести стресс-тестирование вашей системы Linux
Повышение нагрузки на серверы Linux может быть хорошей идеей, если вы хотите увидеть, насколько хорошо они работают, когда они загружены. В этой статье мы рассмотрим некоторые инструменты, которые помогут вам нагрузить сервер и оценить результаты.
Для чего вам необходимо подвергать свою систему Linux нагрузке? Потому что иногда вам может потребоваться узнать, как система будет вести себя, когда она находится под большим давлением из-за большого количества запущенных процессов, интенсивного сетевого трафика, чрезмерного использования памяти и т. д. Этот вид тестирования позволяет убедиться, что система готова к использованию.
Если вам нужно спрогнозировать, сколько времени потребуется приложениям для ответа и какие процессы могут выйти из строя или работать медленно под большой нагрузкой, проведение стресс-тестирования заранее является очень хорошей идеей.
К счастью для тех, кому нужно знать, как система Linux отреагирует на нагрузку, есть несколько полезных методов, которые вы можете использовать, и есть инструменты, которые вы можете использовать, чтобы упростить этот процесс. В этой статье мы рассмотрим несколько вариантов.
Создаем циклы своими руками
Данный первый метод предполагает запуск некоторых циклов в командной строке и наблюдение за тем, как они влияют на систему. Этот метод нагружает ЦП, значительно увеличивая нагрузку. Результаты можно легко увидеть с помощью команды uptime или аналогичных команд.
В приведенной ниже примере мы начинаем четыре бесконечных цикла. Вы можете увеличить количество циклов, добавляя цифры или используя выражение bash , например вместо «1 2 3 4».
for i in 1 2 3 4; do while : ; do : ; done & done
В примере выше, команда, запускает четыре бесконечных цикла в фоновом режиме.
$ for i in 1 2 3 4; do while : ; do : ; done & done [1] 205012 [2] 205013 [3] 205014 [4] 205015
В этом случае были запущены задания 1-4. Отображаются как номера заданий, так и идентификаторы процессов.
Чтобы увидеть влияние на средние значения нагрузки, используйте команду, подобную показанной ниже. В этом случае команда uptime запускается каждые 30 секунд:
$ while true; do uptime; sleep 30; done
Если вы собираетесь периодически запускать подобные тесты, вы можете поместить команду цикла в скрипт:
#!/bin/bash while true do uptime sleep 30 done
В выходных данных вы можете увидеть, как средние значения нагрузки увеличиваются, а затем снова начинают снижаться после завершения циклов.
Поскольку показанные нагрузки представляют собой средние значения за 1, 5 и 15 минут, потребуется некоторое время, чтобы значения вернулись к нормальным для системы значениям.
Чтобы остановить циклы, выполните команду kill , подобную приведенной ниже — при условии, что номера заданий равны 1-4, как было показано ранее в этой статье. Если вы не уверены, используйте команду jobs , чтобы проверить ID.
Специализированные инструменты для добавления нагрузки
Другой способ создать системный стресс — это использовать инструмент, специально созданный для того, чтобы нагружать систему за вас. Один из них называется stress и может воздействовать на систему разными способами. Стресс-инструмент — это генератор рабочей нагрузки, который обеспечивает стресс-тесты ЦП, памяти и I/O.
С параметром —cpu команда stress использует функцию извлечения квадратного корня, чтобы заставить ЦП усердно работать. Чем больше указано количество ЦП, тем быстрее будет нарастать нагрузка.
Второй сценарий watch-it (watch-it-2) может использоваться для оценки влияния на использование системной памяти. Обратите внимание, что он использует команду free , чтобы увидеть эффект стресса.
$ cat watch-it-2 #!/bin/bash while true do free sleep 30 done
Начало и наблюдение за стрессом:
Чем больше ЦП указано в командной строке, тем быстрее будет нарастать нагрузка.
Команда stress также может вызвать нагрузку на систему, добавив I/O и загрузку памяти с помощью параметров —io (input/output) и —vm (memory).
В следующем примере выполняется команда для добавления нагрузки на память, а затем запускается сценарий watch-it-2 :
Другой вариант для стресса — использовать параметр —io , чтобы добавить в систему действия по вводу/выводу. В этом случае вы должны использовать такую команду:
После чего вы можете наблюдать за стрессовым I/O с помощью iotop . Обратите внимание, что iotop требует привилегий root .
stress — это лишь один из множества инструментов для добавления нагрузки в систему.
Максимально нагрузить сервер
Взял виртуальный сервачёк в одной забугорной небольшой конторе, взял минимальный дешёвый конфиг на месяц — потестить если что, с возможностью дальнейшего апгрейда. Планировал накатить Дебчик, оказалось там не ставится большинство нужных мне пакетов из-за отсутствия поддержки Fuse. Вариантов оплаты там великое множество, сразу пишут про возможность манибека. Оказалось, если перейти по ссылке в правила, оттуда по ссылке в FAQ и там пролистать до низа страницы, можно найти внизу условия манибека — 10 дней, да. (Я запросил через 2 часа). Но предоставляют только на Банк вайр его, а на остальные методы оплаты — нет, лол)) Ладно, поиграл, накатил Центось, потом Убунту. Происходит всё время нечто странное — например, если поставить нетворк менеджер, «отваливается ip», как объяснили в поддержке и к серваку по ssh подключиться можно, а с него не пингуется ничего. Ну я тикет когда подал — они через 12 часов мне восстановили его работу с таким ответом, здорово. Чем дальше, тем больше всего интересного было, я не буду перечислять. На последний запрос они 18 часов уже не отвечают, помоему вообще забили.
Ну что, я его купил, манибека нет — пусть мощность отрабатывает свою. В хелпе написано об отсутствии свопа, из-за их нежелания портить свои ссд. Места занято убунтой чуть менее 1.5Гиг из 20. Оперативки — менее 300Мб из 1Гб. Процессор 1. Нужен простой, как топор способ (т.к. там периодически само собой перестаёт работать бывает то одно, то другое), организовать максимальную нагрузку на SSD и пусть процессор тоже отрабатывает свою мощность. Как проще всего сделать?