@Generated(value="jsii-pacmak/1.74.0 (build 6d08790)", date="2023-03-14T16:25:21.328Z") public class CfnAgent extends CfnResource implements IInspectable
The AWS::DataSync::Agent
resource specifies an AWS DataSync agent to be deployed and activated on your host. The activation process associates your agent with your account. In the activation process, you specify information such as the AWS Region that you want to activate the agent in. You activate the agent in the AWS Region where your target locations (in Amazon S3, Amazon EFS, or Amazon FSx for Windows File Server) reside. Your tasks are created in this AWS Region .
You can activate the agent in a virtual private cloud (VPC) or provide the agent access to a VPC endpoint so that you can run tasks without sending them over the public internet.
You can specify an agent to be used for more than one location. If a task uses multiple agents, all of them must have a status of AVAILABLE for the task to run. If you use multiple agents for a source location, the status of all the agents must be AVAILABLE for the task to run.
For more information, see Activating an Agent in the AWS DataSync User Guide .
Agents are automatically updated by AWS on a regular basis, using a mechanism that ensures minimal interruption to your tasks.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.datasync.*; CfnAgent cfnAgent = CfnAgent.Builder.create(this, "MyCfnAgent") .activationKey("activationKey") // the properties below are optional .agentName("agentName") .securityGroupArns(List.of("securityGroupArns")) .subnetArns(List.of("subnetArns")) .tags(List.of(CfnTag.builder() .key("key") .value("value") .build())) .vpcEndpointId("vpcEndpointId") .build();
Modifier and Type | Class and Description |
---|---|
static class |
CfnAgent.Builder
A fluent builder for
CfnAgent . |
IInspectable.Jsii$Default, IInspectable.Jsii$Proxy
IConstruct.Jsii$Default
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
|
Modifier | Constructor and Description |
---|---|
|
CfnAgent(Construct scope,
java.lang.String id,
CfnAgentProps props)
Create a new `AWS::DataSync::Agent`.
|
protected |
CfnAgent(software.amazon.jsii.JsiiObject.InitializationMode initializationMode) |
protected |
CfnAgent(software.amazon.jsii.JsiiObjectRef objRef) |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
getActivationKey()
Your agent activation key.
|
java.lang.String |
getAgentName()
The name you configured for your agent.
|
java.lang.String |
getAttrAgentArn()
The Amazon Resource Name (ARN) of the agent.
|
java.lang.String |
getAttrEndpointType()
The type of endpoint that your agent is connected to.
|
protected java.util.Map<java.lang.String,java.lang.Object> |
getCfnProperties() |
java.util.List<java.lang.String> |
getSecurityGroupArns()
The Amazon Resource Names (ARNs) of the security groups used to protect your data transfer task subnets.
|
java.util.List<java.lang.String> |
getSubnetArns()
The Amazon Resource Names (ARNs) of the subnets in which DataSync will create elastic network interfaces for each data transfer task.
|
TagManager |
getTags()
The key-value pair that represents the tag that you want to associate with the agent.
|
java.lang.String |
getVpcEndpointId()
The ID of the virtual private cloud (VPC) endpoint that the agent has access to.
|
void |
inspect(TreeInspector inspector)
Examines the CloudFormation resource and discloses attributes.
|
protected java.util.Map<java.lang.String,java.lang.Object> |
renderProperties(java.util.Map<java.lang.String,java.lang.Object> props) |
void |
setActivationKey(java.lang.String value)
Your agent activation key.
|
void |
setAgentName(java.lang.String value)
The name you configured for your agent.
|
void |
setSecurityGroupArns(java.util.List<java.lang.String> value)
The Amazon Resource Names (ARNs) of the security groups used to protect your data transfer task subnets.
|
void |
setSubnetArns(java.util.List<java.lang.String> value)
The Amazon Resource Names (ARNs) of the subnets in which DataSync will create elastic network interfaces for each data transfer task.
|
void |
setVpcEndpointId(java.lang.String value)
The ID of the virtual private cloud (VPC) endpoint that the agent has access to.
|
addDeletionOverride, addDependsOn, addMetadata, addOverride, addPropertyDeletionOverride, addPropertyOverride, applyRemovalPolicy, applyRemovalPolicy, applyRemovalPolicy, getAtt, getCfnOptions, getCfnResourceType, getMetadata, getUpdatedProperites, isCfnResource, shouldSynthesize, toString, validateProperties
getRef
getCreationStack, getLogicalId, getStack, isCfnElement, overrideLogicalId
getNode, isConstruct, onPrepare, onSynthesize, onValidate, prepare, synthesize, validate
public static final java.lang.String CFN_RESOURCE_TYPE_NAME
protected CfnAgent(software.amazon.jsii.JsiiObjectRef objRef)
protected CfnAgent(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
public CfnAgent(Construct scope, java.lang.String id, CfnAgentProps props)
scope
- - scope in which this resource is defined. This parameter is required.id
- - scoped id of the resource. This parameter is required.props
- - resource properties. This parameter is required.public void inspect(TreeInspector inspector)
inspect
in interface IInspectable
inspector
- - tree inspector to collect and process attributes. This parameter is required.protected java.util.Map<java.lang.String,java.lang.Object> renderProperties(java.util.Map<java.lang.String,java.lang.Object> props)
renderProperties
in class CfnResource
props
- This parameter is required.public java.lang.String getAttrAgentArn()
Use the ListAgents
operation to return a list of agents for your account and AWS Region .
public java.lang.String getAttrEndpointType()
If the endpoint is a VPC endpoint, the agent is not accessible over the public internet.
protected java.util.Map<java.lang.String,java.lang.Object> getCfnProperties()
getCfnProperties
in class CfnResource
public TagManager getTags()
The value can be an empty string. This value helps you manage, filter, and search for your agents.
Valid characters for key and value are letters, spaces, and numbers representable in UTF-8 format, and the following special characters: + - = . _ : / @.
public java.lang.String getActivationKey()
You can get the activation key either by sending an HTTP GET request with redirects that enable you to get the agent IP address (port 80). Alternatively, you can get it from the DataSync console.
The redirect URL returned in the response provides you the activation key for your agent in the query string parameter activationKey
. It might also include other activation-related parameters; however, these are merely defaults. The arguments you pass to this API call determine the actual configuration of your agent.
For more information, see Creating and activating an agent in the AWS DataSync User Guide.
public void setActivationKey(java.lang.String value)
You can get the activation key either by sending an HTTP GET request with redirects that enable you to get the agent IP address (port 80). Alternatively, you can get it from the DataSync console.
The redirect URL returned in the response provides you the activation key for your agent in the query string parameter activationKey
. It might also include other activation-related parameters; however, these are merely defaults. The arguments you pass to this API call determine the actual configuration of your agent.
For more information, see Creating and activating an agent in the AWS DataSync User Guide.
public java.lang.String getAgentName()
This value is a text reference that is used to identify the agent in the console.
public void setAgentName(java.lang.String value)
This value is a text reference that is used to identify the agent in the console.
public java.util.List<java.lang.String> getSecurityGroupArns()
See SecurityGroupArns .
Pattern : ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\-0-9]*:[0-9]{12}:security-group/.*$
public void setSecurityGroupArns(java.util.List<java.lang.String> value)
See SecurityGroupArns .
Pattern : ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):ec2:[a-z\-0-9]*:[0-9]{12}:security-group/.*$
public java.util.List<java.lang.String> getSubnetArns()
The agent that runs a task must be private. When you start a task that is associated with an agent created in a VPC, or one that has access to an IP address in a VPC, then the task is also private. In this case, DataSync creates four network interfaces for each task in your subnet. For a data transfer to work, the agent must be able to route to all these four network interfaces.
public void setSubnetArns(java.util.List<java.lang.String> value)
The agent that runs a task must be private. When you start a task that is associated with an agent created in a VPC, or one that has access to an IP address in a VPC, then the task is also private. In this case, DataSync creates four network interfaces for each task in your subnet. For a data transfer to work, the agent must be able to route to all these four network interfaces.
public java.lang.String getVpcEndpointId()
This is the client-side VPC endpoint, powered by AWS PrivateLink . If you don't have an AWS PrivateLink VPC endpoint, see AWS PrivateLink and VPC endpoints in the Amazon VPC User Guide .
For more information about activating your agent in a private network based on a VPC, see Using AWS DataSync in a Virtual Private Cloud in the AWS DataSync User Guide.
A VPC endpoint ID looks like this: vpce-01234d5aff67890e1
.
public void setVpcEndpointId(java.lang.String value)
This is the client-side VPC endpoint, powered by AWS PrivateLink . If you don't have an AWS PrivateLink VPC endpoint, see AWS PrivateLink and VPC endpoints in the Amazon VPC User Guide .
For more information about activating your agent in a private network based on a VPC, see Using AWS DataSync in a Virtual Private Cloud in the AWS DataSync User Guide.
A VPC endpoint ID looks like this: vpce-01234d5aff67890e1
.