Мониторинг Windows серверов на чистом MS SQL, и как я это тайно внедрил

    Однажды, в далекой-далекой галактике, была фирма, давно выросшая из стартапа, но которая по прежнему оставалась довольно компактной и эффективной. Фирма хостила (на своем железе) сотни Windows-серверов, и это надо было как то мониторить. Еще до того, как я в нее пришел, в качестве решения была выбрана система NetIQ.

    Настраивать NetIQ поручили мне, и тот, кто это делал до меня, не сказал о ней ни единого слова. Печатного. Вскоре я понял, почему. Стив Джобс наверное вертится в могиле, глядя на подобный интерфейс:

    image

    В одной строчке логика «птички» положительная (Raise event). В другой отрицательная (Do not raise event). Как работает «Only raise events when» с разным набором галочек я вообще понял только экспериментально (и уже забыл).

    Впрочем, значительно более плохой чертой NetIQ была ее ломкость. Ее агент, который устанавливался на каждый сервер, был значительно более уязвим, чем сама Windows. Мало памяти? Агент вылетел. CPU 100%? Агент не отвечает. На диске осталось 0 байт — что бы вы думали? Чтобы отправить сообщение, агент вначале должен его сформировать на диске, в виде файла… Ну, вы поняли.

    Тем не менее с этим кое как жили, пока эту компанию не купила компания еще больше. Когда монстр съедает крошечную фирму, то эта фирма растворяется, как капля в море. В нашем случае мы сами по IT меркам были лишь ненамного меньше тех, кто нас купил, и сразу было очевидно, что процесс слияния будет очень сложным. Настолько сложным, что какое то время нас вообще не трогали и внутренне все процессы оставались теми же. Это состояние было похоже на момент, когда Кольцо Всевластья упало на лаву, но еще не начало плавиться:


    Тем временем я отапгрейдил NetIQ с версии 7 на 8 и далее на 9, когда и начались наши проблемы. NetIQ мониторила всего несколько вещей: доступность самого сервера, память, CPU, диск и главное — сервисы. Если наши самописные сервисы были в «Automatic», то они должны были работать. Вот такого быть не должно:


    Вот эти события в большинстве случаев и перестала мониторить NetIQ. После недели экспериментов и недели работы с саппортом, мы выяснили, что «это не бага, это фича» и что алерт создается только при определенном exit code. А наши сервисы иногда падали с любыми кодами.

    Прошло много времени и откатываться назад было поздно. Как вы понимаете, обнаружив, что наша критическая инфраструктура не мониторится, мы немедленно… ээээ… ничего не сделали. Потому что к этому времени «растворение» нашей фирмы в бОльшей вошло в активную фазу, и выглядело это примерно так:


    До меня долетали далекие раскаты грома, крики, молнии, и выглядело это так, что решаются судьбы мира, а я лезу с какой то мелкой технической проблемой… А я не мог спокойно спать, зная, что наш мониторинг наполовину ослеп.

    Поняв, что помощи ждать некуда, я решил быстренько написать сканнер сервисов, который бы обходил все сервера и посылал бы письмо, если что не так, как это делала NetIQ. Вы наверное думаете, что я использовал Powershell? Нет. Если у вас в руках молоток, то все вокруг — гвозди, а если вы DBA и работали с SQL с версии 6.0 — то… Небольшая выдержка из кода, чтобы вы поняли, о чем идет речь:


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

    Функциональность была не просто скопирована — я реализовал все свои фантазии, все, чего я хотел бы от такой системы. LOWDISK — вы получаете еще и график, как вело себя свободное место на диске последнее время — нормальный ли это рост или чтото пошло не так. Мало памяти — вот и график, и список процессов и сколько они занимают, а для w3wp.exe мы еще дорисуем имя application pool, умные reminders и многое другое. Кстати, список серверов система умела самостоятельно брать из VMware. Одного беглого взгляда на subjects алертов в телефоне хватало, чтобы понять, что происходит:


    Современные программисты настолько приучены мыслить абстрактно, что не могут написать мониторинговую систему иначе как 'для сервера мы запускаем набор абстрактных мониторинговых скриптов, и нас не волнует, что внутри', тогда как мониторинг каждого состояния — диск, память, CPU, сервисы — по своему уникальны. Реализуя это «абстрактно», вы делаете одинаково убого для каждого случая, и происходит вот это: (Это скриншот из email от SCOM. Наверняка выполнено строго по ТЗ)


    Огромный плюсом новой системы было то, что она была agentless, соответсвенно, не было никаких проблем с установкой агента, его падениями — там просто нечему было падать. Система была проста и надежна как молоток.

    Следующие несколько месяцев я приходил утром на работу, становился перед своим детищем, как художник перед полотном и наносил пару штрихов, делая его еще идеальнее. Так как у меня не было никаких дедлайнов, то и technical debt был сведен к минимуму. В какой то момент я все таки заставил себя остановиться.

    NetIQ все еще работала, но новый вид алертов всем нравился больше, и постепенно я всех перевел на алерты от новой системы, не выключая, однако, старую. Тем временем, процесс «расплавления» вступил в заключительную стадию:


    Что же, сказка должна была закончиться. Я еще сам удивлялся, что смог столько развлекаться в крупной забюрократизированной компании. После месяца подготовки мне сказали, что через неделю все, гасим NetIQ, переходим на SCOM. Я выключил NetIQ (признаюсь, я так его ненавидел что мне это было очень приятно) и стал ждать SCOM. Но в назначенное время его не было. Не было и через неделю, и через месяц.

    SCOM появился только через шесть месяцев — ктото забыл, сколько у нас серверов и сколько нужно лицензий для SCOM. За шесть месяцев столько систем стали зависеть от моей системы, которая стала вести и инвентории, метрики, и многое другое, что спокойно осталась второй — неофициальной. Для аудиторов есть SCOM, а все реально полезное — во второй системе.

    Иногда менеджеры разного уровня задавились вопросом — а откуда идут вот эти автоматизированные emails? Недавно я подробно им описал историю, которую изложил в этой статье, и они весело посмеялись. Хотя мне до сих пор иногда и самому забавно, как в большой бюрократизированной компании можно «тихой сапой» протащить многие вещи. Да и приятно просто пописать код, как в старые добрые времена.
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама

    Комментарии 86

      +2
      И что планируете делать дальше с этим добром? В опен сорс? На рынок?
        +2
        Не очень понятно. Вроде все сделанное в фирме ей и принадлежит, но на open source может и уговорю
          0

          Скорее всего, так и есть. Для трудового договора обычное дело. Но, наверняка в компании есть аналитики или топы, которые могли бы оценить перспективы упаковки системы в продукт, если их заинтересовать. Безагентное решение тема интересная.

            0
            Не-а, если нет отдельного договора на отчуждения авторского права, то всё это принадлежит Вам. То же самое, если в трудовом договоре нет пунктов о том, что всё, что Вы сделаете на территории фирмы и на оборудовании фирмы принадлежит фирме.
            Так что — весь код лично Ваш.
            На Хабре появляются юристы, думаю, они подтвердят мои слова.

            За оригинальное решение, если-бы мог, то поставил Вам плюс. Хотя, с 2008 сервера Винда умеет пересылать свои журналы на один компьютер-сборщик. Так-что пробегать по всем серверам может и не надо.
            Кроме этого, на события в журналах можно ставить обработчики и с их помощью так-же можно построить систему мониторинга (либо доработать Вашу, если у Вас сделано не так) и автоматизировать выполнение операций по обслуживанию.
              0
              Читал про этот remote event collector, ругают, то у них конкретные события перестают отправляться, то вообще все, мол, ненадежно.
                +1
                с 2008 сервера Винда умеет пересылать свои журналы на один компьютер-сборщик

                А где можно подробнее почитать, как это сделать? Насколько мне известно, система журналирования Windows сделана так, что прочитать (даже сохранённый, скопированный) журнал на другой машине — та ещё задача:

                Если на другом компьютере не установлен аналогичный софт, то имеем ошибку:

                Не удается найти описание для идентификатора события 1000 из источника VMware Tools. Вызывающий данное событие компонент не установлен на этом локальном компьютере или поврежден. Установите или восстановите компонент на локальном компьютере.

                Что сводит на нет всю идею резервирования журналов.

                На мой взгляд надёжнее посылать журнал сразу в текстовом виде на linux-машину с rsyslog, может знаете какие решения?
                  0
                  Подробней почитать можно отсюда (извините, что посылаю Вас в Гугл, но так более информативно): Windows Event Forwarding
                  Для самостоятельного чтения журналов Windows существуют сторонние программы которые находится очень быстро.
                  Резервирование журналов можно настроить нативно из встроенного средства просмотра событий. Там же можно настроить обработку возникших событий.
                  Если взять Ваш пример с VMware Tools, то можно написать обработчик, который установит недостающее при появлении события с кодом 1000 и источником «VMWare Tools». Скажу сразу, сам такую автоматизацию не делал, но вполне можно написать скрипт, посылающий уведомление админу и/или устанавливающий нужный софт. Придётся, правда, повозиться с отладкой скрипта, так как не всё однозначно и Майкрософт по-особому смотрит на внедряемые возможности.
                    –1
                    Да, типичный подход Microsoft
                    0
                    Если это «большая бюрократизированная компания», то было бы странно, если такого пункта в договоре не было. У «одного моего знакомого», который в очень большой софтверной компании работает, такой раздл, как и NDA, обязательно прилагается.
                      0
                      Хм, даже у сисадминов в большой компании в договоре есть пункт «всё написанное тобой — наше»?
                      0
                      Не нужно быть юристом, нужно просто уметь читать. ч. 4 ГК РФ статья 1295 п. 2 «чёрным по-русскому» говорит совершенно иное:
                      Исключительное право на служебное произведение принадлежит работодателю, если трудовым или гражданско-правовым договором между работодателем и автором не предусмотрено иное.
                        0
                        Не стоит объединять понятия «авторского права» с «исключительным правом». Это два отдельных термина. Авторское право право включает в себя исключительное право.
                          0
                          Это вы сами с собой спорите? ;-)
                  +1
                  Весьма занимательное решение, особенно в плане инструмента.
                    0
                    Расскажите поподробнее для непосвященных, как именно оно работает. SQL-скрипт рассылает запросы по сети с центрального компа, или выполняется локально на каждом проверяемом сервере?
                      0

                      Я так понял — удаленный вызов команд через WMI©

                        0
                        Именно, WMIC /node:servername, читает вывод xp_cmdshell во временную таблицу, где парзим строки на SQL (ах, эти извращения)
                      +1

                      Не совсем понял. То есть на каждом сервере стоит MSSQL, в котором запускаются эти вот процедуры?

                        0
                        Разумеется нет. У команды WMIC есть параметр /node:servername, так что SQL вам понадобится только один и то очень маленький
                        0
                        Я работал в нескольких «больших бюрократизированных компаниях» и почти везде наблюдал этот феномен: куча всякого добра «по феншую» с тоннами документации, аудитом и прочим — и всё это накрывается, когда, условно говоря, уборщица случайно выключает рабочую станцию какого-нибудь чувака. Который устал пробивать эти бумажные тома, словно придуманные для того, чтобы никто ничего не мог сделать и сделал что-то «сбоку на коленке» — и оно работало, пока кто-то не уронил.
                          +2
                          Согласен — часто большие компании еще существуют потому, что ктото идет вопреки правилам и все таки делает работу
                          +1
                          А что, Zabbix давным давно в этой далекой галактике не изобрели еще?
                            0
                            Он тоже где то используется, но нам спустили SCOM как копроративный стандарт.
                              0
                              Я к тому что пока не было SCOMа поднять Zabbix заняло бы с часик.
                                0
                                Я предлагал это шефу. Но он просто не отвечал, так как был увлечен бюрократическими битвами, в которых в итоге проиграл. На несколько месяцев я вообще был предоставлен сам себе. А в Zabbix есть агент?
                                  +1
                                  А, ну тогда это проблемы шерифа :) Да, конечно есть агент в т.ч. под винду.
                                0

                                Радуйтесь, что не Tivoli. )

                                  0

                                  Расскажите! Чтобы кто нибудь не ступил туда, как эта фирма в netIQ в свое время

                                    +1

                                    Да особо и нечего рассказывать, был у нас один маленький, но гордый Zabbix, который всё всё мониторил, смски отправлял, графики/трэнды рисовал, завки в хэлпдеске создавал, и есть не просил. Но один эффективный менеджер сказал, что это не Энтерпрайз и теперь у нас вместо одного заббикса, комплекс из полусотни серверов, и по пять агентов на каждом сервере, и убогий джава клиент, которому нужен 3-d party агрегатор, чтобы рисовать адекватные графики. И само собой всё это стоит много денег. #IBM #кровавыйэнтерпрайз =(

                                      0
                                      Для очень большой инфраструктуры — Tivoli не идеальный, но мощный и стабильный инструмент. Попробуйте не плеваться, а разобраться как это всё вместе работает.
                                        0

                                        А вот сложно не плеваться, на таком контрасте. Хотя ребята которые им занимаются (да-да, под это дело набрали спец. отдел) говорят, что скоро ITM обновится до 8-й версии (до этого был слух, что восьмёрку будут продавать как новый продукт) и станет выглядеть по человечески. Будем подождать. А вот Spectrum Control годная вещь, кстати.

                                          0
                                          А можно конкретику — от чего там плюются? Чтобы знать.
                                            +1
                                            Ок, попробую систематизировать, это также ответ для thekovach и его соседа. У меня претензии одновременно как у пользователя и как у инфраструктурщика. С начала инфраструктурные моменты:
                                            1) Как я уже говорил сложность системы мониторинга и количество потребляемых ею ресурсов возросло в десять раз. Старая система — основной сервер + прокси для мониторинга фронтов снаружи = 2 виртуальные машины (суммарно 12 vCPU, 40GB RAM, 900GB диски). Новая система 24VM + 4 физических выноса в ЦОДах + тот же самый внешний проксик (суммарно 139vCPU 496GB RAM 3,08TB диски). Про пол-сотни это я конечно сгоряча, каюсь. По дискам конечно «всего» в три раза больше заббикса, но заббикс хранит год метрик по каждому айпишнику до которого смог дотянуться, включая сетевое оборудование, а у Тиволи вполне конкретные лицензионные ограничения по объектам мониторинга, поэтому он смотрит только на особо критичные системы.
                                            2) Агенты: заббиксу вообще не нужны, если очень хочется, то один. Ест 6МБ памяти. Тиволи — агент нужен обязательно, в базовой комплектации три службы, 2 процесса жрут 80МБ памяти. На каждый чих (IIS, SQL, Exchange, AD и т.д. нужен дополнительный агент). Бонусом kq7client.exe рандомно начинает выжирать на 100% одно ядро, пока его не рестартанёшь. IBM говорит — это норма!
                                            3) Гремучую кучу времени\денег которые были на него потрачены, можно было потратить с большей пользой. Например, завести отдел тестирования, и купить им инструменты для работы.
                                            С точки зрения пользователя:
                                            1) для тех, кто не видел посконный тиволёвый интерфейс вот. Дизайнерам интерфейсов с тонкой душевной организацией лучше не смотреть.
                                            2) В заббиксе посмотреть график по любой метрике можно в пару кликов, в тиволи для этого приходится продираться через тормоза и условности устаревшего интерфейса, или платите миллион в год за 3th party рисовалку (сорян, не помню как называется, что-то отечественное), или пилите сами.
                                            3) Также накидать графиков на дэшборд в заббиксе можно легко и непринуждённо, в тиволи это сложнейший квест, т.к. нужно выбирать из нескольких одинаково называющихся метрик, а потом хитро указывать диапазоны времени (на лету менять нельзя). Ну и в общем если нет админских прав, то это работа бессмысленная т.к. сохранять нельзя.

                                            Я не говорю, что Тиволи не работает, я говорю, что он монструозен в лучших традициях энтерпрайз решений от IBM.
                                              0
                                              Интересно что у NetIQ был примерно такой же интерфейс
                                              Кстати, что там по поводу thresholds? Мне кажетcя статические thresholds это чтото из 90х.
                                                +1
                                                Статические в смысле, не умеют подстраиваться под изменяющиеся характеристики объекта? Вроде не было такой проблемы. Но зато я вспомнил, другую. Угадайте, что будет если машина с установленным агентом была скопирована, и у неё изменился хостнэйм\fqdn\ip? Правильный ответ — будут проблемы. = ) Данные от агента на скопированной машине будут падать в объект оригинальной машины. = )
                                                  0
                                                  По моему такой же проблемой страдает WSUS
                                                    0
                                                    WSUS хотя бы лечится в одну команду, а как дела у тиволи?
                                                    0
                                                    Нужно переписать 1 строчку в конфигурации агента после клонирования. Либо изначально правильно сконфигурировать агент.
                                                    Всё очень просто.
                                                  0
                                                  1) Тиволи платный продукт, да. Поэтому лицензионные ограничения это не минус, а скорее реальность.
                                                  Что в интерпрайзе даже скорее плюс, так как вместе с лицензией вы получаете поддержку и делигирование части ответственности. С позиции менеджмента так лучше, даже если инженерам и кажется нецелесообразным.
                                                  Ресурсы — всё зависит от масштабов проекта и количества компонентов.
                                                  В «базовом варианте» для работы одного сервера хватит и одной VM с парой ядер и парой гигабайт памяти. Но кто же так делает в энтерпрайзе? :)
                                                  2) Тиволи тоже умеет в «безагентный» мониторинг, просто вы об этом не слышали. Вариантов опроса систем несколько, на любой вкус.
                                                  По поводу процесса — не буду гадать что там у вас, но стандартный watchdog ITM контролирует поведение агентов, в том числе их статус и утилизацию ресурсов. Попробуйте это настроить. И если не сложно дайте ссылку где IBM говорит, что это норма. Как-то верится с трудом.
                                                  3) То что у вас претензии как ваш роботодатель тратит его деньги вряд ли можно отнести к минусам продукта.

                                                  По «пользователю»:
                                                  1) Это интерфейс TEPS. Туда пользователи не ходят.
                                                  2) Пользуйтесь правильными инструментами для своих целей. Если вы пользуетесь TEPS для просмотра графиков, то конечно это будет не так красиво и удобно как в том же DASH.
                                                  3) См. п. 2)

                                                  Если вы занимаетесь Тиволи как инфраструктурщик, то очевидно вашему руководству стоило бы обучить сотрудников продукту вместе с внедрением.

                                                  Я не говорю, что не согласен с вашим мнением, но уверен, что вы его поменяете если лучше изучите продукт.
                                                0
                                                Вы утверждаете, что не занимаетесь этим продуктом, и судя по вашим комментарием, не знаете как он работает. Но при этом у вас есть четкое мнение на его счет.
                                                Напоминает мне моего соседа, когда он говорит про политику. =)
                                      –2

                                      Мне как-то клиент Zabbix не давал обновить Exchange. И ещё несколько неприятных моментов было. Nagios, в любом случае, лучше.

                                        0
                                        Nagios мертв. Icinga2 — его наследница.
                                          +2
                                          Это как это он не давал? Руки заламывал? :)

                                          Из опенсурсного, довольно объективно, ничего лучше Zabbix нет — его даже Яндекс взял в свое время, правда очень сильно оптимизировав под Oracle.

                                          Nagios трогал в последний раз лет 10+ назад и больше не хочу. Возможно, конечно, он с тех пор стал лучше, но сомневаюсь.
                                            0
                                            Очень просто. Установщик Exchange сказал что-то типа «Прцесс такой-то не дает продолжить установку». А процесс оказался сервисом агента Zabbix. После чего был снесен.
                                            Ну, это было тоже в районе 10 лет назад, с тех пор я подобным не занимался. Nagios просто надежный как кирпич, удобные текстовые конфиги. Свое дело делал неубиваемо.
                                              0
                                              «Прцесс такой-то не дает продолжить установку»

                                              Думается что это не проблема Заббикса, а Эксченджа :)
                                                0
                                                Это проблема Заббикса, так как система мониторинга не должна уподобляться кривому антивирусу.
                                                  +1
                                                  Агент Заббикса это служба которая слушает один порт и снимает всякие данные локально в т.ч. со счетчиков производительности винды, больше она ничего не делает.

                                                  Если она по какой-то причине не понравилась Эксченджу — это исключительно проблема последнего. У меня не было ни одной софтины, которая выказывала недовольство наличием службы Заббикса.
                                                    0
                                                    Ну, так, если у вас не было проблем, это значит, что именно у вас не было проблем. Хотя, допускаю, что он мог быть неправильно приготовлен. Его зачем-то поставил другой сисадмин.
                                        +2
                                        «Почитав про команду WMIC я уже не смог остановиться. „
                                        SQL SERVER работает под доменной учётной записью, у которой есть доступ по WMI к другим серверам?

                                        Б — Безопасность. В данном случае непонятно как эти вопросы решались, либо всё “дыряво». Надеюсь эта учётная запись не является админской на всех серверах.
                                          0
                                          Это был как раз один из старых серверов NetIQ, который имел доступ ко всем другим серверам, что является исключением. И что для netIq, что для Microsoft SCOM таки да — создается service domain account с неустаревающим паролем и почти админскими правами и агент везде работает из под него.
                                            0
                                            Не совсем так, по умолчанию (и по рекомендациям МС) агент SCOM работает из-под системы и с компами по сети и доменом ничего сделать не может. Это важно.
                                            +2
                                            И опять таки, только один SQL server работал из под этой учетной записи. Б — безопасность это не чтото не делать никогда, а чтото делать контролируемо.
                                              0
                                              Просто SQL то работает под этой учёткой, а если вы вдруг дадите доступ к своему SQL, чтобы на ваши логи кто-то автоматически привязался, потом еще кому-то. Потом пользователей становится столько, что однажды вы ошибаетесь, и даёте слишком высокие привилегии, и вот он уже владеет service domain account, и может делать любую дичь.
                                              Претензии к MSSQL только в том, что если в нём выключен impersonate (а он отключается например, если у вас не windows-аутентификация, а sql-аутентификация), то это может плохо кончиться.
                                                0
                                                А как это связано? SQL server работает под СуперПупер account. Я хочу другим людям дать доступ к информации на нем. Как это связано с account, под которым он сам работает? Я создал логины другим группам AD и раздам права… Никакого доступа к СуперПупер account им ненужно
                                            0
                                            Я правильно понимаю, что Ваше решение подходит только для Windows-серверов?
                                              0
                                              да…
                                                0

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

                                                +1

                                                Блин, как же я радуюсь new relic + pager duty! Zabbix’у тоже радуюсь, но меньше! Автор, вы — молодец)

                                                  0

                                                  На что только не пойдут, лишь бы не использовать zabbix. И да. Б-безопасность. Учетка с неустареваюшим паролем и правами WMI и RPC. А-я-яй так делать. Не хватает коврика "добро пожаловать" перед КД. И ведь прочтает какой ни будь новичеки не один. И повторят, чего доброго.

                                                    +2

                                                    А от кого вы защищаетесь? Все эти серверы внутри безопасного периметра и закрыты от интернета. А от внутренней обезьяны с гранатой это все равно не поможет. И таки да, агенты устанавливаются под специальными эккаунтами… по рекомендации Microsoft… И сертифицируются аудиторами для SSAE18 — типа все зашибись

                                                      –1

                                                      Хмм, в конце 2018 года кто-то ещё мыслит в терминах периметра...

                                                      +1

                                                      С другой стороны, кого интересует, насколько вы РЕАЛЬНО защищены? Если у вас 10 эккаунтов с паролями разной длины, сложности и временем устаревания то все отлично — требования аудиторов выполнены! Ну а то что 95% людей будут эти пароли держать на листочках никого не интересует.

                                                        –2

                                                        У аккаунтов пользователей нет прав на удаленное управление системой. Так что хоть 10, хоть 210, с этого вектора ничего сделать не смогут. А в вашем случае аккаунт с правами удаленного исполнения кода с неустаревающим паролем. Не есть хорошо. Заббикс поднимается за 2 часа + еще 30 минут на настройку обнаружения хостов. 15 мин на настройку ГПО. Через час у вас все ваши машинки в мониторинге. Все. И без ущерба корпоративной бещопасности. Я понимаю ваше негодование, вы изобрели велосипед, поделились плодами своего труда с сообществом, а тут в вас экскрементами кидаются. Приятного мало. Но и вы поймите, есть решение, фактически отраслевой стандарт — значит нужно пользоваться. Не умеете — значит нужно изучить и научиться, вы как профессионал, должны уметь пользоваться рабочими инструментами. Изобрели свой велосипед ради развлечения или попрактиковаться, тоже понимаю, сам так делаю, что бы не терять навыков. Но не надо публиковать в профильном сообществе и ждать восторга. Не оценят.

                                                          +1
                                                          «аккаунт с правами удаленного исполнения кода с неустаревающим паролем. Не есть хорошо» — и тем нен менее стандартное решение одобренное свыше (security group фирмы).
                                                            +2
                                                            «Заббикс поднимается за 2 часа + еще 30 минут на настройку обнаружения хостов» — плюс от двух недель все это проаппрувить (особенно установку агентов на PROD) — а реально месяц. А в той ситуации, когда шеф почти не реагировал ни на что — вообще
                                                              0

                                                              30 минут на настройку обнаружения и ГПО. Далее агент средствами ГПО сам разьедется по хостам а обнаружение найдет эти хосты и раскидает по группам в забиксе и навесит нужные шаблоны.

                                                                +3
                                                                Вы не прочитали что я ответил. Это большая корпорация. Чтото сделать технически может 5 минут, а проаппрувить/пропихнуть — месяц.
                                                                0

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

                                                          +1

                                                          Подпольный программист в чистом виде. Отличная работа. Заберу в копилку. Может, нам пора общий тег?

                                                            0

                                                            Забавные истории у вас

                                                              0

                                                              Я вот думаю, как назвать таких людей. Пока что звал "подпольные программисты", но наверно лучше тайные. "Тайные программисты".

                                                                +1

                                                                "Анонимные программисты". Все ассоциации случайны и непреднамеренны.

                                                                0
                                                                Я могу рассказать не один десяток таких, из стародавних времен, когда я работал в госконторе (самое начало века). Адская бюрократия между филиалами, когда годами можно ждать вердикта «можно/низя» по проблеме, абсолютная несогласованность ПО и инструментов (локальные БД, свертки-выгрузки, сотни разных версий одного и того же ПО по стране)… Бррр.
                                                            • НЛО прилетело и опубликовало эту надпись здесь
                                                                0
                                                                Да и обычный (компетентный) безопасник может возбудиться: как это, на прод серверах есть возможность запускать произвольные команды? Да ещё с правами администратора?
                                                                0
                                                                Аналог monit и m/monit для Windows?
                                                                  +1

                                                                  Зачем нужно изобретение велосипеда, когда есть zabbix?
                                                                  Как опыт конечно интересно, но… Кажется у вас было много свободного времени на работе))

                                                                    0
                                                                    Я так понимаю, из-за проблем агентов NetIQ хотелось полностью agentless систему. Заббикс не подошел, ибо не является agentless, а так как винду можно пониторить по remote WMI, если есть права, понеслась.
                                                                      0

                                                                      Вспоминая, да — поставить агента на сотни PROD серверов тайно — все таки черезчур, так что мне подходило только agentless

                                                                        0
                                                                        «Вашим же» виндузятным тру- способом через msi-пакет, в чём проблема?
                                                                          +3
                                                                          В ***аппрувах***. Вы не можете поставить чтото на PROD сервере, даже если у вас есть права. То есть можете, но потом вас уволят. Так понятно?
                                                                    +1
                                                                    Хотя мне до сих пор иногда и самому забавно, как в большой бюрократизированной компании можно «тихой сапой» протащить многие вещи.
                                                                    Так это исключительно потому, что не потребовалось ни копейки бюджетных денег. А ещё потому, что у вас была масса свободного времени и голова варит правильно.
                                                                      +4
                                                                      Очень похоже на мою историю. 20 лет назад я понял, что мне нужно какое-то средство мониторинга серверов и сервисов. Опыт у меня был только с sun netmanager и не очень хороший (хотя я под него и под нетварь написал на корявом C, от которого мне до сих пор стыдно, модули для мониторинга кучи нетваревских серверов). Перепрбовал несколько крупных продуктов от монстров типа HP и других и понял, что проще написать что-то самому. Взял snmp + perl + wsh + mssql с мордой на IIS, тогда еще 4.0, и в итоге система разрослась до таких размеров, что в пике в инвентори было более 500 windows серверов, красивые графики работы всего в онлайне, всякая кастомная статистика работа системы, по запросу разных подразделений я допиливал и допиливал новые вещи, данные хранились в легко читаемом виде в mssql. Потом нас поглотила большая корпорация. Я уже 6 лет не работаю там, но, как говорят, моя система до сих пор работает и обслуживает тот самый сегмент системы :-О И как смотрел я на всякие заббиксы и OpenView немного сверху, так и продолжаю.
                                                                        +1
                                                                        Кхм. Однажды собирал данные с многих mongo-северов в одно хранилище на MS SQL. Почему-то сделал в виде табличных UDF-функций. Например,
                                                                        SELECT * FROM dbo.GetChequesSql(...)

                                                                        где GetChequesSql была реализованна на C# (да, можно на шарпе под TSQL кодить, но есть грабли). Можно Ваш функционал расширить вызовами к любым портам.
                                                                        А для xp_cmdshell обязательно настройте sp_xp_cmdshell_proxy_account. Тем более у Вас здесь отличное место для sql-инъекции
                                                                          0
                                                                          proxy идея правильная! (у нас правда эти сервера чисто айтишные и доступа к ним почти ни у кого нет, но в принципе да, так правильнее)
                                                                          +1

                                                                          Каждый сисадмин пишет свою систему мониторинга.
                                                                          SQL like опросы можно юзать вот так
                                                                          https://osquery.io

                                                                          Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                                                                          Самое читаемое