Strona Główna / Blog

Najłatwiejszy Sposób, Aby Stracić Pracę Przez Cloud Computing (+ 6 WSKAZÓWEK)

Mirek Burnejko

Mirek Burnejko

Rozmawiam w języku Amazon Web Services, Microsoft Azure i Google Cloud Platform. Skontaktuj się z nim pisząc na ten adres.

TL;DR – uznaj, że rozumiesz ceny w chmurze i przekonaj się o prawdziwych kosztach, gdy wejdziesz na produkcję.

Zanim zaproszę Cię na webinar o kosztach, który będę prowadził z firmą SoftwareONE, chciałbym Ci pomóc nie popełniać błędów, które sam popełniałem.

Jeden z moich pierwszych projektów dotyczących chmury publicznej polegał na wycenie kosztów dla globalnej firmy. Chodziło w tym wypadku o AWS. Po przeprowadzonej pracy okresliłem:

  • Aktualny koszt – 2 888 245 USD rocznie
  • Koszt w chmurze 1 – 2 643 249 USD rocznie
  • Koszt w chmurze 2 – 3 217 021 USD rocznie


Koszt w chmurze 1 i koszt w chmurze 2 nie różni się za dużo. Dotyczyło to jednak pewnych założeń dotyczących wirtualnych maszyn. Różnica to 573 772 USD rocznie. PÓŁ MILIONA DOLARÓW ROCZNIE.

Jeżeli podczas budżetowania uznamy koszt 2-gi i osiągnięmy 1-wszy, to czeka nas premia.
Jeżeli podczas budżetowania uznamy koszt 1-wszy i osiągnięmy 2-gi, to czeka nas zdarzenie generujące CV.

6 RZECZY, NA KTÓRE MUSISZ UWAŻAĆ WYCENIAJĄC CHMURĘ

Oto 6 rzeczy, na które musisz zwrócic uwage wyceniając koszt chmury pod projekt, aby nie popełnić dużego błędu.

1. Wirtualne Maszyny To Ciągle Główny Koszt

Wirtualne maszyny są używane w prawie 100% projektach w Polsce i za granicą. Ekstremalnie rzadko można spotkać projekty oparte tylko o platformę, jak np. Azure App Services lub Google App Engine.

W standardowym projekcie koszt wirtualnych maszyn stanowi około 80% kosztów całości. Warto zwrócić uwage, że używając wirtualną maszynę płacimy nie tylko za… wirtualną maszynę, ale za całą masę rzeczy pobocznych, których czasami nie liczymy.

  1. Rodzaj i wielkość instancji Amazon EC2
  2. Wielkość dysków EBS
  3. Ilość zagwarantowanych IOPS
  4. Wielkość snapshotu EBS składowanego na Amazon S3
  5. Ruch wychodzący do Internetu
  6. Ruch wychodzący do innego Regionu
  7. Ruch wychodzący do innej Availabilty Zone (przez publiczny adres IP)
  8. Godziny korzystania z Elastic Load Balancer (ELB)
  9. Ilość ruchu przechodząca przez ELB
  10. Publiczny lub Elastic IP

Warto więc skorzystać z cennika AWS, Azure, GCP.

Dobrym pomysłem jest też skorzystanie z pomocy partnera przy pierwszej wycenie lub użycie dodatkowych narzędzi, które pomogą nam to policzyć.

2. Istnieją Zniżki, Ale Musisz Je Zrozumieć

AWS ma instancje Spot i Reserved. Google Cloud Platform ma Committed Use Discounts i Preemptible VMs. Microsoft Azure usdostępnił w portalu opcję Hybrid Use Benefit z programu Software Assurance.

Każdy z tych programów działa inaczej i dodatkowo wpływa na sposób projektowania środowiska. Dla przykładu instancje Spot i Preemptible VMs mogą „zniknąć” z Twojej infrastruktury… i jest to „by design”.

Różnice cen są astronomiczne. Przykład -> Instancja m4.large -> region: IRLANDIA.

  • Standard – $0.119 za godzinę
  • Reserved – $0.075 za godzinę (Prawie 2 razy mniej niż Standard)
  • Spot – $0.0172 za godzinę (Prawie 7 razy mniej niż Standard)

Warto przy wyliczeniach poznać te modele i dowiedzieć się kiedy możemy ich używać i jakie ograniczenia nam dają.

3. Koszt Transferu Zabija Wiele Projektów

Jeden z najczęściej pomijanych kosztów przy projektach, a liczący się zawsze. Wpływa na koszty szczególnie przy aplikacjach internetowych, gdzie z naszego środowiska w chmurze pobierane są dane.

W CHMURZE PŁACIMY ZA RUCH WYCHODZĄCY (w większości środowisk).

