Nutanix simplifies datacenter infrastructure by integrating server and storage resources allowing applications to run at scale. Morpheus provides and avenue to enhance the Nutanix resources to allow efficient and seamless deployment of applications as a virtual machine (VM) or as a container on a Docker host.
- Virtual Machine Provisioning
- Backups / Snapshots
- Resources Groups
- Auto Scaling
- Load Balancing
- Remote Console
- Periodic Synchronization
- Lifecycle Management and Resize
Morpheus can provide a single pane of glass and self-service portal for managing multiple Nutanix Clusters and allowing the seamless deployment of applications.
Prism Central is not currently supported
To get started this a few prerequisites must first be met. The Nutanix cluster should be provisioned and available on the network. Morpheus will look login to the Nutanix cluster with the Nutanix admin credentials and is typically located at the https://fqdn:9440 url.
Adding a Nutanix Cloud¶
The Nutanix cluster should be available and responding to the https://fqdn:9440 url for authentication by Morpheus .
- API URL
- example: https://10.30.21.220:9440
- Nutanix admin username
- Nutanix admin password
- Inventory Existing Instances
- If enabled, existing Virtual Machines will be inventoried and appear as unmanaged Virtual Machines in Morpheus .
- 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 Internal Backups (Morpheus) or a Backup Integration
- REPLICATION PROVIDER
- Sets the default Replication Provider for the Cloud. Select an existing Replication Provider Integration
- Enable Guidance recommendations on cloud resources.
- Enable for Morpheus to sync Costing data from the Cloud provider, when available. If your organization utilizes reserved instances and you want to pull in related pricing data, select Costing and Reservations. If this is not relevant, select Costing to save money on additional calls to the AWS Cost Explorer API or similar service for other clouds.
- 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.
- Select CMDB Integration to automatically update selected CMDB.
- 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.
- 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.
- 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.
A default set of Service Plans are created in Morpheus for the VMware provisioning engine. These Service Plans can be considered akin to AWS Flavors or Openstack Flavors. They provide a means to set predefined tiers on memory, storage, cores, and cpu. Price tables can also be applied to these so estimated cost per virtual machine can be tracked as well as pricing for customers. By default, these options are fixed sizes but can be configured for dynamic sizing. A service plan can be configured to allow a custom user entry for memory, storage, or cpu. To configure this, simply edit an existing Service Plan tied to Nutanix or create a new one. These all can be easily managed from the Admin | Service Plans & Pricing section.
So far this document has covered how to add the Nutanix cloud integration and has enabled users the ability to provision virtual machine based instances via the Add Instance catalog in Provisioning. Another great feature provided by Morpheus out of the box is the ability to use Docker containers and even support multiple containers per Docker host. To do this a Docker Host must first be provisioned into Nutanix (multiple are needed when dealing with horizontal scaling scenarios).
To provision a Docker Host, simply navigate to the Cloud detail page or Infrastructure Hosts section. From there click the + Container Host button to add a Nutanix Docker Host. Morpheus views a Docker host just like any other Hypervisor with the caveat being that it is used for running containerized images instead of virtualized ones. Once a Docker Host is successfully provisioned a green checkmark will appear to the right of the host marking it as available for use. In the event of a failure click into the relevant host that failed and an error explaining the failure will be displayed in red at the top.
Some common error scenarios include network connectivity. For a Docker Host to function properly, it must be able to resolve the Morpheus appliance url which can be configured in Admin Settings. If it is unable to resolve and negotiate with the appliance than the agent installation will fail and provisioning instructions will not be able to be issued to the host.
Morpheus allows the ability to create a snapshot of a Nutanix instance. From the instance detail page, simply select
Actions -> Create Snapshot to begin creation of a new Snapshot. Existing snapshots can be viewed in the
BACKUPS tab on the instance detail page. Snapshots taken outside Morpheus will be synced every five minutes. To revert to a previous snapshot, click on the revert icon located on the right side of the Snapshot. Snapshots can be deleted by clicking on the trash can icon.
Access to Snapshots can be limited or removed entirely for specific user roles as needed. To edit a role’s Snapshots permissions, go to
Administration > Roles > (Your selected role) > Snapshots. Users can be given Full, Read-only, or No access.