@cloudcare/guance-front-tools 1.0.5 → 1.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1530 @@
1
+ {
2
+ "title": "【集群维度】eks 总览大盘",
3
+ "dashboardExtend": {
4
+ "groupUnfoldStatus": {
5
+ "概览 【$cluster】": true,
6
+ "CPU": true,
7
+ "内存": true,
8
+ "网络": true,
9
+ "存储": true,
10
+ "Kubernetes": false
11
+ }
12
+ },
13
+ "main": {
14
+ "vars": [
15
+ {
16
+ "type": "PROMQL_QUERY",
17
+ "datasource": "dataflux",
18
+ "name": "cluster",
19
+ "seq": 1,
20
+ "hide": 0,
21
+ "multiple": false,
22
+ "includeStar": false,
23
+ "valueSort": "desc",
24
+ "code": "cluster",
25
+ "definition": {
26
+ "value": "label_values(kube_node_info,cluster)",
27
+ "defaultVal": {
28
+ "label": "hyde-prod-eks-1",
29
+ "value": "hyde-prod-eks-1"
30
+ }
31
+ }
32
+ },
33
+ {
34
+ "type": "CUSTOM_LIST",
35
+ "datasource": "custom",
36
+ "name": "resolution",
37
+ "seq": 2,
38
+ "hide": 0,
39
+ "multiple": false,
40
+ "includeStar": false,
41
+ "valueSort": "desc",
42
+ "code": "resolution",
43
+ "definition": {
44
+ "value": "1s, 15s, 30s, 1m, 3m, 5m",
45
+ "defaultVal": {
46
+ "label": "30s",
47
+ "value": "30s"
48
+ }
49
+ }
50
+ }
51
+ ],
52
+ "charts": [
53
+ {
54
+ "extend": {
55
+ "settings": {
56
+ "showTopSize": true,
57
+ "chartType": "bar"
58
+ }
59
+ },
60
+ "group": {
61
+ "name": "概览 【$cluster】"
62
+ },
63
+ "pos": {
64
+ "x": 0,
65
+ "y": 2,
66
+ "h": 15.3,
67
+ "w": 6
68
+ },
69
+ "name": "Global CPU Usage",
70
+ "queries": [
71
+ {
72
+ "datasource": "dataflux",
73
+ "qtype": "promql",
74
+ "type": "toplist",
75
+ "query": {
76
+ "q": "avg(sum by (instance, cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"#{cluster}\"}[#{__rate_interval}])))",
77
+ "type": "promql",
78
+ "code": "A",
79
+ "promqlCode": 1
80
+ }
81
+ },
82
+ {
83
+ "datasource": "dataflux",
84
+ "qtype": "promql",
85
+ "type": "toplist",
86
+ "query": {
87
+ "q": "sum(kube_pod_container_resource_requests{resource=\"cpu\", cluster=\"#{cluster}\"}) / sum(machine_cpu_cores{cluster=\"#{cluster}\"})",
88
+ "type": "promql",
89
+ "code": "B",
90
+ "promqlCode": 2
91
+ }
92
+ },
93
+ {
94
+ "datasource": "dataflux",
95
+ "qtype": "promql",
96
+ "type": "toplist",
97
+ "query": {
98
+ "q": "sum(kube_pod_container_resource_limits{resource=\"cpu\", cluster=\"#{cluster}\"}) / sum(machine_cpu_cores{cluster=\"#{cluster}\"})",
99
+ "type": "promql",
100
+ "code": "C",
101
+ "promqlCode": 3
102
+ }
103
+ }
104
+ ],
105
+ "type": "toplist"
106
+ },
107
+ {
108
+ "extend": {
109
+ "settings": {
110
+ "showTopSize": true,
111
+ "chartType": "bar"
112
+ }
113
+ },
114
+ "group": {
115
+ "name": "概览 【$cluster】"
116
+ },
117
+ "pos": {
118
+ "x": 6,
119
+ "y": 2,
120
+ "h": 15.3,
121
+ "w": 6
122
+ },
123
+ "name": "Global RAM Usage",
124
+ "queries": [
125
+ {
126
+ "datasource": "dataflux",
127
+ "qtype": "promql",
128
+ "type": "toplist",
129
+ "query": {
130
+ "q": "sum(node_memory_MemTotal_bytes{cluster=\"#{cluster}\"} - node_memory_MemAvailable_bytes{cluster=\"#{cluster}\"}) / sum(node_memory_MemTotal_bytes{cluster=\"#{cluster}\"})",
131
+ "type": "promql",
132
+ "code": "A",
133
+ "promqlCode": 1
134
+ }
135
+ },
136
+ {
137
+ "datasource": "dataflux",
138
+ "qtype": "promql",
139
+ "type": "toplist",
140
+ "query": {
141
+ "q": "sum(kube_pod_container_resource_requests{resource=\"memory\", cluster=\"#{cluster}\"}) / sum(machine_memory_bytes{cluster=\"#{cluster}\"})",
142
+ "type": "promql",
143
+ "code": "B",
144
+ "promqlCode": 2
145
+ }
146
+ },
147
+ {
148
+ "datasource": "dataflux",
149
+ "qtype": "promql",
150
+ "type": "toplist",
151
+ "query": {
152
+ "q": "sum(kube_pod_container_resource_limits{resource=\"memory\", cluster=\"#{cluster}\"}) / sum(machine_memory_bytes{cluster=\"#{cluster}\"})",
153
+ "type": "promql",
154
+ "code": "C",
155
+ "promqlCode": 3
156
+ }
157
+ }
158
+ ],
159
+ "type": "toplist"
160
+ },
161
+ {
162
+ "extend": {
163
+ "settings": {}
164
+ },
165
+ "group": {
166
+ "name": "概览 【$cluster】"
167
+ },
168
+ "pos": {
169
+ "x": 12,
170
+ "y": 2,
171
+ "h": 7.7,
172
+ "w": 2
173
+ },
174
+ "name": "Nodes",
175
+ "queries": [
176
+ {
177
+ "datasource": "dataflux",
178
+ "qtype": "promql",
179
+ "type": "singlestat",
180
+ "query": {
181
+ "q": "count(count by (node) (kube_node_info{cluster=\"#{cluster}\"}))",
182
+ "type": "promql",
183
+ "code": "A",
184
+ "promqlCode": 1
185
+ }
186
+ }
187
+ ],
188
+ "type": "singlestat"
189
+ },
190
+ {
191
+ "extend": {
192
+ "settings": {}
193
+ },
194
+ "group": {
195
+ "name": "概览 【$cluster】"
196
+ },
197
+ "pos": {
198
+ "x": 14,
199
+ "y": 2,
200
+ "h": 22.9,
201
+ "w": 10
202
+ },
203
+ "name": "Kubernetes Resource Count",
204
+ "queries": [
205
+ {
206
+ "datasource": "dataflux",
207
+ "qtype": "promql",
208
+ "type": "sequence",
209
+ "query": {
210
+ "q": "sum(kube_namespace_labels{cluster=\"#{cluster}\"})",
211
+ "type": "promql",
212
+ "code": "A",
213
+ "promqlCode": 1
214
+ }
215
+ },
216
+ {
217
+ "datasource": "dataflux",
218
+ "qtype": "promql",
219
+ "type": "sequence",
220
+ "query": {
221
+ "q": "sum(kube_pod_container_status_running{cluster=\"#{cluster}\"})",
222
+ "type": "promql",
223
+ "code": "B",
224
+ "promqlCode": 2
225
+ }
226
+ },
227
+ {
228
+ "datasource": "dataflux",
229
+ "qtype": "promql",
230
+ "type": "sequence",
231
+ "query": {
232
+ "q": "sum(kube_pod_status_phase{phase=\"Running\", cluster=\"#{cluster}\"})",
233
+ "type": "promql",
234
+ "code": "C",
235
+ "promqlCode": 3
236
+ }
237
+ },
238
+ {
239
+ "datasource": "dataflux",
240
+ "qtype": "promql",
241
+ "type": "sequence",
242
+ "query": {
243
+ "q": "sum(kube_service_info{cluster=\"#{cluster}\"})",
244
+ "type": "promql",
245
+ "code": "D",
246
+ "promqlCode": 4
247
+ }
248
+ },
249
+ {
250
+ "datasource": "dataflux",
251
+ "qtype": "promql",
252
+ "type": "sequence",
253
+ "query": {
254
+ "q": "sum(kube_endpoint_info{cluster=\"#{cluster}\"})",
255
+ "type": "promql",
256
+ "code": "E",
257
+ "promqlCode": 5
258
+ }
259
+ },
260
+ {
261
+ "datasource": "dataflux",
262
+ "qtype": "promql",
263
+ "type": "sequence",
264
+ "query": {
265
+ "q": "sum(kube_ingress_info{cluster=\"#{cluster}\"})",
266
+ "type": "promql",
267
+ "code": "F",
268
+ "promqlCode": 6
269
+ }
270
+ },
271
+ {
272
+ "datasource": "dataflux",
273
+ "qtype": "promql",
274
+ "type": "sequence",
275
+ "query": {
276
+ "q": "sum(kube_deployment_labels{cluster=\"#{cluster}\"})",
277
+ "type": "promql",
278
+ "code": "G",
279
+ "promqlCode": 7
280
+ }
281
+ },
282
+ {
283
+ "datasource": "dataflux",
284
+ "qtype": "promql",
285
+ "type": "sequence",
286
+ "query": {
287
+ "q": "sum(kube_statefulset_labels{cluster=\"#{cluster}\"})",
288
+ "type": "promql",
289
+ "code": "H",
290
+ "promqlCode": 8
291
+ }
292
+ },
293
+ {
294
+ "datasource": "dataflux",
295
+ "qtype": "promql",
296
+ "type": "sequence",
297
+ "query": {
298
+ "q": "sum(kube_daemonset_labels{cluster=\"#{cluster}\"})",
299
+ "type": "promql",
300
+ "code": "I",
301
+ "promqlCode": 9
302
+ }
303
+ },
304
+ {
305
+ "datasource": "dataflux",
306
+ "qtype": "promql",
307
+ "type": "sequence",
308
+ "query": {
309
+ "q": "sum(kube_persistentvolumeclaim_info{cluster=\"#{cluster}\"})",
310
+ "type": "promql",
311
+ "code": "J",
312
+ "promqlCode": 10
313
+ }
314
+ },
315
+ {
316
+ "datasource": "dataflux",
317
+ "qtype": "promql",
318
+ "type": "sequence",
319
+ "query": {
320
+ "q": "sum(kube_hpa_labels{cluster=\"#{cluster}\"})",
321
+ "type": "promql",
322
+ "code": "K",
323
+ "promqlCode": 11
324
+ }
325
+ },
326
+ {
327
+ "datasource": "dataflux",
328
+ "qtype": "promql",
329
+ "type": "sequence",
330
+ "query": {
331
+ "q": "sum(kube_configmap_info{cluster=\"#{cluster}\"})",
332
+ "type": "promql",
333
+ "code": "L",
334
+ "promqlCode": 12
335
+ }
336
+ },
337
+ {
338
+ "datasource": "dataflux",
339
+ "qtype": "promql",
340
+ "type": "sequence",
341
+ "query": {
342
+ "q": "sum(kube_secret_info{cluster=\"#{cluster}\"})",
343
+ "type": "promql",
344
+ "code": "M",
345
+ "promqlCode": 13
346
+ }
347
+ },
348
+ {
349
+ "datasource": "dataflux",
350
+ "qtype": "promql",
351
+ "type": "sequence",
352
+ "query": {
353
+ "q": "sum(kube_networkpolicy_labels{cluster=\"#{cluster}\"})",
354
+ "type": "promql",
355
+ "code": "N",
356
+ "promqlCode": 14
357
+ }
358
+ },
359
+ {
360
+ "datasource": "dataflux",
361
+ "qtype": "promql",
362
+ "type": "sequence",
363
+ "query": {
364
+ "q": "count(count by (node) (kube_node_info{cluster=\"#{cluster}\"}))",
365
+ "type": "promql",
366
+ "code": "O",
367
+ "promqlCode": 15
368
+ }
369
+ },
370
+ {
371
+ "datasource": "dataflux",
372
+ "qtype": "promql",
373
+ "type": "sequence",
374
+ "query": {
375
+ "q": "count(avg(namespace_workload_pod:kube_pod_owner:relabel{cluster=\"#{cluster}\"}) by (workload, cluster)) by (cluster)",
376
+ "type": "promql",
377
+ "code": "P",
378
+ "promqlCode": 16
379
+ }
380
+ }
381
+ ],
382
+ "type": "sequence"
383
+ },
384
+ {
385
+ "extend": {
386
+ "settings": {}
387
+ },
388
+ "group": {
389
+ "name": "概览 【$cluster】"
390
+ },
391
+ "pos": {
392
+ "x": 12,
393
+ "y": 9.6,
394
+ "h": 7.7,
395
+ "w": 2
396
+ },
397
+ "name": "Running Pods",
398
+ "queries": [
399
+ {
400
+ "datasource": "dataflux",
401
+ "qtype": "promql",
402
+ "type": "singlestat",
403
+ "query": {
404
+ "q": "sum(kube_pod_status_phase{phase=\"Running\", cluster=\"#{cluster}\"})",
405
+ "type": "promql",
406
+ "code": "A",
407
+ "promqlCode": 1
408
+ }
409
+ }
410
+ ],
411
+ "type": "singlestat"
412
+ },
413
+ {
414
+ "extend": {
415
+ "settings": {}
416
+ },
417
+ "group": {
418
+ "name": "概览 【$cluster】"
419
+ },
420
+ "pos": {
421
+ "x": 0,
422
+ "y": 17.2,
423
+ "h": 7.7,
424
+ "w": 6
425
+ },
426
+ "name": "CPU Usage",
427
+ "queries": [
428
+ {
429
+ "datasource": "dataflux",
430
+ "qtype": "promql",
431
+ "type": "singlestat",
432
+ "query": {
433
+ "q": "sum(rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"#{cluster}\"}[#{__rate_interval}]))",
434
+ "type": "promql",
435
+ "code": "A",
436
+ "promqlCode": 1
437
+ }
438
+ },
439
+ {
440
+ "datasource": "dataflux",
441
+ "qtype": "promql",
442
+ "type": "singlestat",
443
+ "query": {
444
+ "q": "sum(kube_pod_container_resource_requests{resource=\"cpu\", cluster=\"#{cluster}\"})",
445
+ "type": "promql",
446
+ "code": "B",
447
+ "promqlCode": 2
448
+ }
449
+ },
450
+ {
451
+ "datasource": "dataflux",
452
+ "qtype": "promql",
453
+ "type": "singlestat",
454
+ "query": {
455
+ "q": "sum(kube_pod_container_resource_limits{resource=\"cpu\", cluster=\"#{cluster}\"})",
456
+ "type": "promql",
457
+ "code": "C",
458
+ "promqlCode": 3
459
+ }
460
+ },
461
+ {
462
+ "datasource": "dataflux",
463
+ "qtype": "promql",
464
+ "type": "singlestat",
465
+ "query": {
466
+ "q": "sum(machine_cpu_cores{cluster=\"#{cluster}\"})",
467
+ "type": "promql",
468
+ "code": "D",
469
+ "promqlCode": 4
470
+ }
471
+ }
472
+ ],
473
+ "type": "singlestat"
474
+ },
475
+ {
476
+ "extend": {
477
+ "settings": {}
478
+ },
479
+ "group": {
480
+ "name": "概览 【$cluster】"
481
+ },
482
+ "pos": {
483
+ "x": 6,
484
+ "y": 17.2,
485
+ "h": 7.7,
486
+ "w": 6
487
+ },
488
+ "name": "RAM Usage",
489
+ "queries": [
490
+ {
491
+ "datasource": "dataflux",
492
+ "qtype": "promql",
493
+ "type": "singlestat",
494
+ "query": {
495
+ "q": "sum(node_memory_MemTotal_bytes{cluster=\"#{cluster}\"} - node_memory_MemAvailable_bytes{cluster=\"#{cluster}\"})",
496
+ "type": "promql",
497
+ "code": "A",
498
+ "promqlCode": 1
499
+ }
500
+ },
501
+ {
502
+ "datasource": "dataflux",
503
+ "qtype": "promql",
504
+ "type": "singlestat",
505
+ "query": {
506
+ "q": "sum(kube_pod_container_resource_requests{resource=\"memory\", cluster=\"#{cluster}\"})",
507
+ "type": "promql",
508
+ "code": "B",
509
+ "promqlCode": 2
510
+ }
511
+ },
512
+ {
513
+ "datasource": "dataflux",
514
+ "qtype": "promql",
515
+ "type": "singlestat",
516
+ "query": {
517
+ "q": "sum(kube_pod_container_resource_limits{resource=\"memory\", cluster=\"#{cluster}\"})",
518
+ "type": "promql",
519
+ "code": "C",
520
+ "promqlCode": 3
521
+ }
522
+ },
523
+ {
524
+ "datasource": "dataflux",
525
+ "qtype": "promql",
526
+ "type": "singlestat",
527
+ "query": {
528
+ "q": "sum(machine_memory_bytes{cluster=\"#{cluster}\"})",
529
+ "type": "promql",
530
+ "code": "D",
531
+ "promqlCode": 4
532
+ }
533
+ }
534
+ ],
535
+ "type": "singlestat"
536
+ },
537
+ {
538
+ "extend": {
539
+ "settings": {}
540
+ },
541
+ "group": {
542
+ "name": "概览 【$cluster】"
543
+ },
544
+ "pos": {
545
+ "x": 12,
546
+ "y": 17.2,
547
+ "h": 7.7,
548
+ "w": 2
549
+ },
550
+ "name": "Namespaces",
551
+ "queries": [
552
+ {
553
+ "datasource": "dataflux",
554
+ "qtype": "promql",
555
+ "type": "singlestat",
556
+ "query": {
557
+ "q": "count(kube_namespace_created{cluster=\"#{cluster}\"})",
558
+ "type": "promql",
559
+ "code": "A",
560
+ "promqlCode": 1
561
+ }
562
+ }
563
+ ],
564
+ "type": "singlestat"
565
+ },
566
+ {
567
+ "extend": {
568
+ "settings": {}
569
+ },
570
+ "group": {
571
+ "name": "CPU"
572
+ },
573
+ "pos": {
574
+ "x": 0,
575
+ "y": 2,
576
+ "h": 15.3,
577
+ "w": 9
578
+ },
579
+ "name": "Cluster CPU Utilization",
580
+ "queries": [
581
+ {
582
+ "datasource": "dataflux",
583
+ "qtype": "promql",
584
+ "type": "sequence",
585
+ "query": {
586
+ "q": "avg(sum by (instance, cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"#{cluster}\"}[#{__rate_interval}])))",
587
+ "type": "promql",
588
+ "code": "A",
589
+ "promqlCode": 1
590
+ }
591
+ }
592
+ ],
593
+ "type": "sequence"
594
+ },
595
+ {
596
+ "extend": {
597
+ "settings": {}
598
+ },
599
+ "group": {
600
+ "name": "CPU"
601
+ },
602
+ "pos": {
603
+ "x": 9,
604
+ "y": 2,
605
+ "h": 15.3,
606
+ "w": 15
607
+ },
608
+ "name": "CPU Utilization by instance",
609
+ "queries": [
610
+ {
611
+ "datasource": "dataflux",
612
+ "qtype": "promql",
613
+ "type": "sequence",
614
+ "query": {
615
+ "q": "avg(sum by (instance, cpu) (rate(node_cpu_seconds_total{mode!~\"idle|iowait|steal\", cluster=\"#{cluster}\"}[#{__rate_interval}]))) by (instance)",
616
+ "type": "promql",
617
+ "code": "A",
618
+ "promqlCode": 1
619
+ }
620
+ }
621
+ ],
622
+ "type": "sequence"
623
+ },
624
+ {
625
+ "extend": {
626
+ "settings": {}
627
+ },
628
+ "group": {
629
+ "name": "CPU"
630
+ },
631
+ "pos": {
632
+ "x": 0,
633
+ "y": 17.2,
634
+ "h": 15.3,
635
+ "w": 9
636
+ },
637
+ "name": "CPU Utilization by namespace",
638
+ "queries": [
639
+ {
640
+ "datasource": "dataflux",
641
+ "qtype": "promql",
642
+ "type": "sequence",
643
+ "query": {
644
+ "q": "sum(rate(container_cpu_usage_seconds_total{image!=\"\", cluster=\"#{cluster}\"}[#{__rate_interval}])) by (namespace)",
645
+ "type": "promql",
646
+ "code": "A",
647
+ "promqlCode": 1
648
+ }
649
+ }
650
+ ],
651
+ "type": "sequence"
652
+ },
653
+ {
654
+ "extend": {
655
+ "settings": {}
656
+ },
657
+ "group": {
658
+ "name": "CPU"
659
+ },
660
+ "pos": {
661
+ "x": 9,
662
+ "y": 17.2,
663
+ "h": 15.3,
664
+ "w": 15
665
+ },
666
+ "name": "CPU",
667
+ "queries": [
668
+ {
669
+ "datasource": "dataflux",
670
+ "qtype": "promql",
671
+ "type": "table",
672
+ "query": {
673
+ "q": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"#{cluster}\"}) by (namespace)",
674
+ "type": "promql",
675
+ "code": "A",
676
+ "promqlCode": 1
677
+ }
678
+ },
679
+ {
680
+ "datasource": "dataflux",
681
+ "qtype": "promql",
682
+ "type": "table",
683
+ "query": {
684
+ "q": "sum(namespace_cpu:kube_pod_container_resource_requests:sum{cluster=\"#{cluster}\"}) by (namespace)",
685
+ "type": "promql",
686
+ "code": "B",
687
+ "promqlCode": 2
688
+ }
689
+ },
690
+ {
691
+ "datasource": "dataflux",
692
+ "qtype": "promql",
693
+ "type": "table",
694
+ "query": {
695
+ "q": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"#{cluster}\"}) by (namespace) / sum(namespace_cpu:kube_pod_container_resource_requests:sum{cluster=\"#{cluster}\"}) by (namespace)",
696
+ "type": "promql",
697
+ "code": "C",
698
+ "promqlCode": 3
699
+ }
700
+ },
701
+ {
702
+ "datasource": "dataflux",
703
+ "qtype": "promql",
704
+ "type": "table",
705
+ "query": {
706
+ "q": "sum(namespace_cpu:kube_pod_container_resource_limits:sum{cluster=\"#{cluster}\"}) by (namespace)",
707
+ "type": "promql",
708
+ "code": "D",
709
+ "promqlCode": 4
710
+ }
711
+ },
712
+ {
713
+ "datasource": "dataflux",
714
+ "qtype": "promql",
715
+ "type": "table",
716
+ "query": {
717
+ "q": "sum(node_namespace_pod_container:container_cpu_usage_seconds_total:sum_irate{cluster=\"#{cluster}\"}) by (namespace) / sum(namespace_cpu:kube_pod_container_resource_limits:sum{cluster=\"#{cluster}\"}) by (namespace)",
718
+ "type": "promql",
719
+ "code": "E",
720
+ "promqlCode": 5
721
+ }
722
+ }
723
+ ],
724
+ "type": "table"
725
+ },
726
+ {
727
+ "extend": {
728
+ "settings": {}
729
+ },
730
+ "group": {
731
+ "name": "内存"
732
+ },
733
+ "pos": {
734
+ "x": 0,
735
+ "y": 2,
736
+ "h": 15.3,
737
+ "w": 9
738
+ },
739
+ "name": "Cluster Memory Utilization",
740
+ "queries": [
741
+ {
742
+ "datasource": "dataflux",
743
+ "qtype": "promql",
744
+ "type": "sequence",
745
+ "query": {
746
+ "q": "sum(node_memory_MemTotal_bytes{cluster=\"#{cluster}\"} - node_memory_MemAvailable_bytes{cluster=\"#{cluster}\"}) / sum(node_memory_MemTotal_bytes{cluster=\"#{cluster}\"})",
747
+ "type": "promql",
748
+ "code": "A",
749
+ "promqlCode": 1
750
+ }
751
+ }
752
+ ],
753
+ "type": "sequence"
754
+ },
755
+ {
756
+ "extend": {
757
+ "settings": {}
758
+ },
759
+ "group": {
760
+ "name": "内存"
761
+ },
762
+ "pos": {
763
+ "x": 9,
764
+ "y": 2,
765
+ "h": 15.3,
766
+ "w": 15
767
+ },
768
+ "name": "Memory Utilization by instance",
769
+ "queries": [
770
+ {
771
+ "datasource": "dataflux",
772
+ "qtype": "promql",
773
+ "type": "sequence",
774
+ "query": {
775
+ "q": "sum(node_memory_MemTotal_bytes{cluster=\"#{cluster}\"} - node_memory_MemAvailable_bytes{cluster=\"#{cluster}\"}) by (instance)",
776
+ "type": "promql",
777
+ "code": "A",
778
+ "promqlCode": 1
779
+ }
780
+ }
781
+ ],
782
+ "type": "sequence"
783
+ },
784
+ {
785
+ "extend": {
786
+ "settings": {}
787
+ },
788
+ "group": {
789
+ "name": "内存"
790
+ },
791
+ "pos": {
792
+ "x": 0,
793
+ "y": 17.2,
794
+ "h": 15.3,
795
+ "w": 9
796
+ },
797
+ "name": "Memory Utilization by namespace",
798
+ "queries": [
799
+ {
800
+ "datasource": "dataflux",
801
+ "qtype": "promql",
802
+ "type": "sequence",
803
+ "query": {
804
+ "q": "sum(container_memory_working_set_bytes{image!=\"\", cluster=\"#{cluster}\"}) by (namespace)",
805
+ "type": "promql",
806
+ "code": "A",
807
+ "promqlCode": 1
808
+ }
809
+ }
810
+ ],
811
+ "type": "sequence"
812
+ },
813
+ {
814
+ "extend": {
815
+ "settings": {}
816
+ },
817
+ "group": {
818
+ "name": "内存"
819
+ },
820
+ "pos": {
821
+ "x": 9,
822
+ "y": 17.2,
823
+ "h": 15.3,
824
+ "w": 15
825
+ },
826
+ "name": "内存",
827
+ "queries": [
828
+ {
829
+ "datasource": "dataflux",
830
+ "qtype": "promql",
831
+ "type": "table",
832
+ "query": {
833
+ "q": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", container!=\"\"}) by (namespace)",
834
+ "type": "promql",
835
+ "code": "A",
836
+ "promqlCode": 1
837
+ }
838
+ },
839
+ {
840
+ "datasource": "dataflux",
841
+ "qtype": "promql",
842
+ "type": "table",
843
+ "query": {
844
+ "q": "sum(namespace_memory:kube_pod_container_resource_requests:sum{cluster=\"#{cluster}\"}) by (namespace)",
845
+ "type": "promql",
846
+ "code": "B",
847
+ "promqlCode": 2
848
+ }
849
+ },
850
+ {
851
+ "datasource": "dataflux",
852
+ "qtype": "promql",
853
+ "type": "table",
854
+ "query": {
855
+ "q": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", container!=\"\"}) by (namespace) / sum(namespace_memory:kube_pod_container_resource_requests:sum{cluster=\"#{cluster}\"}) by (namespace)",
856
+ "type": "promql",
857
+ "code": "C",
858
+ "promqlCode": 3
859
+ }
860
+ },
861
+ {
862
+ "datasource": "dataflux",
863
+ "qtype": "promql",
864
+ "type": "table",
865
+ "query": {
866
+ "q": "sum(namespace_memory:kube_pod_container_resource_limits:sum{cluster=\"#{cluster}\"}) by (namespace)",
867
+ "type": "promql",
868
+ "code": "D",
869
+ "promqlCode": 4
870
+ }
871
+ },
872
+ {
873
+ "datasource": "dataflux",
874
+ "qtype": "promql",
875
+ "type": "table",
876
+ "query": {
877
+ "q": "sum(container_memory_rss{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", container!=\"\"}) by (namespace) / sum(namespace_memory:kube_pod_container_resource_limits:sum{cluster=\"#{cluster}\"}) by (namespace)",
878
+ "type": "promql",
879
+ "code": "E",
880
+ "promqlCode": 5
881
+ }
882
+ }
883
+ ],
884
+ "type": "table"
885
+ },
886
+ {
887
+ "extend": {
888
+ "settings": {}
889
+ },
890
+ "group": {
891
+ "name": "网络"
892
+ },
893
+ "pos": {
894
+ "x": 0,
895
+ "y": 2,
896
+ "h": 13.4,
897
+ "w": 24
898
+ },
899
+ "name": "网络",
900
+ "queries": [
901
+ {
902
+ "datasource": "dataflux",
903
+ "qtype": "promql",
904
+ "type": "table",
905
+ "query": {
906
+ "q": "sum(irate(container_network_receive_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
907
+ "type": "promql",
908
+ "code": "A",
909
+ "promqlCode": 1
910
+ }
911
+ },
912
+ {
913
+ "datasource": "dataflux",
914
+ "qtype": "promql",
915
+ "type": "table",
916
+ "query": {
917
+ "q": "sum(irate(container_network_transmit_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
918
+ "type": "promql",
919
+ "code": "B",
920
+ "promqlCode": 2
921
+ }
922
+ },
923
+ {
924
+ "datasource": "dataflux",
925
+ "qtype": "promql",
926
+ "type": "table",
927
+ "query": {
928
+ "q": "sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
929
+ "type": "promql",
930
+ "code": "C",
931
+ "promqlCode": 3
932
+ }
933
+ },
934
+ {
935
+ "datasource": "dataflux",
936
+ "qtype": "promql",
937
+ "type": "table",
938
+ "query": {
939
+ "q": "sum(irate(container_network_transmit_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
940
+ "type": "promql",
941
+ "code": "D",
942
+ "promqlCode": 4
943
+ }
944
+ },
945
+ {
946
+ "datasource": "dataflux",
947
+ "qtype": "promql",
948
+ "type": "table",
949
+ "query": {
950
+ "q": "sum(irate(container_network_receive_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
951
+ "type": "promql",
952
+ "code": "E",
953
+ "promqlCode": 5
954
+ }
955
+ },
956
+ {
957
+ "datasource": "dataflux",
958
+ "qtype": "promql",
959
+ "type": "table",
960
+ "query": {
961
+ "q": "sum(irate(container_network_transmit_packets_dropped_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
962
+ "type": "promql",
963
+ "code": "F",
964
+ "promqlCode": 6
965
+ }
966
+ }
967
+ ],
968
+ "type": "table"
969
+ },
970
+ {
971
+ "extend": {
972
+ "settings": {}
973
+ },
974
+ "group": {
975
+ "name": "网络"
976
+ },
977
+ "pos": {
978
+ "x": 0,
979
+ "y": 15.3,
980
+ "h": 15.3,
981
+ "w": 8
982
+ },
983
+ "name": "Network Received by namespace",
984
+ "queries": [
985
+ {
986
+ "datasource": "dataflux",
987
+ "qtype": "promql",
988
+ "type": "sequence",
989
+ "query": {
990
+ "q": "sum(rate(container_network_receive_bytes_total{cluster=\"#{cluster}\"}[#{__rate_interval}])) by (namespace)",
991
+ "type": "promql",
992
+ "code": "A",
993
+ "promqlCode": 1
994
+ }
995
+ },
996
+ {
997
+ "datasource": "dataflux",
998
+ "qtype": "promql",
999
+ "type": "sequence",
1000
+ "query": {
1001
+ "q": "- sum(rate(container_network_transmit_bytes_total{cluster=\"#{cluster}\"}[#{__rate_interval}])) by (namespace)",
1002
+ "type": "promql",
1003
+ "code": "B",
1004
+ "promqlCode": 2
1005
+ }
1006
+ }
1007
+ ],
1008
+ "type": "sequence"
1009
+ },
1010
+ {
1011
+ "extend": {
1012
+ "settings": {}
1013
+ },
1014
+ "group": {
1015
+ "name": "网络"
1016
+ },
1017
+ "pos": {
1018
+ "x": 8,
1019
+ "y": 15.3,
1020
+ "h": 15.3,
1021
+ "w": 8
1022
+ },
1023
+ "name": "Rate of Received Packets",
1024
+ "queries": [
1025
+ {
1026
+ "datasource": "dataflux",
1027
+ "qtype": "promql",
1028
+ "type": "sequence",
1029
+ "query": {
1030
+ "q": "sum(irate(container_network_receive_packets_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", cluster=\"#{cluster}\", namespace=~\".+\"}[#{__rate_interval}])) by (namespace)",
1031
+ "type": "promql",
1032
+ "code": "A",
1033
+ "promqlCode": 1
1034
+ }
1035
+ }
1036
+ ],
1037
+ "type": "sequence"
1038
+ },
1039
+ {
1040
+ "extend": {
1041
+ "settings": {}
1042
+ },
1043
+ "group": {
1044
+ "name": "网络"
1045
+ },
1046
+ "pos": {
1047
+ "x": 16,
1048
+ "y": 15.3,
1049
+ "h": 15.3,
1050
+ "w": 8
1051
+ },
1052
+ "name": "Network Saturation - Packets dropped",
1053
+ "queries": [
1054
+ {
1055
+ "datasource": "dataflux",
1056
+ "qtype": "promql",
1057
+ "type": "sequence",
1058
+ "query": {
1059
+ "q": "sum(rate(node_network_receive_drop_total{cluster=\"#{cluster}\"}[#{__rate_interval}]))",
1060
+ "type": "promql",
1061
+ "code": "A",
1062
+ "promqlCode": 1
1063
+ }
1064
+ },
1065
+ {
1066
+ "datasource": "dataflux",
1067
+ "qtype": "promql",
1068
+ "type": "sequence",
1069
+ "query": {
1070
+ "q": "- sum(rate(node_network_transmit_drop_total{cluster=\"#{cluster}\"}[#{__rate_interval}]))",
1071
+ "type": "promql",
1072
+ "code": "B",
1073
+ "promqlCode": 2
1074
+ }
1075
+ }
1076
+ ],
1077
+ "type": "sequence"
1078
+ },
1079
+ {
1080
+ "extend": {
1081
+ "settings": {}
1082
+ },
1083
+ "group": {
1084
+ "name": "网络"
1085
+ },
1086
+ "pos": {
1087
+ "x": 0,
1088
+ "y": 30.5,
1089
+ "h": 15.3,
1090
+ "w": 8
1091
+ },
1092
+ "name": "Network Received (loopback only) by instance",
1093
+ "queries": [
1094
+ {
1095
+ "datasource": "dataflux",
1096
+ "qtype": "promql",
1097
+ "type": "sequence",
1098
+ "query": {
1099
+ "q": "sum(rate(node_network_receive_bytes_total{device=\"lo\", cluster=\"#{cluster}\"}[#{__rate_interval}])) by (instance)",
1100
+ "type": "promql",
1101
+ "code": "A",
1102
+ "promqlCode": 1
1103
+ }
1104
+ },
1105
+ {
1106
+ "datasource": "dataflux",
1107
+ "qtype": "promql",
1108
+ "type": "sequence",
1109
+ "query": {
1110
+ "q": "- sum(rate(node_network_transmit_bytes_total{device=\"lo\", cluster=\"#{cluster}\"}[#{__rate_interval}])) by (instance)",
1111
+ "type": "promql",
1112
+ "code": "B",
1113
+ "promqlCode": 2
1114
+ }
1115
+ }
1116
+ ],
1117
+ "type": "sequence"
1118
+ },
1119
+ {
1120
+ "extend": {
1121
+ "settings": {}
1122
+ },
1123
+ "group": {
1124
+ "name": "网络"
1125
+ },
1126
+ "pos": {
1127
+ "x": 8,
1128
+ "y": 30.5,
1129
+ "h": 15.3,
1130
+ "w": 8
1131
+ },
1132
+ "name": "Total Network Received (with all virtual devices) by instance",
1133
+ "queries": [
1134
+ {
1135
+ "datasource": "dataflux",
1136
+ "qtype": "promql",
1137
+ "type": "sequence",
1138
+ "query": {
1139
+ "q": "sum(rate(node_network_receive_bytes_total{cluster=\"#{cluster}\"}[#{__rate_interval}])) by (instance)",
1140
+ "type": "promql",
1141
+ "code": "A",
1142
+ "promqlCode": 1
1143
+ }
1144
+ },
1145
+ {
1146
+ "datasource": "dataflux",
1147
+ "qtype": "promql",
1148
+ "type": "sequence",
1149
+ "query": {
1150
+ "q": "- sum(rate(node_network_transmit_bytes_total{cluster=\"#{cluster}\"}[#{__rate_interval}])) by (instance)",
1151
+ "type": "promql",
1152
+ "code": "B",
1153
+ "promqlCode": 2
1154
+ }
1155
+ }
1156
+ ],
1157
+ "type": "sequence"
1158
+ },
1159
+ {
1160
+ "extend": {
1161
+ "settings": {}
1162
+ },
1163
+ "group": {
1164
+ "name": "网络"
1165
+ },
1166
+ "pos": {
1167
+ "x": 16,
1168
+ "y": 30.5,
1169
+ "h": 15.3,
1170
+ "w": 8
1171
+ },
1172
+ "name": "Network Received (without loopback) by instance",
1173
+ "queries": [
1174
+ {
1175
+ "datasource": "dataflux",
1176
+ "qtype": "promql",
1177
+ "type": "sequence",
1178
+ "query": {
1179
+ "q": "sum(rate(node_network_receive_bytes_total{device!~\"lxc.*|veth.*|lo\", cluster=\"#{cluster}\"}[#{__rate_interval}])) by (instance)",
1180
+ "type": "promql",
1181
+ "code": "A",
1182
+ "promqlCode": 1
1183
+ }
1184
+ },
1185
+ {
1186
+ "datasource": "dataflux",
1187
+ "qtype": "promql",
1188
+ "type": "sequence",
1189
+ "query": {
1190
+ "q": "- sum(rate(node_network_transmit_bytes_total{device!~\"lxc.*|veth.*|lo\", cluster=\"#{cluster}\"}[#{__rate_interval}])) by (instance)",
1191
+ "type": "promql",
1192
+ "code": "B",
1193
+ "promqlCode": 2
1194
+ }
1195
+ }
1196
+ ],
1197
+ "type": "sequence"
1198
+ },
1199
+ {
1200
+ "extend": {
1201
+ "settings": {}
1202
+ },
1203
+ "group": {
1204
+ "name": "存储"
1205
+ },
1206
+ "pos": {
1207
+ "x": 0,
1208
+ "y": 2,
1209
+ "h": 13.4,
1210
+ "w": 24
1211
+ },
1212
+ "name": "Storage IO",
1213
+ "queries": [
1214
+ {
1215
+ "datasource": "dataflux",
1216
+ "qtype": "promql",
1217
+ "type": "table",
1218
+ "query": {
1219
+ "q": "sum by(namespace) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]))",
1220
+ "type": "promql",
1221
+ "code": "A",
1222
+ "promqlCode": 1
1223
+ }
1224
+ },
1225
+ {
1226
+ "datasource": "dataflux",
1227
+ "qtype": "promql",
1228
+ "type": "table",
1229
+ "query": {
1230
+ "q": "sum by(namespace) (rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]))",
1231
+ "type": "promql",
1232
+ "code": "B",
1233
+ "promqlCode": 2
1234
+ }
1235
+ },
1236
+ {
1237
+ "datasource": "dataflux",
1238
+ "qtype": "promql",
1239
+ "type": "table",
1240
+ "query": {
1241
+ "q": "sum by(namespace) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]))",
1242
+ "type": "promql",
1243
+ "code": "C",
1244
+ "promqlCode": 3
1245
+ }
1246
+ },
1247
+ {
1248
+ "datasource": "dataflux",
1249
+ "qtype": "promql",
1250
+ "type": "table",
1251
+ "query": {
1252
+ "q": "sum by(namespace) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]))",
1253
+ "type": "promql",
1254
+ "code": "D",
1255
+ "promqlCode": 4
1256
+ }
1257
+ },
1258
+ {
1259
+ "datasource": "dataflux",
1260
+ "qtype": "promql",
1261
+ "type": "table",
1262
+ "query": {
1263
+ "q": "sum by(namespace) (rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]))",
1264
+ "type": "promql",
1265
+ "code": "E",
1266
+ "promqlCode": 5
1267
+ }
1268
+ },
1269
+ {
1270
+ "datasource": "dataflux",
1271
+ "qtype": "promql",
1272
+ "type": "table",
1273
+ "query": {
1274
+ "q": "sum by(namespace) (rate(container_fs_reads_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]) + rate(container_fs_writes_bytes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]))",
1275
+ "type": "promql",
1276
+ "code": "F",
1277
+ "promqlCode": 6
1278
+ }
1279
+ }
1280
+ ],
1281
+ "type": "table"
1282
+ },
1283
+ {
1284
+ "extend": {
1285
+ "settings": {}
1286
+ },
1287
+ "group": {
1288
+ "name": "存储"
1289
+ },
1290
+ "pos": {
1291
+ "x": 0,
1292
+ "y": 15.3,
1293
+ "h": 17.2,
1294
+ "w": 7
1295
+ },
1296
+ "name": "Persistent Volumes - Usage in GB",
1297
+ "queries": [
1298
+ {
1299
+ "datasource": "dataflux",
1300
+ "qtype": "promql",
1301
+ "type": "table",
1302
+ "query": {
1303
+ "q": "sum(kubelet_volume_stats_used_bytes{cluster=\"#{cluster}\"}) by (persistentvolumeclaim)",
1304
+ "type": "promql",
1305
+ "code": "A",
1306
+ "promqlCode": 1
1307
+ }
1308
+ },
1309
+ {
1310
+ "datasource": "dataflux",
1311
+ "qtype": "promql",
1312
+ "type": "table",
1313
+ "query": {
1314
+ "q": "sum(kubelet_volume_stats_capacity_bytes{cluster=\"#{cluster}\"}) by (persistentvolumeclaim)",
1315
+ "type": "promql",
1316
+ "code": "B",
1317
+ "promqlCode": 2
1318
+ }
1319
+ }
1320
+ ],
1321
+ "type": "table"
1322
+ },
1323
+ {
1324
+ "extend": {
1325
+ "settings": {}
1326
+ },
1327
+ "group": {
1328
+ "name": "存储"
1329
+ },
1330
+ "pos": {
1331
+ "x": 7,
1332
+ "y": 15.3,
1333
+ "h": 17.2,
1334
+ "w": 8
1335
+ },
1336
+ "name": "Persistent Volumes - Usage in %",
1337
+ "queries": [
1338
+ {
1339
+ "datasource": "dataflux",
1340
+ "qtype": "promql",
1341
+ "type": "sequence",
1342
+ "query": {
1343
+ "q": "sum(kubelet_volume_stats_used_bytes{cluster=\"#{cluster}\"}) by (persistentvolumeclaim) / sum(kubelet_volume_stats_capacity_bytes{cluster=\"#{cluster}\"}) by (persistentvolumeclaim)",
1344
+ "type": "promql",
1345
+ "code": "A",
1346
+ "promqlCode": 1
1347
+ }
1348
+ }
1349
+ ],
1350
+ "type": "sequence"
1351
+ },
1352
+ {
1353
+ "extend": {
1354
+ "settings": {}
1355
+ },
1356
+ "group": {
1357
+ "name": "存储"
1358
+ },
1359
+ "pos": {
1360
+ "x": 15,
1361
+ "y": 15.3,
1362
+ "h": 17.2,
1363
+ "w": 9
1364
+ },
1365
+ "name": "IOPS(Reads+Writes)",
1366
+ "queries": [
1367
+ {
1368
+ "datasource": "dataflux",
1369
+ "qtype": "promql",
1370
+ "type": "sequence",
1371
+ "query": {
1372
+ "q": "ceil(sum by(namespace) (rate(container_fs_reads_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", device=~\"(/dev/)?(mmcblk.p.+|nvme.+|rbd.+|sd.+|vd.+|xvd.+|dm-.+|md.+|dasd.+)\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}]) + rate(container_fs_writes_total{job=\"kubelet\", metrics_path=\"/metrics/cadvisor\", container!=\"\", cluster=\"#{cluster}\", namespace!=\"\"}[#{__rate_interval}])))",
1373
+ "type": "promql",
1374
+ "code": "A",
1375
+ "promqlCode": 1
1376
+ }
1377
+ }
1378
+ ],
1379
+ "type": "sequence"
1380
+ },
1381
+ {
1382
+ "extend": {
1383
+ "settings": {}
1384
+ },
1385
+ "group": {
1386
+ "name": "Kubernetes"
1387
+ },
1388
+ "pos": {
1389
+ "x": 0,
1390
+ "y": -86.5,
1391
+ "h": 17.2,
1392
+ "w": 12
1393
+ },
1394
+ "name": "Kubernetes Pods QoS classes",
1395
+ "queries": [
1396
+ {
1397
+ "datasource": "dataflux",
1398
+ "qtype": "promql",
1399
+ "type": "sequence",
1400
+ "query": {
1401
+ "q": "sum(kube_pod_status_qos_class{cluster=\"#{cluster}\"}) by (qos_class)",
1402
+ "type": "promql",
1403
+ "code": "A",
1404
+ "promqlCode": 1
1405
+ }
1406
+ },
1407
+ {
1408
+ "datasource": "dataflux",
1409
+ "qtype": "promql",
1410
+ "type": "sequence",
1411
+ "query": {
1412
+ "q": "sum(kube_pod_info{cluster=\"#{cluster}\"})",
1413
+ "type": "promql",
1414
+ "code": "B",
1415
+ "promqlCode": 2
1416
+ }
1417
+ }
1418
+ ],
1419
+ "type": "sequence"
1420
+ },
1421
+ {
1422
+ "extend": {
1423
+ "settings": {}
1424
+ },
1425
+ "group": {
1426
+ "name": "Kubernetes"
1427
+ },
1428
+ "pos": {
1429
+ "x": 12,
1430
+ "y": -86.5,
1431
+ "h": 17.2,
1432
+ "w": 12
1433
+ },
1434
+ "name": "Kubernetes Pods Status Reason",
1435
+ "queries": [
1436
+ {
1437
+ "datasource": "dataflux",
1438
+ "qtype": "promql",
1439
+ "type": "sequence",
1440
+ "query": {
1441
+ "q": "sum(kube_pod_status_reason{cluster=\"#{cluster}\"}) by (reason)",
1442
+ "type": "promql",
1443
+ "code": "A",
1444
+ "promqlCode": 1
1445
+ }
1446
+ }
1447
+ ],
1448
+ "type": "sequence"
1449
+ },
1450
+ {
1451
+ "extend": {
1452
+ "settings": {}
1453
+ },
1454
+ "group": {
1455
+ "name": "Kubernetes"
1456
+ },
1457
+ "pos": {
1458
+ "x": 0,
1459
+ "y": -73,
1460
+ "h": 17.2,
1461
+ "w": 12
1462
+ },
1463
+ "name": "OOM Events by namespace",
1464
+ "queries": [
1465
+ {
1466
+ "datasource": "dataflux",
1467
+ "qtype": "promql",
1468
+ "type": "sequence",
1469
+ "query": {
1470
+ "q": "sum(increase(container_oom_events_total{cluster=\"#{cluster}\"}[#{__rate_interval}])) by (namespace) > 0",
1471
+ "type": "promql",
1472
+ "code": "A",
1473
+ "promqlCode": 1
1474
+ }
1475
+ }
1476
+ ],
1477
+ "type": "sequence"
1478
+ },
1479
+ {
1480
+ "extend": {
1481
+ "settings": {}
1482
+ },
1483
+ "group": {
1484
+ "name": "Kubernetes"
1485
+ },
1486
+ "pos": {
1487
+ "x": 12,
1488
+ "y": -73,
1489
+ "h": 17.2,
1490
+ "w": 12
1491
+ },
1492
+ "name": "Container Restarts by namespace",
1493
+ "queries": [
1494
+ {
1495
+ "datasource": "dataflux",
1496
+ "qtype": "promql",
1497
+ "type": "sequence",
1498
+ "query": {
1499
+ "q": "sum(increase(kube_pod_container_status_restarts_total{cluster=\"#{cluster}\"}[#{__rate_interval}])) by (namespace) > 0",
1500
+ "type": "promql",
1501
+ "code": "A",
1502
+ "promqlCode": 1
1503
+ }
1504
+ }
1505
+ ],
1506
+ "type": "sequence"
1507
+ }
1508
+ ],
1509
+ "groups": [
1510
+ {
1511
+ "name": "概览 【$cluster】"
1512
+ },
1513
+ {
1514
+ "name": "CPU"
1515
+ },
1516
+ {
1517
+ "name": "内存"
1518
+ },
1519
+ {
1520
+ "name": "网络"
1521
+ },
1522
+ {
1523
+ "name": "存储"
1524
+ },
1525
+ {
1526
+ "name": "Kubernetes"
1527
+ }
1528
+ ]
1529
+ }
1530
+ }