ServerAdmin.ru
27.1K subscribers
190 photos
27 videos
8 files
2.49K links
Авторская информация о системном администрировании.

Информация о рекламе: @srv_admin_reklama_bot
Автор: @zeroxzed

Второй канал: @srv_admin_live
Сайт: serveradmin.ru
Download Telegram
​​Я уже рассказывал про покупку ноутбука для работы ThinkPad T480. Пользуюсь им несколько месяцев, меня всё устраивает. Так как про ноут часто спрашивают и в личку иногда пишут, я вижу, что тема актуальна. Хочу рассказать про некоторые особенности конкретно этой модели. Впрочем не только этой.

Как я уже сказал, ноутбук меня полностью устраивает. Я купил полноценную док станцию и работаю чаще всего на рабочем месте с двумя мониторами, клавиатурой и мышкой, ноут сложен. Так что в целом, мне всё равно, что там под капотом. Лишь бы браузер и терминал работали. Иногда Photoshop и Minecraft.

У меня модель с дискретной видеокартой GeForce MX150. Взял с ней на всякий случай. Вдруг, думаю, пригодится. На днях решил посмотреть, а как работает эта видеокарта и работает ли вообще. Как оказалось, она не работает. Погонял Майнкрафт, он отлично работает на встроенной видеокарте Intel UHD 620. Стал разбираться. Оказывается, в Windows 11 система сама выбирает, какую видеокарту использовать (по умолчанию использует интегрированную). Если вам нужна внешняя, то для каждого приложения в Настройках ⇨ Система ⇨ Дисплей ⇨ Графика надо выбирать приложение и явно указать, на какой видеокарте оно будет работать.

Добавил браузер и Minecraft в работу с дискретной видеокартой. Каково же было моё удивление, когда ноут жутко залагал, частота процессора упала, работать стало невозможно. Сначала решил забить и не тратить на это время. Мне в целом эта видюха не нужна. Я купил с ней, потому что охлаждение ноута с ней более качественное. Но всё же стало любопытно. Немного погуглил и понял, что это типичная для многих моделей Thinkpad проблема с охлаждением (читать тут и тут).

Не буду грузить подробностями, а сразу скажу суть. Одного небольшого кулера не хватает на эффективное охлаждение видеокарты и процессора под высокой нагрузкой обоих, да ещё в корпусе 14". Если не пользоваться видеокартой, как было у меня, то проблем вообще никаких. Проц горячее 80 градусов у меня никогда не был, чаще в районе 50-60 температура, что для ноута нормально. Если же захотите поиграть в игрушки, иначе зачем вам ноут с дискретной видеокартой, то довольно быстро словите перегрев и троттлиннг процессора.

Единственное решение — с помощью программ Throttlestop и Afterburner чуть придушить мощность процессора и видеокарты, чтобы найти баланс, когда не начинается перегрев и троттлинг. Некоторым это удаётся. Я решил не заморачиваться, так как в тяжёлые игры всё равно не играю. По-быстрому нашёл какое-то проходное решение для простых случаев с включением пары настроек в Throttlestop: FIVR Disable и Lock Turbo Power Limits. Особо даже не вникал в них. У меня троттлить почему-то начинало уже на 70 градусах проца с работающей видюхой. С этими настройками троттлинг пропал. Меня это устроило. Майнкрафт и сёрфинг в браузере поживее пошли на внешней видеокарте. Надо было давно озадачиться этим вопросом.

Проблема с охлаждением у меня была и с прошлыми ноубуками x220, причём с обоими. Я первый поменял, думал, проблема локальная, но на самом деле нет. Приходилось тоже частоту процессора уменьшать. Также эта проблема наблюдается, судя по теме на форуме lenovo, на моделях без дискретной видеокарты. Просто перегревается процессор в максимальной нагрузке. И на моделях T480s, P51, T580, T470P, ещё каких-то, упоминаемых на форуме, проблема тоже присутствует.

