Ранее системные администраторы управляли оборудованием вручную, подключаясь к компьютерам и подготавливая их в физической серверной стойке или через облачный API. Администраторам приходилось хранить скрипты и файлы конфигурации в различных местах. Эти сценарии могли в любой момент сломаться или потеряться. Совместная работа была сложной задачей, отсутствовала документация, т.к. на нее просто не оставалось времени.
C появлением Agile и DevOps ситуация значительно улучшилась:
Одним из самым ключевых открытий стало появление IaC (Infrastructure as Code).
IaC поощряет и продвигает декларативные инструменты системного администрирования вместо пользовательских императивных решений. Это привело к появлению таких технологий, как контейнеры Docker, Ansible, Terraform и Kubernetes, которые используют статические декларативные конфигурационные файлы. Удобочитаемые для человека конфигурации, на основе которые стало возможно приводить систему в необходимое состояние, стали основными достижениями DevOps. Конфигурационные файлы стали хранить в Git для их дальнейшего сопровождения и развития. Но это был еще не GitOps. Оставалась нерешенной задача переноса конфигурации из репозитория Git на работающую систему: приходилось руками «накатывать» скрипты с конфигурацией.
И именно с приходом GitOps удалось решить данную проблему.
В основе GitOps чаще всего используется Kubernetes или альтернативные решения с использованием Terraform.
Для GitOps требуется конвейерная платформа (Pipelines):
- Jenkins;
- Bitbucket Pipelines или CircleCi;
Pipelines автоматизируют и сокращают разрыв между Git и системой оркестрации.
В GitOps появляется новый механизм - GitOps operator - который является посредником между Pipelines и системой оркестрации.
Когда в Git происходят изменения, запускается Pipeline. Завершение Pipeline является спусковым крючком для GitOps operator, который синхронизирует новое, полученное от Pipeline состояние с текущим состоянием системы, и приводит систему к новому состоянию.
Главной задачей компании является предоставление качественных услуг в области автоматизации и новейших информационных технологий.
Одним из направлений решения этой задачи явилось внедрение в 2015 г. системы менеджмента качества (СМК).
Для обеспечения качества производственных процессов на всех этапах жизненного цикла разработки программных продуктов, мы используем следующие технологии:
В 2015 г. компанией получен Сертификат соответствия СМК требованиям ГОСТ ISO 9001-2011. Компания успешно прошла необходимые процедуры ежегодного инспекционного контроля и получила Решение о подтверждении действия сертификата.
В 2018 г. СМК была модифицирована в соответствии с новым ГОСТ ISO 9001-2015, получен новый Сертификат соответствия.