Redmine Server czy Hosting - korzyści i różnice

 |  Jul 01, 19

redmine_in-house-server_vs_cloud_hosting.png

Jaka jest różnica pomiędzy hostingiem Redmine on-premise a w chmurze? Poprosiliśmy Andrew Reshetova, eksperta technicznego Redmine i człowieka stojącego za techniczną stroną RedmineUP Cloud o podzielenie się swoją opinią. .

Krótko mówiąc - to zależy. Od wielkości firmy, celów i potrzeb projektu, budżetu i dostępnych zasobów. Sugeruję, abyś oparł swoją decyzję na kalkulacji TCO, aby zobaczyć, która opcja okaże się najlepsza w perspektywie 3-5 lat lub na osi czasu Twojego projektu.

Często koszty hostingu on-premise wydają się być lukratywnie niskie, ale w dłuższej perspektywie mogą zebrać żniwo.

Całkowite koszty posiadania pomaga ujawnić koszty, które często są ukryte lub mogą wydawać się nie związane bezpośrednio z daną sprawą (takie jak koszty bezpieczeństwa, energii elektrycznej, infrastruktury czy szkoleń).

Nawet w przypadku oprogramowania Open Source, naturalne jest dzierżawienie serwera lub hostingu od zewnętrznego dostawcy. Jednak jeśli szukasz wielu dostępnych dostawców hostingu, to szybciej przyprawi Cię o ból głowy niż pomoże podjąć decyzję.

Migrate to secure hosting

Don't waste your time on Redmine maintenance. Hire experts and focus on your projects

Ok, zanim przejdziemy do szczegółów, zróbmy krok wstecz. Jakie są przewagi infrastruktury Cloud nad hostingiem on-premise?

[Andrzej Reszetow:] Istnieją dwa rodzaje zalet Cloud nad self-hostingiem.

Przede wszystkim zalety techniczne:
  • Nie potrzebujesz do tego serwera bare-metal.
  • Nie potrzebujesz szybkiego internetu
  • Nie potrzebujesz serwera kopii zapasowych (ponieważ kopie zapasowe powinny być przechowywane oddzielnie od głównych usług)
  • Nie potrzebujesz DevOps do konfiguracji/aktualizacji/monitorowania serwera.
W drugiej kolejności - zalety usługi:
  • Nie musisz kupować subskrypcji wtyczek, aby mieć wszystkie nowe wersje i funkcje.
  • Nie trzeba aktualizować wersji Redmine lub wtyczek ani rozwiązywać problemów z aktualizacją samodzielnie
  • Nie musisz biegać i krzyczeć "Ahh, wszyscy umrzemy!", jeśli coś jest nie tak (śmiech), ponieważ na serwerze w chmurze zespół konserwatorów naprawi to za Ciebie.

Ostatnie lata poświęciliście na zbudowanie gotowego rozwiązania hostingowego Redmine. Zostawmy jednak na boku funkcje z wtyczek RedmineUP i skupmy się na stronie technicznej - jak zbudowałeś architekturę systemu, aby zapewnić optymalne parametry. Jego struktura nie pasuje ani do architektury Single-Tenant ani Multi-Tenant

[AR:] To dlatego, że zaprojektowaliśmy strukturę Hybrid-Tenant, która łączy to, co najlepsze z dwóch struktur. Wykorzystujemy infrastrukturę serwerów AWS (Amazon) z umieszczoną na nich chmurą Kubernetes. Dla każdego klienta, który tworzy nową instancję, automatycznie tworzymy wydzielony serwer wirtualny (VS) z osobistymi ustawieniami. Oprócz tego mamy centralny serwer WWW w chmurze, którego głównym zadaniem jest trasowanie i balansowanie ruchu WWW dla wszystkich klientów VS, oraz serwer poczty elektronicznej w chmurze - odbierający i backupujący maile dla wszystkich instancji w chmurze. Ponadto, wszystkie instancje są kontrolowane i monitorowane za pomocą serwera głównego.

Dzięki takiemu podejściu, mamy stabilność i bezpieczeństwo single-tenant z wysoką wydajnością i łatwością aktualizacji ze struktury multi-tenant. Jest to o wiele bardziej efektywne i opłacalne.

Czym różni się Cloud od serwerów lub platform w chmurze publicznej, takich jak Bitnami, czysty Amazon, czy DigitalOcean?

