Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

n  При восстановлении отказавшего датацентра происходит обратная замена файла с записями зоны.

Для тестирования я написал небольшой скрипт на языке Perl и воспользовался пакетом nagios-plugins, в который входит множество утилит по проверке доступности служб. Сайт пакета находится по адресу http://nagiosplugins.org. Получаем последнюю версию и устанавливаем в каталог /usr/local/nagios-plugins:

tar -xzvf nagios-plugins-1.4.11.tar.gz

 cd nagios-plugins-1.4.11

./configure –prefix=/usr/local/nagios-plugins

make

make install

Пример скрипта:

#!/usr/bin/perl

 

# Путь к файлам зон сервера имен

my $bind_cfg='/usr/local/geobind/etc';

 

# Команда для перечитывания файлов зон сервером BIND9

my $bind_restart = '/usr/local/geobind/sbin/rndc reload';

 

# Описание наших кэширующих датацентров:

my $datacenters = [

    {id=>'us', name=>'us.example.com'}, 

    {id=>'ru', name=>'ru.example.com'},

    {id=>'jp', name=>'jp.example.com'},

];

 

# Примечание: имена типа jp.example.com были раньше

# прописаны в DNS и служат для обнаружения факта

# восстановления отказавших региональных датацентров

 

foreach my $dc (@$datacenters)

 

   # Вычисление контрольных сумм зон для дальнейшего сравнения

   my $md1= (split(/s+/, `md5sum $bind_cfg/$dc->{id}.db`))[0];

   my $md2= (split(/s+/, `md5sum $bind_cfg/central.db`))[0];

 

  # Если контрольные суммы совпадают, то это означает,

  # что уже было переключение с отказавшего датацентра на центральный

  if($md1 eq $md2)

  {

    # Проверяем состояние датацентра и, если был факт восстановления,

# то переключаем пользователей обратно на региональный датацентр

    if(!system("/usr/local/nagios-plugins/libexec/check_http -H $dc->{name}"))

    {

         print "$dc->{id} has been recovered ";

            system("cp  $bind_cfg/$dc->{id}-original.db $bind_cfg/$dc->{id}.db");

            restart_dns("$bind_cfg/$dc->{id}.db",2);

    }

   }

   # Если переключения не было (разные контрольные суммы),

   # то тестируем доступность датацентра и переключаем

   # пользователей на центральный в случае проблем

   else

   {


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100