pulumi-alicloud 3.56.0a1717175543__py3-none-any.whl → 3.57.0__py3-none-any.whl

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.
Files changed (55) hide show
  1. pulumi_alicloud/__init__.py +72 -0
  2. pulumi_alicloud/cen/get_transit_router_available_resources.py +32 -11
  3. pulumi_alicloud/cen/outputs.py +23 -1
  4. pulumi_alicloud/cfg/remediation.py +10 -2
  5. pulumi_alicloud/clickhouse/db_cluster.py +47 -0
  6. pulumi_alicloud/cms/__init__.py +1 -0
  7. pulumi_alicloud/cms/_inputs.py +18 -18
  8. pulumi_alicloud/cms/alarm.py +38 -26
  9. pulumi_alicloud/cms/get_site_monitors.py +243 -0
  10. pulumi_alicloud/cms/outputs.py +92 -18
  11. pulumi_alicloud/cs/node_pool.py +7 -7
  12. pulumi_alicloud/ecs/_inputs.py +10 -14
  13. pulumi_alicloud/ecs/image_import.py +162 -100
  14. pulumi_alicloud/ecs/outputs.py +10 -14
  15. pulumi_alicloud/ecs/security_group_rule.py +2 -2
  16. pulumi_alicloud/eds/network_package.py +22 -8
  17. pulumi_alicloud/expressconnect/__init__.py +8 -0
  18. pulumi_alicloud/expressconnect/_inputs.py +40 -0
  19. pulumi_alicloud/expressconnect/outputs.py +51 -0
  20. pulumi_alicloud/expressconnect/router_express_connect_router.py +458 -0
  21. pulumi_alicloud/expressconnect/router_tr_association.py +578 -0
  22. pulumi_alicloud/expressconnect/router_vbr_child_instance.py +475 -0
  23. pulumi_alicloud/expressconnect/router_vpc_association.py +500 -0
  24. pulumi_alicloud/expressconnect/traffic_qos.py +284 -0
  25. pulumi_alicloud/expressconnect/traffic_qos_association.py +336 -0
  26. pulumi_alicloud/expressconnect/traffic_qos_queue.py +520 -0
  27. pulumi_alicloud/expressconnect/traffic_qos_rule.py +1174 -0
  28. pulumi_alicloud/gpdb/__init__.py +1 -0
  29. pulumi_alicloud/gpdb/db_resource_group.py +364 -0
  30. pulumi_alicloud/gpdb/instance.py +47 -0
  31. pulumi_alicloud/hbase/get_instance_types.py +2 -2
  32. pulumi_alicloud/mongodb/instance.py +7 -7
  33. pulumi_alicloud/oss/bucket_cors.py +8 -4
  34. pulumi_alicloud/oss/bucket_data_redundancy_transition.py +12 -4
  35. pulumi_alicloud/oss/bucket_public_access_block.py +12 -4
  36. pulumi_alicloud/ots/instance.py +7 -7
  37. pulumi_alicloud/ots/table.py +149 -8
  38. pulumi_alicloud/pulumi-plugin.json +1 -1
  39. pulumi_alicloud/sae/load_balancer_internet.py +4 -2
  40. pulumi_alicloud/sae/load_balancer_intranet.py +4 -2
  41. pulumi_alicloud/servicemesh/_inputs.py +0 -6
  42. pulumi_alicloud/servicemesh/outputs.py +0 -6
  43. pulumi_alicloud/servicemesh/service_mesh.py +2 -2
  44. pulumi_alicloud/simpleapplicationserver/snapshot.py +10 -2
  45. pulumi_alicloud/vpc/bgp_peer.py +36 -8
  46. pulumi_alicloud/vpc/network.py +0 -4
  47. pulumi_alicloud/vpn/connection.py +220 -0
  48. pulumi_alicloud/vpn/gateway_vpn_attachment.py +2 -2
  49. pulumi_alicloud/vpn/ipsec_server.py +20 -12
  50. pulumi_alicloud/vpn/pbr_route_entry.py +152 -16
  51. pulumi_alicloud/vpn/route_entry.py +158 -44
  52. {pulumi_alicloud-3.56.0a1717175543.dist-info → pulumi_alicloud-3.57.0.dist-info}/METADATA +1 -1
  53. {pulumi_alicloud-3.56.0a1717175543.dist-info → pulumi_alicloud-3.57.0.dist-info}/RECORD +55 -45
  54. {pulumi_alicloud-3.56.0a1717175543.dist-info → pulumi_alicloud-3.57.0.dist-info}/WHEEL +0 -0
  55. {pulumi_alicloud-3.56.0a1717175543.dist-info → pulumi_alicloud-3.57.0.dist-info}/top_level.txt +0 -0