[AR:] Wszystkie te usługi to dzierżawa hostingu na serwerze. Możesz tam wynająć wirtualny serwer, ale nadal musisz zainstalować na nim Redmine, wtyczki itp. a następnie skonfigurować kopie zapasowe i ustawienia poczty elektronicznej. Ogólnie rzecz biorąc - te usługi rozwiązują twój problem z serwerem bare-metal, ale nie rozwiążą twojego problemu z brakiem DevOps.

Jaka jest główna różnica, której świadkami są użytkownicy końcowi, jeśli testują Redmine z własnym hostingiem vs. RedmineUP Cloud z publicznym hostingiem?

[AR:] Jeśli chcą przetestować nasz hosting, to jest darmowa rejestracja próbna w chmurze. Jeśli przetestują go na instancji on-premise z kompletnym pakietem wtyczek RedmineUP, nie będzie widocznej różnicy dla użytkownika końcowego. Jak wspomniałem wcześniej, porównując którąkolwiek z dwóch pierwszych alternatyw z publicznym hostingiem, zobaczą oni niższą wydajność.

Co jeśli firma posiada już Redmine na chmurze publicznej lub Bitnami Redmine i chce zaktualizować do najnowszego Redmine w Chmurze - czy trudno jest dokonać migracji?

[AR:] Nie. Klienci mogą albo udostępnić nam pliki Redmine wraz z backupem DB, a my odtworzymy je na nowej instancji Cloud. Ewentualnie, jeśli nie wiedzą gdzie mogą je znaleźć, wystarczy udostępnić nam dostęp do serwera - sami znajdziemy i przeniesiemy dane.

*Która część procesu jest najtrudniejsza?

[AR:] Akurat dla nas najtrudniejsza jest migracja DB dump do PostgreSQL, jeśli klient używał przed nią innego DB. Jednak dostarczałem już takie migracje Redmine dla naszych klientów z Maratem.

*Jakich elementów użytkownicy zazwyczaj nie są świadomi, gdy rozważają chmurę i on-premise?

[AR:] Wszystkie czynności związane z utrzymaniem Redmine, które my od nich przejmujemy. Czyli kopie zapasowe bazy danych, plików i maili. Monitorowanie serwerów, nagrywanie, śledzenie i przechowywanie logów, aktualizowanie Redmine i wtyczek oraz pozostałe wsparcie dla użytkowników końcowych.

*Dlaczego ludzie migrują do Cloud?

[AR:] Głównym celem przejścia z self-hosted Redmine instance do Cloud jest wyciągnięcie wybranych ryzyk z ramion Twojej firmy na zewnątrz.

Wyobraźmy sobie, że pewnego dnia Twój serwer on-premise ulega awarii. Potrzebowałbyś nowego serwera bare-metalowego, nowego wdrożenia Redmine, a następnie odtworzenia zrzutu bazy danych i plików.

Migrate to secure hosting

Don't waste your time on Redmine maintenance. Hire experts and focus on your projects

Nie masz jednak nowego serwera, proces zatwierdzania zakupu trwa kilka dni, serwery nie są gotowe, DevOps są na wakacjach, a kiedy piszesz post na stronie społeczności, nie otrzymujesz żadnych odpowiedzi.

W RedmineUP Cloud, jeśli główny serwer widzi, że coś jest nie tak z instancją, to po prostu przenosi ją na inny serwer bez przerwy dla klienta. Tak więc problem jest rozwiązany.

Poza tym, jeśli chcesz zaktualizować wtyczki lub Redmine, musisz być bardzo ostrożny, ponieważ nie wszystkie zmiany można cofnąć i jeśli coś pójdzie nie tak - musisz przywrócić serwer z kopii zapasowej i spróbować ponownie.

Ponownie, w RedmineUP Cloud - dla każdego klienta przygotowujemy obraz serwera z ostatnim stabilnym Redmine i wtyczkami i testujemy zaktualizowane środowisko na piaskownicy zanim zastosujemy jakąkolwiek istotną zmianę. Jeśli jednak po wdrożeniu pojawi się jakiś błąd - możemy bardzo szybko wrócić do poprzedniego obrazu, naprawić błąd i wdrożyć nowy obraz ponownie.

Tak więc, na koniec dnia, jako menadżer lub właściciel firmy, oszczędza Ci to wiele roboczogodzin i ratuje przed potencjalnymi kosztami uszczuplającymi Twój portfel.

sql_view_image.jpg
Customer story

With new [Redmine] functionalities and RedmineUP help, we were able to operatively steamed up our processes

— SINDY LEE, ANALYSTS, SQL VIEW

Related posts