Audyt kosztów AWS. Ile możesz oszczędzić i na czym.
Audyt kosztów AWS w stałej cenie pakietu. Dostajesz listę zmian z kwotą oszczędności przy każdej pozycji, a do konta potrzebuję tylko dostępu do odczytu.
Albo napisz na przemek@codelevel.pl.
Odpowiadam w ciągu 1 dnia roboczego.
Skąd się biorą nadwyżki
Najczęściej płacisz za zasoby, których nikt już nie używa, za maszyny większe, niż wymaga ruch, i za dane przechowywane w najdroższej klasie. Do tego dochodzi brak Savings Plans przy stałym obciążeniu i transfer, którego nikt nie liczył przy projektowaniu.
Co sprawdzam
- Największe pozycje na rachunku: EC2, RDS, EBS, S3, transfer, NAT Gateway, CloudWatch.
- Rozmiar i typ instancji względem rzeczywistego obciążenia, w tym przejście na Graviton.
- Savings Plans i instancje zarezerwowane: ile warto kupić, żeby nie przepłacić za zapas.
- Nieużywane wolumeny, snapshoty, adresy IP i środowiska testowe działające w nocy.
- Tagi, budżety i alerty kosztów, żeby rachunek nie wracał do poprzedniego poziomu.
Co dostajesz
Raport z listą zmian i kwotą oszczędności przy każdej, podzielony na zmiany bez ingerencji w kod i te, które wymagają pracy zespołu. Omawiam go z Tobą na rozmowie. Jeśli chcesz, wdrażam zmiany sam, w Terraform.
Metoda pochodzi z optymalizacji dwóch platform SaaS z realizacji: Savings Plans, rightsizing i Graviton.
Zanim do mnie napiszesz, możesz przeczytać cały przykładowy raport, także jako PDF. Dane w nim są przykładowe i nie pochodzą od żadnego klienta, ale układ i poziom szczegółów są takie jak w prawdziwym raporcie. Wynik z przykładu nie zapowiada wyniku Twojego audytu. Kwota oszczędności zależy od Twojego konta.
Możesz też wczytać eksport z Cost Explorer do analizy CSV. Pokaże podział rachunku i typowe sygnały oszczędności, a plik nie opuści Twojej przeglądarki. To szybki podgląd, nie audyt.
Nie wiesz jeszcze, czy audyt ma sens? Odpowiedz na 8 pytań o Twój rachunek. Wynik zobaczysz od razu, bez podawania e-maila.
Gwarancja
Jeśli suma rocznych oszczędności wskazanych w raporcie będzie niższa niż cena audytu, zwracam całą zapłaconą kwotę. Dotyczy rachunków AWS od 3 000 zł netto miesięcznie. Jak liczę oszczędności i jak zgłosić zwrot: warunki w cenniku.
Pakiety audytu
Pakiet zależy od wielkości rachunku i liczby kont. Audyty S i M mają stałą cenę za zakres opisany przy pakiecie, audyt L wyceniam po krótkiej rozmowie.
Audyt S
2 900 zł
rachunek AWS do 10 000 zł miesięcznie, jedno konto
5 dni roboczych
- 8–10 największych pozycji kosztowych
- raport z kwotą oszczędności przy każdej rekomendacji
- 60 minut omówienia wyników
- 14 dni na pytania mailem
Audyt M
4 900 zł
rachunek 10–30 tys. zł miesięcznie, do trzech kont (także w AWS Organizations)
7–10 dni roboczych
- wszystko z audytu S
- każda usługa powyżej 3% rachunku
- Savings Plans i instancje zarezerwowane, EKS jeśli jest
- porównanie z Hetzner lub OVH dla 1–2 komponentów
Audyt L
wycena
powyżej 30 tys. zł miesięcznie albo więcej niż trzy konta
2–3 tygodnie
- pełny zakres, wycena po krótkiej rozmowie
Jak przebiega audyt
Dzień 0
Piszesz
Kilka zdań i przybliżony miesięczny rachunek. Odpisuję z pytaniami i propozycją pakietu.
Dzień 1
Umowa i dostęp
Umowa z ceną pakietu i NDA, jeśli chcesz. Tworzysz rolę tylko do odczytu z polityką poniżej: kilka minut w konsoli albo w Terraformie.
S: 5 dni roboczych, M: 7–10 dni roboczych, L: 2–3 tygodnie
Audyt
Czytam rachunek, metryki i konfigurację zasobów. Niczego na koncie nie zmieniam. Czas liczę od otrzymania dostępu.
Koniec audytu
Raport i omówienie
Raport z kwotą oszczędności przy każdej zmianie i 60 minut omówienia. Przez 14 dni odpowiadam na pytania mailem.
Po omówieniu
Odbierasz dostęp
Usuwasz rolę. Zmiany z raportu wdrażasz sam albo z zespołem. Możesz też zlecić je mnie, wtedy wprowadzam je w Terraformie.
Dostęp: tylko odczyt, bez Twoich danych
Zarządzana polityka ReadOnlyAccess pozwala czytać obiekty w S3, logi i dane w bazach. Do audytu kosztów tego nie potrzebuję, więc proszę o węższą politykę: odczyt rozliczeń i Cost Explorer, metryki CloudWatch oraz opis zasobów. Nie ma w niej s3:GetObject, odczytu logów, sekretów ani danych z DynamoDB.
- Politykę przypinasz do roli, z której korzysta moje konto AWS (z ExternalId, który podam w mailu), albo do imiennego użytkownika z MFA. Jak wolisz.
- Przy AWS Organizations rolę zakładasz w koncie zarządzającym, bo tam jest cały rachunek i Savings Plans, oraz w kontach z zasobami. Przygotuję do tego StackSet albo moduł Terraform.
- Wywołania API z tej roli widzisz w historii zdarzeń CloudTrail.
- Konfiguracji funkcji Lambda i definicji zadań ECS nie czytam, bo trzymają zmienne środowiskowe. Ich koszt widać w Cost Explorer i w metrykach.
- Jeśli coś wymaga logów, na przykład VPC Flow Logs, daję Twojemu zespołowi gotowe zapytanie, a Ty odsyłasz mi sam wynik.
- Jeśli masz eksport CUR 2.0 (Data Exports), nie czytam go z Twojego S3. Przy audycie L proszę o eksport pliku za 3 miesiące albo o osobną, jednorazową rolę tylko do bucketu z CUR.
- Dzień wcześniej włącz Cost Explorer, Compute Optimizer i Cost Optimization Hub (wszystkie są bezpłatne). Moja rola tylko czyta, więc sama ich nie włączy. Pierwsze dane pojawiają się w ciągu ok. 24 godzin.
- AWS liczy 0,01 USD za każde zapytanie do Cost Explorer API. Przy audycie to zwykle kilka dolarów na Twoim rachunku.
- Po omówieniu raportu usuwasz rolę albo użytkownika i na tym kończy się mój dostęp.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "BillingAndCostRead",
"Effect": "Allow",
"Action": [
"ce:Describe*",
"ce:Get*",
"ce:List*",
"cur:DescribeReportDefinitions",
"bcm-data-exports:GetExport",
"bcm-data-exports:ListExports",
"billing:GetBillingData",
"billing:GetBillingDetails",
"billing:GetCredits",
"budgets:ViewBudget",
"savingsplans:Describe*",
"compute-optimizer:Describe*",
"compute-optimizer:Get*",
"cost-optimization-hub:Get*",
"cost-optimization-hub:List*",
"organizations:Describe*",
"organizations:List*",
"pricing:DescribeServices",
"pricing:GetAttributeValues",
"pricing:GetProducts"
],
"Resource": "*"
},
{
"Sid": "DescribeResourcesNoData",
"Effect": "Allow",
"Action": [
"ec2:Describe*",
"autoscaling:Describe*",
"elasticloadbalancing:Describe*",
"rds:Describe*",
"rds:ListTagsForResource",
"elasticache:Describe*",
"es:Describe*",
"es:ListDomainNames",
"eks:Describe*",
"eks:List*",
"ecs:DescribeClusters",
"ecs:DescribeServices",
"ecs:ListClusters",
"ecs:ListServices",
"ecr:DescribeRepositories",
"elasticfilesystem:DescribeFileSystems",
"dynamodb:DescribeTable",
"dynamodb:ListTables",
"cloudfront:ListDistributions",
"s3:GetBucketLocation",
"s3:GetBucketTagging",
"s3:GetBucketVersioning",
"s3:GetIntelligentTieringConfiguration",
"s3:GetLifecycleConfiguration",
"s3:ListAllMyBuckets",
"cloudwatch:DescribeAlarms",
"cloudwatch:GetMetricData",
"cloudwatch:GetMetricStatistics",
"cloudwatch:ListMetrics",
"logs:DescribeLogGroups",
"tag:GetResources"
],
"Resource": "*"
},
{
"Sid": "NoDataNoSecrets",
"Effect": "Deny",
"Action": [
"s3:GetObject*",
"dynamodb:BatchGetItem",
"dynamodb:GetItem",
"dynamodb:Query",
"dynamodb:Scan",
"logs:FilterLogEvents",
"logs:GetLogEvents",
"logs:StartQuery",
"rds:DownloadDBLogFilePortion",
"secretsmanager:GetSecretValue",
"ssm:GetParameter*",
"ec2:DescribeInstanceAttribute",
"ec2:DescribeLaunchTemplateVersions",
"autoscaling:DescribeLaunchConfigurations",
"ec2:DescribeSpotInstanceRequests",
"ec2:DescribeSpotFleetRequests",
"lambda:GetFunction*",
"ecs:DescribeTaskDefinition"
],
"Resource": "*"
}
]
}Wyślij mi swój rachunek AWS
W ciągu 2 dni roboczych odpiszę z 3 obserwacjami.
Dostęp do konta nie jest potrzebny. Wystarczy PDF faktury z konsoli albo eksport z Cost Explorer za ostatnie 3 miesiące.
Plik czytam tylko ja i nie wklejam go do narzędzi AI. Usuwam go na Twoją prośbę, najpóźniej po 12 miesiącach.
Pytania o audyt
Dlaczego rachunek za AWS rośnie, choć ruch się nie zmienia?
Część kosztów rośnie z czasem, niezależnie od ruchu. Grupy logów w CloudWatch domyślnie nie wygasają, a stare snapshoty, wolne adresy IP i load balancery bez ruchu kosztują co miesiąc, dopóki ktoś ich nie usunie. Do tego dochodzi NAT Gateway, który liczy każdy gigabajt, także ruch do S3 w tym samym regionie, jeśli nie ma endpointu VPC. Na początek wczytaj eksport z Cost Explorer do analizy CSV: pokaże podział rachunku i typowe sygnały oszczędności. Audyt pokaże, ile z tego da się odzyskać.
Analiza CSV z Cost Explorer, plik nie opuszcza przeglądarki
Link do tego pytania: Dlaczego rachunek za AWS rośnie, choć ruch się nie zmienia?Czy muszę dawać dostęp do konta?
Do audytu tak, ale tylko do odczytu i bez dostępu do Twoich danych: politykę IAM pokazuję wyżej. Bez dostępu mogę spojrzeć na eksport z Cost Explorer, ale to szybki podgląd, nie audyt: z samego rachunku nie widać, jak obciążone są serwery.
Link do tego pytania: Czy muszę dawać dostęp do konta?Czy coś zmieniasz na koncie w trakcie audytu?
Nie. Polityka pozwala tylko czytać. Zmiany z raportu wdrażasz sam albo zlecasz mi je osobno, po omówieniu.
Link do tego pytania: Czy coś zmieniasz na koncie w trakcie audytu?Który pakiet wybrać?
Audyt S: rachunek AWS do 10 000 zł miesięcznie, jedno konto. Audyt M: rachunek 10–30 tys. zł miesięcznie, do trzech kont (także w AWS Organizations). Audyt L: powyżej 30 tys. zł miesięcznie albo więcej niż trzy konta. Jeśli nie wiesz, napisz, ile płacisz miesięcznie, a podpowiem.
Link do tego pytania: Który pakiet wybrać?Czy audyt ma sens przy rachunku około 5 000 zł miesięcznie?
Tak, na taki rachunek jest audyt S: rachunek AWS do 10 000 zł miesięcznie, jedno konto, 2 900 zł netto. Jeśli suma rocznych oszczędności wskazanych w raporcie będzie niższa niż cena audytu, zwrócę całą zapłaconą kwotę. Gwarancja dotyczy rachunków od 3 000 zł netto miesięcznie. Przy mniejszym rachunku zacznij od bezpłatnej analizy CSV z Cost Explorer: pokaże, czy jest czego szukać.
Link do tego pytania: Czy audyt ma sens przy rachunku około 5 000 zł miesięcznie?Ile trwa audyt?
Audyt S trwa 5 dni roboczych, M 7–10 dni roboczych, L 2–3 tygodnie. Czas liczę od otrzymania dostępu. Potem dostajesz raport i 60 minut omówienia.
Link do tego pytania: Ile trwa audyt?Mam kilka kont AWS. Czy audyt je obejmie?
Tak. O pakiecie decyduje liczba kont i wysokość rachunku: audyt S obejmuje jedno konto, M do trzech, L więcej. Przy AWS Organizations rolę zakładasz w koncie zarządzającym, bo tam jest cały rachunek i Savings Plans, oraz w kontach z zasobami. Przygotuję do tego StackSet albo moduł Terraform.
Link do tego pytania: Mam kilka kont AWS. Czy audyt je obejmie?Czy podpiszesz NDA?
Tak, przed pierwszą rozmową: Twoje albo moje. Bez Twojej zgody nie opisuję Twojej firmy w realizacjach.
Link do tego pytania: Czy podpiszesz NDA?Co jeśli audyt nie znajdzie oszczędności?
Jeśli suma rocznych oszczędności wskazanych w raporcie będzie niższa niż cena audytu, zwrócę całą zapłaconą kwotę. Dotyczy rachunków AWS od 3 000 zł netto miesięcznie i nie wymaga niczego wdrażać. Pełne warunki są w cenniku.
Link do tego pytania: Co jeśli audyt nie znajdzie oszczędności?Czy wystawiasz fakturę VAT?
Tak. Pracuję tylko z firmami. Firmom z Polski doliczam 23% VAT. Firma z innego kraju Unii, z aktywnym numerem VAT w VIES, dostaje fakturę z adnotacją „odwrotne obciążenie”.
Link do tego pytania: Czy wystawiasz fakturę VAT?Wpisy na ten temat
Zacznij od jednego maila
Napisz, ile płacisz miesięcznie za AWS i co rośnie najszybciej. Odpiszę, który pakiet pasuje i kiedy mogę zacząć.
Albo napisz na przemek@codelevel.pl.
Odpowiadam w ciągu 1 dnia roboczego.
Z realizacji: platforma SaaS po przebudowie płaci za AWS o 30% mniej niż na pierwotnej infrastrukturze. Zobacz realizację