Всем привет! Все началось с того, что у нашей компании было много доменов, которые нужно было вовремя продлевать.
И вот, после одной неудачи с продлением домена, было решено начать отслеживать дату окончания срока действия домена и отображать ее в мониторинге Nagios.
Как контролировать?
У нас было несколько доменов в зонах kz, ru,kg,ge,com. Самый простой способ узнать всю необходимую информацию о домене – запустить whois. Теоретически это должен знать каждый.
Но как все это реализовать в мониторинге?
Что контролировать?
Покопавшись в интернете, был найден модуль python-whois .Он хорошо справился со своей задачей для com, net и множества других доменов, описанных в описании модуля.
Нескольким доменам в зонах кг не хватило функционала.
В результате появился форк проекта python-whois-расширенный что расширяет функциональность для более крупных TLD.
Хорошо, а как реализовать это в Nagios?
Все просто, выпишите простой чекЧто он делает? Горит красным при мониторинге за месяц до истечения срока действия домена.#!/usr/bin/env python # # Usage: # python check_domain.py -d DOMAIN import whois from datetime import datetime from sys import exit from optparse import OptionParser def check_domain(domain): q = whois.query(domain) if (q.expiration_date - datetime.now()).
days <= 30: print "CRITICAL: Domain: {0} expires on {1}".
format(domain, q.expiration_date) exit(2) print "OK: Domain: {0} expires on {1}".
format(domain, q.expiration_date) if __name__ == '__main__': parser = OptionParser() parser.add_option("-d", "--domain", dest="domain", help="Domain to monitor expiry date") (options, args) = parser.parse_args() if not options.domain: print parser.print_help() exit(0) check_domain(options.domain)
Интересно, что появился еще один сопровождающий, который добавил поддержку доменов hk, cn и kr. Текущий список поддерживаемых доменов: com, net, org, uk, pl, ru, lv, jp, co_jp, de, at, eu, biz, info, name, us, co, me, be, nz, cz, it, fr, кг, vc, FM, TV, EDU, Калифорния, Китай, Кр, Гонконг Код модуля здесь Запросы на включение и запросы на добавление новых функций приветствуются! Надеюсь мой опыт поможет избавиться от этой проблемы Теги: #python #whois #как не потерять свой домен #python
-
Аномалия Франго, Развязка
19 Oct, 24 -
Ces 2014: Бюджетный Тепловизор Из Смартфона
19 Oct, 24 -
Облако Mail.ru В Total Commander
19 Oct, 24 -
Кинетическая Скульптура В Музее Bmw
19 Oct, 24