Adding VMs to an environment

You can modify a Skytap environment by adding copies of VMs from the current environment or adding copies of VMs from other environments or templates. This helps you mix, match, and reuse VMs.

For example, if you have a Jenkins server configured in a template, you can quickly add copies of the VM to each of your dev/test environments.

Contents

How to add VMs to an environment

To add one or more VMs to an environment
  1. Navigate to the Environment page.

    Environment Details page

  2. Click add (Add VMs). The ADD VMS screen displays.

    Add VMs from Environments or Templates

  3. Select one or more VMs in an environment or template.

    Notes

    • When you add an environment or a template with multiple VMs, you can choose to add all of the VMs or just some of them. Create a New Environment Selection
    • Only one environment or template can be selected at a time. If you need to add VMs from multiple environments or templates, repeat the Add VMs process and select a different environment or template each time.
  4. Click add Add VM(s).
  5. Skytap Cloud adds the VM(s) and network settings as described in Automatic configuration steps that happen when you add VMs to an environment below. If you add VMs from the current environment, you may need to perform some additional configuration steps to ensure the VM has unique identifiers. For example, you may need to edit the VM MAC address or edit the Windows hostname.

Automatic configuration steps that happen when you add VMs to an environment

When you add a VM to an environment:

  • Skytap copies the VM from the source environment or template to your current environment. The copy includes:

    • The VM hardware settings and credentials
    • The VM guest OS settings (and state)
    • The VM network adapters (including public IP address and published service settings)
  • Skytap merges or adds the network(s) connected to the VM. Skytap uses the following network settings to determine whether the network that is attached to the VM should be merged with an existing network in the environment, added to the environment, or rejected:

    • Network type (Manual or Automatic)
    • Domain name (example: test.net)
    • Subnet (example: 192.168.0.0)
    • Subnet size (example: 24)

    The table below explains what happens when these network parameters do or do not match.

Scenario

Description

If all of the parameters for the two networks match…

The networks are merged. The network in the current environment is preserved and the new VM is automatically connected to it.

Examples:

Networks in the environment before the merge Network attached to the added VM Networks in the environment after the merge
Network A: 10.0.0.0/24
Domain: test.net
(Automatic)
Network B: 10.0.0.0/24
Domain: test.net
(Automatic)
Network A: 10.0.0.0/24
Domain: test.net
(Automatic)
Network A: 198.162.0.0/16
Domain: test.net
(Manual)
Network B: 198.162.0.0/16
Domain: test.net
(Manual)
Network A: 198.162.0.0/16
Domain: test.net
(Manual)

If the two networks do not have overlapping subnets…

Skytap adds a copy of the network to the environment. The new VM is attached to the new network created during the copy process.

Examples:

Networks in the environment before the merge Network attached to the added VM Networks in the environment after the merge
Network A: 10.0.0.0/24
Domain: test.net
(Automatic)
Network B: 192.168.0.0/24
Domain: test.net
(Automatic)
  • Network A: 10.0.0.0/24
    Domain: test.net
    (Automatic)
  • Network B: 192.168.0.0/24
    Domain: test.net
    (Automatic)
Network A:
10.0.0.0/24
Domain: test.net
(Manual)
Network B:
192.168.0.0/24
Domain: test.net
(Automatic)
  • Network A:
    10.0.0.0/24
    Domain: test.net
    (Manual)
  • Network B: 192.168.0.0/24
    Domain: test.net
    (Automatic)

If the two networks have the same subnet, but have different domains or network types…

Skytap generates a merge error and does not allow you to add the VM to the environment.

Examples:

Networks in the environment before the merge Network attached to the added VM Networks in the environment after the merge
Network A: 10.0.0.0/24
Domain: test.net
(Automatic)
Network B: 10.0.0.0/24
Domain: example.com
(Automatic)
Merge error: The networks could not be merged because their domain names differ
Network A: 10.0.0.0/24
Domain: test.net
(Automatic)
Network B: 10.0.0.0/24
Domain: test.net
(Manual)
Merge error: The networks could not be merged because they are of different types

If the two networks have overlapping subnets…

Skytap generates a merge error and does not allow you to add the VM to the environment.

Examples:

Networks in the environment before the merge Network attached to the added VM Networks in the environment after the merge
Network A: 10.0.0.0/16
Domain: test.net
(Automatic)
Network B: 10.0.0.0/24
Domain: test.com
(Automatic)
Merge error: The networks could not be merged because their subnets overlap.

Troubleshooting

Resolving network merge errors

Error description

If Skytap displays a network merge error during the Add VMs process, a network connected to the VM cannot be automatically merged with or added to the existing networks in the environment (see additional explanation above). There are 3 possible errors:

  • Error: The networks could not be merged because their subnets overlap.
  • Error: The networks could not be merged because they are of different types.
  • Error: The networks could not be merged because their domain names differ.
Resolution steps

Either:

Resolving MAC address errors

Error: A MAC address conflict occurred during the operation

Error description

A MAC address conflict occurs if Skytap Cloud cannot give the VM a unique MAC address on the network. Generally, this errors appears when a suspended VM is copied to the same environment. The VM is added to the environment, but isn’t connected to the network.

Resolution
  1. Shut down the VM. If the VM is suspended, we recommend that you run it and then safely shut it down.
  2. Edit the VM network adapter to give it a unique MAC address.
  3. Edit the VM network adapter to connect it to a network in the environment.