Диплом: Автоматизация управления серверными приложениями в ООО «Норс Студиос»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
47
Warning – запрос на отображения предупреждения;
Error – запрос на отображение ошибки;
Response – запрос-ответ с данными;
Internal – запрос с данными не для отображения;
Reserved – резервированный диапазон кодов запросов;
Справочник кодов команд – содержит коды для командного запроса,
описывающие тип выполняемой команды:
OKне выполняемый, служебный, обозначает отсутствие ошибок;
Error – не выполняемый, служебный, обозначает наличие ошибки;
InitGetArgs – первичная команда от контроллера сервера на
получение параметров запуска сервера;
InitCallBackStart – дополнение к InitGetArgs, заставляет ядро
поставить флаг запуска сервера после выполнения основной
команды;
NormalStop – команда от контроллера с информацией о
подтвержденной остановке сервера;
Crash – команда от контроллера с информацией об аварийной
остановке сервера;
GetServersList – команда от клиента на получение списка серверов;
GetChainsList – команда от клиента на получение списка макросов;
GetSchedule – команда от клиента на получение задач
планировщика;
GetServersGroups – команда от клиента на получения списка групп
серверов;
GetUsersList – команда от клиента на получение списка
пользователей, доступно только администраторам;
48
UpdateServerConfig – команда от клиента на обновление
конфигурации сервера, возможность менять некоторые
конфигурации зависит от уровня доступа;
UpdateChain – команда от клиента на изменение макроса;
UpdateTask – команда от клиента на изменение задания
планировщика;
UpdateGroup – команда от клиента на изменение группы;
AssignGroup – команда от клиента на привязку сервера к группе;
UpdateUser – команда от клиента на обновление данных
пользователя, доступно только администраторам;
DoWithUser – команда от клиента произвести действие с
пользователем(отключить, выдать сообщение);
ChangeServerList – команда от клиента на изменения списка
серверов(удаление/добавление), доступно только администраторам;
ChangeChainsList – команда на изменение списка
макросов(удаление/добавление);
ChangeSchedule – команда на изменение задач
планировщика(удаление/добавление);
ChangeServersGroups – команда от клиента на изменения списка
групп серверов(удаление/добавление);
ChangeUsersList – команда от клиента на изменение списка
пользователей, доступно только администраторам;
GetServerInfo – команда от клиента на получение информации о
сервере;
Execute – команда от клиента или ядра на исполнение команды или
макроса;
Auth – команда авторизации или деавторизации клиента;
ChangeServersConfig – команда от ядра к контроллеру на изменение
конфигурации контроллера;
49
Справочник типов пользователей – содержит возможные типы
пользователей в информационной системе, определяющие уровень их прав
admin – администратор, имеет высокий уровень доступа, может
редактировать список и конфигурации серверов;
user – рядовой пользователь, имеющий доступ к большинству
функций администрирования, но не имеющий доступа к
редактирования списка и конфигураций серверов;
root – системный тип учётной записи, имеет доступ к
дополнительной отладочной информации, может быть один в
системе;
Справочник типа доступа к макросу – определяет доступность макроса
для исполнения тем или иным пользователем в отношении того или иного
сервера, значения могут быть комбинированы
public – любой пользователь может изменить/удалить/исполнить
данный макрос;
private – только создатель может изменить/удалить/выполнить
данный макрос, имеет более высокий приоритет чем public при
комбинировании;
group – данный макрос может быть исполнен только в отношении
сервера заданного типа;
Справочник типа условия планировщика – определяет тип условия, при
котором задача в планировщике будет выполнена
SetTime – выполнение задачи осуществляется при достижении
определенного времени, возможно указание периодичности;
Interval – задача выполняется по прошествии определенного
временного интервала начиная с момента создания задачи;
SystemEvent – задача выполняется при наступлении определенного
события, например при подключении пользователя;
50
ServerEvent – задача выполняется при получении от сервера
специфичного набора данных, для определения набора данных
доступны регулярные выражения;
Входными данными для разрабатываемой информационной системы
являются файлы на накопителе, пользовательский ввод, данные, загружаемые
из базы данных, конфигурации серверов и модулей, а так же аргументы запуска
различных модулей.
Входными файлами являются любые файлы на накопителе,
расположенные в корневой папке и подпапках сервера и на компьютере
конечного пользователя
Пользовательский ввод подразумевает данные, вводимые пользователем
в клиентском приложении. Такими данными могут быть команды, которые
пользователь отправляет на исполнение серверу, создаваемые им объекты
(макросы, задачи планировщика) и т.п.
Данные из базы данных – необходимая для запуска и первичного
конфигурирования некоторых модулей информация, хранящиеся в БД. Эта та
часть конфигурации, которая может быть изменена любым пользователем и не
является критичной для правильного функционирования продукта в целом.
Конфигурации модулей обычно представлены специальными файлами с
расширением «.ini»[7] и хранятся в том же каталоге что и сам исполняемый
файл модуля. Файлы конфигураций содержат данные, необходимые для
конфигурации модулей информационной системы в момент запуска. Так же
существует конфигурация серверов, которая содержит список и базовые
параметры серверных приложений или серверов, а так же ведущих их
процессов.
Аргументы запуска являются неотъемлемой частью, необходимой для
функционирования данного продукта. Эти аргументы представляют список
зарезервированных наборов символов, каждый из которых, так или иначе,
51
меняет поведение программы. Они должны быть сформированы до
непосредственного запуска программы и переданы ей во время запуска[8].
В оперативные данные вошли такие объекты как, пакеты данных,
передаваемые между модулями, задачи планировщика, цепочки команд или
макросы, а так же различного рода отладочная информация и данные
телеметрии.
2.2.2. Характеристика результатной информации
В результате работы системы генерируется определенный объем
итоговой информации или выходных данных. Условно все выходные данные
можно поделить на несколько типов:
файлы;
записи в базе данных;
сообщения (всплывающие формы с информацией);
Файловые выходные данные представлены, внезапно, файлами
определенного типа и формата, хранящимися на накопителе(HDD, SSD,
SHDD). К ним относятся различные файлы журналов или логов, которые
содержат данные о работе системы, файлы конфигураций системы, которые
меняются в ходе настройки. Их список приведен ниже:
operation.log – файл, содержащий детальные данные об операциях,
которые выполняла система, обычно располагается в окружении
ядра;
scheduler.logфайл с информацией об операциях и работе
планировщика заданий для серверов, обычно располагается в
окружении ядра;
52
server_app.log – файл содержащий вывод серверного приложения,
обслуживаемого контроллером, располагается в окружении
контроллера;
mdl_controller.log – файл с информацией о работе модулей
контроллеров серверных приложений и располагается в их
окружении;
mdl_core.log – файл с информацией о работе модуля ядра системы,
располагается в окружении модуля;
mdl_client.logфайл с информацией о работе модуля клиентского
приложения, располагается в окружении клиентского приложения
sac_cfg.ini – файл с настройками контроллеров серверов,
располагается в окружении контроллеров и одновременно является
входной информацией;
cln_cfg.ini – файл с настройками клиентского приложения,
располагается в его окружении, одновременно является входной
информацией;
core_cfg.iniфайл конфигураций, расположенный в окружении
модуля ядра и содержащий его настройки, одновременно является
входной информацией;
Записи в базе данных – информация, хранящаяся в структурированном
виде в массиве информации именуемой базой данных. В основном здесь
хранится информация о работе отдельных участков модулей системы и
некоторые конфигурации модулей, которые дозволено менять конечному
пользователю. Список видов логирования и конфигураций и их краткое
описание приведено ниже:
конфигурация сервера – набор специфичных для каждого
экземпляра сервера параметров, хранимых в сущности сервера в
базе данных;
53
конфигурация группы – набор общих параметров для серверов,
схожих по какому-либо признаку и в неё (группу) объединенных;
логирование запросов – часть операционного лога, которая
содержит лишь данные, достаточные для детерминирования
операции в файле лога;
логирование операций авторизации – записи с информацией о
времени, типе операции и о пользователе, её произведшем;
Сообщения или всплывающие экранные формы – вид выходной
информации, представленной в виде объекта приложения – области его
основного окна или отдельного дочернего окна, где отображается различного
рода текстовая и графическая информация о том или ином состоянии или
реакции системы. Данные сообщения условно поделены на три вида:
информационное сообщение – доводят до адресата различного рода
уведомительную информацию;
сообщение с предупреждением – подобные сообщения сообщают о
не стандартной работе системы, при необходимости адресат может
принять необходимые меры;
сообщение об ошибке – данные сообщения информируют о сбое
или нештатной, опасной ситуации, возникшей в работе системы, и
зачастую требуют активных действий со стороны адресата;
54
2.3. Программное обеспечение задачи
2.3.1. Сценарий диалога
В разрабатываемой системе все взаимодействие с ней конечного
пользователя происходит посредством графического интерфейса пользователя -
GUI. Такой интерфейс имеет смысл только у клиентского приложения и должен
быть максимально удобен в использовании и прост в освоении. В компании
существуют внутренние стандарты его проектирования, разработки и
оформления. Результат этого проектирования представлен ниже в виде древа.
Главная форма(окно)
Панель
конфигурирования
Вкладки серверов
Вкладки категорий
Основное окно
Кнопка Старт/Стоп
Группа управления
цепочками
Кнопка
Деавторизация
Информационая
панель
Информационно-
командная панель
Кнопка
Показать/Скрыть
Рисунок 8. Сценарий диалога главного окна
Главная форма клиентского приложения поделена на две основные
области: область конфигурирования сервера слева и область с информацией и
главными командными функциями справа.
55
Область конфигурирования поделена в свою очередь на три большие
группы:
вкладки серверов – позволяют переключаться между
зарегистрированными в системе серверами;
вкладки категорий – позволяют выбрать категорию
конфигурирования/администрирования;
основное окно – область вывода информации или органов
взаимодействия, предусмотренных текущей категорией;
Правая часть представлена информационной панелью, на которой
выводится основная статистика сервера (имя сервера, время запуска, время
работы, задержка и т.п.) и группой командных кнопок – «Старт/Стоп»,
производящей запуск или остановку, выбранного в левой части, сервера, и
блоком управления цепочками команд. Группа управления цепочками команд
состоит из кнопки «Создать новую цепочку», списка существующих цепочек и
кнопок управления выбранной в этом списке цепочкой («Выполнить»,
«Редактировать», «Удалить»). При редактировании или добавлении цепочки
команд, правая часть трансформируется, предоставляя доступ к меню
«Добавление/Редактирование цепочки» (сценарий диалога находится в
приложении 1 рисунок 5).
Основное окно левой части представляет область для отображения
интерфейса выбранной категории. Существует пять основных категорий:
категория «Консоль сервера» – позволяет увидеть выводимую
сервером информацию и отправить ему команду на исполнение,
своего рода обычное управление через консоль;
категория «Файловая система» – позволяет просматривать и
управлять файловым окружением выбранного сервера;
категория «Операционный лог» – позволяет просматривать лог
операций, производимых с выбранным сервером, включая команды
других пользователей и реакцию системы на них;
56
категория «Планировщик» – отображает все задачи планировщика,
применяемые к выбранному серверу, позволяет их изменение и
редактирование их списка, имеется возможность просмотра
глобального списка задач планировщика;
категория «Настройки» – позволяет редактировать параметры
выбранного сервера, закрепленные в информационной системе, не
стоит путать их с конфигурациями непосредственно сервера,
которые обычно хранятся в отдельных файлах конфигураций в его
файловом окружении;
Схема и описание интерфейса каждой из категорий представлено ниже.
Контекстное
меню 1
Основное окно,
Консоль
Текстовое поле
ввода команды
Кнопка Отправить
Область вывода
информации
Рисунок 9. Сценарий диалога основного окна, категория
«Консоль сервера»
Интерфейс категории «Консоль сервера» представлен следующими
компонентами:
текстовое поле ввода команды – расположено в нижней части
области под полем вывода информации, служит для ввода команды,
которую необходимо исполнить выбранному серверу;

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
«Управление ресурсами проекта» (на примере организации ООО «ЛАКОСТЭ»)
Agile-методология в управлении проектами на примере ООО «Ресурсный центр «Академия КлассИнфо»
Aвтoмaтизaция пpoцecca вeдeния инфopмaциoннoй бaзы o дoлжнocтяx и вaкaнcияx c укaзaниeм тpeбoвaний к уpoвню знaний и нaвыкoв кaндидaтoв для гpуппы кaдpoв вoйcкoвoй чacти 3474»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
Cовершенствование управления рентабельности предприятия (на примере гуипп «бендерская типография «полиграфист»)