Как включить виртуальную машину в лазурной?
Название говорит само за себя. Я перепробовал много вещей, но не думаю, что что-то из них стоит упоминать. Я наконец-то решил избежать Microsoft.WindowsAzure и установил библиотеки Microsoft.Azure.Management.Compute и Microsoft.Azure.Common.
Наконец-то у меня есть токен аутентификации:
var authenticationContext = new AuthenticationContext("https://login.windows.net/deadbeef-beef-beef-beef-ec74557498e8");
var credential = new ClientCredential("beefbeef-beef-beef-beef-b1d3cf5d037d", "passwordpasswordpasswordpasswordpasswordpas=");
var result = authenticationContext.AcquireTokenAsync("https://www.url.com/servicename", credential);
Но сейчас я пытаюсь использовать документацию, чтобы научиться включать мои виртуальные машины. Я даже не знаю точно, с чего начать. Все, что я знаю, это то, что я хотел бы избежать API REST и сохранить свой код на C#. Я ищу что-то вроде:
using (var client = new ComputeManagementClient(creds)) {
foreach (var vm in client.VMs)
{
Console.WriteLine("Starting VM: {0}", vm.Name);
vm.PowerOn();
}
}
1 ответ
Предполагая, что вы имеете дело с виртуальными машинами на основе ARM, вот код для их запуска. "context" - это ComputeManagementClient в пространстве имен Microsoft.Azure.Management.Compute.
var result = VirtualMachinesOperationsExtensions.Start(context.VirtualMachines, azureResourceGroup, azureResourceName);
Если вы имеете дело с классическими виртуальными машинами, вот код для их запуска. "context" - это ComputeManagementClient в пространстве имен Microsoft.WindowsAzure.Management.Compute.
var result = context.VirtualMachines.BeginStarting(serviceName, deploymentName,
instanceName);
Вы также можете избежать всех проблем, связанных с написанием собственного кода и его мониторингом, следя за тем, чтобы он работал правильно, и использовать CloudMonix для планирования запуска и завершения работы ваших виртуальных машин Azure. (Я связан с сервисом)