Udostępnij za pośrednictwem


Co to jest Bicep?

Bicep to język specyficzny dla domeny, który używa składni deklaratywnej do wdrażania zasobów platformy Azure. W pliku Bicep zdefiniujesz infrastrukturę, którą chcesz wdrożyć na platformie Azure, a następnie użyjesz tego pliku w całym cyklu życia programowania w celu wielokrotnego wdrożenia tej infrastruktury. Zasoby są wdrażane w spójny sposób.

Bicep zapewnia zwięzłą składnię, niezawodną kontrolę typów i obsługę ponownego użycia kodu. Bicep oferuje optymalne środowisko tworzenia dla rozwiązań infrastruktury jako kodu na platformie Azure.

Zalety Bicep

Bicep zapewnia następujące korzyści:

  • Obsługa wszystkich typów zasobów i wersji interfejsu API: Bicep natychmiast obsługuje wszystkie wersje zapoznawcze i ogólnie dostępne dla usług platformy Azure. Gdy tylko dostawca zasobów wprowadza nowe typy zasobów i wersje interfejsu API, można ich używać w pliku Bicep. Nie musisz czekać na zaktualizowanie narzędzi przed użyciem nowych usług.

  • Prosta składnia: w porównaniu z równoważnym szablonem JSON pliki Bicep są bardziej zwięzłe i łatwiejsze do odczytania. Bicep nie wymaga wcześniejszej wiedzy na temat języków programowania. Składnia Bicep jest deklaratywna i określa, które zasoby i właściwości zasobów chcesz wdrożyć.

    W poniższych przykładach przedstawiono różnicę między plikiem Bicep a równoważnym szablonem JSON. Oba przykłady wdrażają konto magazynowe:

    param location string = resourceGroup().location
    param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}'
    
    resource storageAccount 'Microsoft.Storage/storageAccounts@2023-05-01' = {
      name: storageAccountName
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
      properties: {
        accessTier: 'Hot'
      }
    }
    

  • Środowisko tworzenia: jeśli używasz rozszerzenia Bicep dla programu VS Code do tworzenia plików Bicep, uzyskasz najwyższej klasy środowisko tworzenia. Edytor zapewnia zaawansowane bezpieczeństwo typów, funkcję IntelliSense i walidację składni.

    Zrzut ekranu podczas tworzenia pliku Bicep w czasie rzeczywistym

    Możesz również utworzyć pliki Bicep w programie Visual Studio za pomocą rozszerzenia Bicep dla programu Visual Studio.

  • Powtarzalne wyniki: Wdróż infrastrukturę w całym cyklu projektowania z pewnością, że zasoby są wdrażane spójnie. Pliki Bicep są idempotentne, co oznacza, że można zainstalować ten sam plik wiele razy i uzyskać te same typy zasobów w tym samym stanie. Można opracować jeden plik, który reprezentuje żądany stan, zamiast opracowywać wiele oddzielnych plików do reprezentowania aktualizacji. Na przykład poniższy plik tworzy konto magazynowe. Jeśli wdrożysz ten szablon i konto storage, gdy określone właściwości już istnieją, zmiany nie zostaną wprowadzone:

    param location string = resourceGroup().location
    
    resource mystore 'Microsoft.Storage/storageAccounts@2023-05-01' = {
      name: 'mystorageaccount'
      location: location
      sku: {
        name: 'Standard_LRS'
      }
      kind: 'StorageV2'
    }
    

  • Orkiestracja: nie musisz martwić się o zawiłości porządkowania operacji. Usługa Azure Resource Manager organizuje wdrażanie współzależnych zasobów, aby były tworzone w odpowiedniej kolejności. Jeśli to możliwe, usługa Resource Manager wdraża zasoby równolegle, co pomaga w szybszym zakończeniu wdrożeń niż wdrożenia szeregowe. Plik jest wdrażany za pomocą jednego, a nie wielu poleceń imperatywnych.

    Diagram porównujący wdrożenie między plikiem Bicep i infrastrukturą jako kodem, który nie jest w szablonie.

  • Modułowość: użyj modułów , aby podzielić kod Bicep na części, którymi można zarządzać. Moduły ułatwiają ponowne używanie kodu i upraszczanie programowania. Moduł wdraża zestaw powiązanych zasobów. Dodaj moduł do pliku Bicep, gdy musisz wdrożyć te zasoby.

  • Integracja z usługami platformy Azure: Bicep integruje się z usługami platformy Azure, takimi jak Azure Policy, specyfikacje szablonu i usługa Azure Blueprints.

  • Podgląd zmian: możesz użyć funkcji co-jeżeli do wyświetlenia podglądu zmian przed wdrożeniem pliku Bicep. Operacja analizy co-jeżeli pokazuje, które zasoby mają zostać utworzone, zaktualizowane lub usunięte, oraz jakie właściwości zasobów zmienić. Sprawdza również bieżący stan środowiska i eliminuje konieczność zarządzania tym stanem.

  • Brak stanów ani plików stanów do zarządzania: platforma Azure przechowuje wszystkie stany. Możesz współpracować z innymi osobami i mieć pewność, że aktualizacje są obsługiwane zgodnie z oczekiwaniami.

  • Bez kosztów i oprogramowania open source: ponieważ Bicep jest bezpłatny, nie płacisz za możliwości premium. Pomoc techniczna Microsoft udziela wsparcia.

