Strona Główna / Blog

10 Rzeczy, Które Mnie Wkurzają w AWS

Sebastian Nowak

Sebastian Nowak

10 rzeczy, które mnie wkurzają w AWS

Pracuję z AWS od kilku lat. Lubię AWS jak mało co na świecie.

Zanim napiszę o 10 rzeczach, które lubię w AWS, postanowiłem napisać co mnie wkurza w AWS.

Uwaga: będę narzekał. Osoby wrażliwe: proszę nie czytać :)

Osoby decyzyjne z innych chmur: czy poniższe zastrzeżenia są prawdziwe także u was? Uznajcie poniższą listę za fachowy feedback zatroskanego użytkownika i popracujcie nad tym.

1. Brak konsekwencji w interfejsie konsoli

Czy każdą usługę pisał inny zespół programistów, a team leader odpowiadający za spójność akurat urlopował się nad polskim morzem? W niektórych miejscach jest przycisk odświeżania zawartości, w niektórych go nie ma. Jedne tabelki można sortować, drugich – nie. Czasem można wyszukiwać, czasem nie. Niektóre linki do zasobów AWS można otworzyć bez problemu w nowej zakładce przeglądarki internetowej, a niektórych nie można, ponieważ ich otwarcie obsługuje JavaScript. I tak dalej… Patrząc na rozwój usług, można odnieść wrażenie, że w pewnym momencie wprowadzono nowy UI. Czyli wszystkie nowe usługi będą z niego korzystać, a stare z czasem zostaną przepisane. Prawda? Ano, nieprawda. Powstawały nowe usługi, pojawiały się kolejne wersje interfejsu – a ja w końcu straciłem nadzieję, że wszystko zostanie ujednolicone.

2. Brak informacji o położeniu

Już nie mówię, żeby w tytule strony znalazł się dokładny opis gdzie jesteśmy dokładnie, w jakiej usłudze czy w jej dziale. Ale przydałaby się chociażby favikonka dla każdej z nich. Trudno się połapać, gdy ma się otwartych multum zakładek z np. EC2. W której są instancje? W której otworzyłem loadbalancery? W której mam grupy autoskalowalne? Do tego Chrome nie ułatwia i zacieśnia wielkości zakładek – jak żyć?

3. Brak szczegółowych informacji o usłudze, jej ficzerach i detalach błędów

Niektóre z nich (usług) są bardzo zamknięte na komunikowanie o swoim stanie. Na przykład taki CodeDeploy potrafi pokazać, że wystąpił błąd, a czasem pokaże tylko „failure” bez informacji o co chodzi – trzeba wtedy debugować w logach agenta zainstalowanego na instancji. Okej, żeby nie było, że tylko o CodeDeploy marudzę. Weźmy taki load balancer i proste pytanie: „Dlaczego instancja jest OutOfService?”. Rozumiem, że zfailowała kilka razy przy healthchecku – ale DLACZEGO?! Jaka była odpowiedź serwera, że ELB ją wypiął? Tak, wiem że są logi… można sobie do S3 pchać, co 5 minut, a potem pobrać i przedzierać się przez megabajty danych – super partia!

4. Brak możliwości zalogowania się na kilka kont jednocześnie z jednej przeglądarki

To jest okropne. Dobrze, że chociaż dodali możliwość szybkiego przełączania się między nimi… aczkolwiek nie jest to idealne – patrz punkt następny.

5. Możliwość przełączania między kontami

To jest ok, ale konfiguracja powinna być trzymana po stronie AWS, a nie w cookie przeglądarki! Teraz w każdym miejscu, w którym loguję się do AWS, muszę ustawiać wszystkie konta. Oczywiście, w trybie incognito lub po skasowania historii/cookies muszę ustawiać to od nowa i pamiętać nazwy kont lub pełne, liczbowe ID.

6. Dokumentacja czasami bardzo boli

Ilość wątków, w jakie wpada się podczas jej czytania, jest masakryczna. Przykładem jest CodeDeploy, którego tajniki zacząłem zgłębiać zaraz gdy się pojawił. Sporo czasu zajęło mi wyłuskanie z niego podstawowych informacji jak się tego w ogóle używa. Pomijam fakt, że „yaml” którego używa AWS w appspec.yml obok yamla raczej nie stał ;)

7. Brak wersjonowania dokumentacji!

Na blogu nie piszą o wszystkich nowościach i update’ach, przez co można przeoczyć istotne zmiany w usługach. Po jakimś czasie wracam do dokumentacji, ponieważ coś nie działa lub trzeba wdrożyć gdzie indziej lub chcę odświeżyć wiedzę – i wtedy okazuje się, że doszło tyle ficzerów, że mam z głowy parę godzin. A nie mam przecież paru godzin! Changelog nie boli!

8. Support i kontakt

Płatny support i szybkość kontaktu na podstawie priority?! Wszyscy będą ustawiać „Urgent” ;) Pomijam kwestię, że zaangażowanie supportu jest mocno zależne od humoru dnia i kompetencji człowieka po drugiej stronie…

9. Sporo funkcji długo czeka na pojawienie się w UI, mimo że przez długi czas są już dostępne w API

Tak było np. z autoskalowaniem. Do tej pory wiele jest miejsc, które dostępne są tylko za pomocą API (awscli). Przykład: deployment-cycle hooki w CodeDeploy, których nawet nie widać w UI, a które tworzą się automagicznie i raz spowodowały wysyp aplikacji na produkcji. Dzięki supportowi byłem w stanie wydedukować co się dzieje i usunąć hooka, który blokował wpięcie instancji do ASG.

10. Nie, bo nie

Bywa, że czegoś nie możemy dodać/zmienić, i nie wiadomo właściwie dlaczego. Przykład: monitorowanie zachowań grupy autoskalowalnej w CloudWatch można ustawić tylko podczas jej tworzenia. Nie można potem włączyć/zmienić. Jest tylko podgląd, co zostało wybrane – strzelam, że przez API się da.

Ufff…

…wyładowałem swoją frustrację :) To zaledwie 10 rzeczy, które przychodzą mi do głowy na szybko. Pewnie znalazłoby się ich więcej. Widocznie te najbardziej siedzą w mojej głowie i wołają głośno: AWS, ogarnij się!

Ale spokojnie. Nie myśl, czytelniku, że jest tak źle. Wręcz przeciwnie. W następnym odcinku napiszę co mnie w AWS urzeka. Do usłyszenia.

Już wkrótce otwieramy nowe kursy

Zostań specjalistą chmury publicznej

Dołącz do listy mailingowej!

Dołącz do naszego newslettera

Staramy się wysyłać tylko wartościowe informacje, np. co miesiąc dostaniesz spis najważniejszych nowości z chmur Azure, AWS i GCP, z krótkimi opisami i linkami.