aws-cdk-lib.aws_appmesh.VirtualService

class VirtualService (construct)

LanguageType name
.NETAmazon.CDK.AWS.AppMesh.VirtualService
Gogithub.com/aws/aws-cdk-go/awscdk/v2/awsappmesh#VirtualService
Javasoftware.amazon.awscdk.services.appmesh.VirtualService
Pythonaws_cdk.aws_appmesh.VirtualService
TypeScript (source)aws-cdk-lib » aws_appmesh » VirtualService

Implements IConstruct, IDependable, IResource, IVirtualService

VirtualService represents a service inside an AppMesh.

It routes traffic either to a Virtual Node or to a Virtual Router.

See also: https://docs.aws.amazon.com/app-mesh/latest/userguide/virtual_services.html

Example

declare const mesh: appmesh.Mesh;

const node = new appmesh.VirtualNode(this, 'node', {
  mesh,
  serviceDiscovery: appmesh.ServiceDiscovery.dns('node'),
});

const virtualService = new appmesh.VirtualService(this, 'service-1', {
  virtualServiceProvider: appmesh.VirtualServiceProvider.virtualNode(node),
  virtualServiceName: 'service1.domain.local',
});

node.addBackend(appmesh.Backend.virtualService(virtualService));

Initializer

new VirtualService(scope: Construct, id: string, props: VirtualServiceProps)

Parameters

  • scope Construct
  • id string
  • props VirtualServiceProps

Construct Props

NameTypeDescription
virtualServiceProviderVirtualServiceProviderThe VirtualNode or VirtualRouter which the VirtualService uses as its provider.
virtualServiceName?stringThe name of the VirtualService.

virtualServiceProvider

Type: VirtualServiceProvider

The VirtualNode or VirtualRouter which the VirtualService uses as its provider.


virtualServiceName?

Type: string (optional, default: A name is automatically generated)

The name of the VirtualService.

It is recommended this follows the fully-qualified domain name format, such as "my-service.default.svc.cluster.local".

Example value: service.domain.local

Properties

NameTypeDescription
envResourceEnvironmentThe environment this resource belongs to.
meshIMeshThe Mesh which the VirtualService belongs to.
nodeNodeThe tree node.
stackStackThe stack in which this resource is defined.
virtualServiceArnstringThe Amazon Resource Name (ARN) for the virtual service.
virtualServiceNamestringThe name of the VirtualService, it is recommended this follows the fully-qualified domain name format.

env

Type: ResourceEnvironment

The environment this resource belongs to.

For resources that are created and managed by the CDK (generally, those created by creating new class instances like Role, Bucket, etc.), this is always the same as the environment of the stack they belong to; however, for imported resources (those obtained from static methods like fromRoleArn, fromBucketName, etc.), that might be different than the stack they were imported into.


mesh

Type: IMesh

The Mesh which the VirtualService belongs to.


node

Type: Node

The tree node.


stack

Type: Stack

The stack in which this resource is defined.


virtualServiceArn

Type: string

The Amazon Resource Name (ARN) for the virtual service.


virtualServiceName

Type: string

The name of the VirtualService, it is recommended this follows the fully-qualified domain name format.

Methods

NameDescription
applyRemovalPolicy(policy)Apply the given removal policy to this resource.
toString()Returns a string representation of this construct.
static fromVirtualServiceArn(scope, id, virtualServiceArn)Import an existing VirtualService given an ARN.
static fromVirtualServiceAttributes(scope, id, attrs)Import an existing VirtualService given its attributes.

applyRemovalPolicy(policy)

public applyRemovalPolicy(policy: RemovalPolicy): void

Parameters

  • policy RemovalPolicy

Apply the given removal policy to this resource.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN).


toString()

public toString(): string

Returns

  • string

Returns a string representation of this construct.


static fromVirtualServiceArn(scope, id, virtualServiceArn)

public static fromVirtualServiceArn(scope: Construct, id: string, virtualServiceArn: string): IVirtualService

Parameters

  • scope Construct
  • id string
  • virtualServiceArn string

Returns

  • IVirtualService

Import an existing VirtualService given an ARN.


static fromVirtualServiceAttributes(scope, id, attrs)

public static fromVirtualServiceAttributes(scope: Construct, id: string, attrs: VirtualServiceAttributes): IVirtualService

Parameters

  • scope Construct
  • id string
  • attrs VirtualServiceAttributes

Returns

  • IVirtualService

Import an existing VirtualService given its attributes.