다음을 통해 공유


Bicep Kubernetes 확장(미리 보기)

Kubernetes 확장을 사용하면 Bicep을 사용하여 Kubernetes 리소스를 직접 만들 수 있습니다. Bicep은 Kubernetes 명령줄 클라이언트(kubectl)Kubernetes 매니페스트 파일을 사용하여 배포할 수 있는 모든 항목을 배포할 수 있습니다.

참고 항목

Kubernetes 확장은 현재 프라이빗 클러스터에 대해 지원되지 않습니다.

resource AKS 'Microsoft.ContainerService/managedClusters@2024-02-01' = {
 ...
 properties: {
  apiServerAccessProfile: {
    enablePrivateCluster: true
  }
 }
}

미리 보기 기능 사용

이 미리 보기 기능은 bicepconfig.json을 구성하여 사용하도록 설정할 수 있습니다.

{
  "experimentalFeaturesEnabled": {
    "extensibility": true
  }
}

Kubernetes 확장 가져오기

Kubernetes 배포에 대한 비밀을 안전하게 전달하려면 Bicep 모듈을 사용하여 Kubernetes 코드를 호출하고 매개 변수를 비밀로 전달해야 합니다. Kubernetes 확장을 가져오려면 확장 문을 사용합니다. 확장을 가져온 후 변수, 매개 변수 및 출력을 사용하는 등 Bicep 모듈 파일을 평소와 같이 리팩터링할 수 있습니다. 계약상, YML의 Kubernetes 매니페스트에는 프로그래밍 기능 지원이 포함되지 않습니다.

다음 샘플에서는 Kubernetes 확장을 가져옵니다.

@secure()
param kubeConfig string

extension kubernetes with {
  namespace: 'default'
  kubeConfig: kubeConfig
} as k8s

다음 샘플에서는 부모 Bicep 파일에서 kubeConfig 값을 전달하는 방법을 보여 줍니다.

resource aks 'Microsoft.ContainerService/managedClusters@2024-08-01' existing = {
  name: 'demoAKSCluster'
}

module kubernetes './kubernetes.bicep' = {
  name: 'buildbicep-deploy'
  params: {
    kubeConfig: aks.listClusterAdminCredential().kubeconfigs[0].value
  }
}

AKS 클러스터는 새 리소스 또는 기존 리소스일 수 있습니다. Visual Studio Code의 Import Kubernetes manifest 명령은 가져오기 코드 조각을 자동으로 추가할 수 있습니다. 자세한 내용은 Kubernetes 매니페스트 가져오기 명령을 참조하세요.

Visual Studio Code 가져오기

Visual Studio Code에서 Kubernetes 매니페스트 파일을 가져와 Bicep 모듈 파일을 만들 수 있습니다. 자세한 내용은 Visual Studio Code를 참조하세요.

다음 단계