Adding Hosts
Add a Host (VM) in the DuploCloud Portal.
In DuploCloud, a Host represents a virtual machine (VM) that runs your workloads in the cloud. DuploCloud supports multiple Host types on AWS, including:
Individual EC2 instances
Auto Scaling Groups (ASGs) for scalable clusters
Bring Your Own Host (BYOH) for integrating existing or non-standard VMs
Use BYOH for any Host that is neither EC2 nor ASG.
Adding a Host (VM)
Adding an EC2 Host
Select the appropriate Tenant from the Tenant list box.
Navigate to Cloud Services -> Hosts.
Select the EC2 tab.
Click Add. The Add Host page displays.
Add Host page Complete the required fields:
Friendly Name
Enter a descriptive name for the Host.
Availability Zone
Select an availability zone or choose Automatic to let AWS decide.
Instance Type
Select the EC2 instance type (e.g., 2 CPU 2 GB - t3a.small).
Optionally, select Advanced Options and complete the additional configurations:
Agent Platform
Select the Agent Platform, such as EKS Linux or Docker Windows.
Image ID
The Image ID is auto-populated based on the Agent Platform; override it if needed.
Dedicated Host ID
Specify the Dedicated Host ID, e.g., h-0c6ab6f38bdcb24f6
. This ID is used to launch an instance on the Host.
Allocation Tags
Add Allocation Tags to manage where workloads are scheduled within the infrastructure.
Disk Size
Enter the EBS volume size in GB. If not specified, the volume size will be the same as defined in the AMI.
Enable Storage Encryption
Select Yes to encrypt the root volume, or No to leave it unencrypted.
Key Pair Type
Select the Key Pair Type. Supported types are ED25519 and RSA. The default is ED25519.
Enable Block EBS Optimization
Select Yes to enable optimized EBS performance, or No to disable it.
Enable Hibernation
Select Yes to allow EC2 hibernation; select No to disable it.
Metadata service
Select V1 and V2 Enabled, V2 Only Enabled, or Disabled to manage instance metadata access. Default is V2 Only Enabled.
Prepend Duplo's userdata to my custom userdata
Select this option to prepend DuploCloud’s bootstrap scripts before your custom user data.
Base64 Data
Enter Base64-encoded data strings (for example, a startup script). On Linux, encode your script using:
cat <filepath> | base64 -w 0
.
Volumes
Specify additional storage volumes (in JSON format) to attach to the Host.
Tags
Enter AWS Tags as JSON key-value pairs to apply to the EC2 instance.
Node Labels
Optionally, enter Kubernetes Node Labels as key-value pairs to apply to this Host (for EKS Hosts only).
Click Add. The Host will appear on the EC2 tab.
To connect to the Host using SSH, follow this procedure.
Adding an Auto Scaling Group (ASG) Host
An Auto Scaling Group (ASG) Host represents a scalable cluster of EC2 instances managed as a group. DuploCloud integrates with AWS Auto Scaling to automatically adjust capacity based on demand.
Select the appropriate Tenant from the Tenant list box.
Navigate to Cloud Services -> Hosts.
Select the ASG tab.
Click Add. The Add ASG page displays.
Add ASG page Configure the basic ASG settings:
Friendly Name
Enter a name to identify the ASG.
Availability Zones
Select an Availability Zone or choose Automatic to let AWS decide.
Instance Type
Select the Instance Type for the ASG instances (e.g., 2 CPU 2 GB - t3a.small).
Instance Count
Enter the desired instance count for the autoscaling group.
Minimum Instances
Enter the minimum number of instances allowed.
Maximum Instances
Enter the maximum number of instances allowed.
Use for Cluster Autoscaling
Select this option to allow the Kubernetes Cluster Autoscaler to manage scaling for this cluster.
Optionally, select Advanced Options and complete the additional configurations:
Agent Platform
Select the Agent Platform (e.g., EKS Linux, or Docker Windows).
Image ID
The Image ID is auto-populated based on the Agent Platform; override it if needed.
Allocation Tags
Add Allocation Tags to manage where workloads are scheduled within the infrastructure.
Disk Size
Enter the EBS volume size in GB. If not specified, the volume size will be the same as defined in the AMI.
Enable Storage Encryption
Select Yes to encrypt the root volume, or No to leave it unencrypted.
Key Pair Type
Select the key pair type. Supported types are ED25519 and RSA. The default is ED25519.
Enable Block EBS Optimization
Select Yes to enable optimized EBS performance, or No to disable it.
Enable Hibernation
Select Yes to allow EC2 hibernation; select No to disable it.
Metadata service
Select V1 and V2 Enabled, V2 Only Enabled, or Disabled to manage instance metadata access. Default is V2 Only Enabled.
Use Spot Instances
Select to launch hosts using Spot Instances.
Scale from zero (BETA)
Enable the Scale From Zero (BETA) feature.
Enabled Metrics
Select this option to enable Auto Scaling Group metrics collection.
Prepend Duplo's userdata to my custom userdata
Select this option to prepend DuploCloud’s bootstrap scripts before your custom user data.
Base64 Data
Enter Base64-encoded data strings (for example, a startup script). On Linux, encode your script using:
cat <filepath> | base64 -w 0
.
Volumes
Specify additional storage volumes (in JSON format) to attach to the Host.
Tags
Enter Tags as JSON key-value pairs to apply to the ASG.
Node Labels
Optionally, enter Kubernetes node labels as key-value pairs to apply to this Host (for EKS Hosts only).
Click Add. The Host will appear on the ASG tab. For information about more advanced features, such as Launch Templates, see the Auto Scaling Groups (ASG) documentation.
Adding a BYOH Host
Bring Your Own Host (BYOH) allows you to register and manage existing servers or virtual machines with DuploCloud without provisioning resources through AWS.
Select the appropriate Tenant from the Tenant list box.
Navigate to Cloud Services -> Hosts.
Select the BYOH tab.
Click Add. The Add page displays.
Add page Complete the following fields:
Friendly Name
Enter a descriptive name for the Host.
Direct Address
Enter the IPv4 address that DuploCloud will use to communicate with the agent installed on your Host.
Fleet Type
Select the Fleet Type that corresponds to the container orchestrator running on your Host (e.g., Linux Docker/Native, Docker Windows, or None).
Username
Optionally, enter the Username for your Host.
Password
Optionally, enter the Password for access.
Private Key
Optionally, enter the Private Key used to log in to your Host via SSH. You can specify either a Password or a Private Key for authentication.
Click Add. The Host will appear on the BYOH tab.
Creating Kubernetes StorageClass and PVC constructs in the DuploCloud Portal.
See Kubernetes StorageClass and PVC.
Supported Host Actions
From the DuploCloud Portal, navigate to Cloud Services -> Hosts.
Select the Host name from the list.
From the Actions list box, you can select Connect, Host Settings, or Host State to perform the following supported actions:
Connect:
SSH
Establish an SSH connection to work directly in the AWS Console.
Connection Details
View connection details (connection type, address, user name, visibility) and download the key.
Host Details
View Host details in the Host Details JSON screen.

Host Settings:
Create AMI
Create an AMI from the Host.
Create Snapshot
Create a snapshot of the Host at a specific point.
Update User Data
Update the Host user data.
Change Instance Size
Resize a Host instance to accommodate the workload.
Update Auto Reboot Status Check
Enable or disable Auto Reboot. Set the number of minutes after the AWS Instance Status Check fails before automatically rebooting. Also allows updating the Auto Reboot setting if the instance is disconnected.

Host State:
Start
Start the Host.
Reboot
Reboot the Host.
Stop
Stop the Host.
Hibernate
Temporarily freeze (hibernate) the Host.
Terminate Host
Terminate the Host.

Adding custom code for EC2 or ASG Hosts
If you add custom code for EC2 or ASG Hosts using the Base64 Data field, your custom code overrides the code needed to start the EC2 or ASG Hosts and the Hosts cannot connect to EKS. Instead, use this procedure to add custom code directly in EKS.
#!/bin/bash
set -o xtrace
/etc/eks/bootstrap.sh duploinfra-MYINFRA --kubelet-extra-args '--node-labels=tenantname=duploservices-MYTENANT'
# Custom user code:
echo "hello world"
Last updated
Was this helpful?