Нагружаем систему и следим за температурой на CentOS 6

Итак, я собрал новый сервер, успешно запустил его и установил на него ОС CentOS 6. Естественно, перед тем, как его ставить на продакшн в датацентр, необходимо произвести ряд нагрузочных тестов, чтобы выявить возможные слабые места в железе и убедиться в надёжности новой системы.
Начну с установки утилиты, показывающей температуру процессора. Утилита называется sensors, она показывает температуру по каждому ядру процессора. Входит в пакет lm_sensors.

Устанавливаем:

# yum install lm_sensors

Для её работы потребуется установить модуль ядра, который может считывать информацию с температурных датчиков ядер. Его потребуется установить из репозитория elrepo.
Устанавливаем репозиторий:

# rpm --import http://elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://elrepo.org/elrepo-release-6-4.el6.elrepo.noarch.rpm

Устанавливаем модуль coretemp:

# yum --enablerepo=elrepo install kmod-coretemp
# modprobe coretemp

Запускаем утилиту обнаружения сенсоров, на все задаваемые вопросы жмём enter:

# sensors-detect

Запускаем утилиту sensors:

# sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0: +27.0°C (high = +74.0°C, crit = +94.0°C)

coretemp-isa-0001
Adapter: ISA adapter
Core 1: +29.0°C (high = +74.0°C, crit = +94.0°C)

coretemp-isa-0002
Adapter: ISA adapter
Core 2: +31.0°C (high = +74.0°C, crit = +94.0°C)

coretemp-isa-0003
Adapter: ISA adapter
Core 3: +29.0°C (high = +74.0°C, crit = +94.0°C)

Утилита вывела температуру по каждому ядру процессора. Вывод можно упростить, используя команду grep Core:

# sensors | grep Core

Четырёхъядерный Xeon E3-1230 оказался весьма холодным без нагрузки. Теперь надо посмотреть, насколько он нагреется под нагрузочным тестом.
Я использовал утилиту stress, которая есть в репозитории DAG.

# rpm -ivh http://download.fedora.redhat.com/pub/epel/6/x86_64/stress-1.0.4-4.el6.x86_64.rpm

Запустим например с такими параметрами:

# stress --cpu 8 --vm 2 --vm-bytes 128M

Здесь создаётся 8 процессов, нагружающих процессор, и 2 процесса, непрерывно создающих и удаляющих блоки по 128МБ в оперативной памяти.
Откроем вторую консоль и проследим за динамикой роста температуры:

# watch 'sensors | grep Core'

Спустя час после запуска утилиты нагрузочного тестирования сенсоры показывают такой результат:

Every 2.0s: sensors | grep Core Mon Dec 4 04:27:01 2011

Core 0: +61.0°C (high = +74.0°C, crit = +94.0°C)
Core 1: +63.0°C (high = +74.0°C, crit = +94.0°C)
Core 2: +66.0°C (high = +74.0°C, crit = +94.0°C)
Core 3: +60.0°C (high = +74.0°C, crit = +94.0°C)

Что ж, выглядит весьма неплохо, и можно определённо сказать, что система охлаждения работает как надо.

Чуть позже я расскажу об измерении температуры на жёстких дисках.

Обсуждение закрыто.