Контроль места на дисках

20.02.20

База данных - Администрирование СУБД

Один из последних случаев на работе. Диск, на котором хранились файлы базы, "развалился", база потеряна. Начали искать копию базы. Копии базы делались на другой диск, но оказалось, что на том диске нет места и копии не делались несколько дней. Так было потеряно несколько дней работы фирмы, кому-то выговор, кого-то уволили((.

Все делается очень и очень просто.

Добавляем регламентное задание, добавляем расписание для регламентного задания, далее пишем процедуру проверки места на дисках, используя объект "scripting.fileSystemObject".

 Процедура отправки выглядит так:

Процедура ПроверитьМестоНаДисках() Экспорт
	
	#Если Сервер Тогда 		
		Попытка
                        // можно вынести в константу или добавить регистр сведений, где можно хранить свободное место для каждого диска отдельно			
                        МинимальноДопустимыйСвободныйОбъемГБ = 30; 
			
			СписокАдресов = Новый СписокЗначений;
			СписокАдресов.Добавить("wowik@infostart.ru");
			СписокАдресов.Добавить("wowik_2@infostart.ru");
		        СписокАдресов.Добавить("wowik_3@infostart.ru");

			fso = Новый COMОбъект("scripting.fileSystemObject");
			Диски = fso.Drives;
			
			Тема = "Недостаточно свободного места на дисках на сервере!";		
			ТекстПисьма = "<P>"+Тема+"</P>"; 
			
			ОтправитьСообщение = Ложь;
			для каждого диск из Диски Цикл
				Если диск.ShareName = "" и диск.IsReady Тогда
					ВсегоГигаБайт    = Окр(диск.TotalSize/(1024*1024*1024));				
					СвободноГигаБайт = Окр(диск.FreeSpace/(1024*1024*1024));
					Процент          = Окр((СвободноГигаБайт/ВсегоГигаБайт)*100);
					
					Если СвободноГигаБайт <= МинимальноДопустимыйСвободныйОбъемГБ Тогда
						ОтправитьСообщение = Истина;
						ТекстПисьма = ТекстПисьма + "<P> Диск "+диск.Path+" свободно: "+СвободноГигаБайт+" ГБ из "+ВсегоГигаБайт+" ГБ ("+Процент+"%)</P>";
					КонецЕсли;
				КонецЕсли;
			КонецЦикла; 
			Если ОтправитьСообщение Тогда
				ОтправитьСообщениеНаПочту(СписокАдресов, Тема, ТекстПисьма); 		
			КонецЕсли;
		Исключение
		КонецПопытки;	
	#КонецЕсли
	
КонецПроцедуры

Работоспособность проверена на конфигурации "Управление производственным предприятием, редакция 1.3 (1.3.87.2)".

За местом на дисках должны в обязательном порядке следить системные администраторы - так и только так, но лучше лишний раз "обезопасить" труд сотрудников.

Перед любыми обновлениями базы делайте копии!

См. также

Администрирование СУБД Системный администратор Программист

В крупных компаниях, где много типовых и сильно доработанных баз с режимом работы 24/7, переход с MS SQL на PostgreSQL затягивается. Получается гетерогенная структура – когда прод уже на PostgreSQL, а разработка и тестирование – пока на MS SQL. О том, какие варианты помогут постепенно перевести прод с несколькими базами MS SQL на PostgreSQL, не сломав среду тестирования и разработки, пойдет речь в статье.

21.11.2024    2841    a.doroshkevich    7    

14

Администрирование СУБД Системный администратор Платформа 1С v8.3 Бесплатно (free)

Пользовался ранее https://infostart.ru/1c/articles/1120161/#, но она устарела, т.к. службы запускаются через systemctl, да и сами службы слегка изменились. Возможно, где-то на ИТС уже есть нужная инструкция, но мне не попалась.

15.11.2024    361    Baser    2    

1

HighLoad оптимизация Администрирование СУБД Системный администратор Программист Платформа 1С v8.3 Россия Бесплатно (free)

Мы исследуем проблему долгого выполнения запросов PostgreSQL при использовании конструкции VALUES: когда она возникает, как на нее можно повлиять, а главное, почему ее продуманная отработка важна для более быстрого функционирования решений на базе 1С

12.11.2024    886    Tantor    19    

14

HighLoad оптимизация Администрирование СУБД Механизмы платформы 1С Программист Платформа 1С v8.3 ИТ-компания Россия Бесплатно (free)

В данной статье мы рассмотрим, как работает механизм временных таблиц на postgres на платформе 8.3.23 и что изменилось в нем при добавлении новых возможностей в платформе 8.3.25. А также на примере покажу, как понимание работы платформы позволяет оптимизировать СУБД для работы с 1С.

29.10.2024    3333    Tantor    38    

34

Администрирование СУБД Системный администратор Программист Бесплатно (free)

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

08.10.2024    781    AlexSvoykin    1    

7

Администрирование СУБД Системный администратор Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Анализ и решение ошибок СУБД. Во время реиндексации базы Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Не удалось найти объект "ИмяБазы.dbo._RefSInf21806", так как он не существует, или отсутствуют разрешения. Во время проверки целостности Ошибка СУБД: Microsoft SQL Server Native Client 11.0: Недопустимое имя объекта "dbo._RefSInf21806".

19.09.2024    4467    Xershi    10    

17

HighLoad оптимизация Администрирование СУБД Архивирование (backup) Системный администратор Программист Платформа 1С v8.3 Бесплатно (free)

Бэкап в Postgres состоит из набора граблей, которые нужно обойти для успешного восстановления. Они заложены в самых неожиданных местах от предмета резервного копирования (база или кластер) до структуры каталогов. Один неверный шаг и восстановление будет невозможным. Почему нельзя было сделать проще, как в MS SQL или Oracle? Почему бэкап в Postgres оставляет впечатление чьей-то лабораторной работы? Статья адресована прежде всего специалистам 1С, избалованным комфортом в MS SQL, в суровых буднях импортозамещения на Postgres.

13.08.2024    3022    1CUnlimited    9    

4
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. user1166203 20.02.20 14:45 Сейчас в теме
Zabbix же... Уведомления заббикса. С графаной какой-нить дружит.
Артано; bforce; letarch; AlX0id; wowik; +5 Ответить
2. dock 44 20.02.20 16:39 Сейчас в теме
(1) Zabbix не 1С-ная тема :) это уже
За местом на дисках должны в обязательном порядке следить системные администраторы
Roman_SE; letarch; wowik; +3 Ответить
8. user1166203 21.02.20 11:49 Сейчас в теме
(2)
Ну, задача отдела/департамента 1С обеспечивать работоспособность 1С. При отсутствии места на диске 1С рюхнется и все гневные письма "не работает 1С" в первую очередь полетят на отдел 1С,а это временные затраты. Пусть в этом и "виноваты" недосмотревшие админы, но репутация упадет у всех. Гораздо эффективней повесить ТВ-панель с основными показателями системы, туда же можно вытащить критические участки из процессов внутри 1С, да поглядывать на "красные" показатели при оказии.
9. AlX0id 21.02.20 11:55 Сейчас в теме
(8)
Панель - это показуха. Просто ответственным должны приходить предупреждения, когда показатель находится в желтой/красной зоне.
10. user1166203 21.02.20 12:09 Сейчас в теме
(9)
Это как настроите работу в отделе. Одно другого не исключает. Почту еще надо прочитать. И если ответственный прошляпит, то вы точно так же будете в него пальцем тыкать, что он виноват? Или на руководителя тоже письма слать? В ящике и так за день пара сотен писем, зачем захламлять поток?
Более того кратковременное превышение некоторых показателей допустимо, если это происходит контролируемо по причине запуска какого-то процесса.
11. AlX0id 21.02.20 12:20 Сейчас в теме
(10)
Прошляпить почту слегка сложнее, нежели прошляпить "посмотреть на панель". К тому же показателей там могут быть такие тонны, что и на панель-то не влезут.
А вот если в день сотни писем - так это признак того, что поток уже захламлен. И как его могут захламить предупреждения об опасности выхода из строя того или иного компонента системы - не понимаю.
И да - если ответственный прошляпил свою зону ответственности - то он и будет нести за это ответственность. Какова она будет - это уже зависит от "настройки работы в отделе". Будет то тыканье пальцем или просто пожурить в курилке или вообще забить.

Если кратковременное превышение допустимо - либо настраивается контроль таким образом, чтобы в течение некоторого времени показатель не переходил в желтую зону, либо ответственный по мере восстановления значения показателей в норму просто отмечает игнор этой проблемы - и все.
12. user1166203 21.02.20 12:32 Сейчас в теме
(11)
Да еще раз - это не исключающие моменты. Обычный взгляд на панель и вопрос "что со шлюзом таким-то у нас?" снижает риск многомиллионных потерь в минуту при стоимости реализации в 100к рублей с учетом оборудования и его монтажа. Так почему б не сделать?
Депремирование или увольнение ответственного не вернет потери => это минус руководителю. А оно мне надо?)
Панель видят все. Это лишь, как мера контроля за исполнителем, на подобие код ревью, чтобы исполнитель не расслаблялся, плюс помощь даже случайно проходящего мимо человека словами "А че у вас тут красненькое?"
13. AlX0id 21.02.20 12:45 Сейчас в теме
(12)
Да еще раз - это не исключающие моменты.