Rozpocznij

Aby zacząć korzystać z Bicep:

  1. Zainstaluj narzędzia. Aby uzyskać więcej informacji, zobacz Konfigurowanie środowisk deweloperskich i wdrożeniowych Bicep lub używanie repozytorium devcontainer/Codespaces programu VS Code w celu uzyskania wstępnie skonfigurowanego środowiska tworzenia.

  2. Ukończ moduły Szybki start i Learn dla aplikacji Bicep.

Aby dekompilować istniejący szablon usługi Resource Manager do Bicep, zobacz Decompile a JSON Azure Resource Manager template to Bicep (Dekompiluj szablon usługi Azure Resource Manager w formacie JSON do Bicep). Możesz użyć Bicep Playground , aby wyświetlić Bicep i jego odpowiednik, JSON, obok siebie.

Aby dowiedzieć się o zasobach dostępnych w Twoim pliku Bicep, zobacz Odwołanie do zasobów Bicep.

Przykłady Bicep można znaleźć w repozytorium Bicep na GitHubie.

Informacje o języku

Bicep nie jest przeznaczony jako ogólny język programowania do pisania aplikacji. Plik Bicep deklaruje zasoby i właściwości zasobów platformy Azure bez konieczności pisania sekwencji poleceń programowania w celu ich utworzenia.

Aby śledzić stan pracy Bicep, zobacz repozytorium projektu Bicep.

Aby dowiedzieć się więcej o Bicep, obejrzyj następujący film wideo:

Do tworzenia szablonów usługi Resource Manager można użyć formatu Bicep zamiast JSON. Składnia JSON służąca do tworzenia szablonu usługi Resource Manager może być szczegółowa i wymagać skomplikowanych wyrażeń. Składnia Bicep zmniejsza złożoność i poprawia doświadczenie programistyczne. Bicep to przejrzysta abstrakcja szablonu JSON usługi Resource Manager, która nie traci możliwości szablonu JSON. Podczas wdrażania interfejs wiersza polecenia Bicep konwertuje plik Bicep na szablon JSON usługi Resource Manager.

Typy zasobów, wersje API oraz właściwości, które są prawidłowe w szablonie Resource Manager, są również prawidłowe w pliku Bicep.

Bicep oferuje prostszą i bardziej zwięzłą składnię niż jej odpowiednik, JSON. Nie używasz wyrażeń w nawiasach [...]. Zamiast tego bezpośrednio wywołujesz funkcje i pobierasz wartości z parametrów i zmiennych. Każdy wdrożony zasób ma nazwę symboliczną, co ułatwia odwołowanie się do tego zasobu w szablonie.

Aby uzyskać pełne porównanie składni, zobacz Porównanie kodu JSON i Bicep dla szablonów.

Bicep automatycznie zarządza zależnościami między zasobami. Można uniknąć ustawienia dependsOn , gdy symboliczna nazwa zasobu jest używana w innej deklaracji zasobu.

Struktura pliku Bicep jest bardziej elastyczna niż szablon JSON. Parametry, zmienne i dane wyjściowe można zadeklarować w dowolnym miejscu w pliku. W formacie JSON należy zadeklarować wszystkie parametry, zmienne i dane wyjściowe w odpowiednich sekcjach szablonu.

Uzyskiwanie pomocy technicznej

Poniżej przedstawiono kroki otwierania zgłoszenia pomocy technicznej dla problemów związanych z szablonem Azure Resource Manager (ARM):

  1. Otwórz portal Azure.

  2. Wybierz ikonę Pomoc techniczna i rozwiązywanie problemów w prawym górnym rogu.

  3. W Krótko opisz problem, wprowadź szablon ARM, a następnie wybierz Przejdź.

  4. W której usłudze występuje problem? wybierz pozycję Portal w obszarze Monitorowanie i zarządzanie, a następnie wybierz pozycję Dalej.

  5. Wybierz subskrypcję, a następnie wybierz pozycję Dalej.

  6. Wybierz pozycję Problem z szablonami ARM, a następnie wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający żądanie obsługi szablonu usługi ARM.

Wkład w Bicep

Bicep to projekt otwartoźródłowy. Oznacza to, że możesz przyczynić się do rozwoju Bicep i uczestniczyć w szerszej społeczności Bicep. Typy wkładów obejmują:

  • Szablony szybkiego startu platformy Azure. Przykładowe pliki Bicep i szablony ARM można kontrybuować do repozytorium Szablonów Quickstart Azure. Aby uzyskać więcej informacji, zobacz Przewodnik dotyczący wkładu w szablony szybkiego startu Azure.
  • Dokumentacja. Dokumentacja Bicep jest również otwarta na wkład ze strony użytkowników. Aby uzyskać więcej informacji, zobacz omówienie przewodnika dla współautorów.
  • Urywki. Czy masz ulubiony fragment kodu, z którego myślisz, że społeczność skorzysta? Możesz dodać go do kolekcji fragmentów kodu rozszerzenia programu Visual Studio Code. Aby uzyskać więcej informacji, odnieś się do Współtworzenie Bicep.
  • Zmiany kodu. Jeśli jesteś deweloperem i masz pomysły, które chciałbyś uwzględnić w języku Bicep lub jego narzędziach, możesz zgłosić pull request. Aby uzyskać więcej informacji, odnieś się do Współtworzenie Bicep.

Następne kroki