vCloud Director¶
Configuration¶
Add vCD Cloud From Infrastructure > Clouds¶
Navigate to
Infrastructure > Clouds
Select + ADD
Select VCLOUD DIRECTOR from the Clouds list
Select NEXT
Populate the following:
Cloud Configuration
- NAME
Name of the Cloud in Morpheus
- CODE
Unique code used for api/cli, automation and policies.
- LOCATION
Description field for adding notes on the cloud, such as location.
- VISIBILITY
For setting cloud permissions in a multi-tenant environment. Not applicable in single tenant environments.
- TENANT
If Visibility is set to Private, select the Tenant the Cloud resources will assigned to.
- ENABLED
When disabled, automatic Cloud sync is paused and the Cloud will not be selectable for provisioning.
- AUTOMATICALLY POWER ON VMS
When enabled, Morpheus will maintain the expected power state of managed VMs. Morpheus will power on any managed VMs in the Cloud that have been shut down for unknown reasons (not powered off by Morpheus) to ensure availability of services.
Note
When “AUTOMATICALLY POWER ON VMS” is enabled, the power state of managed VMs should be maintained in Morpheus. This setting is not applicable to discovered/unmanaged resources.
Details
- API URL
- vCloud Director API Url
Example:
https://org.vcd.company.com
- USERNAME
vCD Organization Administrator or System Administrator User
User must have an Organizational Administrator or System Administrator Role
Username must be in the format of <name>@<org>
When using a user with the System Administrator role, give the username in the format of <username>@system. Additionally, ensure this user has permission set correctly, such as to view objects created by the organization administrator if needed. Otherwise, things like catalogs and vApps created by the Organization Administrator might not be visible to Morpheus
In some cases, it may not be advisable to use the system administrator user. This is because some environments will have API access turned off for the system administrator for security reasons as the user would be able to remove key pieces of infrastructure. If your system administrator user does have API access and you understand the risks, you can authenticate Morpheus with this user
- PASSWORD
Password for the user indicated above
- ORGANIZATION
Select Organization. Dropdown populates upon successful authorization.
- VDC
Select VDC. Dropdown populates upon successful authorization.
- API VERSION
Example.
31.0
Note: Full version required.31
would not be valid, must be xx.x (vCD API versions are strings)- CATALOG
Optionally select a vCD catalog to store Morpheus artifacts or use the default “morpheus_auto” catalog
- Inventory Existing Instances
If enabled, existing Virtual Machines will be inventoried and appear as unmanaged Virtual Machines in Morpheus .
Advanced Options
- DOMAIN
Specify a default domain for instances provisioned to this Cloud.
- SCALE PRIORITY
Only affects Docker Provisioning. Specifies the priority with which an instance will scale into the cloud. A lower priority number means this cloud integration will take scale precedence over other cloud integrations in the group.
- APPLIANCE URL
Alternate Appliance url for scenarios when the default Appliance URL (configured in admin > settings) is not reachable or resolvable for Instances provisioned in this cloud. The Appliance URL is used for Agent install and reporting.
- TIME ZONE
Configures the time zone on provisioned VM’s if necessary.
- DATACENTER ID
Used for differentiating pricing among multiple datacenters. Leave blank unless prices are properly configured.
- NETWORK MODE
Unmanaged or select a Network Integration (NSX, ACI etc)
- LOCAL FIREWALL
On or Off. Enable to managed Host and VM firewall/IP Table rules (linux only)
- SECURITY SERVER
Security Server setting is for Security Service Integrations such as ACI
- TRUST PROVIDER
Select Internal (Morpheus) or an existing Trust Provider Integration
- STORAGE MODE
Single Disk, LVM or Clustered
- BACKUP PROVIDER
Select a backup provider. Depending on the Cloud type and any currently-configured backup plugins you may select Internal Backups (Morpheus) or another configured backup solution
- REPLICATION PROVIDER
Sets the default Replication Provider for the Cloud. Select an existing Replication Provider Integration
- GUIDANCE
Enable Guidance recommendations on cloud resources.
- COSTING
Enable for Morpheus to sync Costing data from the Cloud provider, when available. For on-prem Clouds, enabling costing activates a costing service designed to mirror the live costing experience of public clouds, including invoicing with line items and real-time cost data (Operations > Costing > Invoices). If your organization utilizes reserved instances and you want to pull in related pricing data, some Cloud integrations include the option to select Costing and Reservations. If this is not relevant, select Costing to save money on additional calls to the Cloud provider’s costing API.
- DNS INTEGRATION
Records for instances provisioned in this cloud will be added to selected DNS integration.
- SERVICE REGISTRY
Services for instances provisioned in this cloud will be added to selected Service Registry integration.
- CONFIG MANAGEMENT
Select a Chef, Salt, Ansible or Puppet integration to be used with this Cloud.
- CMDB
Select CMDB Integration to automatically update selected CMDB.
- CMDB DISCOVERY
When checked, any automatically discovered (unmanaged) servers onboarded into Morpheus from this Cloud will also have CMDB records created for them.
- CHANGE MANAGEMENT
Select an existing Change Management Integration to set on the Cloud. ex: Cherwell
- AGENT INSTALL MODE
SSH / WINRM: Morpheus will use SSH or WINRM for Agent install.
Cloud Init / Unattend (when available): (DEFAULT) Morpheus will utilize Cloud-Init or Cloudbase-Init for agent install when provisioning images with Cloud-Init/Cloudbase-Init installed. Morpheus will fall back on SSH or WINRM if cloud-init is not installed on the provisioned image. Morpheus will also add Agent installation to Windows unattend.xml data when performing Guest Customizations or utilizing syspreped images.
- API PROXY
Set a proxy for outbound communication from the Morpheus Appliance to the Cloud endpoints. Proxies can be added in the Infrastructure > Networks > Proxies tab.
- INSTALL AGENT
Enable to have Agent Installation on by default for all provisioning into this Cloud. Disable for Agent Installation to be off by default for all provisioning into this Cloud.
Provisioning Options
- PROXY
Set a proxy for inbound communication from Instances to the Morpheus Appliance. Proxies can be added in the Infrastructure > Networks > Proxies tab.
- Bypass Proxy for Appliance URL
Enable to bypass proxy settings (if added) for Morpheus Agent communication to the Appliance URL.
- NO PROXY
Include a list of IP addresses or name servers to exclude from proxy traversal
- USER DATA (LINUX)
Add cloud-init user data. Morpheus 4.1.0 and earlier assumes bash syntax. Morpheus 4.1.1 and later supports all User Data formats. Refer to https://cloudinit.readthedocs.io/en/latest/topics/format.html for more information.
Select NEXT
Select an existing or create a new Group to add the Cloud to. The Cloud can be added to additional Groups in a Groups Clouds tab.
Select NEXT
Review and then Select COMPLETE
How to create vCloud Director templates for Morpheus¶
To create a Windows Template¶
Create a new machine in VMware vCenter and install a base version of your preferred Windows build.
Apply any service packs / updates to the operating system.
Set the Network location to Private the below PowerShell will set the location.
Get-NetConnectionProfile | Set-NetconnectionProfile -NetworkCategory private
Configure WinRM to allow remote management and open the firewall.
To do this, under local computer Administrator, open a command prompt and run
winrm quickconfig
Install VMware tools
Install .Net at least 4.5
Enable remote PowerShell this can be done in PowerShell.
Enable-PSremoting
Shutdown the virtual machine and convert to a template.
Note
Do not run sysprep
To create a Linux Centos template¶
Create a new machine in VMware vCenter and install a base version of your preferred Linux distro build. If you are using cloud init as part of your image you will need to ensure your virtual machine has a cdrom.
Before installing the operating system setup a single
ext
orxfs
partition without a swap disk (This is so that growpart can extend the disk. growpart currently does not support lvm)Install the distro and apply any updates to the operating system and security updates
Install cloud-init using command
yum install cloud-init
Install cloud-utils-growpart using command
yum install cloud-utils-growpart
Install vmware tools
Install git by running
yum install git
epel-release
selinux set to permissive (enforced can cause problems with cloud-init)
To create a Linux Ubuntu template¶
Create a new machine in VMware vCenter and install a base version of your preferred Linux distro build. If you are using cloud init as part of your image you will need to ensure your virtual machine has a cdrom.
Before installing the operating system setup a single
ext
partition without a swap disk (This is so that growpart can extend the disk. growpart currently does not support lvm)Install the distro and apply any updates to the operating system and security updates
Ensure you have set a root password
Install cloud-init by running
sudo apt install cloud-init
Install cloud-utils-growpart
sudo apt install cloud-utils
Install desired hypervisor drivers (Virto, Open-VM Tools)
Install git by running
sudo apt install git
As Debian 9 includes network manager ensure this is disabled. Change the below file
/etc/NetworkManager/NetworkManager.confto the following:
managed=false
We also recommend disabling network manager and setting the network adapter to eth0 rather than the automatically assigned name. See a more detailed guide on VMware image prep here.
To import your template into vCloud director you will need to login as either an administrator or organisation administrator.
Once logged into vCloud director you will then need select Manage Organizations
and then select your organization.
From within the organisation click on Catalogues
> select an existing catalogue or create a new catalogue.
Note
Please note once you connect Morpheus to your vCD environment, it will create a catalogue called Auto Morpheus. This is a working catalogue and is ignored by Morpheus when searching for images, so any images in the catalogue will not be synced into Morpheus
Open the catalogue and select the import template from vCenter and then browse the data stores for your templates. Select your template and the type in a new name and description then check the copy template into vCloud director.
Once you click ok the import process will begin. When the import has completed the template will appear in Morpheus within Library > Virtual Images
If the image does not appear within the virtual images you may need to use the filters to filter the virtual images by the vmware ( vmdk / ovf / ova) type.
You may also need to refresh the cloud. To do this go to Infrastructure > Clouds
> select the vCloud Director cloud > select Refresh.