Ну ок, если есть лишние деньги, то чо бы и нет )


(12)
риск многомиллионных потерь в минуту

Должен вообще сирену включать тогда уж, а не вывод красненьким на монитор и "случайно проходящего мимо человека словами".

Меры допконтроля реализуются эскалацией показателей по иерархии руководства. Типа неделю забивал на показатель в желтой зоне - уведомление руководителю.
14. user1166203 21.02.20 13:40 Сейчас в теме
(13)
Как раз для этого на ТВ-панели есть динамики :)
Какую неделю желтого показателя? Встал шлюз процессинга с банками. Через 15 минут посыпятся отказы бронирования у поставщиков с фиксированными ценами, по которым уже оплатили покупатели, новые бронирования могут быть уже по другим ценам. "Миллионы в минуту" это не образное выражение, это фактический риск.
Потому потратить "лишние деньги" даже на минимальное снижение риска - это благо.
15. AlX0id 21.02.20 13:59 Сейчас в теме
(14)
Неделя желтого показателя - это условность, конечно.

А про "миллионы в минуту" - ну вот смотрите:
1. Встал шлюз процессинга с банками.
2. В Zabbix сработал триггер, включилось звуковое оповещение и ушло уведомление на почту/смс.

Какую роль здесь играет панель? Носителя динамиков? )
Артано; +1 Ответить
21. Артано 795 01.12.20 09:41 Сейчас в теме
(15) Экран играет другую роль. Он демонстрирует, что всё солидно и под контролем. А уведомления могут хоть голубиной почтой летать, главное, чтобы вовремя.
3. dock 44 20.02.20 16:44 Сейчас в теме
Более интересное решение с помощью 1Script, на инфостарте вроде даже что-то проскакивало по этой теме.
У предложенного же целых два минуса:
- использование Com объекта
- необходимость изменять конфигурацию

