Послуги DevOps для веб- і мобільних продуктів
Ми налаштовуємо те, як ваш продукт збирається, тестується, розгортається й відстежується: CI/CD-конвеєри, контейнери, хмарну чи VPS-інфраструктуру й окремі середовища. Реліз стає рутинним кроком, а не подією пізно ввечері.
Коли DevOps-робота окуповується
Сигнал зазвичай один і той самий: релізи повільні, ризиковані й залежать від однієї людини, яка знає команди.
- Розгортання виконують вручну через SSH, і часом вони ламають робочу версію
- Тестового середовища немає, тож зміни перевіряють на реальних користувачах
- Лише один розробник знає, як розгортати, і він іде
- Рахунок за хмару росте швидше, ніж продукт
- Про помилки повідомляють клієнти, бо немає ні логів, ні метрик
- Налаштування середовища для нового розробника забирає кілька днів
Що ми робимо
CI/CD-конвеєри
Кожен коміт автоматично збирається й тестується, а злиття в основну гілку розгортає зміни на тестове чи робоче середовище. Для мобільних застосунків — автоматичні збірки з доставкою в TestFlight і тестові треки Google Play.
Контейнери
Застосунки та їхні залежності упаковані в Docker, тож той самий образ працює на ноутбуці, у тестовому та робочому середовищі.
Хмарна та VPS-інфраструктура
Інфраструктура в публічній хмарі або на виділених і VPS-серверах, обрана за навантаженням і бюджетом, а не за звичкою, і налаштована в акаунтах, які належать вам.
Інфраструктура як код
Сервери, мережі, DNS і доступи описані в коді й зберігаються в репозиторії. Середовище можна переглядати, відтворювати й змінювати, як будь-який інший код.
Dev, stage і prod
Окремі середовища розробки, тестування й робоче середовище з власними даними й налаштуваннями, тож кожну зміну перевіряють до того, як її побачать реальні користувачі.
Моніторинг і логи
Метрики, централізовані логи й відстеження помилок зі сповіщеннями, щоб команда першою помічала проблеми й діагностувала їх на основі даних, а не здогадок.
Розгортання, які не залежать від однієї людини
Коли реліз означає, що розробник підключається до сервера й запускає команди з пам’яті, кожен реліз — це ризик, а кожна відпустка — проблема. Ми переносимо ці знання в конвеєр: збирання, тести, міграції бази даних і розгортання щоразу виконуються однаково, а невдалий реліз можна відкотити одним кроком. Секрети й доступи зберігаються централізовано, а не на особистих ноутбуках.
- Автоматичне збирання й тести на кожен коміт
- Розгортання й відкат одним кроком
- Міграції бази даних як частина релізу
- Секрети й доступи керуються в одному місці
Інфраструктура, яка коштує стільки, скільки має
Рахунки за інфраструктуру ростуть непомітно: завеликі інстанси, забуті тестові сервери, платні сервіси, що дублюють один одного. Ми переглядаємо, що працює, для чого використовується і скільки коштує, а потім пропонуємо зміни з оцінкою економії для кожної. Іноді це підбір правильного розміру ресурсів у тій самій хмарі, іноді — перенесення стабільних навантажень із хмари на виділені сервери.
- Інвентаризація ресурсів та їхньої щомісячної вартості
- Невикористані й завеликі ресурси прибрано
- Оцінка економії для кожної запропонованої зміни
- План міграції там, де перенесення навантажень фінансово виправдане
Розуміння того, що відбувається в робочому середовищі
Без моніторингу перше повідомлення про проблему надходить від клієнта. Ми налаштовуємо метрики для серверів і застосунку, збираємо логи в одному місці й підключаємо відстеження помилок для бекенду, вебу й мобільних клієнтів. Сповіщення надходять людям, які можуть на них відреагувати, і налаштовані так, щоб їх не ігнорували.
- Дашборди для серверів, баз даних і метрик застосунку
- Централізовані логи з пошуком
- Відстеження помилок для бекенду, вебу й мобільних застосунків
- Сповіщення, спрямовані потрібним людям
Як відбувається DevOps-робота
Огляд
Ми дивимося на репозиторії, поточний процес розгортання, інфраструктуру й рахунки. Ви отримуєте звіт із проблемами й запропонованими змінами.
План
Зміни впорядковуємо за цінністю й ризиком та оцінюємо. Ви вирішуєте, що робити насамперед.
Впровадження
Конвеєри, контейнери, середовища й моніторинг впроваджуються поступово, без зупинки поточних релізів.
Передача
Ваша команда отримує документацію й покрокове пояснення, тож налаштування розуміє не одна людина.
Постійна підтримка
За вашим бажанням ми підтримуємо роботу інфраструктури й удосконалюємо її в межах договору на підтримку.
Інструменти, які ми використовуємо
CI/CD
- GitHub Actions
- GitLab CI
- Bitbucket Pipelines
- fastlane
Контейнери
- Docker
- Docker Compose
- Kubernetes
Хмара та IaC
- AWS
- Google Cloud
- Hetzner
- DigitalOcean
- Terraform
- Ansible
Моніторинг
- Prometheus
- Grafana
- Sentry
Формати роботи з нами
Проєкт із налаштування
Проєкт із фіксованим обсягом: наприклад, CI/CD-конвеєр, контейнеризація чи переїзд на нову інфраструктуру.
Постійна DevOps-підтримка
Щомісячний супровід конвеєрів, середовищ та інфраструктури, за потреби разом із підтримкою серверів.
Погодинно або виділений інженер
Консультації й окремі задачі з погодинною оплатою або інженер, закріплений за вашою командою.
Відгуки
Команда Revol і далі розширює можливості розробки клієнта завдяки якісній роботі та надійній підтримці. Вони ефективно комунікують і добре розуміють потреби та бізнес клієнта.
Tomas
Робота Revol повністю виправдала очікування, і клієнт залишився задоволений. Свіжий підхід і постійна готовність допомогти стали для нас справжньою цінністю. Якщо вам потрібна комунікабельна, клієнтоорієнтована команда для досягнення ваших цілей — сміливо звертайтеся до них.
Andrey
Часті запитання
Чи потрібен нам Kubernetes?
Більшості продуктів — ні. Кілька серверів із Docker і добре побудований конвеєр покривають потреби більшості бекендів для вебу й мобільних застосунків за значно меншої складності. Kubernetes ми пропонуємо, коли цього справді вимагають кількість сервісів і навантаження.
Чи можете ви працювати в нашому наявному хмарному акаунті?
Так. Ми працюємо у ваших хмарних чи хостингових акаунтах із доступами, які ви надаєте, і все, що ми створюємо, залишається вашим. Ми не переносимо вашу інфраструктуру в акаунти, які контролюємо ми.
Чи перервуть зміни наші поточні релізи?
Ні. Зміни впроваджуються поступово, зазвичай починаючи з конвеєра, який розгортає на нове тестове середовище. Робоче середовище переходить на новий процес, коли той себе довів.
Чи можете ви зменшити наш рахунок за хостинг?
Часто так, але наскільки — залежить від того, що у вас є. Після огляду ви отримуєте перелік конкретних змін з оцінкою економії для кожної й вирішуєте, які з них вносити.
Чи налаштовуєте ви CI/CD для мобільних застосунків?
Так: автоматичні збірки, підпис, тести й доставка в TestFlight і тестові треки Google Play, щоб тестувальники отримували кожну збірку без ручних кроків.
Чим DevOps відрізняється від підтримки серверів?
Підтримка серверів тримає наявні сервери в доброму стані: оновлення, резервні копії, моніторинг. DevOps змінює те, як продукт збирається й розгортається. Багатьом клієнтам потрібне і те, й інше, і їх можна поєднати в одному договорі.
Розкажіть про свій проєкт
Опишіть задачу кількома рядками. Протягом одного робочого дня ми відповімо з запитаннями або першою оцінкою обсягу й вартості.
Зручніше написати листа чи зателефонувати?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Таллінн, Естонія. Наша команда розподілена по всьому світу.
Приєднуйтеся до нашої команди
Надсилайте резюме на career@revolsource.com