Click on the desired cloud provider and follow the installation and configuration instructions:
Follow the steps below to install and configure an agent within your Amazon Web Services (AWS) environment.
Follow the Create an Agent guide to define an agent and generate the bootstrap config file that will be used in step two.
Launch
.Refer to the Agent Sizing Guidance page for additional details on which instance type to select.
Next: Configure Instance Details
.For the agent to properly connect to the Control Plane servers, it requires outbound Internet access.
Verify that the Auto-assign Public IP
option is set to Enable
.
If your requirements do not allow the instance to have a public IP, please review the section
How do instances without public IP addresses access the Internet
in this AWS FAQ.
User data
paste or upload a file containing the JSON payload generated
in step one.Next: Add Storage
and review settings.Next: Add Tags
and optionally add any tags.Next: Configure Security Group
.SSH is not required. Control Plane will never need to connect directly to the agent.
Review and Launch
and verify the details are correct.Launch
. The console will prompt you to select or create a key-pair.If you do not have an AWS key-pair created, the console will help you to create one.
Since the agent instance will never need to be connected to, you may proceed without a key-pair.
Click Launch Instances
.
After a few moments, the instance will launch and ready to process requests.
Now that you have an agent configured and running, it can be used within an identity to allow your workload to connect to your internal AWS resources.
Follow the steps below to install and configure an agent within your Microsoft Azure environment.
Follow the Create an Agent guide to define an agent and generate the bootstrap config file that will be used in step two.
Marketplace
icon.copyControl Plane Secure Communications Agent
Enter
.Create
dropdown, select gen-1
.Create a virtual machine
wizard:Control-Plane-Agent-01
. If installing multiple agents, increment the number.No infrastructure redundancy required
. Use a different option for your environment if you are running in production.gen-1
.SSH public key
.azureuser
.None
. The agent does not need any inbound ports open.Next: Disks
.Premium SSD
.(Default) Encryption at-rest with a platfor-managed key
.Next: Networking
.None
.Basic
.None
.Next: Management
.Enable with managed storage account
.Image default
.Next: Advanced
.Next: Tags
.Next: Review + create
.Create
.Download private key and create resource
.The agent virtual machine will begin the deployment process. After a few moments, the agent will be running, connecting to the Control Plane servers, and ready to process requests.
Now that you have an agent configured and running, it can be used within an identity to allow your workload to connect to your internal Azure resources.
Follow the steps below to install and configure an agent within your Google Cloud Platform (GCP) environment.
Follow the Create an Agent guide to define an agent and generate the bootstrap config file that will be used in step two.
gcloud init
.INSTANCE_NAME
and the bootstrap file (AGENT_NAME-bootstrapConfig.json)
that was created in step one.gcloud compute instances create INSTANCE_NAME --image controlplane-agent-1204-757019273-59691be --image-project cpln-build --metadata-from-file=user-data=AGENT_NAME-bootstrapConfig.json
Refer to the Agent Sizing Guidance page for additional details on which machine type to select.
Add the flag --machine-type=MACHINE_TYPE
to the command above to select a different type. Otherwise, the default type is
n1-standard-1
.
By default, the GCP firewall rules open the common SSH, RDP, and ICMP ports to the world and allows all internal ports within the VPC. The agent does not need any of these ports open.
At a minimum, the agent needs to be able to connect to your GCP resources and the Internet.
Now that you have an agent configured and running, it can be used within an identity to allow your workload to connect to your internal GCP resources.
Follow the steps below to install and configure an agent within your private network.
Follow the Create an Agent guide to define an agent and generate the bootstrap config file that will be used in step two.
copycpln agent up --bootstrap-file=PATH/AGENT_NAME-bootstrapConfig.json
If you are using Windows, follow these instructions:
cpln
command above using a Windows command prompt and not using WSL.Now that you have an agent configured and running, it can be used within an identity to allow your workload to connect to your local resources.
When running an agent locally, it is running within a local Docker container. When configuring an identity network resource, you must use the IP of the network adapter that Docker installed on the local machine.
Follow the steps below to install and configure an agent within your k8s cluster.
Follow the Create an Agent guide to define an agent and generate the bootstrap config file that will be used in step two.
copycpln agent manifest --bootstrap-file bootstrap.json --namespace NAMESPACE --replicas 2 --cluster CLUSTER_ID > manifest.yaml# inspect/modify the manifest file manually, if needed.kubectl apply -f manifest.yaml
cpln
will generate the manifest.yaml file that will deploy two replicas of the agent to the namespace of your
choice (NAMESPACE
in the example). The parameter --cluster CLUSTER_ID
will be added to the agent's status
which is used as a hint to know which cluster an agent has been deploy to.
It is recommended to use --replicas=2 for high availability (HA).
On startup, the agent will generate a public/private key-pair which is persisted as a k8s secret. In this scenario, the agents run under a k8s service account, which can create/modify secrets in its own namespace. If this is a concern, the agent can be configured to run in a dedicated namespace.
Now that you have an agent configured and running, it can be used within an identity to allow your workload to connect to your local resources.