ИМХО, более правильно использовать паяльник, вставленный в соответствующее отверстие сис. админа :)
Даже если 1С-ник и админ это одно и то же физическое лицо...
awk; maksa2005; wowik; +3 Ответить
4. SerVer1C 815 21.02.20 09:27 Сейчас в теме
а можно без старого COM ?
5. wowik 890 21.02.20 10:28 Сейчас в теме
6. Kutuzov 748 21.02.20 11:11 Сейчас в теме
А вдруг у вас копии косячные создаются, а вы даже и не подозреваете об этом? Раз такая серьезная компания, заодно автоматизируйте развертывание базы из копии, и проверку работоспособности. Еще желательно копии отправлять на внешнее хранилище. А то злодей может проникнуть на сервер, и зашифровать его, вместе с диском, на котором хранятся копии. Это из того, что встречалось на практике.
Roman_SE; +1 Ответить
7. wowik 890 21.02.20 11:42 Сейчас в теме
(6) "проверку работоспособности" - это как сделать? ванессой?
17. AlexO 135 22.02.20 13:54 Сейчас в теме
(7)Если Ванессой Петровной, бухгалтером - то да )
А иначе вы никакой программой не проверите работоспособность 1С-базы.
16. AlexO 135 22.02.20 13:53 Сейчас в теме
RAID развернуть - не предлагать? И вообще, если съэкономили на СХД - то да, осталось только назначить виновного и уволить "с позором".

(6)
заодно автоматизируйте развертывание базы из копии, и проверку работоспособности
Это вы мощно задвинули))
Работоспособность базы - это по каким критериям определять? А про загрузку базы? Винда расскажет? ))
18. wowik 890 04.03.20 11:41 Сейчас в теме
(16) там и был RAID, не знаю почему развалился.
19. SuhoffGV 04.03.20 17:17 Сейчас в теме
(16)
RAID развернуть - не предлагать

RAID не является заменой резервным копиям.
20. CheBurator 2712 01.04.20 02:06 Сейчас в теме
лучше наверное на оscript написать или на powershell
22. Светлый ум 417 17.05.24 14:39 Сейчас в теме
Оставьте свое сообщение