Spójrzmy na ceny ruchu wychodzącego w Azure.

  • 100 GB – $8.27
  • 1 TB – $88.65
  • 10 TB – $890.45

Jak często widzę projekty, w których wysyła się więcej niż 10 TB? CZĘSTO. Brak uwzględniania tego w kosztach to strzał w kolano… swojej firmie i sobie.

4. Koszt Transferu Można Zmniejszać

Jednym z najczęściej używanym sposobem na zmniejszenie kosztów, który warto wziąć pod uwagę na początku wyliczania projektu, to używanie Content Delivery Network.

AWS ma CloudFront, Azure ma Azure CDN, Google ma Google Cloud CDN Interconnect oraz Google Cloud CDN. Dodatkowo są rozwiązania zewnętrzne, np. często używany w Polsce CloudFlare, który posiada opcję bezpłatną.

Dzięki CDN możesz obniżyć koszta transferu (pliki statyczne będą serwowane z CDN) oraz dodatkowo polepszyć szybkość działania Twojego serwisu -> Klient z Australii nie będzie pobierał plików z serwra z Irlandii, tylko z końcówki CDN z Sydney (o ile to dobrze skonfigurujemy).

Przygotowałem krótki opis funkcjonalności CloudFlare.

5. Nie Wszystko Musi Działać Cały Czas

Jednym z największych problemów przy wycenach rozwiązania w chmurze jest zakładanie, że wszystko musi działać cały czas. Zapominamy o jednej z podstawowych charakterystyk chmury – Rapid Elasticity, czyli możliwość dynamiznego dodawania i usuwania zasobów.

Twoja wirtualna maszyna nie musi działać cały czas. Twój system może w chwili X mieć 1 jednostkę mocy obliczeniowej, w chwili Y może mieć tych jednostek 10.

Mało jest natomiast przypadków, aby mieć cały czas 10.

W tym przypadku przestajemy myślec o prawdziwej chmurze, a myślimy o chmurze jako o hostingu.

Elastyczność i wiedza, że w chmurze możemy liczyć koszta godzinowo (AWS) lub nawet minutowo (Gogole Cloud i Azure). Mi jest bliżej do rozmowy o chmurze na przykładzie 2-gim na obrazku poniżej.

6. Storage vs. Storage

Storage obiektowy jest kolejną najczęściej używaną usługą w chmurze. AWS S3, Azure Storage, Google Cloud Storage.

Płacimy głównie za ilość przechowywanych danych.

  • AWS S3 – $0.023 per GB
  • Azure Storage – $0.022 per GB
  • Google Cloud Stroage – $0.02 per GB

Ceny z Europy 8 maja 2017.

Mając 100 TB danych w jednej z chmur, płacimy miesięcznie $2000. Spora suma. Załóżmy, że trzymamy tam archiwa. Czy można to zmniejszyć?

Każdy z dostawców ma kilka poziomów storage. Te które mogą nas interesować to opcję z zmniejszonym czasem dostępu lub płatnym odczytem. Opcje cenowe przedstawione powyżej dotyczą przechowywania danych, do których mamy dostęp 24h na dobę i za ten dostęp nie płacimy.

Dostawcy dodali do swojej oferty rozwiązania, które są tańsze, ale nie wymagaja dostępu do danych od razu, gdy przychodzi zapytanie – rozwiązania idealne do backup/archiwizacja, gdzie nie sięgamy po dane tak często.

  • AWS Storage Standard – Infrequent Access Storage – $0.0125 per GB
  • AWS Glacier – $0.004 per GB
  • Azure Storage LRS-COOL – $0.01 per GB
  • Google Cloud Nearline Storage – $0.01 per GB
  • Google Cloud Coldline Storage – $0.007 per GB

Oczywiście dochodzą dodatkowe koszta, jak np. za więcej niż jeden odczyt w ciągu miesiąca, ale dla części zastosowań można łatwo obniżyć koszta o tysiące dolarów.

Warto wiedzieć jak często potrzebujemy dostępu do danych i na bazie tego zbudować politykę przenoszenia danych z jednego rodzaju storage do drugiego. Część dostawców ma wbudowane narzędzia do tego zadania.

Podsumowanie

Chmura jest i będzie ciężka do policzenia. Wymaga to doświadczenia, a jeszcze lepiej doświadczenia i narzędzi. 16.05.2017 będę brał udział w webinarze o tym jak wykorzystać PyraCloud do lepszego liczenia kosztów i analizowania tego co mamy w tej chwili. Na webinarze będzie rozdawany dostęp do narzędzia, które już trochę pokazywałem na moim kanale YouTube!

Klikając na link poniżej będziesz mógł się zapisać. WARTO!

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.