Dev Ops администрирование

Реализации задач premisи cloud окружений

Наше участие над проектом возможна в большинстве случаев. Но важный для Нас критерий для старта, который Мы хотели бы видеть у и Вас, – желание сделать хороший, качественный проект, вне зависимости от его масштабов.
Наши компетенции можно применить как в облаке, так и в построении дата центров. Ниже Мы собрали примеры реализаций частых кейсов из обращений наших клиентов в работе с premise и cloud окружениями.

Типовой веб-проект в AWS

Типовой веб-проект состоит из следующих компонентов:

  1. Front-end-сервер
  2. Рабочие сервера
  3. База данных
  4. Хранилище статического контента
  5. Различные сервисы кэширования и индексирования
  6. Тестовая инфраструктура

Также обычно используются различные вспомогательные сервисы, такие как сервисы сбора логов, мониторинга и резервного копирования.

Transformation/Migration


Мы осуществляем запуск, миграцию и перенастройку инфраструктуры в облаке многими путями. Инфраструктура как код (IaC), через консоль или деплоями с помощью сторонних/родных облачных сервисов.Благодарятрансформации можно уменьшать стоимость владения проектом в облаке с помощью вынесения различных сервисов в контейнеры docker или перехода на пользование сервисов облачного провайдера. В большинстве случаев при таком переходе поддержкой сервиса занимается само облако.


Backup



 
Гибкость работы и высокий уровень SLA позволяет создавать бэкапы почти для любых сервисов. Расписание тестирования консистентности бэкапов позволяет быть уверенным за свои данные. Возможность размещения резервных копий как на «земле» (on-premise), так и в облаке (например Azure) с помощью Unix-инструментов, а также программ сторонних вендоров (например Veeam).

DevOps

Формирование CI/CD процессов с помощью облачных сервисов существенно упращает и убыстряет процесс развития приложения, об этом мы хорошо расписали вот здесь.
Процессы CI могут быть выстроены как на специальных инструментах (Jenkins, BitBucket, etc), подходе Infrastructureas Code (Terraform, CloudFormation, etc), так и “родных облаку ”инструментах (AWSCodeDeploy, AWSCodePipline, etc). Процессы CD сопровождают развернутую версию до нового релиза в продакшн. Мониторинг с помощью встроенных инструментов, а также настроенного Zabbix-окружения позволяют отслеживать изменения. Любые требуемые для наблюдения метрики в совокупности с Alarm’s присылают уведомления на почту либо генерируют телефонные звонки.


Реальные задачи и проблемы, которые мы также решаем с помощью приемов DevOps
  1. Снижение стоимости владения проектом. Производительные сервера и облачные сервисы стоят дорого, DevOps позволяет снизить затраты, комбинируя различные оптимизированные по стоимости сервисы и автоматизируя их использование.
  2. Автоматическое масштабирование. При росте нагрузки не будет необходимости ручного добавления ресурсов в инфраструктуру, все произойдет автоматически.
  3. Повышение отказоустойчивости. Незарезервированные или неправильно зарезервированные сервисы подвержены сбоям. DevOps позволяет поддерживать инфраструктуру, способную пережить сбой и автоматически восстанавливающуюся при выходе из строя каких-либо компонентов.
  4. Мониторинг. Обычный мониторинг является стандартным сервисом, обязательным к применению везде. Но методы DevOps позволяют автоматизировать его, автоматически подключать к мониторингу новые сервисы инфраструктуры.
  5. Сбор ошибок с программного продукта, для последующего анализа разработчиками, а также централизованный сбор логов для анализа проблем инженерами поддержки.
  6. Создание единой среды разработки, удобной в установке и использовании для всех разработчиков.
  7. Создание и внедрение инструментов для работы распределенных команд разработчиков, внедрение систем контроля версий.
  8. Создание удобной  среды для тестирования.
  9. Оптимизация нагрузки на базу данных.
  10. Оптимизация нагрузки на хранилище статики.
  11. Организация резервного копирования в несколько хранилищ для обеспечения сохранности резервных копий.
 

Site to Site tunel


Для использования многочисленных облачных сервисов для бизнес-аналитики, машинного обучения, бэкапов и др. возможно произвести настройку site-site, для обмена данных с облаком(Azure, AWS, etc). При этом Ваша инфраструктура остается так же независима.
 

Spot-way


Для уменьшения стоимости (cost) Клиента мы производим переход требуемых сервисов на Spot. Это позволяет уменьшить от 45% до 90% затрат на использование вычислительных ресурсов сервиса. Так же данная структура позволяет при тех же затратах увеличить мощность приложения.
В данном примере расписан сервис индексации Sphinx.
Использование auto-scaling на каждой роли сервиса позволяет реактивно реагировать на всплески нагрузки.

Мониторинг

За долгое время, нами было решено множество задач по организации мониторинга и локальных инфраструктур, и динамических окружений. При требовании реактивной реакции на проблему, мы готовы предложить вариант кейсов по уведомлению сотрудников с помощью телефонных звонков, смс сообщений, уведомлений в мессенджерах. Основная платформа мониторинга, которую мы внедряем, является Zabbix.