kuma

Форк
0
/
zone_insight.proto 
140 строк · 4.1 Кб
1
syntax = "proto3";
2

3
package kuma.system.v1alpha1;
4

5
option go_package = "github.com/kumahq/kuma/api/system/v1alpha1";
6

7
import "api/mesh/options.proto";
8
import "google/protobuf/timestamp.proto";
9
import "validate/validate.proto";
10

11
// ZoneInsight defines the observed state of a Zone Kuma CP.
12
message ZoneInsight {
13

14
  option (kuma.mesh.resource).name = "ZoneInsightResource";
15
  option (kuma.mesh.resource).type = "ZoneInsight";
16
  option (kuma.mesh.resource).package = "system";
17
  option (kuma.mesh.resource).global = true;
18
  option (kuma.mesh.resource).ws.name = "zone-insight";
19
  option (kuma.mesh.resource).ws.read_only = true;
20

21
  // List of KDS subscriptions created by a given Zone Kuma CP.
22
  repeated KDSSubscription subscriptions = 1;
23

24
  // Statistics about Envoy Admin Streams
25
  EnvoyAdminStreams envoy_admin_streams = 2;
26

27
  HealthCheck health_check = 3;
28
}
29

30
message EnvoyAdminStreams {
31
  // Global instance ID that handles XDS Config Dump streams.
32
  string config_dump_global_instance_id = 1;
33
  // Global instance ID that handles Stats streams.
34
  string stats_global_instance_id = 2;
35
  // Global instance ID that handles Clusters streams.
36
  string clusters_global_instance_id = 3;
37
}
38

39
// KDSSubscription describes a single KDS subscription
40
// created by a Zone to the Global.
41
// Ideally, there should be only one such subscription per Zone lifecycle.
42
// Presence of multiple subscriptions might indicate one of the following
43
// events:
44
// - transient loss of network connection between Zone and Global Control
45
// Planes
46
// - Zone Kuma CP restarts (i.e. hot restart or crash)
47
// - Global Kuma CP restarts (i.e. rolling update or crash)
48
// - etc
49
message KDSSubscription {
50

51
  // Unique id per KDS subscription.
52
  string id = 1 [ (validate.rules).string.min_len = 1 ];
53

54
  // Global CP instance that handled given subscription.
55
  string global_instance_id = 2 [ (validate.rules).string.min_len = 1 ];
56

57
  // Time when a given Zone connected to the Global.
58
  google.protobuf.Timestamp connect_time = 3
59
      [ (validate.rules).timestamp.required = true ];
60

61
  // Time when a given Zone disconnected from the Global.
62
  google.protobuf.Timestamp disconnect_time = 4;
63

64
  // Status of the KDS subscription.
65
  KDSSubscriptionStatus status = 5 [ (validate.rules).message.required = true ];
66

67
  // Version of Zone Kuma CP.
68
  Version version = 6;
69

70
  // Generation is an integer number which is periodically increased by the
71
  // status sink
72
  uint32 generation = 7;
73

74
  // Config of Zone Kuma CP
75
  string config = 8;
76

77
  // Indicates if subscription provided auth token
78
  bool auth_token_provided = 9;
79

80
  // Zone CP instance that handled the given subscription (This is the leader at
81
  // time of connection).
82
  string zone_instance_id = 10;
83
}
84

85
// KDSSubscriptionStatus defines status of an KDS subscription.
86
message KDSSubscriptionStatus {
87

88
  // Time when status of a given KDS subscription was most recently updated.
89
  google.protobuf.Timestamp last_update_time = 1;
90

91
  // Total defines an aggregate over individual KDS stats.
92
  KDSServiceStats total = 2;
93

94
  map<string, KDSServiceStats> stat = 3;
95
}
96

97
// DiscoveryServiceStats defines all stats over a single xDS service.
98
message KDSServiceStats {
99

100
  // Number of xDS responses sent to the Dataplane.
101
  uint64 responses_sent = 1;
102

103
  // Number of xDS responses ACKed by the Dataplane.
104
  uint64 responses_acknowledged = 2;
105

106
  // Number of xDS responses NACKed by the Dataplane.
107
  uint64 responses_rejected = 3;
108
}
109

110
// Version defines version of Kuma ControlPlane
111
message Version {
112

113
  // Version of Zone Kuma CP
114
  KumaCpVersion kumaCp = 1;
115
}
116

117
// KumaCpVersion describes details of Kuma ControlPlane version
118
message KumaCpVersion {
119

120
  // Version number of Kuma ControlPlane
121
  string version = 1;
122

123
  // Git tag of Kuma ControlPlane version
124
  string gitTag = 2;
125

126
  // Git commit of Kuma ControlPlane version
127
  string gitCommit = 3;
128

129
  // Build date of Kuma ControlPlane version
130
  string buildDate = 4;
131

132
  // True iff this Zone CP version is compatible with Global CP
133
  bool kumaCpGlobalCompatible = 5;
134
}
135

136
// HealthCheck holds information about the received zone health check
137
message HealthCheck {
138
  // Time last health check received
139
  google.protobuf.Timestamp time = 1;
140
}
141

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.