В общем, с охлаждением проблема типовая уже много лет для многих моделей Thinkpad. Если будете выбирать себе подобный ноут, обратите внимание. Покупка ноутбука с дискретной видеокартой и её неиспользование — самое надёжное решение 😀 Так что тут я не прогадал. Ну а в целом, сейчас ноуты Thinkpad так себе. Не стоит на них акцентироваться, хотя лично я к ним привык, но в основном из-за док станций.

#железо
​​Заметка на тему современных ноутбуков. После того, как пересел на Thinkpad T480, всё устраивало в плане производительности, кроме одного момента. Иногда при быстром переключении межу приложениями по Alt+Tab ощущался небольшой подлаг, даже если никакой особой нагрузки нет. Не сильно мешало, но раздражало. 

Причину такого поведения узнал случайно. Вывел на видное место информацию о частоте процессора и заметил, что когда нет нагрузки, частота сильно снижается и сразу же повышается, если начинаешь что-то делать. Я так понял, что работает какая-то оптимизация потребления энергии процессором. Я почти всегда работаю стационарно, так что никакой экономии заряда или электричества мне не надо. Игра с настройками электропитания ни к чему не привела. Так и не понял, как окончательно отключить такое поведение. 

Решил вопрос бесплатной программой ThrottleStop. У неё уйма настроек, разбираться в которых нет ни желания, ни времени. Что конкретно мне помогло, уже не помню. Настроил по какой-то рекомендации на англоязычном ресурсе от владельца такого же ноута. Когда программа запущена, никаких подлагов нет, частота процессора не снижается. 

Если работаю от аккумуляторов (в этом ноуте их 2), не запускаю ThrottleStop. В итоге работает задуманное вендором энергосбережение. Надеюсь кому-то это будет полезным. Сейчас во всё современное оборудование внедряют энергосбережение, которое не всегда уместно.

Ниже скриншоты моих настроек ThrottleStop, где я что-то менял. Всё остальное по умолчанию оставлено.

