{"type":"api","title":"Crosscluster oper state of components","meta":{"id":"/apps/pubhub/media/crosswork-network-controller-7-1/f445c17e25a1120e8fbde4bd413083d0fd88b2b3/40d706fd-9f3a-3ab1-a34b-943159096796","info":{"title":"Crosswork Crosscluster Service APIs","description":"Cross cluster provides API methods for handling geo synchronization, leadership operations, and multi-cluster showtech collection on Crosswork.","version":"3.0.0","contact":{"name":"Crosswork Team, Cisco","email":"support@cisco.com"},"license":{"name":"Cisco Software License Agreement","url":"https://www.cisco.com/public/sw-license-agreement.html"}},"x-parser-conf":{"overview":{"markdownPath":"reference/INFRA/CROSSCLUSTER/crosscluster-overview.md"}},"swagger":"2.0","basePath":"/crosswork/crosscluster/v1","schemes":["http","https"],"securityDefinitions":{"bearerAuth":{"type":"apiKey","name":"Authorization","in":"header","description":"Security definitions details."}}},"spec":{"summary":"Crosscluster oper state of components","description":"Cross cluster oper state of components","operationId":"CrossClusterManager_GetCrossClusterOperStatus","responses":{"200":{"description":"A successful response.","schema":{"type":"object","properties":{"cross_cluster_oper_status":{"title":"Cross Cluster oper state","type":"object","properties":{"cross_cluster_component":{"type":"object","properties":{"id":{"type":"string","description":"Cluster id is required if component is CROSSWORK_CLUSTER, otherwise it can be left empty."},"name":{"type":"string","description":"CrossCluster component name.\nNOTE: not supported in showtech requests and should be left empty."},"component_type":{"title":"Component for log collection","type":"string","enum":["UNKNOWN_COMPONENT","CROSSWORK_CLUSTER","ARBITER"],"default":"UNKNOWN_COMPONENT","description":"- CROSSWORK_CLUSTER: Crosswork cluster\n - ARBITER: Arbiter node","$$ref":"#/definitions/common_geo_platformComponentType"}},"title":"Crosscluster component","$$ref":"#/definitions/common_geo_platformCrossClusterComponent"},"crosscluster_component_status":{"type":"array","items":{"type":"object","properties":{"peer_cross_cluster_component":{"type":"object","properties":{"id":{"type":"string","description":"Cluster id is required if component is CROSSWORK_CLUSTER, otherwise it can be left empty."},"name":{"type":"string","description":"CrossCluster component name.\nNOTE: not supported in showtech requests and should be left empty."},"component_type":{"title":"Component for log collection","type":"string","enum":["UNKNOWN_COMPONENT","CROSSWORK_CLUSTER","ARBITER"],"default":"UNKNOWN_COMPONENT","description":"- CROSSWORK_CLUSTER: Crosswork cluster\n - ARBITER: Arbiter node","$$ref":"#/definitions/common_geo_platformComponentType"}},"title":"Crosscluster component","$$ref":"#/definitions/common_geo_platformCrossClusterComponent"},"peer_site_location":{"title":"Peer Site location","type":"object","properties":{"location":{"type":"string","title":"// Availability zone , populated per cross cluster component, List of 1 or 3\n repeated string availability_zones = 1;\n // Region , populated per cross cluster component\n string region = 2;\nMaps to Datacenter location for on prem, for cloud leverage `az,region` name"}},"$$ref":"#/definitions/common_geo_platformSiteLocation"},"peer_connectivity_status":{"title":"Peer connectivity status","type":"object","properties":{"component_connectivity":{"title":"Component connectivity","type":"object","properties":{"unified_end_point":{"title":"Cluster connect endpoint type","type":"object","properties":{"unified_endpoint_type":{"title":"Cluster endpoint type","type":"object","properties":{"fqdn_type":{"title":"Fqdn","type":"object","$$ref":"#/definitions/common_geo_platformFqdnType"},"ip_type":{"title":"ip","type":"object","$$ref":"#/definitions/common_geo_platformIPType"}},"$$ref":"#/definitions/common_geo_platformUnifiedEndPointType"},"unified_endpoint_implementation":{"title":"Cluster endpoint implementation","type":"string","enum":["UNKNOWN_ENDPOINT_IMPLEMENTATION_TYPE","DNS","BGP","VRRP"],"default":"UNKNOWN_ENDPOINT_IMPLEMENTATION_TYPE","description":"Supported combination for IntraCluster on prem\nIP_TYPE,VRRP\nSupported combination for IntraCluster Cloud\nFQDN_TYPE,NLB\n\nPotential Valid combinations for CrossCluster in future\nFQDN_TYPE,NLB\nIP_TYPE,VRRP\nIP_TYPE,BGP\nIP_TYPE,NLB\n\n - DNS: DNS is used to service unified cluster endpoint\n - BGP: // BGP\n - VRRP: // VRRP","$$ref":"#/definitions/common_geo_platformUnifiedEndPointImplementation"}},"$$ref":"#/definitions/common_geo_platformUnifiedEndPoint"},"management_vip":{"type":"string","title":"Management VIP"},"management_vip_mask":{"type":"string","format":"uint64","title":"management subnet mask"},"data_vip":{"type":"string","title":"Data VIP"},"data_vip_mask":{"type":"string","format":"uint64","title":"management subnet mask"},"management_fqdn":{"title":"Management FQDN","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/common_geo_platformFQDN"},"data_fqdn":{"title":"Data FQDN","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/common_geo_platformFQDN"},"management_vip_ipv4":{"type":"string","title":"Management VIP IPv4"},"management_vip_ipv4_mask":{"type":"string","format":"uint64","title":"Management VIP IPv4 subnet mask"},"data_vip_ipv4":{"type":"string","title":"Data VIP IPv4"},"data_vip_ipv4_mask":{"type":"string","format":"uint64","title":"Data VIP IPv4 subnet mask"},"management_vip_ipv6":{"type":"string","title":"Management VIP IPv6"},"management_vip_ipv6_mask":{"type":"string","format":"uint64","title":"Management VIP IPv6 subnet mask"},"data_vip_ipv6":{"type":"string","title":"Data VIP IPv6"},"data_vip_ipv6_mask":{"type":"string","format":"uint64","title":"Data VIP IPv6 subnet mask"}},"$$ref":"#/definitions/common_geo_platformConnectivity"},"connectivity_state":{"title":"Crosscluster connectivity status","type":"string","enum":["UNKNOWN_CONNECTIVITY","CONNECTED","NOT_CONNECTED"],"default":"UNKNOWN_CONNECTIVITY","description":"- CONNECTED: Crosscluster component is connected\n - NOT_CONNECTED: Crosscluster component is not connected","$$ref":"#/definitions/common_geo_platformConnectivityState"},"error":{"title":"Peering error if not connected","type":"object","properties":{"message":{"type":"string","title":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI"}},"$$ref":"#/definitions/common_geo_platformError"}},"$$ref":"#/definitions/common_geo_platformConnectivityStatus"},"peer_enrollment_status":{"title":"Peer enrollment status","type":"object","properties":{"cross_cluster_enrollment_state":{"title":"Crosscluster Enrollment status","type":"string","enum":["UNKNOWN_PEER_JOIN_STATUS","PEER_ENROLLED","PEER_NOT_ENROLLED"],"default":"UNKNOWN_PEER_JOIN_STATUS","description":"- PEER_ENROLLED: Atleast one successful handshake was done in the past\n - PEER_NOT_ENROLLED: Peer was never enrolled","$$ref":"#/definitions/common_geo_platformEnrollmentState"},"error":{"title":"HandShake error if not enrolled","type":"object","properties":{"message":{"type":"string","title":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI"}},"$$ref":"#/definitions/common_geo_platformError"}},"$$ref":"#/definitions/common_geo_platformEnrollmentStatus"},"component_readiness":{"title":"Indicates whether current component is ready to receive enrollment","type":"string","enum":["UNKNOWN_CROSS_CLUSTER_COMPONENT_READY","CROSS_CLUSTER_COMPONENT_READY","CROSS_CLUSTER_COMPONENT_NOT_READY"],"default":"UNKNOWN_CROSS_CLUSTER_COMPONENT_READY","description":"- CROSS_CLUSTER_COMPONENT_READY: Enrollment/Ping pong can be serviced\n - CROSS_CLUSTER_COMPONENT_NOT_READY: Enrollment/Ping pong can not be serviced","$$ref":"#/definitions/common_geo_platformComponentReadiness"},"peer_leadership_state":{"title":"Peer Leadership state of the cluster","type":"string","enum":["UNKNOWN_CLUSTER_LEADER_STATE","ACTIVE","STANDBY","TENTATIVE","STANDBY_WITH_FAILURES","ACTIVE_WITH_FAILURES","TRANSITIONING_TO_ACTIVE","TRANSITIONING_TO_STANDBY"],"default":"UNKNOWN_CLUSTER_LEADER_STATE","description":"- ACTIVE: Denotes cluster leadership state\n - STANDBY: Denotes standby cluster\n - TENTATIVE: Tentative - transient state\n - STANDBY_WITH_FAILURES: System is in standby but has failures\n - ACTIVE_WITH_FAILURES: System is in active but has failures\n - TRANSITIONING_TO_ACTIVE: ACTIVE TRANSITION - transient state\n - TRANSITIONING_TO_STANDBY: STANDBY TRANSITION - transient state","$$ref":"#/definitions/common_geo_platformCrossClusterLeadershipState"},"peer_leadership_state_assignment_time":{"type":"string","format":"int64","title":"Peer Leadership state(ACTIVE/STAND BY) assignment time UTC epoch time in milliseconds"},"peer_cluster_health_state":{"title":"ClusterHealth state of the cluster","type":"string","enum":["UNKNOWN_HEALTH_STATE","HEALTHY","HEALTH_DEGRADED","HEALTH_DOWN","NA"],"default":"UNKNOWN_HEALTH_STATE","$$ref":"#/definitions/common_geo_platformHealthState"}},"title":"CrossClusteComponentOperStatus","$$ref":"#/definitions/common_geo_platformCrossClusterComponentOperStatus"},"title":"CrossCluster component oper state"},"cluster_leadership_state":{"title":"Crosscluster Leadership state of the cluster","type":"string","enum":["UNKNOWN_CLUSTER_LEADER_STATE","ACTIVE","STANDBY","TENTATIVE","STANDBY_WITH_FAILURES","ACTIVE_WITH_FAILURES","TRANSITIONING_TO_ACTIVE","TRANSITIONING_TO_STANDBY"],"default":"UNKNOWN_CLUSTER_LEADER_STATE","description":"- ACTIVE: Denotes cluster leadership state\n - STANDBY: Denotes standby cluster\n - TENTATIVE: Tentative - transient state\n - STANDBY_WITH_FAILURES: System is in standby but has failures\n - ACTIVE_WITH_FAILURES: System is in active but has failures\n - TRANSITIONING_TO_ACTIVE: ACTIVE TRANSITION - transient state\n - TRANSITIONING_TO_STANDBY: STANDBY TRANSITION - transient state","$$ref":"#/definitions/common_geo_platformCrossClusterLeadershipState"},"cluster_leadership_state_assignment_time":{"type":"string","format":"int64","title":"Leadership state(ACTIVE/STAND BY) assignment time UTC epoch time in milliseconds"},"redundancy_state":{"title":"HA state","type":"string","enum":["UNKNOWN_CROSS_CLUSTER_REDUNDANCY_STATE","HA_AVAILABLE","HA_DEGRADED"],"default":"UNKNOWN_CROSS_CLUSTER_REDUNDANCY_STATE","description":"- HA_AVAILABLE: This is true when both the clusters are locked in proper heart beat\n - HA_DEGRADED: This is true when one of the clusters is up but not the other","$$ref":"#/definitions/common_geo_platformCrossClusterRedundancyState"},"crosscluster_unified_connectivity":{"title":"Unified Multi cluster endpoint connection","type":"object","properties":{"unified_end_point":{"title":"Cluster connect endpoint type","type":"object","properties":{"unified_endpoint_type":{"title":"Cluster endpoint type","type":"object","properties":{"fqdn_type":{"title":"Fqdn","type":"object","$$ref":"#/definitions/common_geo_platformFqdnType"},"ip_type":{"title":"ip","type":"object","$$ref":"#/definitions/common_geo_platformIPType"}},"$$ref":"#/definitions/common_geo_platformUnifiedEndPointType"},"unified_endpoint_implementation":{"title":"Cluster endpoint implementation","type":"string","enum":["UNKNOWN_ENDPOINT_IMPLEMENTATION_TYPE","DNS","BGP","VRRP"],"default":"UNKNOWN_ENDPOINT_IMPLEMENTATION_TYPE","description":"Supported combination for IntraCluster on prem\nIP_TYPE,VRRP\nSupported combination for IntraCluster Cloud\nFQDN_TYPE,NLB\n\nPotential Valid combinations for CrossCluster in future\nFQDN_TYPE,NLB\nIP_TYPE,VRRP\nIP_TYPE,BGP\nIP_TYPE,NLB\n\n - DNS: DNS is used to service unified cluster endpoint\n - BGP: // BGP\n - VRRP: // VRRP","$$ref":"#/definitions/common_geo_platformUnifiedEndPointImplementation"}},"$$ref":"#/definitions/common_geo_platformUnifiedEndPoint"},"management_vip":{"type":"string","title":"Management VIP"},"management_vip_mask":{"type":"string","format":"uint64","title":"management subnet mask"},"data_vip":{"type":"string","title":"Data VIP"},"data_vip_mask":{"type":"string","format":"uint64","title":"management subnet mask"},"management_fqdn":{"title":"Management FQDN","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/common_geo_platformFQDN"},"data_fqdn":{"title":"Data FQDN","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/common_geo_platformFQDN"},"management_vip_ipv4":{"type":"string","title":"Management VIP IPv4"},"management_vip_ipv4_mask":{"type":"string","format":"uint64","title":"Management VIP IPv4 subnet mask"},"data_vip_ipv4":{"type":"string","title":"Data VIP IPv4"},"data_vip_ipv4_mask":{"type":"string","format":"uint64","title":"Data VIP IPv4 subnet mask"},"management_vip_ipv6":{"type":"string","title":"Management VIP IPv6"},"management_vip_ipv6_mask":{"type":"string","format":"uint64","title":"Management VIP IPv6 subnet mask"},"data_vip_ipv6":{"type":"string","title":"Data VIP IPv6"},"data_vip_ipv6_mask":{"type":"string","format":"uint64","title":"Data VIP IPv6 subnet mask"}},"$$ref":"#/definitions/common_geo_platformConnectivity"},"sync_oper_status":{"title":"Sync operation state","type":"object","properties":{"sync_type":{"title":"Async Replication vs Export and Import","type":"string","enum":["UNKNOWN_SYNC_TYPE","EXPORT_AND_IMPORT","LIVE_ASYNC_REPLICATION","HYBRID_SYNC"],"default":"UNKNOWN_SYNC_TYPE","description":"- EXPORT_AND_IMPORT: use Back up and restore to synch clusters\n - LIVE_ASYNC_REPLICATION: use live replication to synch clusters\n - HYBRID_SYNC: HYBRID SYNC","$$ref":"#/definitions/common_geo_platformSyncType"},"last_sync_state":{"title":"last synch state change that was done in periodic synchronization","type":"string","enum":["UNKNOWN_SYNC_STATE","SYNCHRONIZING","SYNCHRONIZED","SYNCHRONIZATION_FAILED"],"default":"UNKNOWN_SYNC_STATE","description":"- UNKNOWN_SYNC_STATE: Synch state unknown\n - SYNCHRONIZING: Synchronizing\n - SYNCHRONIZED: Synchronized\n - SYNCHRONIZATION_FAILED: Synchronization failed","$$ref":"#/definitions/common_geo_platformSyncState"},"last_successful_sync_job_status":{"title":"Last successful Sync job status in periodic synchronization","type":"object","properties":{"source":{"type":"object","properties":{"id":{"type":"string","description":"Cluster id is required if component is CROSSWORK_CLUSTER, otherwise it can be left empty."},"name":{"type":"string","description":"CrossCluster component name.\nNOTE: not supported in showtech requests and should be left empty."},"component_type":{"title":"Component for log collection","type":"string","enum":["UNKNOWN_COMPONENT","CROSSWORK_CLUSTER","ARBITER"],"default":"UNKNOWN_COMPONENT","description":"- CROSSWORK_CLUSTER: Crosswork cluster\n - ARBITER: Arbiter node","$$ref":"#/definitions/common_geo_platformComponentType"}},"title":"Crosscluster component","$$ref":"#/definitions/common_geo_platformCrossClusterComponent"},"target":{"type":"object","properties":{"id":{"type":"string","description":"Cluster id is required if component is CROSSWORK_CLUSTER, otherwise it can be left empty."},"name":{"type":"string","description":"CrossCluster component name.\nNOTE: not supported in showtech requests and should be left empty."},"component_type":{"title":"Component for log collection","type":"string","enum":["UNKNOWN_COMPONENT","CROSSWORK_CLUSTER","ARBITER"],"default":"UNKNOWN_COMPONENT","description":"- CROSSWORK_CLUSTER: Crosswork cluster\n - ARBITER: Arbiter node","$$ref":"#/definitions/common_geo_platformComponentType"}},"title":"Crosscluster component","$$ref":"#/definitions/common_geo_platformCrossClusterComponent"},"export_start_time":{"type":"string","format":"int64","title":"start_time for export in UTC epoch milliseconds"},"export_end_time":{"type":"string","format":"int64","title":"end_time for export in UTC epoch milliseconds"},"import_start_time":{"type":"string","format":"int64","title":"start_time for export in UTC epoch milliseconds"},"import_end_time":{"type":"string","format":"int64","title":"end_time for export in UTC epoch milliseconds"}},"$$ref":"#/definitions/common_geo_platformSyncJobStatus"},"sync_job_eta":{"type":"string","title":"Sync Job Estimated Average Completion Duration ETA format https://pkg.go.dev/time#ParseDuration, could be N/A if not available"}},"$$ref":"#/definitions/common_geo_platformSyncOperStatus"},"site_location":{"title":"Site location","type":"object","properties":{"location":{"type":"string","title":"// Availability zone , populated per cross cluster component, List of 1 or 3\n repeated string availability_zones = 1;\n // Region , populated per cross cluster component\n string region = 2;\nMaps to Datacenter location for on prem, for cloud leverage `az,region` name"}},"$$ref":"#/definitions/common_geo_platformSiteLocation"},"cluster_health_state":{"title":"ClusterHealth state of the cluster","type":"string","enum":["UNKNOWN_HEALTH_STATE","HEALTHY","HEALTH_DEGRADED","HEALTH_DOWN","NA"],"default":"UNKNOWN_HEALTH_STATE","$$ref":"#/definitions/common_geo_platformHealthState"},"cluster_connectivity":{"title":"Cluster connectivity status","type":"object","properties":{"unified_end_point":{"title":"Cluster connect endpoint type","type":"object","properties":{"unified_endpoint_type":{"title":"Cluster endpoint type","type":"object","properties":{"fqdn_type":{"title":"Fqdn","type":"object","$$ref":"#/definitions/common_geo_platformFqdnType"},"ip_type":{"title":"ip","type":"object","$$ref":"#/definitions/common_geo_platformIPType"}},"$$ref":"#/definitions/common_geo_platformUnifiedEndPointType"},"unified_endpoint_implementation":{"title":"Cluster endpoint implementation","type":"string","enum":["UNKNOWN_ENDPOINT_IMPLEMENTATION_TYPE","DNS","BGP","VRRP"],"default":"UNKNOWN_ENDPOINT_IMPLEMENTATION_TYPE","description":"Supported combination for IntraCluster on prem\nIP_TYPE,VRRP\nSupported combination for IntraCluster Cloud\nFQDN_TYPE,NLB\n\nPotential Valid combinations for CrossCluster in future\nFQDN_TYPE,NLB\nIP_TYPE,VRRP\nIP_TYPE,BGP\nIP_TYPE,NLB\n\n - DNS: DNS is used to service unified cluster endpoint\n - BGP: // BGP\n - VRRP: // VRRP","$$ref":"#/definitions/common_geo_platformUnifiedEndPointImplementation"}},"$$ref":"#/definitions/common_geo_platformUnifiedEndPoint"},"management_vip":{"type":"string","title":"Management VIP"},"management_vip_mask":{"type":"string","format":"uint64","title":"management subnet mask"},"data_vip":{"type":"string","title":"Data VIP"},"data_vip_mask":{"type":"string","format":"uint64","title":"management subnet mask"},"management_fqdn":{"title":"Management FQDN","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/common_geo_platformFQDN"},"data_fqdn":{"title":"Data FQDN","type":"object","properties":{"host_name":{"type":"string","title":"host name"},"domain_name":{"type":"string","title":"Domain name"}},"$$ref":"#/definitions/common_geo_platformFQDN"},"management_vip_ipv4":{"type":"string","title":"Management VIP IPv4"},"management_vip_ipv4_mask":{"type":"string","format":"uint64","title":"Management VIP IPv4 subnet mask"},"data_vip_ipv4":{"type":"string","title":"Data VIP IPv4"},"data_vip_ipv4_mask":{"type":"string","format":"uint64","title":"Data VIP IPv4 subnet mask"},"management_vip_ipv6":{"type":"string","title":"Management VIP IPv6"},"management_vip_ipv6_mask":{"type":"string","format":"uint64","title":"Management VIP IPv6 subnet mask"},"data_vip_ipv6":{"type":"string","title":"Data VIP IPv6"},"data_vip_ipv6_mask":{"type":"string","format":"uint64","title":"Data VIP IPv6 subnet mask"}},"$$ref":"#/definitions/common_geo_platformConnectivity"},"replication_manager_oper_status":{"title":"Replication manager oper status","type":"object","properties":{"replication_summary":{"type":"object","additionalProperties":{"type":"integer","format":"int64"},"title":"Replication summary - proto enums string for Replication state to count of replication state across datastores"},"postgres_replication_oper_status":{"title":"Postgres replication status","type":"object","properties":{"replication_state":{"title":"Postgres replication status","type":"string","enum":["UNKNOWN_REPLICATION_STATE","REPLICATION_HEALTHY","REPLICATION_DEGRADED","REPLICATION_DOWN"],"default":"UNKNOWN_REPLICATION_STATE","description":"- UNKNOWN_REPLICATION_STATE: Unknown replication state\n - REPLICATION_HEALTHY: Healthy session established and replicating\n - REPLICATION_DEGRADED: Degraded, replication is not healthy\n - REPLICATION_DOWN: Faulty , replication is down","$$ref":"#/definitions/common_geo_platformReplicationState"},"replication_role":{"title":"Postgres replication role","type":"string","enum":["UNKNOWN_REPLICATION_ROLE","ACTIVE_REPLICATION_ROLE","STANDBY_REPLICATION_ROLE","ERROR_REPLICATION_ROLE"],"default":"UNKNOWN_REPLICATION_ROLE","description":"- ACTIVE_REPLICATION_ROLE: Active is r/w enabled and serves as source of replication\n - STANDBY_REPLICATION_ROLE: Standby is read enabled and serves as target of replication\n - ERROR_REPLICATION_ROLE: Error","$$ref":"#/definitions/common_geo_platformReplicationRole"},"replication_type":{"title":"Replication Type","type":"string","enum":["UNKNOWN_REPLICATION_TYPE","STREAMING_ASYNC_REPLICATION","PERIODIC_REPLICATION"],"default":"UNKNOWN_REPLICATION_TYPE","$$ref":"#/definitions/common_geo_platformReplicationType"},"replication_status_description":{"type":"string","title":"Postgres replication status"},"last_synced_time":{"type":"string","format":"int64","title":"Timestamp of last lsn sent to peer"},"lag":{"description":"Lag in bytes. This represents the intra-cluster lag.","type":"object","properties":{"name":{"type":"string","title":"Name of metric"},"timestamp":{"type":"string","format":"int64","title":"UTC epoch time in milliseconds"},"unit":{"type":"string","title":"Unit of metric"},"value":{"title":"Value of metric","type":"object","properties":{"double_value":{"type":"number","format":"double","title":"Value of metric"},"int64_value":{"type":"string","format":"int64","title":"Value of metric"},"uint64_value":{"type":"string","format":"uint64","title":"Value of metric"},"string_value":{"type":"string","title":"Value of metric"}},"$$ref":"#/definitions/common_geo_platformValue"}},"title":"Metric reported","$$ref":"#/definitions/common_geo_platformMetric"},"error":{"title":"Error error","type":"object","properties":{"message":{"type":"string","title":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI"}},"$$ref":"#/definitions/common_geo_platformError"},"peer_cluster_lag":{"description":"Peer cluster lab in bytes. This represents the inter-cluster lag.","type":"object","properties":{"name":{"type":"string","title":"Name of metric"},"timestamp":{"type":"string","format":"int64","title":"UTC epoch time in milliseconds"},"unit":{"type":"string","title":"Unit of metric"},"value":{"title":"Value of metric","type":"object","properties":{"double_value":{"type":"number","format":"double","title":"Value of metric"},"int64_value":{"type":"string","format":"int64","title":"Value of metric"},"uint64_value":{"type":"string","format":"uint64","title":"Value of metric"},"string_value":{"type":"string","title":"Value of metric"}},"$$ref":"#/definitions/common_geo_platformValue"}},"title":"Metric reported","$$ref":"#/definitions/common_geo_platformMetric"}},"$$ref":"#/definitions/common_geo_platformPostgresReplicationOperStatus"},"timescale_replication_oper_status":{"title":"TimeScale replication status","type":"object","properties":{"replication_state":{"title":"Postgres replication status","type":"string","enum":["UNKNOWN_REPLICATION_STATE","REPLICATION_HEALTHY","REPLICATION_DEGRADED","REPLICATION_DOWN"],"default":"UNKNOWN_REPLICATION_STATE","description":"- UNKNOWN_REPLICATION_STATE: Unknown replication state\n - REPLICATION_HEALTHY: Healthy session established and replicating\n - REPLICATION_DEGRADED: Degraded, replication is not healthy\n - REPLICATION_DOWN: Faulty , replication is down","$$ref":"#/definitions/common_geo_platformReplicationState"},"replication_role":{"title":"Postgres replication role","type":"string","enum":["UNKNOWN_REPLICATION_ROLE","ACTIVE_REPLICATION_ROLE","STANDBY_REPLICATION_ROLE","ERROR_REPLICATION_ROLE"],"default":"UNKNOWN_REPLICATION_ROLE","description":"- ACTIVE_REPLICATION_ROLE: Active is r/w enabled and serves as source of replication\n - STANDBY_REPLICATION_ROLE: Standby is read enabled and serves as target of replication\n - ERROR_REPLICATION_ROLE: Error","$$ref":"#/definitions/common_geo_platformReplicationRole"},"replication_type":{"title":"Replication Type","type":"string","enum":["UNKNOWN_REPLICATION_TYPE","STREAMING_ASYNC_REPLICATION","PERIODIC_REPLICATION"],"default":"UNKNOWN_REPLICATION_TYPE","$$ref":"#/definitions/common_geo_platformReplicationType"},"replication_status_description":{"type":"string","title":"Postgres replication status"},"last_synced_time":{"type":"string","format":"int64","title":"Timestamp of last lsn sent to peer"},"lag":{"description":"Lag in bytes. This represents the intra-cluster lag.","type":"object","properties":{"name":{"type":"string","title":"Name of metric"},"timestamp":{"type":"string","format":"int64","title":"UTC epoch time in milliseconds"},"unit":{"type":"string","title":"Unit of metric"},"value":{"title":"Value of metric","type":"object","properties":{"double_value":{"type":"number","format":"double","title":"Value of metric"},"int64_value":{"type":"string","format":"int64","title":"Value of metric"},"uint64_value":{"type":"string","format":"uint64","title":"Value of metric"},"string_value":{"type":"string","title":"Value of metric"}},"$$ref":"#/definitions/common_geo_platformValue"}},"title":"Metric reported","$$ref":"#/definitions/common_geo_platformMetric"},"error":{"title":"Error error","type":"object","properties":{"message":{"type":"string","title":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI"}},"$$ref":"#/definitions/common_geo_platformError"},"peer_cluster_lag":{"description":"Peer cluster lab in bytes. This represents the inter-cluster lag.","type":"object","properties":{"name":{"type":"string","title":"Name of metric"},"timestamp":{"type":"string","format":"int64","title":"UTC epoch time in milliseconds"},"unit":{"type":"string","title":"Unit of metric"},"value":{"title":"Value of metric","type":"object","properties":{"double_value":{"type":"number","format":"double","title":"Value of metric"},"int64_value":{"type":"string","format":"int64","title":"Value of metric"},"uint64_value":{"type":"string","format":"uint64","title":"Value of metric"},"string_value":{"type":"string","title":"Value of metric"}},"$$ref":"#/definitions/common_geo_platformValue"}},"title":"Metric reported","$$ref":"#/definitions/common_geo_platformMetric"}},"$$ref":"#/definitions/common_geo_platformPostgresReplicationOperStatus"},"neo4j_replication_oper_status":{"title":"Neo4j replication status - deprecated from 7.1","type":"object","properties":{"replication_state":{"title":"Neo4j replication status","type":"string","enum":["UNKNOWN_REPLICATION_STATE","REPLICATION_HEALTHY","REPLICATION_DEGRADED","REPLICATION_DOWN"],"default":"UNKNOWN_REPLICATION_STATE","description":"- UNKNOWN_REPLICATION_STATE: Unknown replication state\n - REPLICATION_HEALTHY: Healthy session established and replicating\n - REPLICATION_DEGRADED: Degraded, replication is not healthy\n - REPLICATION_DOWN: Faulty , replication is down","$$ref":"#/definitions/common_geo_platformReplicationState"},"replication_role":{"title":"Neo4j replication role","type":"string","enum":["UNKNOWN_REPLICATION_ROLE","ACTIVE_REPLICATION_ROLE","STANDBY_REPLICATION_ROLE","ERROR_REPLICATION_ROLE"],"default":"UNKNOWN_REPLICATION_ROLE","description":"- ACTIVE_REPLICATION_ROLE: Active is r/w enabled and serves as source of replication\n - STANDBY_REPLICATION_ROLE: Standby is read enabled and serves as target of replication\n - ERROR_REPLICATION_ROLE: Error","$$ref":"#/definitions/common_geo_platformReplicationRole"},"replication_type":{"title":"Replication Type","type":"string","enum":["UNKNOWN_REPLICATION_TYPE","STREAMING_ASYNC_REPLICATION","PERIODIC_REPLICATION"],"default":"UNKNOWN_REPLICATION_TYPE","$$ref":"#/definitions/common_geo_platformReplicationType"},"replication_status_description":{"type":"string","title":"Neo4j replication status"},"last_synced_time":{"type":"string","format":"int64","title":"UTC epoch in milliseconds for last successful time for replication initiation from source"},"error":{"title":"Error error","type":"object","properties":{"message":{"type":"string","title":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI"}},"$$ref":"#/definitions/common_geo_platformError"}},"description":"This message is deprecated from CNC 7.1 since\nneo4j is no longer used as a datastore type.","$$ref":"#/definitions/common_geo_platformNeo4jReplicationOperStatus"},"gluster_volume_replication_oper_status_summary":{"title":"Gluster volume status summary","type":"object","properties":{"replication_type":{"title":"// Total volume count\n uint64 total_volume_count = 1;\n //Faulty volume count\n uint64 faulty_volume_count = 2;\nGluster volume replication status\nReplicationState volume_replication_state = 3;\nGluster volume replication status - Would be supported in 7.0 plus\nrepeated GlusterFaultyVolume gluster_faulty_volumes = 4;\nUTC epoch in milliseconds for last successful time for replication initiation from source\nOldest time across all volumes\nReplication Type","type":"string","enum":["UNKNOWN_REPLICATION_TYPE","STREAMING_ASYNC_REPLICATION","PERIODIC_REPLICATION"],"default":"UNKNOWN_REPLICATION_TYPE","$$ref":"#/definitions/common_geo_platformReplicationType"},"last_synced_time":{"type":"string","format":"uint64","title":"last synched time"}},"$$ref":"#/definitions/common_geo_platformGlusterVolumeReplicationOperStatusSummary"}},"$$ref":"#/definitions/common_geo_platformReplicationManagerOperStatus"},"consensus_state":{"title":"CrossCluster consensus state","type":"string","enum":["UNKNOWN_CONSENSUS_STATE","LEADER","FOLLOWER","CANDIDATE"],"default":"UNKNOWN_CONSENSUS_STATE","description":"- UNKNOWN_CONSENSUS_STATE: Consensus state unknown\n - LEADER: Leader\n - FOLLOWER: Follower\n - CANDIDATE: Candidate","$$ref":"#/definitions/common_geo_platformConsensusState"}},"$$ref":"#/definitions/common_geo_platformCrossClusterOperStatus"},"result":{"title":"Result indicating success or failure","type":"object","properties":{"request_result":{"description":"ResultValue indicated accept/reject for a request, not the outcome of the work itself.","type":"string","enum":["UNKNOWN_RESULT","REJECTED","ACCEPTED"],"default":"UNKNOWN_RESULT","title":"Request - reply\nresponse","$$ref":"#/definitions/common_geo_platformRequestResult"},"error":{"description":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI.","type":"object","properties":{"message":{"type":"string","title":"Message is a textual description of reason for rejection, and can be safely passed on to operator through logs\nor UI"}},"title":"Error associated with an Object","$$ref":"#/definitions/common_geo_platformError"}},"description":"Result is used to convey whether an operation (individual or in a batch)\nhas been accepted or rejected. For sync API's an error or rejection indicates failure of operation.\nA string error message accompanies rejection to support troubleshooting. For notification objects,\nrejection represents failure to do intended operation.","$$ref":"#/definitions/common_geo_platformResult"}},"title":"GetCrossClusterStatusResponse","$$ref":"#/definitions/crosscluster_serviceGetCrossClusterOperStatusResponse"},"examples":{"example":{"cross_cluster_oper_status":{"cross_cluster_component":{"id":"fded:1bc1:fc3e:96d0:192:168:5:500","name":"cluster-sjc","component_type":"CROSSWORK_CLUSTER"},"crosscluster_component_status":[{"peer_cross_cluster_component":{"id":"fded:1bc1:fc3e:96d0:192:168:6:500","name":"cluster-nyc","component_type":"CROSSWORK_CLUSTER"},"peer_site_location":{"location":"New York"},"peer_connectivity_status":{"component_connectivity":{"unified_end_point":{"unified_endpoint_type":{"ip_type":{}},"unified_endpoint_implementation":"VRRP"},"management_vip":"fded:1bc1:fc3e:96d0:192:168:6:500","management_vip_mask":"112","data_vip":"fded:1bc1:fc3e:96d0:10:10:11:500","data_vip_mask":"112","management_fqdn":{},"data_fqdn":{},"management_vip_ipv4":"192.168.6.50","management_vip_ipv4_mask":"0","data_vip_ipv4":"10.10.11.50","data_vip_ipv4_mask":"0","management_vip_ipv6":"fded:1bc1:fc3e:96d0:192:168:6:500","management_vip_ipv6_mask":"0","data_vip_ipv6":"fded:1bc1:fc3e:96d0:10:10:11:500","data_vip_ipv6_mask":"0"},"connectivity_state":"NOT_CONNECTED","error":{"message":"HTTP and/or SSH connectivity is failing; please check alarms for more details."}},"peer_enrollment_status":{"cross_cluster_enrollment_state":"PEER_ENROLLED","error":{"message":""}},"component_readiness":"CROSS_CLUSTER_COMPONENT_NOT_READY","peer_leadership_state":"ACTIVE","peer_leadership_state_assignment_time":"1741427596208","peer_cluster_health_state":"UNKNOWN_HEALTH_STATE"},{"peer_cross_cluster_component":{"id":"fded:1bc1:fc3e:96d0:192:168:5:506","name":"cluster-aus","component_type":"ARBITER"},"peer_site_location":{"location":"Austin"},"peer_connectivity_status":{"component_connectivity":{"unified_end_point":{"unified_endpoint_type":{"ip_type":{}},"unified_endpoint_implementation":"VRRP"},"management_vip":"fded:1bc1:fc3e:96d0:192:168:5:506","management_vip_mask":"112","data_vip":"fded:1bc1:fc3e:96d0:10:10:10:506","data_vip_mask":"112","management_fqdn":{},"data_fqdn":{},"management_vip_ipv4":"192.168.5.56","management_vip_ipv4_mask":"0","data_vip_ipv4":"10.10.10.56","data_vip_ipv4_mask":"0","management_vip_ipv6":"fded:1bc1:fc3e:96d0:192:168:5:506","management_vip_ipv6_mask":"0","data_vip_ipv6":"fded:1bc1:fc3e:96d0:10:10:10:506","data_vip_ipv6_mask":"0"},"connectivity_state":"CONNECTED","error":{"message":""}},"peer_enrollment_status":{"cross_cluster_enrollment_state":"PEER_ENROLLED","error":{"message":""}},"component_readiness":"CROSS_CLUSTER_COMPONENT_READY","peer_leadership_state":"STANDBY","peer_leadership_state_assignment_time":"1741390657016","peer_cluster_health_state":"HEALTHY"}],"cluster_leadership_state":"STANDBY","cluster_leadership_state_assignment_time":"1741426127173","redundancy_state":"HA_DEGRADED","crosscluster_unified_connectivity":{"unified_end_point":{"unified_endpoint_type":{"fqdn_type":{}},"unified_endpoint_implementation":"DNS"},"management_vip":"","management_vip_mask":"0","data_vip":"","data_vip_mask":"0","management_fqdn":{"host_name":"geomanagement","domain_name":"cw.cisco"},"data_fqdn":{"host_name":"geodata","domain_name":"cw.cisco"},"management_vip_ipv4":"192.168.5.50","management_vip_ipv4_mask":"0","data_vip_ipv4":"10.10.10.50","data_vip_ipv4_mask":"0","management_vip_ipv6":"fded:1bc1:fc3e:96d0:192:168:5:500","management_vip_ipv6_mask":"0","data_vip_ipv6":"fded:1bc1:fc3e:96d0:10:10:10:500","data_vip_ipv6_mask":"0"},"sync_oper_status":{"sync_type":"HYBRID_SYNC","last_sync_state":"SYNCHRONIZED","last_successful_sync_job_status":{"source":{"id":"fded:1bc1:fc3e:96d0:192:168:5:500","name":"cluster-sjc","component_type":"CROSSWORK_CLUSTER"},"target":{"id":"fded:1bc1:fc3e:96d0:192:168:6:500","name":"cluster-nyc","component_type":"CROSSWORK_CLUSTER"},"export_start_time":"1741421934877","export_end_time":"1741422130452","import_start_time":"1741422130458","import_end_time":"1741422561363"},"sync_job_eta":"13m53s"},"site_location":{"location":"San Jose"},"cluster_health_state":"HEALTHY","cluster_connectivity":{"unified_end_point":{"unified_endpoint_type":{"ip_type":{}},"unified_endpoint_implementation":"VRRP"},"management_vip":"fded:1bc1:fc3e:96d0:192:168:5:500","management_vip_mask":"112","data_vip":"fded:1bc1:fc3e:96d0:10:10:10:500","data_vip_mask":"112","management_fqdn":{},"data_fqdn":{},"management_vip_ipv4":"192.168.5.50","management_vip_ipv4_mask":"0","data_vip_ipv4":"10.10.10.50","data_vip_ipv4_mask":"0","management_vip_ipv6":"fded:1bc1:fc3e:96d0:192:168:5:500","management_vip_ipv6_mask":"0","data_vip_ipv6":"fded:1bc1:fc3e:96d0:10:10:10:500","data_vip_ipv6_mask":"0"},"replication_manager_oper_status":{"replication_summary":{"CROSSCLUSTER_POSTGRES":2,"TIMESCALE":2},"postgres_replication_oper_status":{"replication_state":"REPLICATION_DEGRADED","replication_role":"UNKNOWN_REPLICATION_ROLE","replication_type":"UNKNOWN_REPLICATION_TYPE","replication_status_description":"Replication degraded, check network connection and perform sync.","last_synced_time":"0","lag":{},"error":{},"peer_cluster_lag":{}},"timescale_replication_oper_status":{"replication_state":"REPLICATION_DEGRADED","replication_role":"UNKNOWN_REPLICATION_ROLE","replication_type":"UNKNOWN_REPLICATION_TYPE","replication_status_description":"Replication degraded, check network connection and perform sync.","last_synced_time":"0","lag":{},"error":{},"peer_cluster_lag":{}},"neo4j_replication_oper_status":{},"gluster_volume_replication_oper_status_summary":{"replication_type":"PERIODIC_REPLICATION","last_synced_time":"1741421934877"}},"consensus_state":"UNKNOWN_CONSENSUS_STATE"},"result":{"request_result":"ACCEPTED","error":{}}}}},"default":{"description":"An unexpected error response.","schema":{"type":"object","properties":{"error":{"type":"string"},"code":{"type":"integer","format":"int32"},"message":{"type":"string"},"details":{"type":"array","items":{"type":"object","properties":{"type_url":{"type":"string","description":"A URL/resource name that uniquely identifies the type of the serialized\nprotocol buffer message. This string must contain at least\none \"/\" character. The last segment of the URL's path must represent\nthe fully qualified name of the type (as in\n`path/google.protobuf.Duration`). The name should be in a canonical form\n(e.g., leading \".\" is not accepted).\n\nIn practice, teams usually precompile into the binary all types that they\nexpect it to use in the context of Any. However, for URLs which use the\nscheme `http`, `https`, or no scheme, one can optionally set up a type\nserver that maps type URLs to message definitions as follows:\n\n* If no scheme is provided, `https` is assumed.\n* An HTTP GET on the URL must yield a [google.protobuf.Type][]\n value in binary format, or produce an error.\n* Applications are allowed to cache lookup results based on the\n URL, or have them precompiled into a binary to avoid any\n lookup. Therefore, binary compatibility needs to be preserved\n on changes to types. (Use versioned type names to manage\n breaking changes.)\n\nNote: this functionality is not currently available in the official\nprotobuf release, and it is not used for type URLs beginning with\ntype.googleapis.com.\n\nSchemes other than `http`, `https` (or the empty scheme) might be\nused with implementation specific semantics."},"value":{"type":"string","format":"byte","description":"Must be a valid serialized protocol buffer of the above specified type."}},"description":"`Any` contains an arbitrary serialized protocol buffer message along with a\nURL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form\nof utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\n Foo foo = ...;\n Any any;\n any.PackFrom(foo);\n ...\n if (any.UnpackTo(&foo)) {\n ...\n }\n\nExample 2: Pack and unpack a message in Java.\n\n Foo foo = ...;\n Any any = Any.pack(foo);\n ...\n if (any.is(Foo.class)) {\n foo = any.unpack(Foo.class);\n }\n\n Example 3: Pack and unpack a message in Python.\n\n foo = Foo(...)\n any = Any()\n any.Pack(foo)\n ...\n if any.Is(Foo.DESCRIPTOR):\n any.Unpack(foo)\n ...\n\n Example 4: Pack and unpack a message in Go\n\n foo := &pb.Foo{...}\n any, err := ptypes.MarshalAny(foo)\n ...\n foo := &pb.Foo{}\n if err := ptypes.UnmarshalAny(any, foo); err != nil {\n ...\n }\n\nThe pack methods provided by protobuf library will by default use\n'type.googleapis.com/full.type.name' as the type URL and the unpack\nmethods only use the fully qualified type name after the last '/'\nin the type URL, for example \"foo.bar.com/x/y.z\" will yield type\nname \"y.z\".\n\n\nJSON\n====\nThe JSON representation of an `Any` value uses the regular\nrepresentation of the deserialized, embedded message, with an\nadditional field `@type` which contains the type URL. Example:\n\n package google.profile;\n message Person {\n string first_name = 1;\n string last_name = 2;\n }\n\n {\n \"@type\": \"type.googleapis.com/google.profile.Person\",\n \"firstName\": \u003cstring\u003e,\n \"lastName\": \u003cstring\u003e\n }\n\nIf the embedded message type is well-known and has a custom JSON\nrepresentation, that representation will be embedded adding a field\n`value` which holds the custom JSON in addition to the `@type`\nfield. Example (for message [google.protobuf.Duration][]):\n\n {\n \"@type\": \"type.googleapis.com/google.protobuf.Duration\",\n \"value\": \"1.212s\"\n }","$$ref":"#/definitions/protobufAny"}}},"$$ref":"#/definitions/gatewayruntimeError"},"examples":{"example":{"error":"","code":13,"message":"failed to marshal error message","details":[]}}}},"parameters":[{"name":"body","in":"body","required":true,"description":"Cross cluster service get oper status request data","schema":{"type":"null","properties":{},"title":"GetCrossClusterStatusRequest","$$ref":"#/definitions/crosscluster_serviceGetCrossClusterOperStatusRequest"}}],"tags":["CrossClusterManager"],"__originalOperationId":"CrossClusterManager_GetCrossClusterOperStatus","consumes":["application/json"],"produces":["application/json"],"method":"post","path":"/operstatus/query"}}