Potrzebne toolsy do zdeployowanej apki na AWS

Potrzebne toolsy do zdeployowanej apki na AWS
Bambo
  • Rejestracja:ponad 10 lat
  • Ostatnio:8 miesięcy
  • Postów:779
0

Hej, skończyłem backend i klienta androidowego swojej aplikacji. Klienta wrzuciłem na google play w wersji alfa do testów dla znajomych, backend zdeployowałem na ec2.
Backend u mnie to zwykły monolit - apka nie jest super duża, chociaż dłubałem ją powoli z rok. Serwisy z jakich korzystam to mongo cloud jako db, cloudinary jako chmura do zdj, image rekognition amazona do weryfikacji zdj. Nie skupiałem się na razie na CI/CD, więc napisałem sobie po prostu shellowy scrypt i deployuję ją na ec2 z inteliija.
Nigdy za bardzo nie interesowałem się tymi wszystkimi devopsowymi rzeczami, no ale chyba w końcu trzeba. Wiem, że apka na razie nie jest publiczna i na razie są to testy, ale o co muszę zadbać przed wrzuceniem tego normalnie na proda ?

Na pewno https pewnie muszę skonfigurować na AWS ? Czy jakieś API Gateway typu Kong będzie mi niezbędny ? Monitoring ? Nie orientuję się za bardzo jak sprawa wygląda z autoskalowalnością na AWS. Chciałbym po prostu wiedzieć w razie co, że ec2 już nie wyrabia z ilością userów i albo postawić mocniejszy albo kolejną instancję. To się na AWS dzieję jakoś samo czy muszę to monitorować ? Na razie mam ten free tier. O co jeszcze muszę zadbać ? Logi na razie zapisuje po prostu tylko errory do pliku.

Ze wszelkimi politykami prywatności itd udam się zapewne do radcy prawnego.

Pozdrawiam serdecznie

edytowany 3x, ostatnio: Bambo
Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 3 godziny
  • Postów:1880
2

Nie mam doświadczenia z AWS, ale zacząłbym od https://aws.amazon.com/elasticloadbalancing/ i ustawienia limitów kasowych, żeby nie popłynąć w kosztach :) Agregator logów i metryk, to niezależnie od środowiska zawsze trzeba mieć, żeby wiedzieć co się dzieje.


”Engineering is easy. People are hard.” Bill Coughran
edytowany 1x, ostatnio: Charles_Ray
Shalom
  • Rejestracja:ponad 21 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
3
  1. AWS ma swoje ELBy i ALBy, nie musisz stawiać nic sam. Podobnie DNSy możesz ogarnąć przez AWSa i tam też ogarnąć certyfikaty do https.
  2. Wygodnie mieć aplikacje na więcej niż 1 node, bo raz że redundancja, a dwa że można robić deploy bez downtime -> wyrzucasz jedną instancje z load balancera, deploujesz nową wersje, wrzucasz do load balancera, wyrzucasz tą drugą i deploy na drugiej
  3. Jakaś grafana z metrykami plus icinga mogą się przydać
  4. Autoscaling można skonfigurować w EC2
  5. Logi do pliku, spoko, a co jak się zeskalujesz na 10 albo 100 instancji? ;) Wtedy można pomyśleć o jakimś ELK-stacku.

Tylko pamiętaj, że to wszystko to koszty.


"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
Bambo
  • Rejestracja:ponad 10 lat
  • Ostatnio:8 miesięcy
  • Postów:779
0

Dzięki serdecznie za odp !
A jest jakiś lżejszy sposób niż ELK stack ? Nie wiem czy potrzebuję stawiać aż taką machinę.Może jakiś prosty system do zbierania logów z plików z wielu instancji i pokazywania ich po prostu gdzieś na UI ? :D

Charles_Ray
  • Rejestracja:około 17 lat
  • Ostatnio:około 3 godziny
  • Postów:1880
0

”Engineering is easy. People are hard.” Bill Coughran
Bambo
Tak, ale poza AWS i trafiłem na coś takiego jak datadodhq, newrelic, cassiomolin. Dość sporo tych tooli, więc chciałem szybką odpowiedź od kogoś kto regularnie siedzi w temacie :)
Charles_Ray
No tak, ale to musisz sobie sam postawić, a Cloud Watcha daje AWS z paczki

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.