@alicloud/ros-cdk-nlb 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENCE +201 -0
- package/NOTICE +2 -0
- package/README.md +7 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.js +18 -0
- package/lib/listener.d.ts +109 -0
- package/lib/listener.js +47 -0
- package/lib/loadbalancer.d.ts +100 -0
- package/lib/loadbalancer.js +44 -0
- package/lib/nlb.generated.d.ts +620 -0
- package/lib/nlb.generated.js +751 -0
- package/lib/servergroup.d.ts +85 -0
- package/lib/servergroup.js +41 -0
- package/package.json +54 -0
|
@@ -0,0 +1,620 @@
|
|
|
1
|
+
import * as ros from '@alicloud/ros-cdk-core';
|
|
2
|
+
/**
|
|
3
|
+
* Properties for defining a `ALIYUN::NLB::Listener`
|
|
4
|
+
*/
|
|
5
|
+
export interface RosListenerProps {
|
|
6
|
+
/**
|
|
7
|
+
* @Property listenerProtocol: undefined
|
|
8
|
+
*/
|
|
9
|
+
readonly listenerProtocol: string | ros.IResolvable;
|
|
10
|
+
/**
|
|
11
|
+
* @Property loadBalancerId: ID of the LoadBalancer
|
|
12
|
+
*/
|
|
13
|
+
readonly loadBalancerId: string | ros.IResolvable;
|
|
14
|
+
/**
|
|
15
|
+
* @Property serverGroupId: ID of the ServerGroup
|
|
16
|
+
*/
|
|
17
|
+
readonly serverGroupId: string | ros.IResolvable;
|
|
18
|
+
/**
|
|
19
|
+
* @Property alpnEnabled: undefined
|
|
20
|
+
*/
|
|
21
|
+
readonly alpnEnabled?: boolean | ros.IResolvable;
|
|
22
|
+
/**
|
|
23
|
+
* @Property alpnPolicy: Proxy of alpn
|
|
24
|
+
*/
|
|
25
|
+
readonly alpnPolicy?: string | ros.IResolvable;
|
|
26
|
+
/**
|
|
27
|
+
* @Property caCertificateIds: List of the ca certificate ids
|
|
28
|
+
*/
|
|
29
|
+
readonly caCertificateIds?: Array<string | ros.IResolvable> | ros.IResolvable;
|
|
30
|
+
/**
|
|
31
|
+
* @Property caEnabled: Whether to open CA
|
|
32
|
+
*/
|
|
33
|
+
readonly caEnabled?: boolean | ros.IResolvable;
|
|
34
|
+
/**
|
|
35
|
+
* @Property certificateIds: List of the certificate ids
|
|
36
|
+
*/
|
|
37
|
+
readonly certificateIds?: Array<string | ros.IResolvable> | ros.IResolvable;
|
|
38
|
+
/**
|
|
39
|
+
* @Property cps: New connection rate limit of Instance
|
|
40
|
+
*/
|
|
41
|
+
readonly cps?: number | ros.IResolvable;
|
|
42
|
+
/**
|
|
43
|
+
* @Property enable: Whether to start listener or not. Default True.
|
|
44
|
+
*/
|
|
45
|
+
readonly enable?: boolean | ros.IResolvable;
|
|
46
|
+
/**
|
|
47
|
+
* @Property endPort: EndPort of the portRange
|
|
48
|
+
*/
|
|
49
|
+
readonly endPort?: number | ros.IResolvable;
|
|
50
|
+
/**
|
|
51
|
+
* @Property idleTimeout: Specifies the connection idle timeout
|
|
52
|
+
*/
|
|
53
|
+
readonly idleTimeout?: number | ros.IResolvable;
|
|
54
|
+
/**
|
|
55
|
+
* @Property listenerDescription: Description of the listener, [2, 256] characters.
|
|
56
|
+
*/
|
|
57
|
+
readonly listenerDescription?: string | ros.IResolvable;
|
|
58
|
+
/**
|
|
59
|
+
* @Property listenerPort: Port of the listener,[0, 65535] the portRange setting need 0
|
|
60
|
+
*/
|
|
61
|
+
readonly listenerPort?: number | ros.IResolvable;
|
|
62
|
+
/**
|
|
63
|
+
* @Property mss: Max length of the TCP packet
|
|
64
|
+
*/
|
|
65
|
+
readonly mss?: number | ros.IResolvable;
|
|
66
|
+
/**
|
|
67
|
+
* @Property proxyProtocolEnabled: Whether to enable ppv2 function
|
|
68
|
+
*/
|
|
69
|
+
readonly proxyProtocolEnabled?: boolean | ros.IResolvable;
|
|
70
|
+
/**
|
|
71
|
+
* @Property secSensorEnabled: Whether to enable the second-level monitoring function
|
|
72
|
+
*/
|
|
73
|
+
readonly secSensorEnabled?: boolean | ros.IResolvable;
|
|
74
|
+
/**
|
|
75
|
+
* @Property securityPolicyId: Only valid for TcpSSL protocol monitoring
|
|
76
|
+
*/
|
|
77
|
+
readonly securityPolicyId?: string | ros.IResolvable;
|
|
78
|
+
/**
|
|
79
|
+
* @Property startPort: StartPort of the portRange
|
|
80
|
+
*/
|
|
81
|
+
readonly startPort?: number | ros.IResolvable;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* A ROS template type: `ALIYUN::NLB::Listener`
|
|
85
|
+
*/
|
|
86
|
+
export declare class RosListener extends ros.RosResource {
|
|
87
|
+
/**
|
|
88
|
+
* The resource type name for this resource class.
|
|
89
|
+
*/
|
|
90
|
+
static readonly ROS_RESOURCE_TYPE_NAME = "ALIYUN::NLB::Listener";
|
|
91
|
+
/**
|
|
92
|
+
* A factory method that creates a new instance of this class from an object
|
|
93
|
+
* containing the properties of this ROS resource.
|
|
94
|
+
*/
|
|
95
|
+
/**
|
|
96
|
+
* @Attribute ListenerId: Id of created Listener
|
|
97
|
+
*/
|
|
98
|
+
readonly attrListenerId: ros.IResolvable;
|
|
99
|
+
/**
|
|
100
|
+
* @Attribute ListenerPort: ListenerPort of created Listener
|
|
101
|
+
*/
|
|
102
|
+
readonly attrListenerPort: ros.IResolvable;
|
|
103
|
+
enableResourcePropertyConstraint: boolean;
|
|
104
|
+
/**
|
|
105
|
+
* @Property listenerProtocol: undefined
|
|
106
|
+
*/
|
|
107
|
+
listenerProtocol: string | ros.IResolvable;
|
|
108
|
+
/**
|
|
109
|
+
* @Property loadBalancerId: ID of the LoadBalancer
|
|
110
|
+
*/
|
|
111
|
+
loadBalancerId: string | ros.IResolvable;
|
|
112
|
+
/**
|
|
113
|
+
* @Property serverGroupId: ID of the ServerGroup
|
|
114
|
+
*/
|
|
115
|
+
serverGroupId: string | ros.IResolvable;
|
|
116
|
+
/**
|
|
117
|
+
* @Property alpnEnabled: undefined
|
|
118
|
+
*/
|
|
119
|
+
alpnEnabled: boolean | ros.IResolvable | undefined;
|
|
120
|
+
/**
|
|
121
|
+
* @Property alpnPolicy: Proxy of alpn
|
|
122
|
+
*/
|
|
123
|
+
alpnPolicy: string | ros.IResolvable | undefined;
|
|
124
|
+
/**
|
|
125
|
+
* @Property caCertificateIds: List of the ca certificate ids
|
|
126
|
+
*/
|
|
127
|
+
caCertificateIds: Array<string | ros.IResolvable> | ros.IResolvable | undefined;
|
|
128
|
+
/**
|
|
129
|
+
* @Property caEnabled: Whether to open CA
|
|
130
|
+
*/
|
|
131
|
+
caEnabled: boolean | ros.IResolvable | undefined;
|
|
132
|
+
/**
|
|
133
|
+
* @Property certificateIds: List of the certificate ids
|
|
134
|
+
*/
|
|
135
|
+
certificateIds: Array<string | ros.IResolvable> | ros.IResolvable | undefined;
|
|
136
|
+
/**
|
|
137
|
+
* @Property cps: New connection rate limit of Instance
|
|
138
|
+
*/
|
|
139
|
+
cps: number | ros.IResolvable | undefined;
|
|
140
|
+
/**
|
|
141
|
+
* @Property enable: Whether to start listener or not. Default True.
|
|
142
|
+
*/
|
|
143
|
+
enable: boolean | ros.IResolvable | undefined;
|
|
144
|
+
/**
|
|
145
|
+
* @Property endPort: EndPort of the portRange
|
|
146
|
+
*/
|
|
147
|
+
endPort: number | ros.IResolvable | undefined;
|
|
148
|
+
/**
|
|
149
|
+
* @Property idleTimeout: Specifies the connection idle timeout
|
|
150
|
+
*/
|
|
151
|
+
idleTimeout: number | ros.IResolvable | undefined;
|
|
152
|
+
/**
|
|
153
|
+
* @Property listenerDescription: Description of the listener, [2, 256] characters.
|
|
154
|
+
*/
|
|
155
|
+
listenerDescription: string | ros.IResolvable | undefined;
|
|
156
|
+
/**
|
|
157
|
+
* @Property listenerPort: Port of the listener,[0, 65535] the portRange setting need 0
|
|
158
|
+
*/
|
|
159
|
+
listenerPort: number | ros.IResolvable | undefined;
|
|
160
|
+
/**
|
|
161
|
+
* @Property mss: Max length of the TCP packet
|
|
162
|
+
*/
|
|
163
|
+
mss: number | ros.IResolvable | undefined;
|
|
164
|
+
/**
|
|
165
|
+
* @Property proxyProtocolEnabled: Whether to enable ppv2 function
|
|
166
|
+
*/
|
|
167
|
+
proxyProtocolEnabled: boolean | ros.IResolvable | undefined;
|
|
168
|
+
/**
|
|
169
|
+
* @Property secSensorEnabled: Whether to enable the second-level monitoring function
|
|
170
|
+
*/
|
|
171
|
+
secSensorEnabled: boolean | ros.IResolvable | undefined;
|
|
172
|
+
/**
|
|
173
|
+
* @Property securityPolicyId: Only valid for TcpSSL protocol monitoring
|
|
174
|
+
*/
|
|
175
|
+
securityPolicyId: string | ros.IResolvable | undefined;
|
|
176
|
+
/**
|
|
177
|
+
* @Property startPort: StartPort of the portRange
|
|
178
|
+
*/
|
|
179
|
+
startPort: number | ros.IResolvable | undefined;
|
|
180
|
+
/**
|
|
181
|
+
* Create a new `ALIYUN::NLB::Listener`.
|
|
182
|
+
*
|
|
183
|
+
* @param scope - scope in which this resource is defined
|
|
184
|
+
* @param id - scoped id of the resource
|
|
185
|
+
* @param props - resource properties
|
|
186
|
+
*/
|
|
187
|
+
constructor(scope: ros.Construct, id: string, props: RosListenerProps, enableResourcePropertyConstraint: boolean);
|
|
188
|
+
protected get rosProperties(): {
|
|
189
|
+
[key: string]: any;
|
|
190
|
+
};
|
|
191
|
+
protected renderProperties(props: {
|
|
192
|
+
[key: string]: any;
|
|
193
|
+
}): {
|
|
194
|
+
[key: string]: any;
|
|
195
|
+
};
|
|
196
|
+
}
|
|
197
|
+
/**
|
|
198
|
+
* Properties for defining a `ALIYUN::NLB::LoadBalancer`
|
|
199
|
+
*/
|
|
200
|
+
export interface RosLoadBalancerProps {
|
|
201
|
+
/**
|
|
202
|
+
* @Property addressType: The type of IP address that the NLB instance uses to provide services. Valid values:
|
|
203
|
+
* Internet: The NLB instance uses a public IP address. The domain name of the NLB instance is resolved to the public IP address. Therefore, the NLB instance can be accessed over the Internet.
|
|
204
|
+
* Intranet: The NLB instance uses a private IP address. The domain name of the NLB instance is resolved to the private IP address. Therefore, the NLB instance can be accessed over the VPC where the NLB instance is deployed.
|
|
205
|
+
*/
|
|
206
|
+
readonly addressType: string | ros.IResolvable;
|
|
207
|
+
/**
|
|
208
|
+
* @Property vpcId: The ID of the virtual private cloud (VPC) where the NLB instance is deployed.
|
|
209
|
+
*/
|
|
210
|
+
readonly vpcId: string | ros.IResolvable;
|
|
211
|
+
/**
|
|
212
|
+
* @Property zoneMappings: The zones and the vSwitches in the zones. You must specify at least two zones.
|
|
213
|
+
*/
|
|
214
|
+
readonly zoneMappings: Array<RosLoadBalancer.ZoneMappingsProperty | ros.IResolvable> | ros.IResolvable;
|
|
215
|
+
/**
|
|
216
|
+
* @Property addressIpVersion: The version of IP address that the NLB instance uses to provide services.
|
|
217
|
+
*/
|
|
218
|
+
readonly addressIpVersion?: string | ros.IResolvable;
|
|
219
|
+
/**
|
|
220
|
+
* @Property bandwidthPackageId: Attach common bandwidth package to load balancer.
|
|
221
|
+
*/
|
|
222
|
+
readonly bandwidthPackageId?: string | ros.IResolvable;
|
|
223
|
+
/**
|
|
224
|
+
* @Property crossZoneEnabled: Whether enable cross zone. Default: true
|
|
225
|
+
*/
|
|
226
|
+
readonly crossZoneEnabled?: boolean | ros.IResolvable;
|
|
227
|
+
/**
|
|
228
|
+
* @Property loadBalancerBillingConfig: The configuration of the billing method.
|
|
229
|
+
*/
|
|
230
|
+
readonly loadBalancerBillingConfig?: RosLoadBalancer.LoadBalancerBillingConfigProperty | ros.IResolvable;
|
|
231
|
+
/**
|
|
232
|
+
* @Property loadBalancerName: The name of the NLB instance.
|
|
233
|
+
* The name must be 2 to 128 characters in length, and can contain letters, digits, periods(.), underscores (_), and hyphens (-). The name must start with a letter.
|
|
234
|
+
*/
|
|
235
|
+
readonly loadBalancerName?: string | ros.IResolvable;
|
|
236
|
+
/**
|
|
237
|
+
* @Property loadBalancerType: The type of the NLB instance.
|
|
238
|
+
*/
|
|
239
|
+
readonly loadBalancerType?: string | ros.IResolvable;
|
|
240
|
+
/**
|
|
241
|
+
* @Property resourceGroupId: The ID of the resource group.
|
|
242
|
+
*/
|
|
243
|
+
readonly resourceGroupId?: string | ros.IResolvable;
|
|
244
|
+
/**
|
|
245
|
+
* @Property trafficAffinityEnabled: Whether enable traffic affinity. Default: false
|
|
246
|
+
*/
|
|
247
|
+
readonly trafficAffinityEnabled?: boolean | ros.IResolvable;
|
|
248
|
+
}
|
|
249
|
+
/**
|
|
250
|
+
* A ROS template type: `ALIYUN::NLB::LoadBalancer`
|
|
251
|
+
*/
|
|
252
|
+
export declare class RosLoadBalancer extends ros.RosResource {
|
|
253
|
+
/**
|
|
254
|
+
* The resource type name for this resource class.
|
|
255
|
+
*/
|
|
256
|
+
static readonly ROS_RESOURCE_TYPE_NAME = "ALIYUN::NLB::LoadBalancer";
|
|
257
|
+
/**
|
|
258
|
+
* A factory method that creates a new instance of this class from an object
|
|
259
|
+
* containing the properties of this ROS resource.
|
|
260
|
+
*/
|
|
261
|
+
/**
|
|
262
|
+
* @Attribute AddressIpVersion: The version of IP address that the NLB instance uses to provide services.
|
|
263
|
+
*/
|
|
264
|
+
readonly attrAddressIpVersion: ros.IResolvable;
|
|
265
|
+
/**
|
|
266
|
+
* @Attribute AddressType: The type of IP address that the NLB instance uses to provide services.
|
|
267
|
+
*/
|
|
268
|
+
readonly attrAddressType: ros.IResolvable;
|
|
269
|
+
/**
|
|
270
|
+
* @Attribute DNSName: The domain name of the NLB instance.
|
|
271
|
+
*/
|
|
272
|
+
readonly attrDnsName: ros.IResolvable;
|
|
273
|
+
/**
|
|
274
|
+
* @Attribute LoadBalancerId: The ID of the NLB instance.
|
|
275
|
+
*/
|
|
276
|
+
readonly attrLoadBalancerId: ros.IResolvable;
|
|
277
|
+
/**
|
|
278
|
+
* @Attribute LoadBalancerType: The type of the NLB instance.
|
|
279
|
+
*/
|
|
280
|
+
readonly attrLoadBalancerType: ros.IResolvable;
|
|
281
|
+
/**
|
|
282
|
+
* @Attribute VpcId: The ID of the virtual private cloud (VPC) where the NLB instance is deployed.
|
|
283
|
+
*/
|
|
284
|
+
readonly attrVpcId: ros.IResolvable;
|
|
285
|
+
/**
|
|
286
|
+
* @Attribute ZoneMappings: The zones, vSwitches and addresses which are mapped to the zones.
|
|
287
|
+
*/
|
|
288
|
+
readonly attrZoneMappings: ros.IResolvable;
|
|
289
|
+
enableResourcePropertyConstraint: boolean;
|
|
290
|
+
/**
|
|
291
|
+
* @Property addressType: The type of IP address that the NLB instance uses to provide services. Valid values:
|
|
292
|
+
* Internet: The NLB instance uses a public IP address. The domain name of the NLB instance is resolved to the public IP address. Therefore, the NLB instance can be accessed over the Internet.
|
|
293
|
+
* Intranet: The NLB instance uses a private IP address. The domain name of the NLB instance is resolved to the private IP address. Therefore, the NLB instance can be accessed over the VPC where the NLB instance is deployed.
|
|
294
|
+
*/
|
|
295
|
+
addressType: string | ros.IResolvable;
|
|
296
|
+
/**
|
|
297
|
+
* @Property vpcId: The ID of the virtual private cloud (VPC) where the NLB instance is deployed.
|
|
298
|
+
*/
|
|
299
|
+
vpcId: string | ros.IResolvable;
|
|
300
|
+
/**
|
|
301
|
+
* @Property zoneMappings: The zones and the vSwitches in the zones. You must specify at least two zones.
|
|
302
|
+
*/
|
|
303
|
+
zoneMappings: Array<RosLoadBalancer.ZoneMappingsProperty | ros.IResolvable> | ros.IResolvable;
|
|
304
|
+
/**
|
|
305
|
+
* @Property addressIpVersion: The version of IP address that the NLB instance uses to provide services.
|
|
306
|
+
*/
|
|
307
|
+
addressIpVersion: string | ros.IResolvable | undefined;
|
|
308
|
+
/**
|
|
309
|
+
* @Property bandwidthPackageId: Attach common bandwidth package to load balancer.
|
|
310
|
+
*/
|
|
311
|
+
bandwidthPackageId: string | ros.IResolvable | undefined;
|
|
312
|
+
/**
|
|
313
|
+
* @Property crossZoneEnabled: Whether enable cross zone. Default: true
|
|
314
|
+
*/
|
|
315
|
+
crossZoneEnabled: boolean | ros.IResolvable | undefined;
|
|
316
|
+
/**
|
|
317
|
+
* @Property loadBalancerBillingConfig: The configuration of the billing method.
|
|
318
|
+
*/
|
|
319
|
+
loadBalancerBillingConfig: RosLoadBalancer.LoadBalancerBillingConfigProperty | ros.IResolvable | undefined;
|
|
320
|
+
/**
|
|
321
|
+
* @Property loadBalancerName: The name of the NLB instance.
|
|
322
|
+
* The name must be 2 to 128 characters in length, and can contain letters, digits, periods(.), underscores (_), and hyphens (-). The name must start with a letter.
|
|
323
|
+
*/
|
|
324
|
+
loadBalancerName: string | ros.IResolvable | undefined;
|
|
325
|
+
/**
|
|
326
|
+
* @Property loadBalancerType: The type of the NLB instance.
|
|
327
|
+
*/
|
|
328
|
+
loadBalancerType: string | ros.IResolvable | undefined;
|
|
329
|
+
/**
|
|
330
|
+
* @Property resourceGroupId: The ID of the resource group.
|
|
331
|
+
*/
|
|
332
|
+
resourceGroupId: string | ros.IResolvable | undefined;
|
|
333
|
+
/**
|
|
334
|
+
* @Property trafficAffinityEnabled: Whether enable traffic affinity. Default: false
|
|
335
|
+
*/
|
|
336
|
+
trafficAffinityEnabled: boolean | ros.IResolvable | undefined;
|
|
337
|
+
/**
|
|
338
|
+
* Create a new `ALIYUN::NLB::LoadBalancer`.
|
|
339
|
+
*
|
|
340
|
+
* @param scope - scope in which this resource is defined
|
|
341
|
+
* @param id - scoped id of the resource
|
|
342
|
+
* @param props - resource properties
|
|
343
|
+
*/
|
|
344
|
+
constructor(scope: ros.Construct, id: string, props: RosLoadBalancerProps, enableResourcePropertyConstraint: boolean);
|
|
345
|
+
protected get rosProperties(): {
|
|
346
|
+
[key: string]: any;
|
|
347
|
+
};
|
|
348
|
+
protected renderProperties(props: {
|
|
349
|
+
[key: string]: any;
|
|
350
|
+
}): {
|
|
351
|
+
[key: string]: any;
|
|
352
|
+
};
|
|
353
|
+
}
|
|
354
|
+
export declare namespace RosLoadBalancer {
|
|
355
|
+
/**
|
|
356
|
+
* @stability external
|
|
357
|
+
*/
|
|
358
|
+
interface LoadBalancerBillingConfigProperty {
|
|
359
|
+
/**
|
|
360
|
+
* @Property payType: The billing method of the NLB instance.
|
|
361
|
+
*/
|
|
362
|
+
readonly payType?: string | ros.IResolvable;
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
export declare namespace RosLoadBalancer {
|
|
366
|
+
/**
|
|
367
|
+
* @stability external
|
|
368
|
+
*/
|
|
369
|
+
interface ZoneMappingsProperty {
|
|
370
|
+
/**
|
|
371
|
+
* @Property zoneId: The ID of the zone to which the NLB instance belongs.
|
|
372
|
+
*/
|
|
373
|
+
readonly zoneId: string | ros.IResolvable;
|
|
374
|
+
/**
|
|
375
|
+
* @Property vSwitchId: The ID of the vSwitch in the zone. Each zone can contain only one vSwitch and one subnet.
|
|
376
|
+
*/
|
|
377
|
+
readonly vSwitchId: string | ros.IResolvable;
|
|
378
|
+
/**
|
|
379
|
+
* @Property allocationId:
|
|
380
|
+
*/
|
|
381
|
+
readonly allocationId?: string | ros.IResolvable;
|
|
382
|
+
/**
|
|
383
|
+
* @Property privateIPv4Address:
|
|
384
|
+
*/
|
|
385
|
+
readonly privateIPv4Address?: string | ros.IResolvable;
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* Properties for defining a `ALIYUN::NLB::ServerGroup`
|
|
390
|
+
*/
|
|
391
|
+
export interface RosServerGroupProps {
|
|
392
|
+
/**
|
|
393
|
+
* @Property healthCheckConfig: Health Check Config
|
|
394
|
+
*/
|
|
395
|
+
readonly healthCheckConfig: RosServerGroup.HealthCheckConfigProperty | ros.IResolvable;
|
|
396
|
+
/**
|
|
397
|
+
* @Property serverGroupName: Name of ServerGroup
|
|
398
|
+
*/
|
|
399
|
+
readonly serverGroupName: string | ros.IResolvable;
|
|
400
|
+
/**
|
|
401
|
+
* @Property vpcId: ID of VPC
|
|
402
|
+
*/
|
|
403
|
+
readonly vpcId: string | ros.IResolvable;
|
|
404
|
+
/**
|
|
405
|
+
* @Property addressIpVersion: IP version of address
|
|
406
|
+
*/
|
|
407
|
+
readonly addressIpVersion?: string | ros.IResolvable;
|
|
408
|
+
/**
|
|
409
|
+
* @Property connectionDrainEnabled: Whether to enable graceful connection interruption
|
|
410
|
+
*/
|
|
411
|
+
readonly connectionDrainEnabled?: boolean | ros.IResolvable;
|
|
412
|
+
/**
|
|
413
|
+
* @Property connectionDrainTimeout: Time of graceful connection interruption
|
|
414
|
+
*/
|
|
415
|
+
readonly connectionDrainTimeout?: number | ros.IResolvable;
|
|
416
|
+
/**
|
|
417
|
+
* @Property persistenceEnabled: Whether to enable session persistence
|
|
418
|
+
*/
|
|
419
|
+
readonly persistenceEnabled?: boolean | ros.IResolvable;
|
|
420
|
+
/**
|
|
421
|
+
* @Property persistenceTimeout: Time of session persistence
|
|
422
|
+
*/
|
|
423
|
+
readonly persistenceTimeout?: number | ros.IResolvable;
|
|
424
|
+
/**
|
|
425
|
+
* @Property preserveClientIpEnabled: Whether to enable the client address retention function
|
|
426
|
+
*/
|
|
427
|
+
readonly preserveClientIpEnabled?: boolean | ros.IResolvable;
|
|
428
|
+
/**
|
|
429
|
+
* @Property protocol: Protocol of ServerGroup
|
|
430
|
+
*/
|
|
431
|
+
readonly protocol?: string | ros.IResolvable;
|
|
432
|
+
/**
|
|
433
|
+
* @Property resourceGroupId: undefined
|
|
434
|
+
*/
|
|
435
|
+
readonly resourceGroupId?: string | ros.IResolvable;
|
|
436
|
+
/**
|
|
437
|
+
* @Property scheduler: undefined
|
|
438
|
+
*/
|
|
439
|
+
readonly scheduler?: string | ros.IResolvable;
|
|
440
|
+
/**
|
|
441
|
+
* @Property serverGroupType: Type of ServerGroup
|
|
442
|
+
*/
|
|
443
|
+
readonly serverGroupType?: string | ros.IResolvable;
|
|
444
|
+
/**
|
|
445
|
+
* @Property servers: undefined
|
|
446
|
+
*/
|
|
447
|
+
readonly servers?: Array<RosServerGroup.ServersProperty | ros.IResolvable> | ros.IResolvable;
|
|
448
|
+
}
|
|
449
|
+
/**
|
|
450
|
+
* A ROS template type: `ALIYUN::NLB::ServerGroup`
|
|
451
|
+
*/
|
|
452
|
+
export declare class RosServerGroup extends ros.RosResource {
|
|
453
|
+
/**
|
|
454
|
+
* The resource type name for this resource class.
|
|
455
|
+
*/
|
|
456
|
+
static readonly ROS_RESOURCE_TYPE_NAME = "ALIYUN::NLB::ServerGroup";
|
|
457
|
+
/**
|
|
458
|
+
* A factory method that creates a new instance of this class from an object
|
|
459
|
+
* containing the properties of this ROS resource.
|
|
460
|
+
*/
|
|
461
|
+
/**
|
|
462
|
+
* @Attribute ServerGroupId: ID of ServerGroup
|
|
463
|
+
*/
|
|
464
|
+
readonly attrServerGroupId: ros.IResolvable;
|
|
465
|
+
enableResourcePropertyConstraint: boolean;
|
|
466
|
+
/**
|
|
467
|
+
* @Property healthCheckConfig: Health Check Config
|
|
468
|
+
*/
|
|
469
|
+
healthCheckConfig: RosServerGroup.HealthCheckConfigProperty | ros.IResolvable;
|
|
470
|
+
/**
|
|
471
|
+
* @Property serverGroupName: Name of ServerGroup
|
|
472
|
+
*/
|
|
473
|
+
serverGroupName: string | ros.IResolvable;
|
|
474
|
+
/**
|
|
475
|
+
* @Property vpcId: ID of VPC
|
|
476
|
+
*/
|
|
477
|
+
vpcId: string | ros.IResolvable;
|
|
478
|
+
/**
|
|
479
|
+
* @Property addressIpVersion: IP version of address
|
|
480
|
+
*/
|
|
481
|
+
addressIpVersion: string | ros.IResolvable | undefined;
|
|
482
|
+
/**
|
|
483
|
+
* @Property connectionDrainEnabled: Whether to enable graceful connection interruption
|
|
484
|
+
*/
|
|
485
|
+
connectionDrainEnabled: boolean | ros.IResolvable | undefined;
|
|
486
|
+
/**
|
|
487
|
+
* @Property connectionDrainTimeout: Time of graceful connection interruption
|
|
488
|
+
*/
|
|
489
|
+
connectionDrainTimeout: number | ros.IResolvable | undefined;
|
|
490
|
+
/**
|
|
491
|
+
* @Property persistenceEnabled: Whether to enable session persistence
|
|
492
|
+
*/
|
|
493
|
+
persistenceEnabled: boolean | ros.IResolvable | undefined;
|
|
494
|
+
/**
|
|
495
|
+
* @Property persistenceTimeout: Time of session persistence
|
|
496
|
+
*/
|
|
497
|
+
persistenceTimeout: number | ros.IResolvable | undefined;
|
|
498
|
+
/**
|
|
499
|
+
* @Property preserveClientIpEnabled: Whether to enable the client address retention function
|
|
500
|
+
*/
|
|
501
|
+
preserveClientIpEnabled: boolean | ros.IResolvable | undefined;
|
|
502
|
+
/**
|
|
503
|
+
* @Property protocol: Protocol of ServerGroup
|
|
504
|
+
*/
|
|
505
|
+
protocol: string | ros.IResolvable | undefined;
|
|
506
|
+
/**
|
|
507
|
+
* @Property resourceGroupId: undefined
|
|
508
|
+
*/
|
|
509
|
+
resourceGroupId: string | ros.IResolvable | undefined;
|
|
510
|
+
/**
|
|
511
|
+
* @Property scheduler: undefined
|
|
512
|
+
*/
|
|
513
|
+
scheduler: string | ros.IResolvable | undefined;
|
|
514
|
+
/**
|
|
515
|
+
* @Property serverGroupType: Type of ServerGroup
|
|
516
|
+
*/
|
|
517
|
+
serverGroupType: string | ros.IResolvable | undefined;
|
|
518
|
+
/**
|
|
519
|
+
* @Property servers: undefined
|
|
520
|
+
*/
|
|
521
|
+
servers: Array<RosServerGroup.ServersProperty | ros.IResolvable> | ros.IResolvable | undefined;
|
|
522
|
+
/**
|
|
523
|
+
* Create a new `ALIYUN::NLB::ServerGroup`.
|
|
524
|
+
*
|
|
525
|
+
* @param scope - scope in which this resource is defined
|
|
526
|
+
* @param id - scoped id of the resource
|
|
527
|
+
* @param props - resource properties
|
|
528
|
+
*/
|
|
529
|
+
constructor(scope: ros.Construct, id: string, props: RosServerGroupProps, enableResourcePropertyConstraint: boolean);
|
|
530
|
+
protected get rosProperties(): {
|
|
531
|
+
[key: string]: any;
|
|
532
|
+
};
|
|
533
|
+
protected renderProperties(props: {
|
|
534
|
+
[key: string]: any;
|
|
535
|
+
}): {
|
|
536
|
+
[key: string]: any;
|
|
537
|
+
};
|
|
538
|
+
}
|
|
539
|
+
export declare namespace RosServerGroup {
|
|
540
|
+
/**
|
|
541
|
+
* @stability external
|
|
542
|
+
*/
|
|
543
|
+
interface HealthCheckConfigProperty {
|
|
544
|
+
/**
|
|
545
|
+
* @Property healthCheckInterval: Health check interval
|
|
546
|
+
*/
|
|
547
|
+
readonly healthCheckInterval?: number | ros.IResolvable;
|
|
548
|
+
/**
|
|
549
|
+
* @Property healthCheckUrl: Url for health check
|
|
550
|
+
*/
|
|
551
|
+
readonly healthCheckUrl?: string | ros.IResolvable;
|
|
552
|
+
/**
|
|
553
|
+
* @Property healthCheckConnectPort: Port of health check
|
|
554
|
+
*/
|
|
555
|
+
readonly healthCheckConnectPort?: number | ros.IResolvable;
|
|
556
|
+
/**
|
|
557
|
+
* @Property unhealthyThreshold: Determine the health check status of the backend server from success to fail.
|
|
558
|
+
*/
|
|
559
|
+
readonly unhealthyThreshold?: number | ros.IResolvable;
|
|
560
|
+
/**
|
|
561
|
+
* @Property httpCheckMethod: When the health check protocol is http or https type, the selected health check detection method
|
|
562
|
+
*/
|
|
563
|
+
readonly httpCheckMethod: string | ros.IResolvable;
|
|
564
|
+
/**
|
|
565
|
+
* @Property healthyThreshold: Determine the health check status of the backend server from fail to success.
|
|
566
|
+
*/
|
|
567
|
+
readonly healthyThreshold?: number | ros.IResolvable;
|
|
568
|
+
/**
|
|
569
|
+
* @Property healthCheckConnectTimeout: Maximum timeout for each health check response
|
|
570
|
+
*/
|
|
571
|
+
readonly healthCheckConnectTimeout?: number | ros.IResolvable;
|
|
572
|
+
/**
|
|
573
|
+
* @Property healthCheckDomain: Domain name for health check
|
|
574
|
+
*/
|
|
575
|
+
readonly healthCheckDomain?: string | ros.IResolvable;
|
|
576
|
+
/**
|
|
577
|
+
* @Property healthCheckEnabled: Whether to open health check
|
|
578
|
+
*/
|
|
579
|
+
readonly healthCheckEnabled?: boolean | ros.IResolvable;
|
|
580
|
+
/**
|
|
581
|
+
* @Property healthCheckHttpCode: undefined
|
|
582
|
+
*/
|
|
583
|
+
readonly healthCheckHttpCode?: Array<string | ros.IResolvable> | ros.IResolvable;
|
|
584
|
+
/**
|
|
585
|
+
* @Property healthCheckType: Type of health check
|
|
586
|
+
*/
|
|
587
|
+
readonly healthCheckType?: string | ros.IResolvable;
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
export declare namespace RosServerGroup {
|
|
591
|
+
/**
|
|
592
|
+
* @stability external
|
|
593
|
+
*/
|
|
594
|
+
interface ServersProperty {
|
|
595
|
+
/**
|
|
596
|
+
* @Property serverType: Type of backend server
|
|
597
|
+
*/
|
|
598
|
+
readonly serverType: string | ros.IResolvable;
|
|
599
|
+
/**
|
|
600
|
+
* @Property description: undefined
|
|
601
|
+
*/
|
|
602
|
+
readonly description?: string | ros.IResolvable;
|
|
603
|
+
/**
|
|
604
|
+
* @Property serverId: Id of server
|
|
605
|
+
*/
|
|
606
|
+
readonly serverId: string | ros.IResolvable;
|
|
607
|
+
/**
|
|
608
|
+
* @Property serverIp: undefined
|
|
609
|
+
*/
|
|
610
|
+
readonly serverIp?: string | ros.IResolvable;
|
|
611
|
+
/**
|
|
612
|
+
* @Property port: Port used by the backend server
|
|
613
|
+
*/
|
|
614
|
+
readonly port: number | ros.IResolvable;
|
|
615
|
+
/**
|
|
616
|
+
* @Property weight: Weight of the backend server
|
|
617
|
+
*/
|
|
618
|
+
readonly weight?: number | ros.IResolvable;
|
|
619
|
+
}
|
|
620
|
+
}
|