Class: Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/redis/cluster/v1beta1/cloud_redis_cluster.rb

Overview

Cross cluster replication config.

Defined Under Namespace

Modules: ClusterRole Classes: Membership, RemoteCluster

Instance Attribute Summary collapse

Instance Attribute Details

#cluster_role::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::ClusterRole

Returns The role of the cluster in cross cluster replication.

Returns:



716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
# File 'proto_docs/google/cloud/redis/cluster/v1beta1/cloud_redis_cluster.rb', line 716

class CrossClusterReplicationConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Details of the remote cluster associated with this cluster in a cross
  # cluster replication setup.
  # @!attribute [rw] cluster
  #   @return [::String]
  #     The full resource path of the remote cluster in
  #     the format: projects/<project>/locations/<region>/clusters/<cluster-id>
  # @!attribute [r] uid
  #   @return [::String]
  #     Output only. The unique identifier of the remote cluster.
  class RemoteCluster
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # An output only view of all the member clusters participating in the cross
  # cluster replication.
  # @!attribute [r] primary_cluster
  #   @return [::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster]
  #     Output only. The primary cluster that acts as the source of replication
  #     for the secondary clusters.
  # @!attribute [r] secondary_clusters
  #   @return [::Array<::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster>]
  #     Output only. The list of secondary clusters replicating from the primary
  #     cluster.
  class Membership
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The role of the cluster in cross cluster replication.
  module ClusterRole
    # Cluster role is not set.
    # The behavior is equivalent to NONE.
    CLUSTER_ROLE_UNSPECIFIED = 0

    # This cluster does not participate in cross cluster replication. It is an
    # independent cluster and does not replicate to or from any other clusters.
    NONE = 1

    # A cluster that allows both reads and writes. Any data written to this
    # cluster is also replicated to the attached secondary clusters.
    PRIMARY = 2

    # A cluster that allows only reads and replicates data from a primary
    # cluster.
    SECONDARY = 3
  end
end

#membership::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::Membership (readonly)

Returns Output only. An output only view of all the member clusters participating in the cross cluster replication. This view will be provided by every member cluster irrespective of its cluster role(primary or secondary).

A primary cluster can provide information about all the secondary clusters replicating from it. However, a secondary cluster only knows about the primary cluster from which it is replicating. However, for scenarios, where the primary cluster is unavailable(e.g. regional outage), a GetCluster request can be sent to any other member cluster and this field will list all the member clusters participating in cross cluster replication.

Returns:

  • (::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::Membership)

    Output only. An output only view of all the member clusters participating in the cross cluster replication. This view will be provided by every member cluster irrespective of its cluster role(primary or secondary).

    A primary cluster can provide information about all the secondary clusters replicating from it. However, a secondary cluster only knows about the primary cluster from which it is replicating. However, for scenarios, where the primary cluster is unavailable(e.g. regional outage), a GetCluster request can be sent to any other member cluster and this field will list all the member clusters participating in cross cluster replication.



716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
# File 'proto_docs/google/cloud/redis/cluster/v1beta1/cloud_redis_cluster.rb', line 716

class CrossClusterReplicationConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Details of the remote cluster associated with this cluster in a cross
  # cluster replication setup.
  # @!attribute [rw] cluster
  #   @return [::String]
  #     The full resource path of the remote cluster in
  #     the format: projects/<project>/locations/<region>/clusters/<cluster-id>
  # @!attribute [r] uid
  #   @return [::String]
  #     Output only. The unique identifier of the remote cluster.
  class RemoteCluster
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # An output only view of all the member clusters participating in the cross
  # cluster replication.
  # @!attribute [r] primary_cluster
  #   @return [::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster]
  #     Output only. The primary cluster that acts as the source of replication
  #     for the secondary clusters.
  # @!attribute [r] secondary_clusters
  #   @return [::Array<::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster>]
  #     Output only. The list of secondary clusters replicating from the primary
  #     cluster.
  class Membership
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The role of the cluster in cross cluster replication.
  module ClusterRole
    # Cluster role is not set.
    # The behavior is equivalent to NONE.
    CLUSTER_ROLE_UNSPECIFIED = 0

    # This cluster does not participate in cross cluster replication. It is an
    # independent cluster and does not replicate to or from any other clusters.
    NONE = 1

    # A cluster that allows both reads and writes. Any data written to this
    # cluster is also replicated to the attached secondary clusters.
    PRIMARY = 2

    # A cluster that allows only reads and replicates data from a primary
    # cluster.
    SECONDARY = 3
  end
end

#primary_cluster::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster

Returns Details of the primary cluster that is used as the replication source for this secondary cluster.

This field is only set for a secondary cluster.

Returns:



716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
# File 'proto_docs/google/cloud/redis/cluster/v1beta1/cloud_redis_cluster.rb', line 716

class CrossClusterReplicationConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Details of the remote cluster associated with this cluster in a cross
  # cluster replication setup.
  # @!attribute [rw] cluster
  #   @return [::String]
  #     The full resource path of the remote cluster in
  #     the format: projects/<project>/locations/<region>/clusters/<cluster-id>
  # @!attribute [r] uid
  #   @return [::String]
  #     Output only. The unique identifier of the remote cluster.
  class RemoteCluster
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # An output only view of all the member clusters participating in the cross
  # cluster replication.
  # @!attribute [r] primary_cluster
  #   @return [::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster]
  #     Output only. The primary cluster that acts as the source of replication
  #     for the secondary clusters.
  # @!attribute [r] secondary_clusters
  #   @return [::Array<::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster>]
  #     Output only. The list of secondary clusters replicating from the primary
  #     cluster.
  class Membership
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The role of the cluster in cross cluster replication.
  module ClusterRole
    # Cluster role is not set.
    # The behavior is equivalent to NONE.
    CLUSTER_ROLE_UNSPECIFIED = 0

    # This cluster does not participate in cross cluster replication. It is an
    # independent cluster and does not replicate to or from any other clusters.
    NONE = 1

    # A cluster that allows both reads and writes. Any data written to this
    # cluster is also replicated to the attached secondary clusters.
    PRIMARY = 2

    # A cluster that allows only reads and replicates data from a primary
    # cluster.
    SECONDARY = 3
  end
end

#secondary_clusters::Array<::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster>

Returns List of secondary clusters that are replicating from this primary cluster.

This field is only set for a primary cluster.

Returns:



716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
# File 'proto_docs/google/cloud/redis/cluster/v1beta1/cloud_redis_cluster.rb', line 716

class CrossClusterReplicationConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Details of the remote cluster associated with this cluster in a cross
  # cluster replication setup.
  # @!attribute [rw] cluster
  #   @return [::String]
  #     The full resource path of the remote cluster in
  #     the format: projects/<project>/locations/<region>/clusters/<cluster-id>
  # @!attribute [r] uid
  #   @return [::String]
  #     Output only. The unique identifier of the remote cluster.
  class RemoteCluster
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # An output only view of all the member clusters participating in the cross
  # cluster replication.
  # @!attribute [r] primary_cluster
  #   @return [::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster]
  #     Output only. The primary cluster that acts as the source of replication
  #     for the secondary clusters.
  # @!attribute [r] secondary_clusters
  #   @return [::Array<::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster>]
  #     Output only. The list of secondary clusters replicating from the primary
  #     cluster.
  class Membership
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The role of the cluster in cross cluster replication.
  module ClusterRole
    # Cluster role is not set.
    # The behavior is equivalent to NONE.
    CLUSTER_ROLE_UNSPECIFIED = 0

    # This cluster does not participate in cross cluster replication. It is an
    # independent cluster and does not replicate to or from any other clusters.
    NONE = 1

    # A cluster that allows both reads and writes. Any data written to this
    # cluster is also replicated to the attached secondary clusters.
    PRIMARY = 2

    # A cluster that allows only reads and replicates data from a primary
    # cluster.
    SECONDARY = 3
  end
end

#update_time::Google::Protobuf::Timestamp (readonly)

Returns Output only. The last time cross cluster replication config was updated.

Returns:



716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
# File 'proto_docs/google/cloud/redis/cluster/v1beta1/cloud_redis_cluster.rb', line 716

class CrossClusterReplicationConfig
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # Details of the remote cluster associated with this cluster in a cross
  # cluster replication setup.
  # @!attribute [rw] cluster
  #   @return [::String]
  #     The full resource path of the remote cluster in
  #     the format: projects/<project>/locations/<region>/clusters/<cluster-id>
  # @!attribute [r] uid
  #   @return [::String]
  #     Output only. The unique identifier of the remote cluster.
  class RemoteCluster
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # An output only view of all the member clusters participating in the cross
  # cluster replication.
  # @!attribute [r] primary_cluster
  #   @return [::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster]
  #     Output only. The primary cluster that acts as the source of replication
  #     for the secondary clusters.
  # @!attribute [r] secondary_clusters
  #   @return [::Array<::Google::Cloud::Redis::Cluster::V1beta1::CrossClusterReplicationConfig::RemoteCluster>]
  #     Output only. The list of secondary clusters replicating from the primary
  #     cluster.
  class Membership
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # The role of the cluster in cross cluster replication.
  module ClusterRole
    # Cluster role is not set.
    # The behavior is equivalent to NONE.
    CLUSTER_ROLE_UNSPECIFIED = 0

    # This cluster does not participate in cross cluster replication. It is an
    # independent cluster and does not replicate to or from any other clusters.
    NONE = 1

    # A cluster that allows both reads and writes. Any data written to this
    # cluster is also replicated to the attached secondary clusters.
    PRIMARY = 2

    # A cluster that allows only reads and replicates data from a primary
    # cluster.
    SECONDARY = 3
  end
end