Class CfnVirtualGateway
Creates a virtual gateway.
Inherited Members
Namespace: Amazon.CDK.AWS.AppMesh
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public class CfnVirtualGateway : CfnResource, IInspectable, ITaggable
Syntax (vb)
Public Class CfnVirtualGateway
Inherits CfnResource
Implements IInspectable, ITaggable
Remarks
A virtual gateway allows resources outside your mesh to communicate to resources that are inside your mesh. The virtual gateway represents an Envoy proxy running in an Amazon ECS task, in a Kubernetes service, or on an Amazon EC2 instance. Unlike a virtual node, which represents an Envoy running with an application, a virtual gateway represents Envoy deployed by itself.
For more information about virtual gateways, see Virtual gateways .
CloudformationResource: AWS::AppMesh::VirtualGateway
ExampleMetadata: fixture=_generated
Examples
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
using Amazon.CDK.AWS.AppMesh;
var cfnVirtualGateway = new CfnVirtualGateway(this, "MyCfnVirtualGateway", new CfnVirtualGatewayProps {
MeshName = "meshName",
Spec = new VirtualGatewaySpecProperty {
Listeners = new [] { new VirtualGatewayListenerProperty {
PortMapping = new VirtualGatewayPortMappingProperty {
Port = 123,
Protocol = "protocol"
},
// the properties below are optional
ConnectionPool = new VirtualGatewayConnectionPoolProperty {
Grpc = new VirtualGatewayGrpcConnectionPoolProperty {
MaxRequests = 123
},
Http = new VirtualGatewayHttpConnectionPoolProperty {
MaxConnections = 123,
// the properties below are optional
MaxPendingRequests = 123
},
Http2 = new VirtualGatewayHttp2ConnectionPoolProperty {
MaxRequests = 123
}
},
HealthCheck = new VirtualGatewayHealthCheckPolicyProperty {
HealthyThreshold = 123,
IntervalMillis = 123,
Protocol = "protocol",
TimeoutMillis = 123,
UnhealthyThreshold = 123,
// the properties below are optional
Path = "path",
Port = 123
},
Tls = new VirtualGatewayListenerTlsProperty {
Certificate = new VirtualGatewayListenerTlsCertificateProperty {
Acm = new VirtualGatewayListenerTlsAcmCertificateProperty {
CertificateArn = "certificateArn"
},
File = new VirtualGatewayListenerTlsFileCertificateProperty {
CertificateChain = "certificateChain",
PrivateKey = "privateKey"
},
Sds = new VirtualGatewayListenerTlsSdsCertificateProperty {
SecretName = "secretName"
}
},
Mode = "mode",
// the properties below are optional
Validation = new VirtualGatewayListenerTlsValidationContextProperty {
Trust = new VirtualGatewayListenerTlsValidationContextTrustProperty {
File = new VirtualGatewayTlsValidationContextFileTrustProperty {
CertificateChain = "certificateChain"
},
Sds = new VirtualGatewayTlsValidationContextSdsTrustProperty {
SecretName = "secretName"
}
},
// the properties below are optional
SubjectAlternativeNames = new SubjectAlternativeNamesProperty {
Match = new SubjectAlternativeNameMatchersProperty {
Exact = new [] { "exact" }
}
}
}
}
} },
// the properties below are optional
BackendDefaults = new VirtualGatewayBackendDefaultsProperty {
ClientPolicy = new VirtualGatewayClientPolicyProperty {
Tls = new VirtualGatewayClientPolicyTlsProperty {
Validation = new VirtualGatewayTlsValidationContextProperty {
Trust = new VirtualGatewayTlsValidationContextTrustProperty {
Acm = new VirtualGatewayTlsValidationContextAcmTrustProperty {
CertificateAuthorityArns = new [] { "certificateAuthorityArns" }
},
File = new VirtualGatewayTlsValidationContextFileTrustProperty {
CertificateChain = "certificateChain"
},
Sds = new VirtualGatewayTlsValidationContextSdsTrustProperty {
SecretName = "secretName"
}
},
// the properties below are optional
SubjectAlternativeNames = new SubjectAlternativeNamesProperty {
Match = new SubjectAlternativeNameMatchersProperty {
Exact = new [] { "exact" }
}
}
},
// the properties below are optional
Certificate = new VirtualGatewayClientTlsCertificateProperty {
File = new VirtualGatewayListenerTlsFileCertificateProperty {
CertificateChain = "certificateChain",
PrivateKey = "privateKey"
},
Sds = new VirtualGatewayListenerTlsSdsCertificateProperty {
SecretName = "secretName"
}
},
Enforce = false,
Ports = new [] { 123 }
}
}
},
Logging = new VirtualGatewayLoggingProperty {
AccessLog = new VirtualGatewayAccessLogProperty {
File = new VirtualGatewayFileAccessLogProperty {
Path = "path",
// the properties below are optional
Format = new LoggingFormatProperty {
Json = new [] { new JsonFormatRefProperty {
Key = "key",
Value = "value"
} },
Text = "text"
}
}
}
}
},
// the properties below are optional
MeshOwner = "meshOwner",
Tags = new [] { new CfnTag {
Key = "key",
Value = "value"
} },
VirtualGatewayName = "virtualGatewayName"
});
Synopsis
Constructors
CfnVirtualGateway(ByRefValue) | Used by jsii to construct an instance of this class from a Javascript-owned object reference |
CfnVirtualGateway(DeputyBase.DeputyProps) | Used by jsii to construct an instance of this class from DeputyProps |
CfnVirtualGateway(Construct, String, ICfnVirtualGatewayProps) |
Properties
AttrArn | The full Amazon Resource Name (ARN) for the virtual gateway. |
AttrId | |
AttrMeshName | The name of the service mesh that the virtual gateway resides in. |
AttrMeshOwner | The AWS IAM account ID of the service mesh owner. |
AttrResourceOwner | The AWS IAM account ID of the resource owner. |
AttrUid | The unique identifier for the virtual gateway. |
AttrVirtualGatewayName | The name of the virtual gateway. |
CFN_RESOURCE_TYPE_NAME | The CloudFormation resource type name for this resource class. |
CfnProperties | |
MeshName | The name of the service mesh that the virtual gateway resides in. |
MeshOwner | The AWS IAM account ID of the service mesh owner. |
Spec | The specifications of the virtual gateway. |
Tags | Tag Manager which manages the tags for this resource. |
TagsRaw | Optional metadata that you can apply to the virtual gateway to assist with categorization and organization. |
VirtualGatewayName | The name of the virtual gateway. |
Methods
Inspect(TreeInspector) | Examines the CloudFormation resource and discloses attributes. |
RenderProperties(IDictionary<String, Object>) |
Constructors
CfnVirtualGateway(ByRefValue)
Used by jsii to construct an instance of this class from a Javascript-owned object reference
protected CfnVirtualGateway(ByRefValue reference)
Parameters
- reference Amazon.JSII.Runtime.Deputy.ByRefValue
The Javascript-owned object reference
CfnVirtualGateway(DeputyBase.DeputyProps)
Used by jsii to construct an instance of this class from DeputyProps
protected CfnVirtualGateway(DeputyBase.DeputyProps props)
Parameters
- props Amazon.JSII.Runtime.Deputy.DeputyBase.DeputyProps
The deputy props
CfnVirtualGateway(Construct, String, ICfnVirtualGatewayProps)
public CfnVirtualGateway(Construct scope, string id, ICfnVirtualGatewayProps props)
Parameters
- scope Constructs.Construct
Scope in which this resource is defined.
- id System.String
Construct identifier for this resource (unique in its scope).
- props ICfnVirtualGatewayProps
Resource properties.
Properties
AttrArn
The full Amazon Resource Name (ARN) for the virtual gateway.
public virtual string AttrArn { get; }
Property Value
System.String
Remarks
CloudformationAttribute: Arn
AttrId
public virtual string AttrId { get; }
Property Value
System.String
Remarks
CloudformationAttribute: Id
AttrMeshName
The name of the service mesh that the virtual gateway resides in.
public virtual string AttrMeshName { get; }
Property Value
System.String
Remarks
CloudformationAttribute: MeshName
AttrMeshOwner
The AWS IAM account ID of the service mesh owner.
public virtual string AttrMeshOwner { get; }
Property Value
System.String
Remarks
If the account ID is not your own, then it's the ID of the account that shared the mesh with your account. For more information about mesh sharing, see Working with Shared Meshes .
CloudformationAttribute: MeshOwner
AttrResourceOwner
The AWS IAM account ID of the resource owner.
public virtual string AttrResourceOwner { get; }
Property Value
System.String
Remarks
If the account ID is not your own, then it's the ID of the mesh owner or of another account that the mesh is shared with. For more information about mesh sharing, see Working with Shared Meshes .
CloudformationAttribute: ResourceOwner
AttrUid
The unique identifier for the virtual gateway.
public virtual string AttrUid { get; }
Property Value
System.String
Remarks
CloudformationAttribute: Uid
AttrVirtualGatewayName
The name of the virtual gateway.
public virtual string AttrVirtualGatewayName { get; }
Property Value
System.String
Remarks
CloudformationAttribute: VirtualGatewayName
CFN_RESOURCE_TYPE_NAME
The CloudFormation resource type name for this resource class.
public static string CFN_RESOURCE_TYPE_NAME { get; }
Property Value
System.String
CfnProperties
protected override IDictionary<string, object> CfnProperties { get; }
Property Value
System.Collections.Generic.IDictionary<System.String, System.Object>
Overrides
MeshName
The name of the service mesh that the virtual gateway resides in.
public virtual string MeshName { get; set; }
Property Value
System.String
MeshOwner
The AWS IAM account ID of the service mesh owner.
public virtual string MeshOwner { get; set; }
Property Value
System.String
Spec
The specifications of the virtual gateway.
public virtual object Spec { get; set; }
Property Value
System.Object
Tags
Tag Manager which manages the tags for this resource.
public virtual TagManager Tags { get; }
Property Value
TagsRaw
Optional metadata that you can apply to the virtual gateway to assist with categorization and organization.
public virtual ICfnTag[] TagsRaw { get; set; }
Property Value
ICfnTag[]
VirtualGatewayName
The name of the virtual gateway.
public virtual string VirtualGatewayName { get; set; }
Property Value
System.String
Methods
Inspect(TreeInspector)
Examines the CloudFormation resource and discloses attributes.
public virtual void Inspect(TreeInspector inspector)
Parameters
- inspector TreeInspector
tree inspector to collect and process attributes.
RenderProperties(IDictionary<String, Object>)
protected override IDictionary<string, object> RenderProperties(IDictionary<string, object> props)
Parameters
- props System.Collections.Generic.IDictionary<System.String, System.Object>
Returns
System.Collections.Generic.IDictionary<System.String, System.Object>