jclouds-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ignasi Barrera (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (JCLOUDS-1308) Azure ARM Default Network
Date Wed, 14 Jun 2017 15:05:00 GMT

    [ https://issues.apache.org/jira/browse/JCLOUDS-1308?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16049269#comment-16049269

Ignasi Barrera commented on JCLOUDS-1308:

The old implementation presented several issues:

* jclouds only considered one resource group, and that make it impossible to let jclouds created
resources to interact with existing ones. This also meant that scenarios where people use
a resource group for storage, another for networking, etc, didn't work with jclouds. We were
limiting the resource group layout, which was not good and prevented us from being usable
in most cases, where accounts are not empty.
* Having one default network was not flexible enough. There was no way to create several subnets
and jclouds VMs were always attached there (you could specify a virtual network but not a
* VMs could not be attached to several subnets, nor get different addresses. They were always
assigned a private IP and a dynamic Public IP. Now that can be configured too.

The current approach fixes all these issues, is more flexible and you should be able to achieve
the same behavior:

* You can create all your VMs in the same "jclouds group", and all VMs should go to the same
default network. jclouds creates one Resource Group per jclouds group *unless you set the
_options.ResourceGroup_* template option. You can play with that.
* You can pre-create the default network and subnet where you want your VMs to be attached
to, and then provide the convenient template options to let all VMs be attached there:
IpOptions ipOptions = IpOptions.builder.subnet("the subnet").allocatePublicIp(true/false).build();

> Azure ARM Default Network
> -------------------------
>                 Key: JCLOUDS-1308
>                 URL: https://issues.apache.org/jira/browse/JCLOUDS-1308
>             Project: jclouds
>          Issue Type: Bug
>            Reporter: Graeme Miller
> For Azure ARM, the default behaviour when creating a VM has changed with regards to VNETs/Subnets.
> Previously, if no networking configuration was provided JClouds would create a default
VNET per region. The implementation of this can be found [here|https://github.com/jclouds/jclouds-labs/blob/4f50e7d65a6d7e1a3d06efcf557b363e55118238/azurecompute-arm/src/main/java/org/jclouds/azurecompute/arm/compute/strategy/CreateResourceGroupThenCreateNodes.java#L147].
This was useful as it meant that a user could rely on VMs being able to access one another
on their subnet IP addresses, even when a network was not provided (I believe this is the
same as other clouds, but I am not too familiar with JClouds).
> Now, when no networking configuration is provided we create a VNET per group id. For
our usage, this is a bit of a problem as it means by default each VM is getting it’s own
> To see a history of these changes please see the commit [here|https://github.com/jclouds/jclouds-labs/commit/54e5ce50a43250c4f87414506b3bba4d8365284e]
that moved to having a VNET per resource group and then [here|https://github.com/jclouds/jclouds-labs/commit/dbadb279f14848f21879f7eb6c7136e1a5f11192],
that moved to using just the groupID.
> I propose we go back to the old way, where we have a default resource group, VNET and
subnet per region. This will mean that by default, VMs will be able to speak to each other
on there private IPs. If that is not possible, could we have a template option that will allow
us to turn this behaviour on? 
> I am very happy to work on the solution myself, but would like direction form the community
before investing too much time.

This message was sent by Atlassian JIRA

View raw message