Microsoft Azure virtual machinesedit

With the availability of virtual machines with Linux-based operating systems, you can now use Microsoft Azure to host Elastic Cloud Enterprise.

The following instructions are for Ubuntu 16.04 LTS virtual machines, but you can use any of the supported operating systems so long as the prerequisites are met.

You must run these commands from the Azure CLI, version 2.0 or later. You can download and run Azure CLI locally, or you can use the Cloud Shell >_ button to open it in the Azure portal. Alternatively, you can use the Azure portal UI to create your virtual machines.

Set up Azure resource group and networkingedit

If you have an existing Azure resource group, you need to configure it to enable the resource group members to connect to the ECE UI. You can create a new resource group if you don’t already have one.

  1. Create a resource group:

    az group create
      --name <resourcename>
      --location <region>
  2. Create your network security group:

    az network nsg create
      --resource-group <resourcename>
      --name <securityname>
      --location <region>
  3. Add several rules for inbound and outbound network traffic.

    These rules make sure that the Cloud UI can be accessed, that the UI components can talk to each other, and that they can reach the internet. You might need to create several rules to enable the full list of ports and their uses.

    Depending on the port you want to add, run the corresponding command.

    • Add port 22 to connect over SSH for installation and troubleshooting

      az network nsg rule create
       --resource-group <resourcename>
       --nsg-name <securityname>
       --name ssh --access Allow
       --protocol Tcp
       --direction Inbound
       --priority 100
       --source-address-prefix Internet
       --source-port-range "*"
       --destination-address-prefix "*"
       --destination-port-range 22
    • Add port 12443 for HTTPS

      az network nsg rule create
        --resource-group <resourcename>
        --nsg-name <securityname>
        --name https
        --access Allow
        --protocol Tcp
        --direction Inbound
        --priority 200
        --source-address-prefix Internet
        --source-port-range "*"
        --destination-address-prefix "*"
        --destination-port-range 12443
    • Add port 9243 to access your Elasticsearch clusters and Kibana instances

      az network nsg rule create
        --resource-group <resourcename>
        --nsg-name <securityname>
        --name ece-frontend
        --access Allow
        --protocol Tcp
        --direction Inbound
        --priority 300
        --source-address-prefix Internet
        --source-port-range "*"
        --destination-address-prefix "*"
        --destination-port-range 9243
    • Add port 12400 to access the Cloud UI

      az network nsg rule create
        --resource-group <resourcename>
        --nsg-name <securityname>
        --name admin-ui
        --access Allow
        --protocol Tcp
        --direction Inbound
        --priority 400
        --source-address-prefix Internet
        --source-port-range "*"
        --destination-address-prefix "*"
        --destination-port-range 12400
  4. Create a virtual network:

    az network vnet create
      --resource-group <resourcename>
      --name <vnetname>
      --address-prefix 10.0.0.0/16
      --subnet-name <default>
  5. Associate the virtual network subnet with your network security group.

    az network vnet subnet update
      --resource-group <resourcename>
      --vnet-name <vnetname>
      --name default
      --network-security-group <securityname>

Create your hostsedit

Follow these steps to create three Ubuntu 16.04 LTS virtual machines on the Standard DS11 V2 instance types with 16 GB RAM.

  1. Create your first virtual machine. This is the first machine that you install Elastic Cloud Enterprise on and it includes a 128 GB attached data disk. This command sets a status public IP address and generates your SSH keys.

    az vm create
      --resource-group <resourcename>
      --name ece-node-01
      --image Canonical:ubuntuserver:16.04.0-LTS:latest
      --size Standard_D11_v2
      --data-disk-sizes-gb 128
      --public-ip-address-allocation static
      --vnet-name <vnetname>
      --subnet default
      --nsg <securityname>
      --generate-ssh-keys

    If you are using machines without permanent storage, back up your keys to a safe location.

  2. Create two more virtual machines with unique node names.
  3. Complete the operating system configuration for each virtual machine.

When your Microsoft Azure virtual machines are up and running, you can connect to them and install Elastic Cloud Enterprise.