aws-cdk-lib.aws_appmesh.CfnVirtualGateway.VirtualGatewaySpecProperty

interface VirtualGatewaySpecProperty

LanguageType name
.NETAmazon.CDK.AWS.AppMesh.CfnVirtualGateway.VirtualGatewaySpecProperty
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsappmesh#CfnVirtualGateway_VirtualGatewaySpecProperty
Javasoftware.amazon.awscdk.services.appmesh.CfnVirtualGateway.VirtualGatewaySpecProperty
Pythonaws_cdk.aws_appmesh.CfnVirtualGateway.VirtualGatewaySpecProperty
TypeScript aws-cdk-lib » aws_appmesh » CfnVirtualGateway » VirtualGatewaySpecProperty

An object that represents the specification of a service mesh resource.

Example

// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_appmesh as appmesh } from 'aws-cdk-lib';
const virtualGatewaySpecProperty: appmesh.CfnVirtualGateway.VirtualGatewaySpecProperty = {
  listeners: [{
    portMapping: {
      port: 123,
      protocol: 'protocol',
    },

    // the properties below are optional
    connectionPool: {
      grpc: {
        maxRequests: 123,
      },
      http: {
        maxConnections: 123,

        // the properties below are optional
        maxPendingRequests: 123,
      },
      http2: {
        maxRequests: 123,
      },
    },
    healthCheck: {
      healthyThreshold: 123,
      intervalMillis: 123,
      protocol: 'protocol',
      timeoutMillis: 123,
      unhealthyThreshold: 123,

      // the properties below are optional
      path: 'path',
      port: 123,
    },
    tls: {
      certificate: {
        acm: {
          certificateArn: 'certificateArn',
        },
        file: {
          certificateChain: 'certificateChain',
          privateKey: 'privateKey',
        },
        sds: {
          secretName: 'secretName',
        },
      },
      mode: 'mode',

      // the properties below are optional
      validation: {
        trust: {
          file: {
            certificateChain: 'certificateChain',
          },
          sds: {
            secretName: 'secretName',
          },
        },

        // the properties below are optional
        subjectAlternativeNames: {
          match: {
            exact: ['exact'],
          },
        },
      },
    },
  }],

  // the properties below are optional
  backendDefaults: {
    clientPolicy: {
      tls: {
        validation: {
          trust: {
            acm: {
              certificateAuthorityArns: ['certificateAuthorityArns'],
            },
            file: {
              certificateChain: 'certificateChain',
            },
            sds: {
              secretName: 'secretName',
            },
          },

          // the properties below are optional
          subjectAlternativeNames: {
            match: {
              exact: ['exact'],
            },
          },
        },

        // the properties below are optional
        certificate: {
          file: {
            certificateChain: 'certificateChain',
            privateKey: 'privateKey',
          },
          sds: {
            secretName: 'secretName',
          },
        },
        enforce: false,
        ports: [123],
      },
    },
  },
  logging: {
    accessLog: {
      file: {
        path: 'path',

        // the properties below are optional
        format: {
          json: [{
            key: 'key',
            value: 'value',
          }],
          text: 'text',
        },
      },
    },
  },
};

Properties

NameTypeDescription
listenersIResolvable | IResolvable | VirtualGatewayListenerProperty[]The listeners that the mesh endpoint is expected to receive inbound traffic from.
backendDefaults?IResolvable | VirtualGatewayBackendDefaultsPropertyA reference to an object that represents the defaults for backends.
logging?IResolvable | VirtualGatewayLoggingPropertyAn object that represents logging information.

listeners

Type: IResolvable | IResolvable | VirtualGatewayListenerProperty[]

The listeners that the mesh endpoint is expected to receive inbound traffic from.

You can specify one listener.


backendDefaults?

Type: IResolvable | VirtualGatewayBackendDefaultsProperty (optional)

A reference to an object that represents the defaults for backends.


logging?

Type: IResolvable | VirtualGatewayLoggingProperty (optional)

An object that represents logging information.