Interface CfnService.IServiceConnectConfigurationProperty
The Service Connect configuration of your Amazon ECS service.
Namespace: Amazon.CDK.AWS.ECS
Assembly: Amazon.CDK.Lib.dll
Syntax (csharp)
public interface IServiceConnectConfigurationProperty
Syntax (vb)
Public Interface IServiceConnectConfigurationProperty
Remarks
The configuration for this service to discover and connect to services, and be discovered by, and connected from, other services within a namespace.
Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see Service Connect in the Amazon Elastic Container Service Developer Guide .
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.ECS;
var serviceConnectConfigurationProperty = new ServiceConnectConfigurationProperty {
Enabled = false,
// the properties below are optional
LogConfiguration = new LogConfigurationProperty {
LogDriver = "logDriver",
Options = new Dictionary<string, string> {
{ "optionsKey", "options" }
},
SecretOptions = new [] { new SecretProperty {
Name = "name",
ValueFrom = "valueFrom"
} }
},
Namespace = "namespace",
Services = new [] { new ServiceConnectServiceProperty {
PortName = "portName",
// the properties below are optional
ClientAliases = new [] { new ServiceConnectClientAliasProperty {
Port = 123,
// the properties below are optional
DnsName = "dnsName"
} },
DiscoveryName = "discoveryName",
IngressPortOverride = 123,
Timeout = new TimeoutConfigurationProperty {
IdleTimeoutSeconds = 123,
PerRequestTimeoutSeconds = 123
},
Tls = new ServiceConnectTlsConfigurationProperty {
IssuerCertificateAuthority = new ServiceConnectTlsCertificateAuthorityProperty {
AwsPcaAuthorityArn = "awsPcaAuthorityArn"
},
// the properties below are optional
KmsKey = "kmsKey",
RoleArn = "roleArn"
}
} }
};
Synopsis
Properties
Enabled | Specifies whether to use Service Connect with this service. |
LogConfiguration | The log configuration for the container. |
Namespace | The namespace name or full Amazon Resource Name (ARN) of the AWS Cloud Map namespace for use with Service Connect. |
Services | The list of Service Connect service objects. |
Properties
Enabled
Specifies whether to use Service Connect with this service.
object Enabled { get; }
Property Value
System.Object
Remarks
LogConfiguration
The log configuration for the container.
virtual object LogConfiguration { get; }
Property Value
System.Object
Remarks
This parameter maps to LogConfig
in the docker container create command and the --log-driver
option to docker run.
By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition.
Understand the following when specifying a log configuration for your containers.
For tasks on AWS Fargate , the supported log drivers are awslogs
, splunk
, and awsfirelens
.
For tasks hosted on Amazon EC2 instances, the supported log drivers are awslogs
, fluentd
, gelf
, json-file
, journald
, syslog
, splunk
, and awsfirelens
.
Namespace
The namespace name or full Amazon Resource Name (ARN) of the AWS Cloud Map namespace for use with Service Connect.
virtual string Namespace { get; }
Property Value
System.String
Remarks
The namespace must be in the same AWS Region as the Amazon ECS service and cluster. The type of namespace doesn't affect Service Connect. For more information about AWS Cloud Map , see Working with Services in the AWS Cloud Map Developer Guide .
Services
The list of Service Connect service objects.
virtual object Services { get; }
Property Value
System.Object
Remarks
These are names and aliases (also known as endpoints) that are used by other Amazon ECS services to connect to this service.
This field is not required for a "client" Amazon ECS service that's a member of a namespace only to connect to other services within the namespace. An example of this would be a frontend application that accepts incoming requests from either a load balancer that's attached to the service or by other means.
An object selects a port from the task definition, assigns a name for the AWS Cloud Map service, and a list of aliases (endpoints) and ports for client applications to refer to this service.