@@ -127,11 +127,15 @@ class Snapshot(pulumi.CustomResource):
127
127
  ```python
128
128
  import pulumi
129
129
  import pulumi_alicloud as alicloud
130
+ import pulumi_random as random
130
131
 
131
132
  config = pulumi.Config()
132
133
  name = config.get("name")
133
134
  if name is None:
134
135
  name = "tf_example"
136
+ default_integer = random.index.Integer("default",
137
+ min=10000,
138
+ max=99999)
135
139
  default = alicloud.simpleapplicationserver.get_images(platform="Linux")
136
140
  default_get_server_plans = alicloud.simpleapplicationserver.get_server_plans(platform="Linux")
137
141
  default_instance = alicloud.simpleapplicationserver.Instance("default",
@@ -144,7 +148,7 @@ class Snapshot(pulumi.CustomResource):
144
148
  default_get_server_disks = alicloud.simpleapplicationserver.get_server_disks_output(instance_id=default_instance.id)
145
149
  default_snapshot = alicloud.simpleapplicationserver.Snapshot("default",
146
150
  disk_id=default_get_server_disks.ids[0],
147
- snapshot_name=name)
151
+ snapshot_name=f"{name}-{default_integer['result']}")
148
152
  ```
149
153
 
150
154
  ## Import
@@ -180,11 +184,15 @@ class Snapshot(pulumi.CustomResource):
180
184
  ```python
181
185
  import pulumi
182
186
  import pulumi_alicloud as alicloud
187
+ import pulumi_random as random
183
188
 
184
189
  config = pulumi.Config()
185
190
  name = config.get("name")
186
191
  if name is None:
187
192
  name = "tf_example"
193
+ default_integer = random.index.Integer("default",
194
+ min=10000,
195
+ max=99999)
188
196
  default = alicloud.simpleapplicationserver.get_images(platform="Linux")
189
197
  default_get_server_plans = alicloud.simpleapplicationserver.get_server_plans(platform="Linux")
190
198
  default_instance = alicloud.simpleapplicationserver.Instance("default",
@@ -197,7 +205,7 @@ class Snapshot(pulumi.CustomResource):
197
205
  default_get_server_disks = alicloud.simpleapplicationserver.get_server_disks_output(instance_id=default_instance.id)
198
206
  default_snapshot = alicloud.simpleapplicationserver.Snapshot("default",
199
207
  disk_id=default_get_server_disks.ids[0],
200
- snapshot_name=name)
208
+ snapshot_name=f"{name}-{default_integer['result']}")
201
209
  ```
202
210
 
203
211
  ## Import
