Class: AWSCDK::EC2::CfnRouteServerProps
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::EC2::CfnRouteServerProps
- Defined in:
- ec2/cfn_route_server_props.rb
Overview
Properties for defining a CfnRouteServer.
Instance Attribute Summary collapse
-
#amazon_side_asn ⇒ Numeric
readonly
The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance.
-
#persist_routes ⇒ String?
readonly
Indicates whether routes should be persisted after all BGP sessions are terminated.
-
#persist_routes_duration ⇒ Numeric?
readonly
The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB.
-
#sns_notifications_enabled ⇒ Boolean, ...
readonly
Indicates whether SNS notifications are enabled for the route server.
-
#tags ⇒ Array<AWSCDK::CfnTag>?
readonly
Any tags assigned to the route server.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(amazon_side_asn:, persist_routes: nil, persist_routes_duration: nil, sns_notifications_enabled: nil, tags: nil) ⇒ CfnRouteServerProps
constructor
A new instance of CfnRouteServerProps.
- #to_jsii ⇒ Object
Constructor Details
#initialize(amazon_side_asn:, persist_routes: nil, persist_routes_duration: nil, sns_notifications_enabled: nil, tags: nil) ⇒ CfnRouteServerProps
Returns a new instance of CfnRouteServerProps.
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'ec2/cfn_route_server_props.rb', line 14 def initialize(amazon_side_asn:, persist_routes: nil, persist_routes_duration: nil, sns_notifications_enabled: nil, tags: nil) @amazon_side_asn = amazon_side_asn Jsii::Type.check_type(@amazon_side_asn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "amazonSideAsn") @persist_routes = persist_routes Jsii::Type.check_type(@persist_routes, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "persistRoutes") unless @persist_routes.nil? @persist_routes_duration = persist_routes_duration Jsii::Type.check_type(@persist_routes_duration, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "persistRoutesDuration") unless @persist_routes_duration.nil? @sns_notifications_enabled = sns_notifications_enabled Jsii::Type.check_type(@sns_notifications_enabled, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3sicHJpbWl0aXZlIjoiYm9vbGVhbiJ9LHsiZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifV19fQ==")), "snsNotificationsEnabled") unless @sns_notifications_enabled.nil? @tags = .is_a?(Array) ? .map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : Jsii::Type.check_type(@tags, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tags") unless @tags.nil? end |
Instance Attribute Details
#amazon_side_asn ⇒ Numeric (readonly)
The Border Gateway Protocol (BGP) Autonomous System Number (ASN) for the appliance.
Valid values are from 1 to 4294967295. We recommend using a private ASN in the 64512–65534 (16-bit ASN) or 4200000000–4294967294 (32-bit ASN) range.
33 34 35 |
# File 'ec2/cfn_route_server_props.rb', line 33 def amazon_side_asn @amazon_side_asn end |
#persist_routes ⇒ String? (readonly)
Indicates whether routes should be persisted after all BGP sessions are terminated.
38 39 40 |
# File 'ec2/cfn_route_server_props.rb', line 38 def persist_routes @persist_routes end |
#persist_routes_duration ⇒ Numeric? (readonly)
The number of minutes a route server will wait after BGP is re-established to unpersist the routes in the FIB and RIB.
Value must be in the range of 1-5. The default value is 1. Only valid if persist_routes_state is 'enabled'.
If you set the duration to 1 minute, then when your network appliance re-establishes BGP with route server, it has 1 minute to relearn it's adjacent network and advertise those routes to route server before route server resumes normal functionality. In most cases, 1 minute is probably sufficient. If, however, you have concerns that your BGP network may not be capable of fully re-establishing and re-learning everything in 1 minute, you can increase the duration up to 5 minutes.
47 48 49 |
# File 'ec2/cfn_route_server_props.rb', line 47 def persist_routes_duration @persist_routes_duration end |
#sns_notifications_enabled ⇒ Boolean, ... (readonly)
Indicates whether SNS notifications are enabled for the route server.
Enabling SNS notifications persists BGP status changes to an SNS topic provisioned by AWS .
54 55 56 |
# File 'ec2/cfn_route_server_props.rb', line 54 def sns_notifications_enabled @sns_notifications_enabled end |
#tags ⇒ Array<AWSCDK::CfnTag>? (readonly)
Any tags assigned to the route server.
59 60 61 |
# File 'ec2/cfn_route_server_props.rb', line 59 def @tags end |
Class Method Details
.jsii_properties ⇒ Object
61 62 63 64 65 66 67 68 69 |
# File 'ec2/cfn_route_server_props.rb', line 61 def self.jsii_properties { :amazon_side_asn => "amazonSideAsn", :persist_routes => "persistRoutes", :persist_routes_duration => "persistRoutesDuration", :sns_notifications_enabled => "snsNotificationsEnabled", :tags => "tags", } end |
Instance Method Details
#to_jsii ⇒ Object
71 72 73 74 75 76 77 78 79 80 81 |
# File 'ec2/cfn_route_server_props.rb', line 71 def to_jsii result = {} result.merge!({ "amazonSideAsn" => @amazon_side_asn, "persistRoutes" => @persist_routes, "persistRoutesDuration" => @persist_routes_duration, "snsNotificationsEnabled" => @sns_notifications_enabled, "tags" => @tags, }) result.compact end |