Usługi DevOps dla produktów webowych i mobilnych
Konfigurujemy sposób, w jaki Wasz produkt jest budowany, testowany, wdrażany i obserwowany: pipeline’y CI/CD, kontenery, infrastrukturę w chmurze lub na VPS i oddzielne środowiska. Wydanie staje się rutynowym krokiem, a nie wydarzeniem późnym wieczorem.
Kiedy praca DevOps się opłaca
Sygnał jest zwykle ten sam: wydania są powolne, ryzykowne i zależą od jednej osoby, która zna polecenia.
- Wdrożenia wykonuje się ręcznie przez SSH i czasem psują produkcję
- Nie ma środowiska testowego, więc zmiany sprawdza się na prawdziwych użytkownikach
- Tylko jeden programista wie, jak wdrażać, a właśnie odchodzi
- Rachunek za chmurę rośnie szybciej niż produkt
- Błędy zgłaszają klienci, bo nie ma logów ani metryk
- Przygotowanie środowiska dla nowego programisty zajmuje kilka dni
Co robimy
Pipeline'y CI/CD
Każdy commit jest automatycznie budowany i testowany, a scalenie z główną gałęzią wdraża zmiany na środowisko testowe lub produkcyjne. Aplikacje mobilne dostają automatyczne buildy dostarczane do TestFlight i ścieżek testowych Google Play.
Kontenery
Aplikacje i ich zależności spakowane w Dockerze, dzięki czemu ten sam obraz działa na laptopie, na środowisku testowym i na produkcji.
Infrastruktura w chmurze i na VPS
Infrastruktura w chmurze publicznej lub na serwerach dedykowanych i VPS, dobrana do obciążenia i budżetu, a nie z przyzwyczajenia, i skonfigurowana na kontach, które należą do Was.
Infrastruktura jako kod
Serwery, sieci, DNS i dostępy opisane w kodzie i przechowywane w repozytorium. Środowisko można przejrzeć, odtworzyć i zmienić jak każdy inny kod.
Dev, stage i prod
Oddzielne środowiska deweloperskie, testowe i produkcyjne z własnymi danymi i ustawieniami, dzięki czemu każda zmiana jest sprawdzana, zanim zobaczą ją prawdziwi użytkownicy.
Monitoring i logi
Metryki, scentralizowane logi i śledzenie błędów z alertami, aby zespół pierwszy zauważał problemy i diagnozował je na podstawie danych, a nie domysłów.
Wdrożenia, które nie zależą od jednej osoby
Gdy wydanie oznacza, że programista łączy się z serwerem i wpisuje polecenia z pamięci, każde wydanie jest ryzykiem, a każdy urlop problemem. Przenosimy tę wiedzę do pipeline’u: budowanie, testy, migracje bazy danych i wdrożenie przebiegają za każdym razem tak samo, a nieudane wydanie można wycofać jednym krokiem. Sekrety i dostępy są przechowywane centralnie, a nie na prywatnych laptopach.
- Automatyczne budowanie i testy przy każdym commicie
- Wdrożenie i wycofanie jednym krokiem
- Migracje bazy danych jako część wydania
- Sekrety i dostępy zarządzane w jednym miejscu
Infrastruktura, która kosztuje tyle, ile powinna
Rachunki za infrastrukturę rosną po cichu: przewymiarowane instancje, zapomniane serwery testowe, płatne usługi, które się dublują. Sprawdzamy, co działa, do czego służy i ile kosztuje, a potem proponujemy zmiany z szacowaną oszczędnością dla każdej z nich. Czasem oznacza to dopasowanie rozmiaru zasobów w tej samej chmurze, a czasem przeniesienie stałych obciążeń od dostawcy chmury na serwery dedykowane.
- Inwentaryzacja zasobów i ich miesięcznego kosztu
- Usunięte nieużywane i przewymiarowane zasoby
- Szacowana oszczędność dla każdej proponowanej zmiany
- Plan migracji tam, gdzie przeniesienie obciążeń ma sens finansowy
Wiedza o tym, co dzieje się na produkcji
Bez monitoringu pierwsze zgłoszenie problemu przychodzi od klienta. Konfigurujemy metryki serwerów i aplikacji, zbieramy logi w jednym miejscu i podłączamy śledzenie błędów dla backendu, klientów webowych i mobilnych. Alerty trafiają do osób, które mogą zareagować, i są dostrojone tak, aby nie były ignorowane.
- Dashboardy z metrykami serwerów, baz danych i aplikacji
- Scentralizowane logi z możliwością wyszukiwania
- Śledzenie błędów dla backendu, webu i aplikacji mobilnych
- Alerty kierowane do właściwych osób
Jak przebiega praca DevOps
Przegląd
Sprawdzamy repozytoria, obecny proces wdrażania, infrastrukturę i rachunki. Dostajecie raport z problemami i proponowanymi zmianami.
Plan
Zmiany są uszeregowane według wartości i ryzyka oraz wycenione. To Wy decydujecie, co zrobić najpierw.
Wdrożenie
Pipeline’y, kontenery, środowiska i monitoring wprowadzamy krok po kroku, bez wstrzymywania bieżących wydań.
Przekazanie
Wasz zespół dostaje dokumentację i omówienie konfiguracji, dzięki czemu rozumie ją więcej niż jedna osoba.
Bieżące wsparcie
Jeśli chcecie, utrzymujemy i usprawniamy infrastrukturę w ramach umowy serwisowej.
Narzędzia, z których korzystamy
CI/CD
- GitHub Actions
- GitLab CI
- Bitbucket Pipelines
- fastlane
Kontenery
- Docker
- Docker Compose
- Kubernetes
Chmura i IaC
- AWS
- Google Cloud
- Hetzner
- DigitalOcean
- Terraform
- Ansible
Monitoring
- Prometheus
- Grafana
- Sentry
Jak możemy współpracować
Projekt konfiguracyjny
Projekt o stałym zakresie: na przykład pipeline CI/CD, konteneryzacja lub przejście na nową infrastrukturę.
Bieżące wsparcie DevOps
Miesięczna opieka nad pipeline’ami, środowiskami i infrastrukturą, w razie potrzeby połączona z administracją serwerami.
Godzinowo lub dedykowany inżynier
Konsultacje i pojedyncze zadania rozliczane godzinowo albo inżynier przypisany do Waszego zespołu.
Opinie
Zespół Revol stale usprawnia prace rozwojowe klienta dzięki wysokiej jakości pracy i niezawodnemu wsparciu. Sprawnie się komunikuje i doskonale rozumie potrzeby oraz biznes klienta.
Tomas
Praca Revol w pełni spełniła oczekiwania i zadowoliła klienta. Świeże podejście i stała gotowość do wsparcia okazały się ogromnym atutem. Kto szuka komunikatywnego, zorientowanego na klienta zespołu do realizacji swoich celów, może śmiało na nich postawić.
Andrey
Najczęściej zadawane pytania
Czy potrzebujemy Kubernetesa?
Większość produktów nie potrzebuje. Kilka serwerów z Dockerem i dobrze zbudowany pipeline pokrywają potrzeby większości backendów webowych i mobilnych przy ułamku złożoności. Kubernetesa proponujemy wtedy, gdy liczba usług i obciążenie faktycznie tego wymagają.
Czy możecie pracować na naszym istniejącym koncie w chmurze?
Tak. Pracujemy na Waszych kontach w chmurze lub u hostingodawcy z dostępami, które nam przyznacie, a wszystko, co zbudujemy, pozostaje Wasze. Nie przenosimy Waszej infrastruktury na konta, które kontrolujemy.
Czy zmiany przerwą nasze bieżące wydania?
Nie. Zmiany wprowadzamy krok po kroku, zwykle zaczynając od pipeline'u, który wdraża na nowe środowisko testowe. Produkcję przełączamy dopiero wtedy, gdy nowy proces się sprawdzi.
Czy możecie obniżyć nasz rachunek za hosting?
Często tak, ale o ile – zależy od tego, co macie. Po przeglądzie dostajecie listę konkretnych zmian z szacowaną oszczędnością dla każdej i sami decydujecie, które wprowadzić.
Czy konfigurujecie CI/CD dla aplikacji mobilnych?
Tak: automatyczne budowanie, podpisywanie, testy i dostarczanie do TestFlight i ścieżek testowych Google Play, dzięki czemu testerzy dostają każdy build bez ręcznych kroków.
Czym DevOps różni się od administracji serwerami?
Administracja serwerami dba o kondycję istniejących serwerów: aktualizacje, kopie zapasowe, monitoring. DevOps zmienia sposób, w jaki produkt jest budowany i wdrażany. Wielu klientów potrzebuje obu usług i można je połączyć w jednej umowie.
Opowiedzcie nam o swoim projekcie
Opiszcie zadanie w kilku zdaniach. W ciągu jednego dnia roboczego odpowiemy pytaniami lub wstępną oceną zakresu i kosztów.
Wolicie e-mail lub rozmowę telefoniczną?
welcome@revolsource.com
+38 097 662 23 20
Revol Software OÜ, Tallin, Estonia. Nasz zespół jest rozproszony po całym świecie.
Dołączcie do naszego zespołu
Wyślijcie CV na adres career@revolsource.com