@@ -103,6 +103,7 @@ class _BgpPeerState:
103
103
  def __init__(__self__, *,
104
104
  bfd_multi_hop: Optional[pulumi.Input[int]] = None,
105
105
  bgp_group_id: Optional[pulumi.Input[str]] = None,
106
+ bgp_peer_name: Optional[pulumi.Input[str]] = None,
106
107
  enable_bfd: Optional[pulumi.Input[bool]] = None,
107
108
  ip_version: Optional[pulumi.Input[str]] = None,
108
109
  peer_ip_address: Optional[pulumi.Input[str]] = None,
@@ -111,15 +112,18 @@ class _BgpPeerState:
111
112
  Input properties used for looking up and filtering BgpPeer resources.
112
113
  :param pulumi.Input[int] bfd_multi_hop: The BFD hop count. Valid values: `1` to `255`. **NOTE:** The attribute is valid when the attribute `enable_bfd` is `true`. The parameter specifies the maximum number of network devices that a packet can traverse from the source to the destination. You can set a proper value based on the factors that affect the physical connection.
113
114
  :param pulumi.Input[str] bgp_group_id: The ID of the BGP group.
115
+ :param pulumi.Input[str] bgp_peer_name: The name of the BGP neighbor.
114
116
  :param pulumi.Input[bool] enable_bfd: Specifies whether to enable the Bidirectional Forwarding Detection (BFD) feature.
115
117
  :param pulumi.Input[str] ip_version: The IP version.
116
118
  :param pulumi.Input[str] peer_ip_address: The IP address of the BGP peer.
117
- :param pulumi.Input[str] status: The status of the BGP peer.
119
+ :param pulumi.Input[str] status: Status of BGP neighbors.
118
120
  """
119
121
  if bfd_multi_hop is not None:
120
122
  pulumi.set(__self__, "bfd_multi_hop", bfd_multi_hop)
121
123
  if bgp_group_id is not None:
122
124
  pulumi.set(__self__, "bgp_group_id", bgp_group_id)
125
+ if bgp_peer_name is not None:
126
+ pulumi.set(__self__, "bgp_peer_name", bgp_peer_name)
123
127
  if enable_bfd is not None:
124
128
  pulumi.set(__self__, "enable_bfd", enable_bfd)
125
129
  if ip_version is not None:
@@ -153,6 +157,18 @@ class _BgpPeerState:
153
157
  def bgp_group_id(self, value: Optional[pulumi.Input[str]]):
154
158
  pulumi.set(self, "bgp_group_id", value)
155
159
 
160
+ @property
161
+ @pulumi.getter(name="bgpPeerName")
162
+ def bgp_peer_name(self) -> Optional[pulumi.Input[str]]:
163
+ """
164
+ The name of the BGP neighbor.
165
+ """
166
+ return pulumi.get(self, "bgp_peer_name")
167
+
168
+ @bgp_peer_name.setter
169
+ def bgp_peer_name(self, value: Optional[pulumi.Input[str]]):
170
+ pulumi.set(self, "bgp_peer_name", value)
171
+
156
172
  @property
157
173
  @pulumi.getter(name="enableBfd")
158
174
  def enable_bfd(self) -> Optional[pulumi.Input[bool]]:
@@ -193,7 +209,7 @@ class _BgpPeerState:
193
209
  @pulumi.getter
194
210
  def status(self) -> Optional[pulumi.Input[str]]:
195
211
  """
196
- The status of the BGP peer.
212
+ Status of BGP neighbors.
197
213
  """
198
214
  return pulumi.get(self, "status")
199
215
 
@@ -214,7 +230,7 @@ class BgpPeer(pulumi.CustomResource):
214
230
  peer_ip_address: Optional[pulumi.Input[str]] = None,
215
231
  __props__=None):
216
232
  """
217
- Provides a VPC Bgp Peer resource.
233
+ Provides a Express Connect Bgp Peer resource.
218
234
 
219
235
  For information about VPC Bgp Peer and how to use it, see [What is Bgp Peer](https://www.alibabacloud.com/help/en/doc-detail/91267.html).
220
236
 
@@ -264,7 +280,7 @@ class BgpPeer(pulumi.CustomResource):
264
280
 
265
281
  ## Import
266
282
 
267
- VPC Bgp Peer can be imported using the id, e.g.
283
+ Express Connect Bgp Peer can be imported using the id, e.g.
268
284
 
269
285
  ```sh
270
286
  $ pulumi import alicloud:vpc/bgpPeer:BgpPeer example <id>
@@ -285,7 +301,7 @@ class BgpPeer(pulumi.CustomResource):
285
301
  args: BgpPeerArgs,
286
302
  opts: Optional[pulumi.ResourceOptions] = None):
287
303
  """
288
- Provides a VPC Bgp Peer resource.
304
+ Provides a Express Connect Bgp Peer resource.
289
305
 
290
306
  For information about VPC Bgp Peer and how to use it, see [What is Bgp Peer](https://www.alibabacloud.com/help/en/doc-detail/91267.html).
291
307
 
@@ -335,7 +351,7 @@ class BgpPeer(pulumi.CustomResource):
335
351
 
336
352
  ## Import
337
353
 
338
- VPC Bgp Peer can be imported using the id, e.g.
354
+ Express Connect Bgp Peer can be imported using the id, e.g.
339
355
 
340
356
  ```sh
341
357
  $ pulumi import alicloud:vpc/bgpPeer:BgpPeer example <id>
@@ -377,6 +393,7 @@ class BgpPeer(pulumi.CustomResource):
377
393
  __props__.__dict__["enable_bfd"] = enable_bfd
378
394
  __props__.__dict__["ip_version"] = ip_version
379
395
  __props__.__dict__["peer_ip_address"] = peer_ip_address
396
+ __props__.__dict__["bgp_peer_name"] = None
380
397
  __props__.__dict__["status"] = None
381
398
  super(BgpPeer, __self__).__init__(
382
399
  'alicloud:vpc/bgpPeer:BgpPeer',
@@ -390,6 +407,7 @@ class BgpPeer(pulumi.CustomResource):
390
407
  opts: Optional[pulumi.ResourceOptions] = None,
391
408
  bfd_multi_hop: Optional[pulumi.Input[int]] = None,
392
409
  bgp_group_id: Optional[pulumi.Input[str]] = None,
410
+ bgp_peer_name: Optional[pulumi.Input[str]] = None,
393
411
  enable_bfd: Optional[pulumi.Input[bool]] = None,
394
412
  ip_version: Optional[pulumi.Input[str]] = None,
395
413
  peer_ip_address: Optional[pulumi.Input[str]] = None,
@@ -403,10 +421,11 @@ class BgpPeer(pulumi.CustomResource):
403
421
  :param pulumi.ResourceOptions opts: Options for the resource.
404
422
  :param pulumi.Input[int] bfd_multi_hop: The BFD hop count. Valid values: `1` to `255`. **NOTE:** The attribute is valid when the attribute `enable_bfd` is `true`. The parameter specifies the maximum number of network devices that a packet can traverse from the source to the destination. You can set a proper value based on the factors that affect the physical connection.
405
423
  :param pulumi.Input[str] bgp_group_id: The ID of the BGP group.
424
+ :param pulumi.Input[str] bgp_peer_name: The name of the BGP neighbor.
406
425
  :param pulumi.Input[bool] enable_bfd: Specifies whether to enable the Bidirectional Forwarding Detection (BFD) feature.
407
426
  :param pulumi.Input[str] ip_version: The IP version.
408
427
  :param pulumi.Input[str] peer_ip_address: The IP address of the BGP peer.
409
- :param pulumi.Input[str] status: The status of the BGP peer.
428
+ :param pulumi.Input[str] status: Status of BGP neighbors.
410
429
  """
411
430
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
412
431
 
@@ -414,6 +433,7 @@ class BgpPeer(pulumi.CustomResource):
414
433
 
415
434
  __props__.__dict__["bfd_multi_hop"] = bfd_multi_hop
416
435
  __props__.__dict__["bgp_group_id"] = bgp_group_id
436
+ __props__.__dict__["bgp_peer_name"] = bgp_peer_name
417
437
  __props__.__dict__["enable_bfd"] = enable_bfd
418
438
  __props__.__dict__["ip_version"] = ip_version
419
439
  __props__.__dict__["peer_ip_address"] = peer_ip_address
@@ -436,6 +456,14 @@ class BgpPeer(pulumi.CustomResource):
436
456
  """
437
457
  return pulumi.get(self, "bgp_group_id")
438
458
 
459
+ @property
460
+ @pulumi.getter(name="bgpPeerName")
461
+ def bgp_peer_name(self) -> pulumi.Output[str]:
462
+ """
463
+ The name of the BGP neighbor.
464
+ """
465
+ return pulumi.get(self, "bgp_peer_name")
466
+
439
467
  @property
440
468
  @pulumi.getter(name="enableBfd")
441
469
  def enable_bfd(self) -> pulumi.Output[Optional[bool]]:
@@ -464,7 +492,7 @@ class BgpPeer(pulumi.CustomResource):
464
492
  @pulumi.getter
465
493
  def status(self) -> pulumi.Output[str]:
466
494
  """
467
- The status of the BGP peer.
495
+ Status of BGP neighbors.
468
496
  """
469
497
  return pulumi.get(self, "status")
470
498
 
@@ -649,8 +649,6 @@ class Network(pulumi.CustomResource):
649
649
 
650
650
  > **NOTE:** This resource will auto build a router and a route table while it uses `vpc.Network` to build a vpc resource.
651
651
 
652
- > **NOTE:** Currently, the IPv4 / IPv6 dual-stack VPC function is under public testing. Only the following regions support IPv4 / IPv6 dual-stack VPC: `cn-hangzhou`, `cn-shanghai`, `cn-shenzhen`, `cn-beijing`, `cn-huhehaote`, `cn-hongkong` and `ap-southeast-1`, and need to apply for public beta qualification. To use, please [submit an application](https://www.alibabacloud.com/help/en/vpc/getting-started/create-a-vpc-with-an-ipv6-cidr-block).
653
-
654
652
  ## Module Support
655
653
 
656
654
  You can use the existing vpc module
@@ -725,8 +723,6 @@ class Network(pulumi.CustomResource):
725
723
 
726
724
  > **NOTE:** This resource will auto build a router and a route table while it uses `vpc.Network` to build a vpc resource.
727
725
 
728
- > **NOTE:** Currently, the IPv4 / IPv6 dual-stack VPC function is under public testing. Only the following regions support IPv4 / IPv6 dual-stack VPC: `cn-hangzhou`, `cn-shanghai`, `cn-shenzhen`, `cn-beijing`, `cn-huhehaote`, `cn-hongkong` and `ap-southeast-1`, and need to apply for public beta qualification. To use, please [submit an application](https://www.alibabacloud.com/help/en/vpc/getting-started/create-a-vpc-with-an-ipv6-cidr-block).
729
-
730
726
  ## Module Support
731
727
 
732
728
  You can use the existing vpc module
@@ -715,6 +715,116 @@ class Connection(pulumi.CustomResource):
715
715
 
716
716
  Basic Usage
717
717
 
718
+ [IPsec-VPN connections support the dual-tunnel mode](https://www.alibabacloud.com/help/en/vpn/product-overview/ipsec-vpn-connections-support-the-dual-tunnel-mode)
719
+
720
+ ```python
721
+ import pulumi
722
+ import pulumi_alicloud as alicloud
723
+
724
+ config = pulumi.Config()
725
+ name = config.get("name")
726
+ if name is None:
727
+ name = "terraform-example"
728
+ spec = config.get("spec")
729
+ if spec is None:
730
+ spec = "5"
731
+ default = alicloud.vpn.get_gateway_zones(spec="5M")
732
+ default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$",
733
+ cidr_block="172.16.0.0/16")
734
+ default0 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
735
+ zone_id=default.ids[0])
736
+ default1 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
737
+ zone_id=default.ids[1])
738
+ h_a__vpn = alicloud.vpn.Gateway("HA-VPN",
739
+ vpn_type="Normal",
740
+ disaster_recovery_vswitch_id=default1.ids[0],
741
+ vpn_gateway_name=name,
742
+ vswitch_id=default0.ids[0],
743
+ auto_pay=True,
744
+ vpc_id=default_get_networks.ids[0],
745
+ network_type="public",
746
+ payment_type="Subscription",
747
+ enable_ipsec=True,
748
+ bandwidth=spec)
749
+ default_customer_gateway = alicloud.vpn.CustomerGateway("defaultCustomerGateway",
750
+ description="defaultCustomerGateway",
751
+ ip_address="2.2.2.5",
752
+ asn="2224",
753
+ customer_gateway_name=name)
754
+ change_customer_gateway = alicloud.vpn.CustomerGateway("changeCustomerGateway",
755
+ description="changeCustomerGateway",
756
+ ip_address="2.2.2.6",
757
+ asn="2225",
758
+ customer_gateway_name=name)
759
+ default_connection = alicloud.vpn.Connection("default",
760
+ vpn_gateway_id=h_a__vpn.id,
761
+ vpn_connection_name=name,
762
+ local_subnets=["3.0.0.0/24"],
763
+ remote_subnets=[
764
+ "10.0.0.0/24",
765
+ "10.0.1.0/24",
766
+ ],
767
+ tags={
768
+ "Created": "TF",
769
+ "For": "example",
770
+ },
771
+ enable_tunnels_bgp=True,
772
+ tunnel_options_specifications=[
773
+ alicloud.vpn.ConnectionTunnelOptionsSpecificationArgs(
774
+ tunnel_ipsec_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIpsecConfigArgs(
775
+ ipsec_auth_alg="md5",
776
+ ipsec_enc_alg="aes256",
777
+ ipsec_lifetime=16400,
778
+ ipsec_pfs="group5",
779
+ ),
780
+ customer_gateway_id=default_customer_gateway.id,
781
+ role="master",
782
+ tunnel_bgp_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelBgpConfigArgs(
783
+ local_asn="1219002",
784
+ tunnel_cidr="169.254.30.0/30",
785
+ local_bgp_ip="169.254.30.1",
786
+ ),
787
+ tunnel_ike_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIkeConfigArgs(
788
+ ike_mode="aggressive",
789
+ ike_version="ikev2",
790
+ local_id="localid_tunnel2",
791
+ psk="12345678",
792
+ remote_id="remote2",
793
+ ike_auth_alg="md5",
794
+ ike_enc_alg="aes256",
795
+ ike_lifetime=3600,
796
+ ike_pfs="group14",
797
+ ),
798
+ ),
799
+ alicloud.vpn.ConnectionTunnelOptionsSpecificationArgs(
800
+ tunnel_ike_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIkeConfigArgs(
801
+ remote_id="remote24",
802
+ ike_enc_alg="aes256",
803
+ ike_lifetime=27000,
804
+ ike_mode="aggressive",
805
+ ike_pfs="group5",
806
+ ike_auth_alg="md5",
807
+ ike_version="ikev2",
808
+ local_id="localid_tunnel2",
809
+ psk="12345678",
810
+ ),
811
+ tunnel_ipsec_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIpsecConfigArgs(
812
+ ipsec_lifetime=2700,
813
+ ipsec_pfs="group14",
814
+ ipsec_auth_alg="md5",
815
+ ipsec_enc_alg="aes256",
816
+ ),
817
+ customer_gateway_id=default_customer_gateway.id,
818
+ role="slave",
819
+ tunnel_bgp_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelBgpConfigArgs(
820
+ local_asn="1219002",
821
+ local_bgp_ip="169.254.40.1",
822
+ tunnel_cidr="169.254.40.0/30",
823
+ ),
824
+ ),
825
+ ])
826
+ ```
827
+
718
828
  ## Import
719
829
 
720
830
  VPN connection can be imported using the id, e.g.
@@ -761,6 +871,116 @@ class Connection(pulumi.CustomResource):
761
871
 
762
872
  Basic Usage
763
873
 
874
+ [IPsec-VPN connections support the dual-tunnel mode](https://www.alibabacloud.com/help/en/vpn/product-overview/ipsec-vpn-connections-support-the-dual-tunnel-mode)
875
+
876
+ ```python
877
+ import pulumi
878
+ import pulumi_alicloud as alicloud
879
+
880
+ config = pulumi.Config()
881
+ name = config.get("name")
882
+ if name is None:
883
+ name = "terraform-example"
884
+ spec = config.get("spec")
885
+ if spec is None:
886
+ spec = "5"
887
+ default = alicloud.vpn.get_gateway_zones(spec="5M")
888
+ default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$",
889
+ cidr_block="172.16.0.0/16")
890
+ default0 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
891
+ zone_id=default.ids[0])
892
+ default1 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
893
+ zone_id=default.ids[1])
894
+ h_a__vpn = alicloud.vpn.Gateway("HA-VPN",
895
+ vpn_type="Normal",
896
+ disaster_recovery_vswitch_id=default1.ids[0],
897
+ vpn_gateway_name=name,
898
+ vswitch_id=default0.ids[0],
899
+ auto_pay=True,
900
+ vpc_id=default_get_networks.ids[0],
901
+ network_type="public",
902
+ payment_type="Subscription",
903
+ enable_ipsec=True,
904
+ bandwidth=spec)
905
+ default_customer_gateway = alicloud.vpn.CustomerGateway("defaultCustomerGateway",
906
+ description="defaultCustomerGateway",
907
+ ip_address="2.2.2.5",
908
+ asn="2224",
909
+ customer_gateway_name=name)
910
+ change_customer_gateway = alicloud.vpn.CustomerGateway("changeCustomerGateway",
911
+ description="changeCustomerGateway",
912
+ ip_address="2.2.2.6",
913
+ asn="2225",
914
+ customer_gateway_name=name)
915
+ default_connection = alicloud.vpn.Connection("default",
916
+ vpn_gateway_id=h_a__vpn.id,
917
+ vpn_connection_name=name,
918
+ local_subnets=["3.0.0.0/24"],
919
+ remote_subnets=[
920
+ "10.0.0.0/24",
921
+ "10.0.1.0/24",
922
+ ],
923
+ tags={
924
+ "Created": "TF",
925
+ "For": "example",
926
+ },
927
+ enable_tunnels_bgp=True,
928
+ tunnel_options_specifications=[
929
+ alicloud.vpn.ConnectionTunnelOptionsSpecificationArgs(
930
+ tunnel_ipsec_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIpsecConfigArgs(
931
+ ipsec_auth_alg="md5",
932
+ ipsec_enc_alg="aes256",
933
+ ipsec_lifetime=16400,
934
+ ipsec_pfs="group5",
935
+ ),
936
+ customer_gateway_id=default_customer_gateway.id,
937
+ role="master",
938
+ tunnel_bgp_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelBgpConfigArgs(
939
+ local_asn="1219002",
940
+ tunnel_cidr="169.254.30.0/30",
941
+ local_bgp_ip="169.254.30.1",
942
+ ),
943
+ tunnel_ike_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIkeConfigArgs(
944
+ ike_mode="aggressive",
945
+ ike_version="ikev2",
946
+ local_id="localid_tunnel2",
947
+ psk="12345678",
948
+ remote_id="remote2",
949
+ ike_auth_alg="md5",
950
+ ike_enc_alg="aes256",
951
+ ike_lifetime=3600,
952
+ ike_pfs="group14",
953
+ ),
954
+ ),
955
+ alicloud.vpn.ConnectionTunnelOptionsSpecificationArgs(
956
+ tunnel_ike_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIkeConfigArgs(
957
+ remote_id="remote24",
958
+ ike_enc_alg="aes256",
959
+ ike_lifetime=27000,
960
+ ike_mode="aggressive",
961
+ ike_pfs="group5",
962
+ ike_auth_alg="md5",
963
+ ike_version="ikev2",
964
+ local_id="localid_tunnel2",
965
+ psk="12345678",
966
+ ),
967
+ tunnel_ipsec_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelIpsecConfigArgs(
968
+ ipsec_lifetime=2700,
969
+ ipsec_pfs="group14",
970
+ ipsec_auth_alg="md5",
971
+ ipsec_enc_alg="aes256",
972
+ ),
973
+ customer_gateway_id=default_customer_gateway.id,
974
+ role="slave",
975
+ tunnel_bgp_config=alicloud.vpn.ConnectionTunnelOptionsSpecificationTunnelBgpConfigArgs(
976
+ local_asn="1219002",
977
+ local_bgp_ip="169.254.40.1",
978
+ tunnel_cidr="169.254.40.0/30",
979
+ ),
980
+ ),
981
+ ])
982
+ ```
983
+
764
984
  ## Import
765
985
 
766
986
  VPN connection can be imported using the id, e.g.
@@ -480,7 +480,7 @@ class GatewayVpnAttachment(pulumi.CustomResource):
480
480
  if name is None:
481
481
  name = "tf-example"
482
482
  default = alicloud.vpn.CustomerGateway("default",
483
- name=name,
483
+ customer_gateway_name=name,
484
484
  ip_address="42.104.22.210",
485
485
  asn="45014",
486
486
  description=name)
@@ -575,7 +575,7 @@ class GatewayVpnAttachment(pulumi.CustomResource):
575
575
  if name is None:
576
576
  name = "tf-example"
577
577
  default = alicloud.vpn.CustomerGateway("default",
578
- name=name,
578
+ customer_gateway_name=name,
579
579
  ip_address="42.104.22.210",
580
580
  asn="45014",
581
581
  description=name)
@@ -380,19 +380,23 @@ class IpsecServer(pulumi.CustomResource):
380
380
  config = pulumi.Config()
381
381
  name = config.get("name")
382
382
  if name is None:
383
- name = "tf-example"
383
+ name = "terraform-example"
384
384
  default = alicloud.get_zones(available_resource_creation="VSwitch")
385
- default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$")
386
- default_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
385
+ default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$",
386
+ cidr_block="172.16.0.0/16")
387
+ default0 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
387
388
  zone_id=default.ids[0])
389
+ default1 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
390
+ zone_id=default.ids[1])
388
391
  default_gateway = alicloud.vpn.Gateway("default",
389
- name=name,
392
+ vpn_gateway_name=name,
390
393
  vpc_id=default_get_networks.ids[0],
391
394
  bandwidth=10,
392
395
  enable_ssl=True,
393
396
  description=name,
394
- instance_charge_type="PrePaid",
395
- vswitch_id=default_get_switches.ids[0])
397
+ payment_type="Subscription",
398
+ vswitch_id=default0.ids[0],
399
+ disaster_recovery_vswitch_id=default1.ids[0])
396
400
  foo = alicloud.vpn.IpsecServer("foo",
397
401
  client_ip_pool="10.0.0.0/24",
398
402
  ipsec_server_name=name,
@@ -446,19 +450,23 @@ class IpsecServer(pulumi.CustomResource):
446
450
  config = pulumi.Config()
447
451
  name = config.get("name")
448
452
  if name is None:
449
- name = "tf-example"
453
+ name = "terraform-example"
450
454
  default = alicloud.get_zones(available_resource_creation="VSwitch")
451
- default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$")
452
- default_get_switches = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
455
+ default_get_networks = alicloud.vpc.get_networks(name_regex="^default-NODELETING$",
456
+ cidr_block="172.16.0.0/16")
457
+ default0 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
453
458
  zone_id=default.ids[0])
459
+ default1 = alicloud.vpc.get_switches(vpc_id=default_get_networks.ids[0],
460
+ zone_id=default.ids[1])
454
461
  default_gateway = alicloud.vpn.Gateway("default",
455
- name=name,
462
+ vpn_gateway_name=name,
456
463
  vpc_id=default_get_networks.ids[0],
457
464
  bandwidth=10,
458
465
  enable_ssl=True,
459
466
  description=name,
460
- instance_charge_type="PrePaid",
461
- vswitch_id=default_get_switches.ids[0])
467
+ payment_type="Subscription",
468
+ vswitch_id=default0.ids[0],
469
+ disaster_recovery_vswitch_id=default1.ids[0])
462
470
  foo = alicloud.vpn.IpsecServer("foo",
463
471
  client_ip_pool="10.0.0.0/24",
464
472
  ipsec_server_name=name,