비셉이란?
푸른 이두근
Azure Bicep은 Azure 리소스를 선언적으로 배포하기 위한 새로운 DSL(도메인 특정 언어)입니다. Bicep은 범용 프로그래밍 언어가 아니라
Azure Resource Manager
(ARM) 템플릿에 대한 투명한 추상화입니다. 이렇게 하면 ARM 템플릿에서 합법적인 속성이 Bicep에서도 유효합니다.Bicep의 이점
Bicep은 다음과 같은 이점을 제공합니다.
왜 Bicep?
ARM 템플릿은 Azure 인프라 및 구성을 정의하는 선언적 방법을 제공하는 JSON 문서입니다. ARM 템플릿 언어는 루프와 같은 내장 함수 및 기타 언어 구성을 제공하며 더 큰 동적 인프라 정의를 만드는 데 도움이 됩니다.
그러나 ARM 템플릿의 JSON 구문은 파일을 상당히 장황하게 만들고 JSON 통계 표현 내에서 지원되는 것을 재생해야 한다는 사실 때문에 확장성을 제한합니다.
인프라의 복잡성이 증가함에 따라 ARM 템플릿은 거의 읽을 수 없고 유지 관리도 어려워집니다. ARM 템플릿 배포에 대한 선택 사항이 있습니다. 특히 HashiCorp Terraform 또는 Pulumi SDK. 이러한 도구는 ARM 템플릿을 사용하지 않지만 인프라를 코드로 설명하는 대체 방법을 제공합니다.
complexity of the infrastructure
로 인해 템플릿을 유지하기가 어렵습니다. 템플릿을 배포하는 다른 방법이 있습니다. 특히 Pulumi SDK 또는 HashiCorp Terraform. 이러한 도구는 템플릿을 사용하지 않지만 대신 인프라를 코드로 정의하는 대체 방법을 제공합니다.Bicep 파일과 동등한 템플릿 간에는 차이가 있습니다. 저장소 계정을 배포하는 두 가지 예가 있습니다.
다음 예제는 Bicep 파일과 동등한 JSON 템플릿 간의 차이점을 보여줍니다. 두 예제 모두 저장소 계정을 설정합니다.
param storageAccountName string
param accessTier string = 'Hot'
param location string = 'WestUS2'
resource sa 'Microsoft.Storage/storageAccounts@2019-06-01' = {
name: storageAccountName
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'StorageV2'
properties: {
accessTier: accessTier
}
}
위 인스턴스의 26개 추적은 Azure 저장소 계정을 프로비저닝하기 위해 ARM 템플릿을 생성할 수 있는 재사용 가능한 Bicep 파일을 만드는 데 필요한 것입니다. 이것은 컴파일될 때 다음 ARM 템플릿을 생성합니다.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageAccountName": {
"type": "string"
},
"accessTier": {
"type": "string",
"defaultValue": "Hot"
},
"location": {
"type": "string",
"defaultValue": "WestUS2"
}
},
"functions": [],
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"apiVersion": "2019-06-01",
"name": "[parameters('storageAccountName')]",
"location": "[parameters('location')]",
"sku": {
"name": "Standard_LRS"
},
"kind": "StorageV2",
"properties": {
"accessTier": "Hot"
}
}
],
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.3.126.58533",
"templateHash": "6796585337478950038"
}
}
}
생성된 템플릿은 Bicep 파일 측정값의 거의 두 배입니다. 이 ARM 템플릿은 중요한 매개 변수 값을 다른 JSON으로 제공하거나 Azure CLI 또는 Azure PowerShell을 사용할 때 명령줄에서 배포할 수 있습니다.
이것은 ARM 템플릿을 생성하기 위해 자체 언어로 가지고 있는 유연성을 제안하는 인스턴스입니다. 이제 Bicep은 기존 프로그래밍 언어의 구성뿐 아니라 Azure 인프라 정의를 재사용 가능한 더 작은 모듈로 구성하는 방법도 제시합니다.
제 글을 끝까지 읽어주셔서 감사합니다. 오늘 뭔가 독특한 것을 깨달았기를 바랍니다. 이 기사가 마음에 드셨다면 친구들과 공유해 주시고 저와 공유할 제안이나 생각이 있으시면 댓글 상자에 적어주세요.
Reference
이 문제에 관하여(비셉이란?), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/kcdchennai/introduction-to-azure-bicep-407i텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)