Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Диплом_Saga / diplom_2005-06-02 / Пояснительная записка.doc
Скачиваний:
70
Добавлен:
16.04.2013
Размер:
3.56 Mб
Скачать
        1. Мониторинг raid-массива

Мониторинг RAID-массива осуществляется по таймеру. Промежуток времени для мониторинга задается в настройках либо через интерфейсМенеджера, либоАгента. На рисунке 1.8 рассмотрен один цикл для опросаRAID-массива.

Рис. 1.8. Схема алгоритма мониторинга RAID-массива

Основной момент в этом цикле занимает нотификация администратора, если была найдена ошибка. При обнаружении ошибок в работе системы определяем, надо ли отправлять оповещение для администратора о неисправности. Для этого необходимо вначале определить код данной ошибки. В файле настроек для оповещения для каждой категории ошибок указывается тип оповещения: E-mail,Broadcastили вlog-файл. Если ошибок не было найдено. Вlog-файл записывается строка об успешной проверке работы системы.

      1. Формат данных модуля Агент

Рассмотрим подробно формат данных модуля Агент, а также формат команд для обмена информацией междуАгентомиМенеджером, и междуАгентомиRAID-контроллером.

        1. Файл конфигурации Агента

Файл конфигурации нужен для определения подключенного к компьютеру RAID-контроллера.

[Mail]

TYPE=COM

PORT=1

BAUD=19200

DATABITS=8

STOPBITS=1

PARITY=0

LogFileName=000032599000004.log

LogFileSize=1024

DelayTime1=0

DelayTime2=15

DelayTime3=30

DelayTime4=60

Cnt=1

skin=1

email_1=saga@rusoft.ru

emessage_1=HI

address_1=SAGA

bmessage_1=HI

        1. Формат файла истории

В файл истории записываются все события по формату:

[день/месяц/год(2) часы:минуты:секунды]: сообщение. Пример:

[05/05/09 14:39:18]:New connection opened

[05/05/09 14:39:18]:GUI detected via:127.0.0.1

[05/05/09 14:39:18]:GUI connected at:127.0.0.1

[05/05/09 14:40:08]:Login accepted:127.0.0.1: session opened

        1. Формат команд RAID-контроллера

В таблице 1.1 приведен фрагмент из описания к контроллеру ACS-9900 с описанием команд посылаемых RAID-контроллеру.

Таблица 1.1

Формат командр контроллера ACS-9900

Command

Description

Get page

Get the RAID information page

Edit RAIDi

Edit RAID1~4, If Argument code is No, This Command is Aborted

Set RAIDi Level

Set RAIDi Level---i=1or2or3or4

0—0xi0, 1—0xi1, 3—0xi3,

5—0xi5, 0+1—0xi6, None--else

Select RAIDi Disk Member

Select RAIDi Disk Member

(i=1or2or3or4)

if xx=01 Disk01 is selected,

xx=03 Disk03 is selected.....

В таблице 1.2 приведен фрагмент из описания к контроллеру ACS-9900 с вариантами ответов от RAID-контроллера.

Таблица 1.2

Формат ответов контроллера acs-9900

Message

Meaning

INITIALIZING ARRAY X...:

Initializing Array x

INIT ARRAY ERROR

Error occurred while initializing Array

INIT ARRAY OK

Array initializing successful

ADD(X): ERROR!:

Error occurred while rebuilding Slot x

CHECK ARRAY ERROR!:

Error occurred while checking Array

CHECK ARRAY OK.

Array checked without any problems

HOST CHAN X: TEST OK

Host channel x is ok

HOST CHAN X: TEST FAIL

Error occurred while testing Host channel x

      1. Выбор платформы проектирования

По требованию заказчика данного ПО была выбрана платформа Windows.

Программа должна работать под основными версиями этой платформы: Windows98,Windows2000,WindowsXP. Причем серверная часть программы для версийWinNTдолжна работать как сервис (работать в фоновом режиме).

В дальнейшем (не в рамках текущего проекта) заказчик хотел бы модифицировать программу под Unix-системы, так как данные системы являются более надежными и их все больше используют для серверных компьютеров. Причем в первую очередь должен быть модифицирован модуль Агент, так как именно должен работать на сервере сRAID-массивом.

Код программы должен быть написан с учетом того чтобы было в последствии несложным его применить для написания такового же модуля для Unix-платформы.

В качестве среды для разработки была выбрана среда MSVisualC++ по нескольким причинам:

  • простота и надежность создания и отладки программы;

  • использование всех преимуществ операционных систем Windows’98 и Windows NT, включая 32-разрядность, многозадачность, удобный интерфейс и прочее;

  • наличие и доступность большого количества компонент, реализующих многие стандартные функции;

  • наличие мощных, удобных утилит для отладки и тестирования программного обеспечения;

  • наличие большой системы справочной информации, руководств разработчика, облегчающей создание программного обеспечения;

  • возможность адаптировать C-программный код для написания приложения подUnix-систему.

MicrosoftVisualC++ – сегодня является самой распространенной и наиболее емкой средой разработки. В наши дниVisualC++ лидирует среди продуктов для программирования в средеWindows.VisualC++ – это инструмент для программирования в средеWidnows, обладающий поистине фантастическими возможностями. Более того, многие разработчики считаютVisualC++ самой мощной из всех программ такого класса. На самом делеVisualC++ представляет собой целый набор из множества инструментов, собранных в одном динамическом пакете, готовом к немедленной работе. Сначала программы дляWindowsприходилось писать на языке С, а не на С++, и получались они большими и сложными. Даже вывод на экран пустого окна требовал примерно пяти страниц сложного невразумительного кода. Язык С++ позволяет хранить большую часть программного кода внутри самостоятельных объектов, а это сокращает объем больших программ. Помимо этого, фирмаMicrosoftразработала библиотекуMicrosoftFoundationClasses.MFC– замечательный пакет, состоящий из заранее написанного и готового к работе кода. Например, вместо того чтобы самостоятельно писать программу для работы с новым окном, можно просто воспользоваться классомcWndизMFC, который выполнит всю работу за вас [2]. Возможности, предоставляемые библиотекой классовMFCпозволяют конструировать элементы пользовательского интерфейса, легко работать со стандартными типами данных языка С, разрабатывать классы, производные от библиотечных с добавлением новых функциональных возможностей, разрабатывать собственные классы с последующим развитием их функциональности.

Соседние файлы в папке diplom_2005-06-02