#железо
На днях поставил себе на ноут программу по управлению оборотами вентилятора TPFanControl (https://thinkwiki.de/TPFanControl). Она вроде бы специально для серии Thinkpad написана, но может и с другими работает. Но это не суть. Таких программ много.

Я раньше пользовался подобной программой, потом как-то подзабыл и при переезде на другой ноут не поставил. Сейчас вспомнил и исправил. Программа нужна вот для чего. Я настроил включение вентилятора только если температура процессора становится выше 70-ти градусов. Это случается не так часто. В итоге почти всё время ноут полностью бесшумен. Очень удобно.

Стандартные алгоритмы управления вентилятором другие. Обычно хоть немного, но он шевелится и прибавляет обороты значительно раньше. Хотя температуры до 70-80 градусов вполне безопасны для процессора. Перегреться всё равно не успеет, он тротлить начинает сразу при перегреве.

У TPFanControl немного замороченный текстовый конфиг. Все настройки только в нём. После установки не понятно, с чего начать настройку. Если кому-то нужен, напишите в комментах, я свой выложу.

Обзор и настройка программы:
https://www.youtube.com/watch?v=5IPn0Jt7oA8

#железо
​​Среди большинства программ в Linux для сбора информации об оборудовании и системе, в стороне стоит dmidecode. Она, в отличие, к примеру, от lshw, hwinfo, inxi, не опрашивает оборудование, а берёт информацию из таблицы DMI (Desktop Management Interface) или SMBIOS. Поэтому все запросы выполняются практически мгновенно. Плюс к её использованию — она практически всегда есть в базовых дистрибутивах. Не припоминаю, чтобы хоть раз приходилось её ставить отдельно.

Demidecode легко использовать, так как у неё немного параметров. В основном это тип аппаратного устройства, о котором мы хотим получить информацию. Вот полный список :

0 BIOS
1 Система
2 Материнская плата
3 Корпус
4 Процессор
5 Контроллер памяти
6 Модуль памяти
7 Кэш
8 Коннекторы портов
9 Системные слоты
10 Интегрированные устройства
11 Строки OEM
12 Параметры системной конфигурации
13 Язык BIOS
14 Ассоциации групп
15 Журнал системных событий
16 Массив физической памяти
17 Устройство памяти
18 32-битные ошибки доступа к памяти
19 Отображенный адрес массива памяти
20 Отображенный адрес устройства памяти
21 Встроенное указывающее устройство
22 Батарея мобильного устройства
23 Устройство сброса состояния системы
24 Устройства безопасности
25 Управление питанием системы
26 Датчик напряжения
27 Устройство охлаждения
28 Датчик температуры
29 Датчик тока
30 Механизм удаленного доступа
31 Сервисы проверки целостности данных загрузки
32 Загрузочные устройства
33 64-битные ошибки доступа к памяти
34 Устройство управления
35 Компонент устройства управления
36 Граничные данные устройства управления
37 Канал памяти
38 Устройство IPMI
39 Блок питания
40 Дополнительная информация
41 Дополнительная информация об интегрированных устройствах
42 Хост-интерфейс контроллера управления
126 Деактивированная строка
127 Маркер конца таблицы

Наиболее популярные идентификаторы объединены кодовыми словами:

bios 1, 13
system 1, 12, 15, 23, 32
baseboard 2, 10, 41
chassis 3
processor 4
memory 5, 6, 16, 17
cache 7
connector 8
slot 9

То есть информацию о процессоре смотрим:
# dmidecode -t 4
или
# dmidecode -t processor

С помощью dmidecode удобно централизованно собирать информацию о каких-то характеристиках. Например, смотрим информацию о процессоре:

# dmidecode -s processor-version
Intel(R) Core(TM) i5-2500K CPU @ 3.30GHz

# dmidecode -s processor-frequency
4200 MHz

Ничего лишнего, только запрошенная информация. Полный список ключевых слов для запроса можно увидеть в выводе команды:

# dmidecode -s

Вывод dmidecode имеет смысл упрощать ключом -q, который убирает некоторую техническую информацию, которая чаще всего не нужна. Например, убирает информацию о handle (уникальный идентификатор железа) и мета данных.

❗️Dmidecode нормально показывает информацию, когда запущен на реальном железе. Если его запускать в виртуальных машинах, то часто информацию о тех или иных компонентах в DMI не будет. Например, о процессоре или материнской плате. Наличие информации будет зависеть от гипервизора и его настроек.

#linux #железо
​​Смотрите, какой любопытный проект у нас появился:
https://repka-pi.ru

Аналог Raspberry Pi. Выполнен в полностью идентичном форм-факторе, включая габаритные размеры, размеры и расположение основных интерфейсов, места и размеры отверстий для крепления.

Разработка в России. Это не переклеивание шильдиков. Компонентная база китайская, по маркировке всё видно, схемотехника и трассировка российские. Продукт коммерческой компании, без бюджетных денег. Подробное описание разработки лучше почитать от создателей.

Одноплатники в свободной продаже. Заказать можно как на сайте проекта, так и на ozon. ❗️Существенный минус - образы ОС от Raspberry Pi не подходят из-за разных схем питания. У репки свой образ Repka OS на базе Ubuntu. Также поддерживается работа ALT Linux.

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

Мне прям всё понравилось. Цена конкурентная, сайт, описание, упаковка чёткие. Отзывы хорошие, в том числе на качество компонентов, сборки и пайки. Да и в целом хорошо, что подобные компании и продукты есть в России. Это позволяет нарабатывать компетенции, создавать высококвалифицированные рабочие места.

Жаль, что мне одноплатники никогда не были нужны, так бы купил. Цена платы - 7400, сразу с корпусом - 9700. Ждать доставки из Китая не надо. Озон за несколько дней привезёт в любой пункт выдачи.

p.s. Узнал о репке из рекламы в ВК. А кто-то думает, что реклама не работает. Сработала очень даже хорошо для заказчиков.

#железо #отечественное
​​Очень простой и быстрый способ в Linux узнать, какой тип диска у вас в системе, HDD или SSD:

# cat /sys/block/sda/queue/rotational
1

# cat /sys/block/sde/queue/rotational
0

Диск sda — HDD, sde — SSD. Это работает только для железных серверов. То есть параметр буквально указывает, что первый диск с вращением, а второй — без. На основе этих данных ядро системы по возможности избегает одиночного поиска, чтобы лишний раз не дёргать диск. Вместо этого выстраивает запросы в очередь. Для SSD этот механизм становится неактуальным.

В виртуальных машинах могут быть разные значения. Чаще всего они будут показывать, что работают на HDD, если в гипервизоре специально не настроена эмуляция SSD. В Proxmox за это отвечает один из параметров диска — SSD Emulation. Если поставить соответствующую галочку, то виртуалка будет понимать, что работает на SSD. Это имеет смысл делать, хоть и не критично.

Возникает закономерный вопрос, начнёт ли работать технология trim в виртуальной машине, если включена эмуляция SSD. Насколько я смог понять, поискав информацию на эту тему, нет. Включенная эмуляция влияет только на rotational. Trim в виртуальной машине работать по-прежнему не будет.

#железо
Хочу продолжить вчерашнюю тему с удалёнными перезагрузками и отрубанием серверов. Немного повспоминал и решил сразу написать, пока не забыл, ещё несколько своих историй по этой теме.

1️⃣ Эту историю я тут описывал и даже статью написал. После обновления сделал штатную перезагрузку виртуалки, а она не поднялась. Немного подождал и пошёл смотреть консоль. Там принудительно началась проверка fsck диска на 3Тб. Длилась она несколько часов. Пришлось понервничать, так как не был уверен, что всё завершится благополучно. С тех пор на больших дисках слежу за этими проверками.

2️⃣ Этот случай был недавно. Достался в наследство сервер с MSSQL, где базы вынесены на отдельный дисковый массив, который представляет из себя внешнюю коробку, подключенную по SCSI разъёму (если не ошибаюсь, точно не помню уже). Проблема в том, что коробочка недорогая. Качество уровня desktop, больше для домашних пользователей. Решили сэкономить. После штатного отключения питания, коробочка не включилась. У неё было своё отдельное питание. Сервер загрузился, базы все лежат. Подключаюсь к серверу, массива нет, соответственно, ничего не работает. Попросил человека на месте проверить, в чём дело. Сказал, что коробка выключена и не включается.

Бэкапы все были, начал разворачивать. Проблема в том, что сервер железный. То есть пришлось поднимать новый сервер уже в VM. Пока это делал, инициативный человек на месте отключил коробку, разобрал, продул, собрал и она заработала. Пока работает, но на подхвате уже готов новый сервер, за бэкапами слежу. Переезд уже запланирован.

3️⃣ С подобной ситуацией сталкивался не раз и уже сильно учёный на этот счёт. Все серваки, подключенные к УПСу должны штатно завершать свою работу, когда заряд кончается. Обычно к этому приходят не сразу, а после того, как в один прекрасный день электричество вырубят не на 5 минут, а на пол дня.

И второй важный момент. Они не должны подниматься автоматически. К этому тоже приходят не сразу, а после того, как хапнут проблем. Я всё это проходил. Вырубается электричество, серваки штатно завершают работу, когда батареи пусты. Потом подаётся электричество, серваки включаются, а через 5 минут электричество опять отключают. И всё моментально аварийно падает в момент загрузки. На этом этапе я лично терял VM. С тех пор автоматически запускаются только гипервизоры. А виртуальные машины я или кто-то ещё включает вручную через некоторое время, когда точно понятно, что отключения прекратились и батареи немного зарядились.

❗️ Это просто совет. Когда меняете сетевые настройки, существенные параметры файрвола, либо что-то по железу (добавляете какое-то хранилище, сетевую карту с загрузкой драйвера), либо в системе то, что потенциально может приводить к проблемам загрузки или внешнего доступа. Не откладывайте перезагрузку, а сделайте её по возможности как можно раньше. Иначе может случиться так, что вы через пол года перезагрузите сервер и начнутся проблемы, которые вызваны этими изменениями, а вы про них забыли. Таких примеров у меня была масса.

Например, подключил хранилище, добавил запись в fstab или с ошибкой, или вообще забыл это сделать. А через несколько месяцев перезагрузил сервер. Включаешь его, а данных нет, служба не работает. Начинаешь в панике разбираться, в чём дело.

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

Ещё пример. Меняешь сложный dialplan в asterisk. Перезагрузку откладываешь на потом, чтобы не прерывать текущую работу. И забываешь. А при очередной перезагрузке не можешь понять, почему что-то работает неправильно. Трудно быстро вникнуть и вспомнить, что ты менял несколько месяцев назад.

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

#железо
​​В среде Windows, а точнее ещё даже DOS, была и есть очень популярная программа для тестирования работы диска MHDD. Думаю, если не все, то очень многие её знают. Во времена HDD это было лучшее средство проверить состояние диска, оценить скорость чтения и времени отклика каждого сектора.

В Linux есть похожая программа - whdd. У неё схожие возможности по чтению блочных устройств и выводе информации о них, как и у mhdd. Работает с дисками на низком уровне с помощью ATA команд.

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

Эту утилиту часто используют в составе различных Rescue CD на базе Linux. Но при желании, вы можете воспользоваться любым дистрибутивом и установить whdd туда самостоятельно. Например, в Debian это можно сделать следующим образом.

1️⃣ Ставим зависимости:
# apt install libncursesw5 libtinfo5 smartmontools
2️⃣ Качаем deb пакет под Xenial:
# wget https://launchpad.net/~eugenesan/+archive/ubuntu/ppa/+files/whdd_2.2+20160129-1~eugenesan~xenial1_amd64.deb
3️⃣ Устанавливаем:
# dpkg -i whdd_2.2+20160129-1~eugenesan~xenial1_amd64.deb

Так что можно взять любой LiveCD на базе deb пакетов и пользоваться. Также пакеты есть под AltLinux, ArchLinux, Gentoo, Slackware. Либо можно собрать из исходников самостоятельно. Проект open source.

Сайт / Исходники

#железо
Почему я не люблю работать с железом

Расскажу вам необычную историю из моей практики, которая случилась на днях. Есть у меня компания, с которой я работаю уже очень давно. У неё есть простенькая серверная и несколько своих серверов. К одному из них была подключена бюджетная дисковая полка фирмы HighPoint. Её купили ещё до меня. Лет 10 она честно отработала.

В какой-то момент после планового отключения электричества она не включилась. Человек на месте её покрутил, потряс, не включается. Разобрал, продул, снова включил - заработала. Тогда я сразу понял, что ей конец и форсировал покупку нового сервера. Его купили, оперативно там всё настроил, начали переносить нагрузку. Занимался другой человек. Всё самое основное перенесли.

Вскорости опять обесточивание. Полка не включается уже никак, ничего не помогает. Ничего критичного там уже нет, люди нормально работают. Но остались некоторые данные, которые хотелось бы забрать. Программист не успел перекинуть несколько второстепенных баз. А из бэкапов если доставать, то надо где-то MS SQL разворачивать, так как бэкапились его дампы.

Приехал я и начал шаманить. Стучал, тряс, разбирал, дул. Ничего не помогает. Не включается. Делаю ход конём. Беру сетевой удлинитель, подключаю не в УПС в серверной, а в розетку в соседней комнате. Нажимаю на кнопку - завелась. Просто чудо. Забрали всю инфу оттуда.

В следующий приезд надо было эту полку окончательно отключить и убрать, выключив предварительно сервер, к которому она подключена. Делаю всё очень аккуратно. Погасил сервер, долго не выключается. Переключаюсь на KVM на него, чтобы посмотреть, что на экране. Дождался выключения, возвращаюсь к себе за ноут.

⚡️Прилетают алерты. На соседнем сервере вылетел диск из рейда. I/O улетает в потолок, сервак фактически зависает. Виснет и SSH подключение, и с консоли логинишься, оболочка не загружается. Минут 10 подождал, понял, что дело труба. Судя по таймингам, проблемы спровоцировало нажатие кнопок на KVM. Я там ничего не дергал, железо не двигал. Просто подошёл и немного поработал за клавой с мышкой. Как это могло привести к тому, что начались сбои на HDD диске соседнего сервера, я хз. Какая-то статика что ли или ещё что-то. Даже идей нет.

С таким я сталкивался не раз. Очень не люблю работать с железом, особенно с серверами, которые работают 24/7 не в специализированном помещении. Если не соблюдается режим по температуре и влажности, то серверы или другое оборудование нередко не включается, после обесточивания.

Зависший сервер пришлось гасить принудительно. Скрестил пальцы, включаю. RAID10 живой, диск на месте, начался ребилд. Пока пишу заметку, rebuild на 75% закончен. На вид всё в порядке. Что это было - х.з.

Такие вот незапланированные приключения на ровном месте. Я уже давно не покупаю железо и не устраиваю серверные. Всё это наследство прошлого. Всегда стараюсь убедить арендовать железо в ЦОД, или своё на colocation поставить. Если всё аккуратно считать, то это не обязательно будет дороже. Но точно стабильнее и надёжнее.

Если у кого-то есть идеи, что могло спровоцировать проблемы с диском на соседнем сервере, поделитесь. Точно не было случайных ударов, пинков, каких-то сильных вибраций и т.д. Провода не задевал и не дёргал. Возможно соседний сервер выключился и каких-то колебаний добавил. Может в этом дело.

#железо
Ещё одну историю про железо расскажу. Как-то кучно было на прошлой неделе. В одном сервере для бэкапов вылетел диск из рейд массива. Он сначала помигал параметром SMART Current_Pending_Sector. То появлялся, то исчезал. В принципе, это не критично. Я видел много дисков, которые годами работают в массивах с этими метриками, и с ними в целом всё в порядке. Главное, чтобы всё стабильно было, не прыгало туда сюда в значениях.

Этот немного попрыгал и вывалился из массива. Он был в составе RAID6. Я для бэкапов обычно делаю его. Иногда RAID10 для увеличения производительности. Но только с RAID6 чувствую себя спокойно, так как он позволяет штатно пережить выход двух дисков из строя. Потеря одного совершенно некритична, нет нужды срочно менять диск, что не так для других уровней. RAID5 лично я вообще не использую и вам не советую.

Здесь рейд был создан на базе mdadm, так что замена прошла штатно. Я уже описывал её в заметке, которую сам постоянно использую:
https://t.me/srv_admin/723
Только в заметке диски SSD и меньше 2TB, поэтому там работает утилита sfdisk для копирования разметки. Для больших дисков она не подходит, надо использовать sgdisk. Скопировать таблицу разделов с /dev/sda на /dev/sdb:
# sgdisk -R /dev/sdb /dev/sda
Важно не перепутать диски. Таблица разделов склонируется вместе с GUID, что в данном случае нам не надо. Поэтому меняем GUID:
# sgdisk -G /dev/sdb

Если боитесь напортачить с автоматической разметкой нового диска, то сделайте это вручную с помощью parted. Посмотрите разметку существующего диска и создайте вручную такую же на новом.

Дальше всё то же самое по инструкции, что я привёл выше. Ребилд длился часов 14 в итоге. Всё прошло штатно. Если всё же надумаете когда-нибудь использовать RAID5, то делайте это с SSD дисками размером не больше 1-2 TB. Думаю там это может быть обоснованно.

Мониторинг SMART в случае с mdadm обычно делаю примерно так:
https://serveradmin.ru/monitoring-smart-v-zabbix/
Если рейд железный и сервер с bmc, то в зависимости от возможностей платформы. Некоторые передают параметры смарт, некоторые нет. Если контроллер данные не передаёт, то уже ничего не поделать. Приходится довольствоваться его метриками. Я поэтому и люблю mdadm. Диски и его статус легко обложить метриками, какими пожелаешь. И поведение более чем предсказуемое.

#железо