Утро Администратора: Добавление Места На Десятках Серверов Для Кофе

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

Почему? Потому что для них характерен естественный рост оснований.

Серверов сотни, все они виртуальные машины с тонкими дисками.

Если заранее дать им много места, то обязательно произойдет какой-нибудь «побег», типа апгрейда с переполнением таблиц, который сожрет все это пространство, а если не сожрет, то он укусит его.

Как известно, Thin Provisioning — это путь в один конец, если пространство сожрут, но потом его уже не вернуть обратно.

В результате большинство серверов зависают где-то на границе 90% используемого пространства — именно потому, что оповещение срабатывает на границе 90%.

Как только я даю немного, совсем немного места, сервер уходит на использованную площадь 80%-85%, и через месяц нужно снова добавить еще одно место.

И, тем не менее, не буду сразу много выдавать - слишком много прецедентов с побегами.

Я так часто выполнял механическую работу по расширению дискового пространства, что мне это надоело, и я решил автоматизировать ее с помощью Jenkins:

Утро администратора: добавление места на десятках серверов для кофе

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

Если детали не важны, сразу листайте до последней картинки.

Конечно, прежде чем добавлять место, я смотрю историю роста % использованного места, автоматически прикрепляемую к оповещению.

моя секретная система мониторинга .

Чаще всего рост является естественным:

Утро администратора: добавление места на десятках серверов для кофе

Но здесь лучше сначала разобраться:

Утро администратора: добавление места на десятках серверов для кофе

Давайте вернемся к Jenkins, который представляет собой всего лишь интерфейс к сценарию Powershell. У нас много VMware Vcenters, поэтому специальная SQL-процедура по имени сервера определяет, где находится этот сервер, и подключается к нему:

Утро администратора: добавление места на десятках серверов для кофе

Теперь читаем размер диска, прибавляем дельту и устанавливаем новое значение.



Утро администратора: добавление места на десятках серверов для кофе

Правда, я нагло пользуюсь тем, что все наши сервера заброшены подобным образом, например D:всегда Hard disk 2. Если у вас это не так, то вам придется помучаться.

Теперь диск расширяется с точки зрения VMware, а не с точки зрения гостя (Windows).

Мы должны использовать выделенное пространство.

Для этого вам нужно выполнить команду DISKPART внутри гостя.



Утро администратора: добавление места на десятках серверов для кофе

Нагло запихиваем BAT и IN файл в корень D:, и с помощью WMIC заставляем машину выполнять эти команды.

Файл doresizeX.bat (X — имя диска) содержит только

часть диска d:\doresize.out
И doresizeX.in содержит:
повторное сканирование выберите том X продлевать Выход
Теперь всё готово, нужно просто немного подождать (команда асинхронная!) и прочитать результат, отфильтровав лишнее:

Утро администратора: добавление места на десятках серверов для кофе

И ждем письма от Дженкинса:

Утро администратора: добавление места на десятках серверов для кофе

Теги: #Виртуализация #vmware #Администрирование сервера #Администрирование баз данных #PowerShell #хранилище #Microsoft SQL Server #администрирование #mssql #mssql
Вместе с данным постом часто просматривают:

Автор Статьи


Зарегистрирован: 2019-12-10 15:07:06
Баллов опыта: 0
Всего постов на сайте: 0
Всего комментарий на сайте: 0
Dima Manisha

Dima Manisha

Эксперт Wmlog. Профессиональный веб-мастер, SEO-специалист, дизайнер, маркетолог и интернет-предприниматель.