Getting Started - Deployment Targets
With Octopus Deploy, you can deploy software to Windows servers, Linux servers, Microsoft Azure, AWS, Kubernetes clusters, cloud regions, or an offline package drop. Regardless of where you’re deploying your software, these machines and services are known as your deployment targets.
Deployment targets are defined as:
Host | Target Count Against License | Important Note |
---|---|---|
Windows Server running a Tentacle | 1 Target per Tentacle instance | Listening Tentacles registered multiple times on the same instance will count as one (1) target. |
Linux Server running a Tentacle | 1 Target per Tentacle instance | Listening Tentacles registered multiple times on the same instance will count as one (1) target. |
SSH Connection | 1 Target per SSH Connection | |
Kubernetes Cluster | 1 Target per Kubernetes Namespace | A namespace is required when registering the Kubernetes cluster with Octopus Deploy. By default, the namespace used in the registration is used in health checks and deployments. The namespace can be overwritten in the deployment process. |
AWS ECS Cluster | 1 Target per ECS Cluster | |
Azure Web App / Function / Cloud Service | 1 Target per Web App / Function | This represents how Octopus Deploy currently counts Azure Web Apps / Functions. However, one (1) Azure Web App / Function is not equal to one (1) Linux server. For customers making heavy use of Azure Web Apps / Functions we can provide a target multiplier to account for that discrepancy for paid licenses. Please reach out to sales@octopus.com for help. |
Azure Service Fabric Cluster | 1 Target per Cluster | |
Offline Package Drops | 1 Target per Offline Package Drop | |
Cloud Region | 0 Target per Cloud Region | Cloud regions are legacy targets that pre-dated workers as a mechanism to run scripts on cloud providers. They are used today to execute scripts multiple times with variables scoped for each iteration. |
Please note: Octopus will only count Windows Servers, Linux Servers, ECS Clusters, Kubernetes Clusters, etc., that are registered with an Octopus Deploy Instance. If you have 5,000 Linux Servers, and 4,000 of them are registered with Octopus Deploy, then Octopus will only count those 4,000 against your license.
You can manage your deployment targets by navigating to Infrastructure ➜ Deployment Targets in the Octopus Web Portal:
From the Deployment Targets tab you can add new deployment targets, disable or delete deployment targets, check on the status of your targets, and run health checks.
Adding deployment targets
Deployment targets are added in different ways, depending on the type of target you are adding and how the target will communicate with the Octopus Server. For instructions, see:
- Listening and Polling Windows Tentacles
- Linux SSH connection
- Linux Tentacle
- Azure Web App
- Azure Cloud Service
- Azure Service Fabric cluster
- AWS
- Kubernetes target
- Offline package drop
- Cloud regions
Target roles
Getting Started - Machine Roles
Before you can deploy software to your deployment targets, you need to tag them with target roles. This ensures you deploy the right software to the right deployment targets. Typical target roles include:
- web-server
- app-server
- db-server
Using target roles means the infrastructure in each of your environments doesn’t need to be identical and the deployment process will know which deployment targets to deploy your software to.
Deployment targets can have more than one role, and more than one deployment target can have the same role, but every deployment target must have at least one role.
Add target roles
Roles are created and saved in the database as soon as you assign them to a deployment target.
Decide on the naming convention you will use before creating your first target role as it’s not possible to change the case after the role has been created, for instance, all lowercase to camel case.
- Register a deployment target or click on an already registered deployment target and go to Settings.
- In the Target Roles field, enter the target role you’d like to use (no spaces).
- Save the target settings.
The role has been created and assigned to the deployment target and can be added to other deployment targets.
You can check all the roles assigned to your deployment targets from the Infrastructure tab.
Dynamic infrastructure
You can use scripts to create Azure Service Principal Accounts, Azure Web Apps, Azure Service Fabric, Azure Cloud Services and Kubernetes targets.
Learn about Managing resources with scripts.
Learn more
Help us continuously improve
Please let us know if you have any feedback about this page.
Page updated on Sunday, January 1, 2023