Class: Google::Apis::ComputeAlpha::BackendServiceHaPolicy
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::BackendServiceHaPolicy
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Instance Attribute Summary collapse
-
#fast_ip_move ⇒ String
Specifies whether fast IP move is enabled, and if so, the mechanism to achieve it.
-
#leader ⇒ Google::Apis::ComputeAlpha::BackendServiceHaPolicyLeader
Selects one of the network endpoints attached to the backend NEGs of this service as the active endpoint (the leader) that receives all traffic.
Instance Method Summary collapse
-
#initialize(**args) ⇒ BackendServiceHaPolicy
constructor
A new instance of BackendServiceHaPolicy.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ BackendServiceHaPolicy
Returns a new instance of BackendServiceHaPolicy.
5350 5351 5352 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 5350 def initialize(**args) update!(**args) end |
Instance Attribute Details
#fast_ip_move ⇒ String
Specifies whether fast IP move is enabled, and if so, the mechanism to achieve
it. Supported values are: - DISABLED: Fast IP Move is disabled. You can only
use the haPolicy.leader API to update the leader. - >GARP_RA: Provides a
method to very quickly define a new network endpoint as the leader. This
method is faster than updating the leader using the haPolicy.leader API. Fast
IP move works as follows: The VM hosting the network endpoint that should
become the new leader sends either a Gratuitous ARP (GARP) packet (IPv4) or an
ICMPv6 Router Advertisement(RA) packet (IPv6). Google Cloud immediately but
temporarily associates the forwarding rule IP address with that VM, and both
new and in-flight packets are quickly delivered to that VM. Note the important
properties of the Fast IP Move functionality: - The GARP/RA-initiated re-
routing stays active for approximately 20 minutes. After triggering fast
failover, you must also appropriately set the haPolicy.leader. - The new
leader instance should continue to send GARP/RA packets periodically every 10
seconds until at least 10 minutes after updating the haPolicy.leader (but stop
immediately if it is no longer the leader). - After triggering a fast failover,
we recommend that you wait at least 3 seconds before sending another GARP/RA
packet from a different VM instance to avoid race conditions. - Don't send
GARP/RA packets from different VM instances at the same time. If multiple
instances continue to send GARP/RA packets, traffic might be routed to
different destinations in an alternating order. This condition ceases when a
single instance issues a GARP/RA packet. - The GARP/RA request always takes
priority over the leader API. Using the haPolicy.leader API to change the
leader to a different instance will have no effect until the GARP/RA request
becomes inactive. - The GARP/RA packets should follow the GARP/RA Packet
Specifications.. - When multiple forwarding rules refer to a regional backend
service, you need only send a GARP or RA packet for a single forwarding rule
virtual IP. The virtual IPs for all forwarding rules targeting the same
backend service will also be moved to the sender of the GARP or RA packet. The
following are the Fast IP Move limitations (that is, when fastIPMove is not
DISABLED): - Multiple forwarding rules cannot use the same IP address if one
of them refers to a regional backend service with fastIPMove. - The regional
backend service must set the network field, and all NEGs must belong to that
network. However, individual NEGs can belong to different subnetworks of that
network. - The maximum number of network endpoints across all backends of a
backend service with fastIPMove is 32. - The maximum number of backend
services with fastIPMove that can have the same network endpoint attached to
one of its backends is 64. - The maximum number of backend services with
fastIPMove in a VPC in a region is 64. - The network endpoints that are
attached to a backend of a backend service with fastIPMove cannot resolve to
Gen3+ machines for IPv6. - Traffic directed to the leader by a static route
next hop will not be redirected to a new leader by fast failover. Such traffic
will only be redirected once an haPolicy.leader update has taken effect. Only
traffic to the forwarding rule's virtual IP will be redirected to a new leader
by fast failover. haPolicy.fastIPMove can be set only at backend service
creation time. Once set, it cannot be updated. By default, fastIpMove is set
to DISABLED.
Corresponds to the JSON property fastIPMove
5337 5338 5339 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 5337 def fast_ip_move @fast_ip_move end |
#leader ⇒ Google::Apis::ComputeAlpha::BackendServiceHaPolicyLeader
Selects one of the network endpoints attached to the backend NEGs of this
service as the active endpoint (the leader) that receives all traffic. When
the leader changes, there is no connection draining to persist existing
connections on the old leader. You are responsible for selecting a suitable
endpoint as the leader. For example, preferring a healthy endpoint over
unhealthy ones. Note that this service does not track backend endpoint health,
and selects the configured leader unconditionally.
Corresponds to the JSON property leader
5348 5349 5350 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 5348 def leader @leader end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
5355 5356 5357 5358 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 5355 def update!(**args) @fast_ip_move = args[:fast_ip_move] if args.key?(:fast_ip_move) @leader = args[:leader] if args.key?(:leader) end |