Современные крупные организации имеют сложные компьютерные сети, состоящие из
многих устройств различных видов, выполняющих разнообразные как серверные, так и
клиентские функции. В таких сетях в ходе эксплуатации неизбежно возникает множество
проблем различного рода. Часть проблем могут быть решены с помощью типовых процедур (задач), которые хорошо поддаются автоматизации. Даже многие нестандартные и
комплексные проблемы требуют выполнения таких процедур, как части решения.
Даже с учетом применения хороших практик построения меж-командного взаимодействия, при достаточно больших размерах сети команды технической поддержки могут
быть существенно обременены и необходимостью ручного запуска автоматизированных
процедур, и контролем за их выполнением. Решению задачи также зачастую сопутствуют
процедуры принятия запроса на обслуживание и ответа на этот запрос. Таким образом,
инженер технической поддержки, решая несколько задач одновременно, вынужден распылять свое внимание на малозначимые шаблонные действия, что сказывается как на общей
производительности труда так, и на качестве решения проблем.
Именно в наше время крупные компании, зачастую никак не связанные с информационными технологиями, вынуждены проводить компьютеризацию. Продолжают образовываться крупные сети, содержащие тысячи и десятки тысяч устройств. Команды обслуживания таких сетей вынуждены разделяться на более мелкие и специализированные, чтобы
совладать с ростом инфраструктуры, а меж-командное взаимодействие, тем временем, все
больше структурированным и формальным. Таким образом, именно сейчас проблема возникновения большого количества формальных рабочих процедур требует решения.
Целью данной работы является построение программного комплекса, предоставляющего интерфейс для запуска и контроля выполнения удаленных задач в соответствии с
предоставленными требованиями к информационной безопасности.
Для достижения этой цели будут проведены:
– анализ и сравнение возможных способов предоставления доступа к интерфейсу,
– анализ и сравнение способов коммуникации с удаленными устройствами,
– анализ и сравнение моделей меж-процессного взаимодействия и выбор наиболее устойчивой к сбоям моделям,
4– построение протокола взаимодействия с интерфейсом.
Практическая значимость исследования заключается в возможности применения построенного программного комплекса на реальном проекте. Требования, предъявляемые к
программному комплексу, определяются спецификой этого конкретного проекта и пожеланиями работающих на нем инженеров.
Для уменьшения потерь эффективности на формальной рутине применяется множество структурных решений. Все такие решения жестко привязаны к специфике той инфраструктуры, в которой они призваны работать, и могут быть распространены на иные
инфраструктуры других проектов лишь только в виде общих концепций. Часто специфические требования и особенности работы инфраструктуры и вовсе не позволяют привносить в нее зарекомендовавшие себя средства решения схожих проблем. Новизна данной
работы, обусловлена тем, что готовых решений, которые можно применить на проекте, не
существует (либо они закрыты для стороннего пользования), и разрабатываемое решение
впервые решает задачу снижения нагрузки формальной рутины на инженеров проекта.
Данная работа состоит из введения, четырех глав и заключения.
В первой главе производится постановка задачи и обзор требований, в том числе требований к безопасности.
Во второй и третьей главах производится построение общей и внутренней архитектуры программного комплекса соответственно и сопутствующий анализ различных средств,
В результате выполнения данной работы был проведен анализ различных методов и
средств меж-процессной коммуникации. На основании этого анализа было спроектирован
и реализован программный комплекс, предоставляющий интерфейс для запуска удаленных задач со следующими возможностями:
– контроль вывода удаленной задачи и его ретрансляция клиентам,
– передача команд юниту, управляющему удаленной задачей, для изменения процесса
выполнения,
– отслеживание и логирование ошибок, возникающих во время выполнения удаленной
задачи.
Полученный программный комплекс устойчив к частичной потере работоспособности,
может работать со многими клиентами одновременно и соответствует заявленным требованиям, в том числе, требованиям к безопасности.
На момент написания этой работы программный комплекс находится на стадии тестирования и внедрения.
Pieter Hintjens; ZeroMQ. Messaging for Many Applications; O’Reilly Media, 2013.
2. Daniel J. Barrett, Richard E. Silverman, Robert G. Byrnes; SSH, The Secure Shell: The
Definitive Guide; O’Reilly Media, 2005.
3. Luciano Ramalho; Fluent Python: Clear, Concise, and Effective Programming 1st Edition;
O’Reilly Media, 2015.
4. Немет Э., Снайдер Г., Хейн Т., Уэйли Б.; Unix и Linux. Руководство системного администратора 4-е издание; ООО “И.Д. Вильямс”, 2012.
5. https://docs.python.org/2/; Оффциальная документация Python 2.7