Mi az a Bicep?
A Bicep egy tartományspecifikus nyelv (DSL), amely deklaratív szintaxist használ az Azure-erőforrások üzembe helyezéséhez. Egy Bicep-fájlban definiálja az Azure-ban üzembe helyezni kívánt infrastruktúrát, majd ezt a fájlt használja a fejlesztési életciklus során az infrastruktúra ismételt üzembe helyezéséhez. Az erőforrások üzembe helyezése konzisztens módon történjen.
A Bicep tömör szintaxist, megbízható típusbiztonságot és a kód újrafelhasználásának támogatását biztosítja. A Bicep első osztályú szerzői élményt nyújt az Azure-beli infrastruktúra-kódmegoldásokhoz .
A Bicep előnyei
A Bicep a következő előnyöket nyújtja:
Az összes erőforrástípus és API-verzió támogatása: A Bicep azonnal támogatja az Azure-szolgáltatások összes előzetes és ga verzióját. Amint egy erőforrás-szolgáltató új erőforrástípusokat és API-verziókat vezet be, használhatja őket a Bicep-fájlban. Az új szolgáltatások használata előtt nem kell megvárnia az eszközök frissítését.
Egyszerű szintaxis: A megfelelő JSON-sablonnal összehasonlítva a Bicep-fájlok tömörebbek és könnyebben olvashatók. A Bicep nem igényel korábbi programozási nyelvtudást. A Bicep szintaxis deklaratív, és meghatározza, hogy mely erőforrásokat és erőforrástulajdonságokat szeretné üzembe helyezni.
Az alábbi példák a Bicep-fájl és az azzal egyenértékű JSON-sablon közötti különbséget mutatják be. Mindkét példa egy tárfiókot helyez üzembe.
param location string = resourceGroup().location param storageAccountName string = 'toylaunch${uniqueString(resourceGroup().id)}' resource storageAccount 'Microsoft.Storage/storageAccounts@2021-06-01' = { name: storageAccountName location: location sku: { name: 'Standard_LRS' } kind: 'StorageV2' properties: { accessTier: 'Hot' } }
Szerzői élmény: Ha a VS Code-hoz készült Bicep-bővítményt használja a Bicep-fájlok létrehozásához, első osztályú szerzői élményt kap. A szerkesztő gazdag típusbiztonságot, intellisense-t és szintaxis-ellenőrzést biztosít.
Bicep-fájlokat a Visual Studio Bicep-bővítményével is létrehozhat a Visual Studióban.
Megismételhető eredmények: Az infrastruktúra ismételt üzembe helyezése a fejlesztési életciklus során, és bízik abban, hogy az erőforrások konzisztens módon vannak üzembe helyezve. A Bicep-fájlok idempotensek, ami azt jelenti, hogy ugyanazt a fájlt többször is üzembe helyezheti, és ugyanabban az állapotban ugyanazokat az erőforrástípusokat szerezheti be. Létrehozhat egy fájlt, amely a kívánt állapotot képviseli, ahelyett, hogy sok különálló fájlt fejlesztenél a frissítések megjelenítéséhez.
Vezénylés: Nem kell aggódnia a rendelési műveletek összetettsége miatt. A Resource Manager koordinálja az egymástól függő erőforrások üzembe helyezését, hogy azok a megfelelő sorrendben legyenek létrehozva. Ha lehetséges, a Resource Manager párhuzamosan helyezi üzembe az erőforrásokat, így az üzemelő példányok gyorsabban fejeződnek be, mint a soros üzemelő példányok. A fájlt egyetlen paranccsal helyezheti üzembe, nem pedig több imperatív parancson keresztül.
Modularitás: A Bicep-kódot modulokkal kezelhető részekre bonthatja. A modul egy kapcsolódó erőforráskészletet helyez üzembe. A modulok lehetővé teszik a kód újrafelhasználását és a fejlesztés egyszerűsítését. Adja hozzá a modult egy Bicep-fájlhoz, amikor telepítenie kell ezeket az erőforrásokat.
Integráció az Azure-szolgáltatásokkal: A Bicep integrálva van olyan Azure-szolgáltatásokkal, mint az Azure Policy, a sablonspecifikációk és a tervek.
Előzetes módosítások: A lehetőségelemzési művelettel a Bicep-fájl üzembe helyezése előtt lekérheti a módosítások előnézetét. A lehetőséggel láthatja, hogy mely erőforrások lesznek létrehozva, frissítve vagy törölve, valamint a módosítandó erőforrás-tulajdonságok. A lehetőségelemzési művelet ellenőrzi a környezet aktuális állapotát, és nem szükséges kezelni az állapotot.
Nincs kezelendő állapot- vagy állapotfájl: Minden állapot az Azure-ban van tárolva. A felhasználók együttműködhetnek, és biztosak lehetnek abban, hogy a frissítéseket a várt módon kezelik.
Nincs költség és nyílt forráskódú: A Bicep teljesen ingyenes. Nem kell fizetnie a prémium képességekért. Ezt a Microsoft ügyfélszolgálata is támogatja.
Bevezetés
Első lépésként a Bicep:
- Telepítse az eszközöket. Lásd: Bicep-fejlesztési és üzembehelyezési környezetek beállítása. Vagy használhatja a VS Code Devcontainer/Codespaces adattárat egy előre konfigurált szerzői környezet lekéréséhez.
- Végezze el a Bicep rövid útmutatóját és Learn-moduljait.
Egy meglévő ARM-sablon Bicep-be való lebontásához lásd: Az ARM-sablon JSON-ból Bicep-be való lebontása. A Bicep-játszótérrel egymás mellett tekintheti meg a Bicepet és az azzal egyenértékű JSON-t.
A Bicep-fájlban elérhető erőforrásokról további információt a Bicep-erőforrás-referencia című témakörben talál.
A Bicep-példák a Bicep GitHub-adattárban találhatók
Tudnivalók a nyelvről
A Bicep nem általános programozási nyelvként szolgál alkalmazások írásához. A Bicep-fájlok deklarálják az Azure-erőforrásokat és az erőforrás-tulajdonságokat anélkül, hogy programozási parancsokat írnak az erőforrások létrehozásához.
A Bicep-munka állapotának nyomon követéséhez tekintse meg a Bicep-projektadattárat.
A Bicepről az alábbi videóban tájékozódhat.
Az Azure Resource Manager-sablonokat (ARM-sablonokat) JSON helyett a Bicep használatával fejlesztheti. Az ARM-sablon létrehozásához használt JSON-szintaxis részletes lehet, és bonyolult kifejezéseket igényelhet. A Bicep szintaxisa csökkenti ezt az összetettségi elemet, és javítja a fejlesztési élményt. A Bicep egy transzparens absztrakció az ARM-sablon JSON-ján keresztül, és nem veszíti el a JSON-sablon képességeit. Az üzembe helyezés során a Bicep CLI átalakít egy Bicep-fájlt ARM-sablon JSON-fájllá.
Az ARM-sablonban érvényes erőforrástípusok, API-verziók és tulajdonságok bicep-fájlban érvényesek.
A Bicep egyszerűbb és tömörebb szintaxist kínál az egyenértékű JSON-hoz képest. Nem használ szögletes kifejezéseket [...]
. Ehelyett közvetlenül meghívja a függvényeket, és értékeket kér le paraméterekből és változókból. Minden üzembe helyezett erőforrásnak szimbolikus nevet ad, így könnyen hivatkozhat rá a sablonban.
A szintaxis teljes összehasonlítása: A JSON és a Bicep összehasonlítása sablonokhoz.
A Bicep automatikusan kezeli az erőforrások közötti függőségeket. Elkerülheti a beállítást dependsOn
, ha egy erőforrás szimbolikus nevét egy másik erőforrás-deklarációban használja.
A Bicep-fájl szerkezete rugalmasabb, mint a JSON-sablon. A fájlban bárhol deklarálhat paramétereket, változókat és kimeneteket. A JSON-ban deklarálnia kell a sablon megfelelő szakaszaiban lévő összes paramétert, változót és kimenetet.
Következő lépések
Ismerkedés a rövid útmutatóval.
A gyakori kérdésekre a Bicep gyakori kérdései című témakörben talál választ.