0.9.16 • Published 9 years ago

azure-mgmt-compute v0.9.16

Weekly downloads
64
License
-
Repository
github
Last release
9 years ago

Microsoft Azure SDK for Node.js - Compute Management

This project provides a Node.js package that makes it easy to manage Microsoft Azure Virtual Machines and Cloud Services. Right now it supports:

  • Node.js version: 0.6.15 or higher
  • API version: 2013-11-01

Features

  • Manage virtual machine
  • Manage virtual machine OS and data disk
  • Manage virtual machine image
  • Manage deployment
  • Manage cloud service
  • Manage service certificate
  • Get operating systems and operating system families

How to Install

npm install azure-mgmt-compute

How to Use

Authentication

This library support management certificate authentication. To authenticate the library for the REST API calls, you need to

Create the ComputeManagementClient

var fs                = require('fs'),
    computeManagement = require('azure-mgmt-compute');

var computeManagementClient = computeManagement.createComputeManagementClient(computeManagement.createCertificateCloudCredentials({
  subscriptionId: '<your subscription id>',
  pem: fs.readFileSync('<your pem file>', 'utf-8')
}));

Manage Virtual Machine

var serviceName = "cloudservice01";
var deploymentName = "deployment01";
var virualMachineName = "vm01";
var storageAccountName = "storage01";
var diskContainerName = "vhds";

// List all the virtual machine images you can use.
computeManagementClient.virtualMachineVMImages.list(function (err, result) {
  if (err) {
    console.error(err);
  } else {
    console.info(result);
  }
});

// Create a cloud service.
computeManagementClient.hostedServices.create({
  serviceName: serviceName,
  label: "cloud service 01",
  location: "West US"
}, function (err, result) {
  if (err) {
    console.error(err);
  } else {
    console.info(result);

    // Create a virtual machine in the cloud service.
    computeManagementClient.virtualMachines.createDeployment(serviceName, {
      name: deploymentName,
      deploymentSlot: "Production",
      label: "deployment 01",
      roles: [{
        roleName: virualMachineName,
        roleType: "PersistentVMRole",
        label: "virutal machine 01",
        oSVirtualHardDisk: {
          sourceImageName: "a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-R2-201312.01-en.us-127GB.vhd",
          mediaLink: "http://"+ storageAccountName + ".blob.core.windows.net/" + diskContainerName + "/" +
            serviceName + "-" + virualMachineName + "-" + Math.floor((Math.random()*100)+1) + ".vhd"
        },
        dataVirtualHardDisks: [],
        configurationSets: [{
          configurationSetType: "WindowsProvisioningConfiguration",
          adminUserName: "<your admin user name>",
          adminPassword: "<your admin password>",
          computerName: virualMachineName,
          enableAutomaticUpdates: true,
          resetPasswordOnFirstLogon: false,
          storedCertificateSettings: [],
          inputEndpoints: [],
          windowsRemoteManagement: {
            listeners: [{
              listenerType: "Https"
            }]
          }
        }, {
          configurationSetType: "NetworkConfiguration",
          subnetNames: [],
          storedCertificateSettings: [],
          inputEndpoints: [{
            localPort: 3389,
            protocol: "tcp",
            name: "RemoteDesktop"
          }, {
            localPort: 5986,
            protocol: "tcp",
            name: "WinRmHTTPS"
          }]
        }]
      }]
    }, function (err, result) {
      if (err) {
        console.error(err);
      } else {
        console.info(result);
      }
    });
  }
});

Related projects

0.9.16

9 years ago

0.9.15

9 years ago

0.9.14

9 years ago

0.9.13

9 years ago

0.9.12

10 years ago

0.9.11

10 years ago

0.9.10

10 years ago

0.9.9

10 years ago

0.9.8

10 years ago

0.9.7

10 years ago

0.9.6

10 years ago

0.9.5

10 years ago

0.9.4

10 years ago

0.9.3

10 years ago

0.9.2

10 years ago

0.9.1-pre.2

10 years ago

0.9.0-pre.1

10 years ago