2016-12-01 1 views
1

내가 만든 각 가상 컴퓨터에 대해 내 ARM 템플릿에서 고유 한 해시를 생성해야합니다. 현재 공유 이미지를 사용하고있는 것과 동일한 리소스 그룹에 모든 가상 컴퓨터를 배포하고 있습니다. 이로 인해 현재 리소스 그룹 내의 각 배포마다 고유 한 이름 해시를 생성 할 방법을 찾지 못해서 문제가 발생합니다.ARM 템플릿 배포 당 고유 문자열

현재 고유 이름을 생성하는 데이 방법을 사용하고 있지만 이는 내부 자원 그룹에서만 작동합니다. "unique_string": "[uniqueString(resourceGroup().id]",

배포 된 인스턴스별로이 작업을 수행 할 수있는 방법이 있습니까?

답변

1

글쎄, 일반적으로 어떻게 배치했는지에 따라 다릅니다. 하지만 copyindex 함수 (link)를 사용할 수 있습니다.
당신은 [uniqueString(resourceGroup().id, variables('vm1Name'))] 또는 [uniqueString(deployment().name, parameters('vm1Name'))] 같은 것을 사용할 수 있습니다 (그래서 당신이 작성하는 모든 배포 고유합니다.

+0

내가 정말 필요한 것은 완전히이다 자동으로이 inbetween 배치를 수행하는 방법입니다. 나는 copyIndex 함수를 reasearched 및 다른 인덱스를 사용하여 배포해야하는 몇 가지 리소스가있는 경우 인덱스를 단계 "1"배포 중에 사용할 수있는 이해에서. 내 지원하지 않습니다. usecase 그러나 날짜 또는 시간 함수가 최적 일이 될 것이지만 나는 그러한 것을 발견하지 못했습니다. –

+0

날짜 - 시간을 사용할 수 없으면 피드백 포털에서 투표 할 수 있습니다. 또한 deploymentname + something에 문제가 있습니다. 모든 배포에 대해 고유해야합니다. – 4c74356b41

+0

나는 빠르고 간단한 배치를 선호한다. 이름이 매번 독특하다는 것을 확인할 필요가없는 곳. Deployment.name()은 고유하지 않습니다. –

0

을 내가 uniqueString

의 PARAM 태그 사용 태그에 날짜를 넣어
"uri": "[replace(parameters('prebuiltvms')[copyIndex()]['osDiskVhdUri'],'{unique}',uniqueString(parameters('prebuiltvms')[copyIndex()].tags.deploymentDate))]"