2016-06-27 1 views
0

autoscale 수식을 사용하여 풀을 만들 수 있습니다. 이 코드는 다음과 같습니다.풀이 존재하면 Azure Batch autoscale 수식을 업데이트하십시오.

var pool = client.PoolOperations.CreatePool(poolName, vmsize, new CloudServiceConfiguration(osFamily, osVersion)); 
pool.TaskSchedulingPolicy = new TaskSchedulingPolicy(ComputeNodeFillType.Pack); 
pool.AutoScaleFormula = autoscaleFormula; 
pool.AutoScaleEnabled = true; 
pool.AutoScaleEvaluationInterval = new TimeSpan(0, 0, 5, 0); 
pool.Commit(); 

그러나 일단 풀이 존재하면 AutoScale 수식을 업데이트하려고하면 오류가 발생합니다. 이 오류는

가 { "개체가 바운드 상태에서 동안 속성 AutoScaleFormula은 수정할 수 없습니다."}입니다

코드는이 전에 작업하는 데 사용

var client = BatchClient.Open(GetCloudSharedKeyCredentials(primary)); 
var pool = client.PoolOperations.GetPool(poolName);  
pool.AutoScaleFormula = formula; 
pool.AutoScaleEnabled = true; 
pool.AutoScaleEvaluationInterval = new TimeSpan(0, 0, 5, 0); 
pool.Commit(); 

입니다 Azure Batch 라이브러리의 최신 버전으로 업데이트했습니다. Azure Batch에 대한 경험이있는 사람이 있습니까?이 오류가 발생하는 이유는 무엇입니까?

답변

0

직접 PoolOperations.EnableAutoScale 메서드를 사용할 수 있습니다. 예를 들어 다음을 사용할 수 있습니다.

var client = BatchClient.Open(GetCloudSharedKeyCredentials(primary)); 
client.Pooloperations.EnableAutoScale(poolName, formula, TimeSpan.FromMinutes(5));