Walidator szablonów CloudFormation
Sprawdź poprawność szablonu AWS CloudFormation: składnia JSON/YAML, struktura zasobów, referencje i polityki IAM. Bez konta AWS. Bezpłatnie.
-
1Wprowadź dane
Wpisz treść, wklej tekst lub załaduj plik z dysku. -
2Kliknij przycisk
Narzędzie natychmiast przetworzy Twoje dane w przeglądarce. -
3Pobierz wynik
Skopiuj gotowy tekst lub zapisz plik na urządzeniu.
return "Wynik gotowy w 0.1s";
}
Oceń to narzędzie:
Powiązane narzędzia
Inne narzędzia, które mogą Ci się przydaćWalidator szablonów CloudFormation – błędy przed deploymentem
Błędny szablon CloudFormation wykryty dopiero podczas deploymentu oznacza rollback i stratę czasu. Narzędzie waliduje składnię, strukturę i referencje szablonu AWS CloudFormation (JSON lub YAML) przed wgraniem do AWS – bez dostępu do konta AWS.
Struktura szablonu CloudFormation
AWSTemplateFormatVersion: "2010-09-09". Description: opis szablonu. Parameters: parametry wejściowe. Mappings: statyczne mapowania. Conditions: warunki logiczne. Resources: WYMAGANE, zasoby AWS (EC2, S3, Lambda, RDS...). Outputs: wartości eksportowane (ARN, URL). Transform: makra (SAM, LanguageExtensions).
Walidacja struktury i referencji
Wymagane sekcje: Resources. Nieprawidłowe typy zasobów: AWS::EC2::Instancee (literówka). Referencje: Ref i !GetAtt do nieistniejących zasobów. Circular dependencies: cykl zależności między zasobami. Limit zasobów: 500 na stos. Parametry: typ String/Number/List/SSM. DependsOn: odwołanie do niezdefiniowanego.
Typowe błędy w szablonach
Brak wymaganego pola (Properties.ImageId dla EC2). Wartość nie w dozwolonym typie (String zamiast Number). Nieprawidłowe wartości enum (np. InstanceType: t2.micro-wrong). Referencja Ref: do niezdefiniowanego parametru lub zasobu. !GetAtt z nieistniejącym atrybutem. YAML indentacja.
SAM i makra Transform
AWS SAM (Serverless Application Model): Transform: AWS::Serverless-2016-10-31. Dodaje zasoby uproszczone: AWS::Serverless::Function (zamiast AWS::Lambda::Function + Role + Permission). Narzędzie rozumie SAM syntax. CDK output: synth generuje CloudFormation JSON – narzędzie może walidować też CDK output.
Najczęstsze pytania
Jakie są alternatywy dla CloudFormation?
AWS CDK (Cloud Development Kit): definiuj infrastrukturę w TypeScript/Python/Java – generuje CloudFormation. Terraform: multi-cloud IaC, HCL syntax. Pulumi: kod aplikacji (TypeScript, Python) jako IaC. CDK jest rekomendowany przez AWS dla nowych projektów – lepsza DX niż raw CloudFormation.
Jak testować szablony CloudFormation lokalnie?
aws cloudformation validate-template --template-body file://template.yaml (wymaga AWS CLI). cfn-lint: open-source linter dla CloudFormation (poza walidacją składni: sprawdza typy zasobów, wymaga AWS SAR). TaskCat: testuje deployment na wielu regionach AWS.
Ile zasobów może mieć stos CloudFormation?
Maksymalnie 500 zasobów na stos. Dla większych systemów: nested stacks (AWS::CloudFormation::Stack), StackSets (multi-account/region), lub podział na warstwy (networking, database, application jako osobne stosy). Ograniczenie rozmiaru szablonu: 51 200 bajtów (direct) lub 460 800 bajtów (S3).
Co to jest CloudFormation Drift Detection?
Drift: różnica między stanem szablonu a faktycznym stanem zasobu AWS (np. ktoś ręcznie zmienił security group). Drift detection: CloudFormation porównuje aktualny stan z oczekiwanym. Wynik: IN_SYNC lub DRIFTED z listą zmian. Używaj regularnie do wykrywania nieautoryzowanych zmian.
Jak zarządzać secretami w CloudFormation?
NIE wpisuj secretów (hasła, klucze API) bezpośrednio. AWS SSM Parameter Store: Type: AWS::SSM::Parameter::Value
Powiązane narzedzia: walidator YAML, generator GitLab CI/CD i formater JSON API.