├── LICENSE ├── README.md ├── influxdb ├── README.md ├── consul.json ├── etcd.json ├── influxdb-metrics.json └── vault.json └── prometheus ├── capacity.json ├── deployments.json ├── nodes.json ├── pods.json ├── pv.json └── status.json /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2016 Shane Starcher 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Grafana dashboards 2 | 3 | [Grafana.net Dashboards](https://grafana.com/orgs/sstarcher) 4 | 5 | 6 | ### Nodes 7 | [Nodes](https://grafana.com/dashboards/5219) 8 | 9 | ### Deployments 10 | [Deployments](https://grafana.com/dashboards/5225) 11 | 12 | ### Capacity 13 | [Capacity](https://grafana.com/dashboards/5228) 14 | 15 | ### Status 16 | [Status](https://grafana.com/dashboards/5231) 17 | 18 | -------------------------------------------------------------------------------- /influxdb/README.md: -------------------------------------------------------------------------------- 1 | ### InfluxDB Dashboards 2 | These dashboards are 2 years old and have not been updated. They likely no longer function. 3 | 4 | ### Consul 5 | ![Consul](https://grafana.net/api/dashboards/314/logos/large?lastmod=1471111734000) 6 | 7 | 8 | ### InfluxDB 9 | ![InfluxDB](https://grafana.net/api/dashboards/317/logos/large?lastmod=1471111327000) 10 | 11 | ### Vault 12 | 13 | ![Vault](https://grafana.net/api/dashboards/320/logos/large?lastmod=1471112453000) 14 | 15 | ### ETCD 16 | 17 | ![ETCD](https://grafana.net/api/dashboards/485/logos/large?lastmod=1471112453000) 18 | -------------------------------------------------------------------------------- /influxdb/consul.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_STATSITE", 5 | "label": "statsite", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "influxdb", 9 | "pluginName": "InfluxDB" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "panel", 15 | "id": "graph", 16 | "name": "Graph", 17 | "version": "" 18 | }, 19 | { 20 | "type": "grafana", 21 | "id": "grafana", 22 | "name": "Grafana", 23 | "version": "3.1.1" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "influxdb", 28 | "name": "InfluxDB", 29 | "version": "1.0.0" 30 | } 31 | ], 32 | "id": null, 33 | "title": "Consul", 34 | "description": "Consul server metrics from statsd to influxdb", 35 | "tags": [ 36 | "influxdb", 37 | "consul" 38 | ], 39 | "style": "dark", 40 | "timezone": "browser", 41 | "editable": true, 42 | "hideControls": true, 43 | "sharedCrosshair": true, 44 | "rows": [ 45 | { 46 | "collapse": false, 47 | "editable": true, 48 | "height": "250px", 49 | "panels": [ 50 | { 51 | "aliasColors": {}, 52 | "bars": false, 53 | "datasource": "${DS_STATSITE}", 54 | "editable": true, 55 | "error": false, 56 | "fill": 1, 57 | "grid": { 58 | "threshold1": null, 59 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 60 | "threshold2": null, 61 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 62 | }, 63 | "id": 1, 64 | "isNew": true, 65 | "legend": { 66 | "avg": false, 67 | "current": false, 68 | "max": false, 69 | "min": false, 70 | "show": true, 71 | "total": false, 72 | "values": false 73 | }, 74 | "lines": true, 75 | "linewidth": 2, 76 | "links": [], 77 | "nullPointMode": "null", 78 | "percentage": false, 79 | "pointradius": 5, 80 | "points": false, 81 | "renderer": "flot", 82 | "seriesOverrides": [], 83 | "span": 6, 84 | "stack": false, 85 | "steppedLine": false, 86 | "targets": [ 87 | { 88 | "dsType": "influxdb", 89 | "groupBy": [ 90 | { 91 | "params": [ 92 | "10s" 93 | ], 94 | "type": "time" 95 | }, 96 | { 97 | "params": [ 98 | "null" 99 | ], 100 | "type": "fill" 101 | } 102 | ], 103 | "hide": false, 104 | "measurement": "timers.consul.memberlist.gossip.rate", 105 | "policy": "default", 106 | "query": "SELECT mean(\"value\") FROM \"timers.consul.memberlist.gossip.rate\" WHERE $timeFilter GROUP BY time(10s) fill(null)", 107 | "refId": "A", 108 | "resultFormat": "time_series", 109 | "select": [ 110 | [ 111 | { 112 | "params": [ 113 | "value" 114 | ], 115 | "type": "field" 116 | }, 117 | { 118 | "params": [], 119 | "type": "mean" 120 | } 121 | ] 122 | ], 123 | "tags": [], 124 | "target": "" 125 | } 126 | ], 127 | "timeFrom": null, 128 | "timeShift": null, 129 | "title": "Gossip Rate", 130 | "tooltip": { 131 | "msResolution": false, 132 | "shared": true, 133 | "sort": 0, 134 | "value_type": "cumulative" 135 | }, 136 | "type": "graph", 137 | "xaxis": { 138 | "show": true 139 | }, 140 | "yaxes": [ 141 | { 142 | "format": "short", 143 | "logBase": 1, 144 | "max": null, 145 | "min": null, 146 | "show": true 147 | }, 148 | { 149 | "format": "short", 150 | "logBase": 1, 151 | "max": null, 152 | "min": null, 153 | "show": true 154 | } 155 | ] 156 | }, 157 | { 158 | "aliasColors": {}, 159 | "bars": false, 160 | "datasource": "${DS_STATSITE}", 161 | "editable": true, 162 | "error": false, 163 | "fill": 1, 164 | "grid": { 165 | "threshold1": null, 166 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 167 | "threshold2": null, 168 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 169 | }, 170 | "id": 2, 171 | "isNew": true, 172 | "legend": { 173 | "avg": false, 174 | "current": false, 175 | "hideZero": false, 176 | "max": false, 177 | "min": false, 178 | "show": true, 179 | "total": false, 180 | "values": false 181 | }, 182 | "lines": true, 183 | "linewidth": 2, 184 | "links": [], 185 | "nullPointMode": "null as zero", 186 | "percentage": false, 187 | "pointradius": 5, 188 | "points": true, 189 | "renderer": "flot", 190 | "seriesOverrides": [], 191 | "span": 6, 192 | "stack": false, 193 | "steppedLine": false, 194 | "targets": [ 195 | { 196 | "dsType": "influxdb", 197 | "groupBy": [ 198 | { 199 | "params": [ 200 | "10s" 201 | ], 202 | "type": "time" 203 | }, 204 | { 205 | "params": [ 206 | "null" 207 | ], 208 | "type": "fill" 209 | } 210 | ], 211 | "measurement": "counts.consul.raft.transition.heartbeat_timeout", 212 | "policy": "default", 213 | "refId": "A", 214 | "resultFormat": "time_series", 215 | "select": [ 216 | [ 217 | { 218 | "params": [ 219 | "value" 220 | ], 221 | "type": "field" 222 | }, 223 | { 224 | "params": [], 225 | "type": "mean" 226 | } 227 | ] 228 | ], 229 | "tags": [] 230 | } 231 | ], 232 | "timeFrom": null, 233 | "timeShift": null, 234 | "title": "Leader Election", 235 | "tooltip": { 236 | "msResolution": false, 237 | "shared": true, 238 | "sort": 0, 239 | "value_type": "cumulative" 240 | }, 241 | "type": "graph", 242 | "xaxis": { 243 | "show": true 244 | }, 245 | "yaxes": [ 246 | { 247 | "format": "short", 248 | "label": null, 249 | "logBase": 1, 250 | "max": null, 251 | "min": null, 252 | "show": true 253 | }, 254 | { 255 | "format": "short", 256 | "label": null, 257 | "logBase": 1, 258 | "max": null, 259 | "min": null, 260 | "show": true 261 | } 262 | ] 263 | } 264 | ], 265 | "title": "Row" 266 | }, 267 | { 268 | "collapse": false, 269 | "editable": true, 270 | "height": "250px", 271 | "panels": [ 272 | { 273 | "aliasColors": {}, 274 | "bars": false, 275 | "datasource": "${DS_STATSITE}", 276 | "editable": true, 277 | "error": false, 278 | "fill": 1, 279 | "grid": { 280 | "threshold1": null, 281 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 282 | "threshold2": null, 283 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 284 | }, 285 | "id": 4, 286 | "isNew": true, 287 | "legend": { 288 | "avg": false, 289 | "current": false, 290 | "hideZero": false, 291 | "max": false, 292 | "min": false, 293 | "show": true, 294 | "total": false, 295 | "values": false 296 | }, 297 | "lines": true, 298 | "linewidth": 2, 299 | "links": [], 300 | "nullPointMode": "null", 301 | "percentage": false, 302 | "pointradius": 5, 303 | "points": false, 304 | "renderer": "flot", 305 | "seriesOverrides": [], 306 | "span": 6, 307 | "stack": false, 308 | "steppedLine": false, 309 | "targets": [ 310 | { 311 | "dsType": "influxdb", 312 | "groupBy": [ 313 | { 314 | "params": [ 315 | "10s" 316 | ], 317 | "type": "time" 318 | }, 319 | { 320 | "params": [ 321 | "null" 322 | ], 323 | "type": "fill" 324 | } 325 | ], 326 | "measurement": "timers.consul.serf.coordinate.adjustment-ms.upper", 327 | "policy": "default", 328 | "refId": "A", 329 | "resultFormat": "time_series", 330 | "select": [ 331 | [ 332 | { 333 | "params": [ 334 | "value" 335 | ], 336 | "type": "field" 337 | }, 338 | { 339 | "params": [], 340 | "type": "mean" 341 | } 342 | ] 343 | ], 344 | "tags": [] 345 | } 346 | ], 347 | "timeFrom": null, 348 | "timeShift": null, 349 | "title": "Serf Coordinate", 350 | "tooltip": { 351 | "msResolution": false, 352 | "shared": true, 353 | "sort": 0, 354 | "value_type": "cumulative" 355 | }, 356 | "type": "graph", 357 | "xaxis": { 358 | "show": true 359 | }, 360 | "yaxes": [ 361 | { 362 | "format": "short", 363 | "label": null, 364 | "logBase": 1, 365 | "max": null, 366 | "min": null, 367 | "show": true 368 | }, 369 | { 370 | "format": "short", 371 | "label": null, 372 | "logBase": 1, 373 | "max": null, 374 | "min": null, 375 | "show": true 376 | } 377 | ] 378 | }, 379 | { 380 | "aliasColors": {}, 381 | "bars": false, 382 | "datasource": "${DS_STATSITE}", 383 | "editable": true, 384 | "error": false, 385 | "fill": 1, 386 | "grid": { 387 | "threshold1": null, 388 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 389 | "threshold2": null, 390 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 391 | }, 392 | "id": 5, 393 | "isNew": true, 394 | "legend": { 395 | "avg": false, 396 | "current": false, 397 | "max": false, 398 | "min": false, 399 | "show": true, 400 | "total": false, 401 | "values": false 402 | }, 403 | "lines": true, 404 | "linewidth": 2, 405 | "links": [], 406 | "nullPointMode": "null", 407 | "percentage": false, 408 | "pointradius": 5, 409 | "points": false, 410 | "renderer": "flot", 411 | "seriesOverrides": [], 412 | "span": 6, 413 | "stack": false, 414 | "steppedLine": false, 415 | "targets": [ 416 | { 417 | "dsType": "influxdb", 418 | "groupBy": [ 419 | { 420 | "params": [ 421 | "10s" 422 | ], 423 | "type": "time" 424 | }, 425 | { 426 | "params": [ 427 | "null" 428 | ], 429 | "type": "fill" 430 | } 431 | ], 432 | "measurement": "counts.consul.serf.member.failed", 433 | "policy": "default", 434 | "refId": "A", 435 | "resultFormat": "time_series", 436 | "select": [ 437 | [ 438 | { 439 | "params": [ 440 | "value" 441 | ], 442 | "type": "field" 443 | }, 444 | { 445 | "params": [], 446 | "type": "mean" 447 | } 448 | ] 449 | ], 450 | "tags": [] 451 | } 452 | ], 453 | "timeFrom": null, 454 | "timeShift": null, 455 | "title": "Serf Failure", 456 | "tooltip": { 457 | "msResolution": false, 458 | "shared": true, 459 | "sort": 0, 460 | "value_type": "cumulative" 461 | }, 462 | "type": "graph", 463 | "xaxis": { 464 | "show": true 465 | }, 466 | "yaxes": [ 467 | { 468 | "format": "short", 469 | "label": null, 470 | "logBase": 1, 471 | "max": null, 472 | "min": null, 473 | "show": true 474 | }, 475 | { 476 | "format": "short", 477 | "label": null, 478 | "logBase": 1, 479 | "max": null, 480 | "min": null, 481 | "show": true 482 | } 483 | ] 484 | } 485 | ], 486 | "title": "New row" 487 | }, 488 | { 489 | "collapse": false, 490 | "editable": true, 491 | "height": "250px", 492 | "panels": [ 493 | { 494 | "aliasColors": {}, 495 | "bars": false, 496 | "datasource": "${DS_STATSITE}", 497 | "editable": true, 498 | "error": false, 499 | "fill": 1, 500 | "grid": { 501 | "threshold1": null, 502 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 503 | "threshold2": null, 504 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 505 | }, 506 | "id": 9, 507 | "isNew": true, 508 | "legend": { 509 | "avg": false, 510 | "current": false, 511 | "max": false, 512 | "min": false, 513 | "show": true, 514 | "total": false, 515 | "values": false 516 | }, 517 | "lines": true, 518 | "linewidth": 2, 519 | "links": [], 520 | "nullPointMode": "null", 521 | "percentage": false, 522 | "pointradius": 5, 523 | "points": false, 524 | "renderer": "flot", 525 | "seriesOverrides": [], 526 | "span": 6, 527 | "stack": false, 528 | "steppedLine": false, 529 | "targets": [ 530 | { 531 | "dsType": "influxdb", 532 | "groupBy": [ 533 | { 534 | "params": [ 535 | "10s" 536 | ], 537 | "type": "time" 538 | }, 539 | { 540 | "params": [ 541 | "null" 542 | ], 543 | "type": "fill" 544 | } 545 | ], 546 | "measurement": "timers.consul.raft.commitTime.mean", 547 | "policy": "default", 548 | "refId": "A", 549 | "resultFormat": "time_series", 550 | "select": [ 551 | [ 552 | { 553 | "params": [ 554 | "value" 555 | ], 556 | "type": "field" 557 | }, 558 | { 559 | "params": [], 560 | "type": "mean" 561 | } 562 | ] 563 | ], 564 | "tags": [] 565 | } 566 | ], 567 | "timeFrom": null, 568 | "timeShift": null, 569 | "title": "Raft Commit time", 570 | "tooltip": { 571 | "msResolution": true, 572 | "shared": true, 573 | "sort": 0, 574 | "value_type": "cumulative" 575 | }, 576 | "type": "graph", 577 | "xaxis": { 578 | "show": true 579 | }, 580 | "yaxes": [ 581 | { 582 | "format": "short", 583 | "label": null, 584 | "logBase": 1, 585 | "max": null, 586 | "min": null, 587 | "show": true 588 | }, 589 | { 590 | "format": "short", 591 | "label": null, 592 | "logBase": 1, 593 | "max": null, 594 | "min": null, 595 | "show": true 596 | } 597 | ] 598 | }, 599 | { 600 | "aliasColors": {}, 601 | "bars": false, 602 | "datasource": "${DS_STATSITE}", 603 | "editable": true, 604 | "error": false, 605 | "fill": 1, 606 | "grid": { 607 | "threshold1": null, 608 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 609 | "threshold2": null, 610 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 611 | }, 612 | "id": 7, 613 | "isNew": true, 614 | "legend": { 615 | "avg": false, 616 | "current": false, 617 | "max": false, 618 | "min": false, 619 | "show": true, 620 | "total": false, 621 | "values": false 622 | }, 623 | "lines": true, 624 | "linewidth": 2, 625 | "links": [], 626 | "nullPointMode": "null", 627 | "percentage": false, 628 | "pointradius": 5, 629 | "points": false, 630 | "renderer": "flot", 631 | "seriesOverrides": [], 632 | "span": 6, 633 | "stack": false, 634 | "steppedLine": false, 635 | "targets": [ 636 | { 637 | "dsType": "influxdb", 638 | "groupBy": [ 639 | { 640 | "params": [ 641 | "10s" 642 | ], 643 | "type": "time" 644 | }, 645 | { 646 | "params": [ 647 | "null" 648 | ], 649 | "type": "fill" 650 | } 651 | ], 652 | "measurement": "timers.consul.raft.leader.lastContact.mean", 653 | "policy": "default", 654 | "refId": "A", 655 | "resultFormat": "time_series", 656 | "select": [ 657 | [ 658 | { 659 | "params": [ 660 | "value" 661 | ], 662 | "type": "field" 663 | }, 664 | { 665 | "params": [], 666 | "type": "mean" 667 | } 668 | ] 669 | ], 670 | "tags": [] 671 | } 672 | ], 673 | "timeFrom": null, 674 | "timeShift": null, 675 | "title": "Raft Leader Contact Average", 676 | "tooltip": { 677 | "msResolution": true, 678 | "shared": true, 679 | "sort": 0, 680 | "value_type": "cumulative" 681 | }, 682 | "type": "graph", 683 | "xaxis": { 684 | "show": true 685 | }, 686 | "yaxes": [ 687 | { 688 | "format": "short", 689 | "label": null, 690 | "logBase": 1, 691 | "max": null, 692 | "min": null, 693 | "show": true 694 | }, 695 | { 696 | "format": "short", 697 | "label": null, 698 | "logBase": 1, 699 | "max": null, 700 | "min": null, 701 | "show": true 702 | } 703 | ] 704 | } 705 | ], 706 | "title": "New row" 707 | }, 708 | { 709 | "collapse": false, 710 | "editable": true, 711 | "height": "250px", 712 | "panels": [ 713 | { 714 | "aliasColors": {}, 715 | "bars": false, 716 | "datasource": "${DS_STATSITE}", 717 | "editable": true, 718 | "error": false, 719 | "fill": 1, 720 | "grid": { 721 | "threshold1": null, 722 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 723 | "threshold2": null, 724 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 725 | }, 726 | "id": 3, 727 | "isNew": true, 728 | "legend": { 729 | "avg": false, 730 | "current": false, 731 | "hideZero": false, 732 | "max": false, 733 | "min": false, 734 | "show": true, 735 | "total": false, 736 | "values": false 737 | }, 738 | "lines": true, 739 | "linewidth": 2, 740 | "links": [], 741 | "nullPointMode": "null", 742 | "percentage": false, 743 | "pointradius": 5, 744 | "points": false, 745 | "renderer": "flot", 746 | "seriesOverrides": [], 747 | "span": 6, 748 | "stack": false, 749 | "steppedLine": false, 750 | "targets": [ 751 | { 752 | "alias": "", 753 | "dsType": "influxdb", 754 | "groupBy": [ 755 | { 756 | "params": [ 757 | "$interval" 758 | ], 759 | "type": "time" 760 | }, 761 | { 762 | "params": [ 763 | "null" 764 | ], 765 | "type": "fill" 766 | } 767 | ], 768 | "measurement": "gauges.consul.ip-10-0-10-227.ec2.internal.runtime.num_goroutines", 769 | "policy": "default", 770 | "query": "SELECT mean(\"value\") FROM /gauges.consul.ip-.*.runtime.num_goroutines/ WHERE $timeFilter GROUP BY time(60s) fill(null)", 771 | "rawQuery": true, 772 | "refId": "A", 773 | "resultFormat": "time_series", 774 | "select": [ 775 | [ 776 | { 777 | "params": [ 778 | "value" 779 | ], 780 | "type": "field" 781 | }, 782 | { 783 | "params": [], 784 | "type": "mean" 785 | } 786 | ] 787 | ], 788 | "tags": [] 789 | } 790 | ], 791 | "timeFrom": null, 792 | "timeShift": null, 793 | "title": "Num Go Routines", 794 | "tooltip": { 795 | "msResolution": false, 796 | "shared": true, 797 | "sort": 0, 798 | "value_type": "cumulative" 799 | }, 800 | "type": "graph", 801 | "xaxis": { 802 | "show": true 803 | }, 804 | "yaxes": [ 805 | { 806 | "format": "short", 807 | "label": null, 808 | "logBase": 1, 809 | "max": null, 810 | "min": null, 811 | "show": true 812 | }, 813 | { 814 | "format": "short", 815 | "label": null, 816 | "logBase": 1, 817 | "max": null, 818 | "min": null, 819 | "show": true 820 | } 821 | ] 822 | } 823 | ], 824 | "title": "New row" 825 | } 826 | ], 827 | "time": { 828 | "from": "now-3h", 829 | "to": "now" 830 | }, 831 | "timepicker": { 832 | "now": true, 833 | "refresh_intervals": [ 834 | "5s", 835 | "10s", 836 | "30s", 837 | "1m", 838 | "5m", 839 | "15m", 840 | "30m", 841 | "1h", 842 | "2h", 843 | "1d" 844 | ], 845 | "time_options": [ 846 | "5m", 847 | "15m", 848 | "1h", 849 | "6h", 850 | "12h", 851 | "24h", 852 | "2d", 853 | "7d", 854 | "30d" 855 | ] 856 | }, 857 | "templating": { 858 | "list": [ 859 | { 860 | "type": "datasource", 861 | "datasource": null, 862 | "refresh": 1, 863 | "name": "datasource", 864 | "hide": 0, 865 | "includeAll": false, 866 | "multi": false, 867 | "query": "influxdb", 868 | "regex": "/.*statsite.*/", 869 | "current": { 870 | "text": "statsite", 871 | "value": "statsite" 872 | }, 873 | "label": "statsite" 874 | } 875 | ] 876 | }, 877 | "annotations": { 878 | "list": [] 879 | }, 880 | "refresh": false, 881 | "schemaVersion": 12, 882 | "version": 1, 883 | "links": [ 884 | { 885 | "icon": "external link", 886 | "tags": [], 887 | "title": "Docs", 888 | "tooltip": "telemetry documentation", 889 | "type": "link", 890 | "url": "https://www.consul.io/docs/agent/telemetry.html" 891 | }, 892 | { 893 | "icon": "external link", 894 | "tags": [], 895 | "title": "Dashboard", 896 | "tooltip": "grafana.net dashboard", 897 | "type": "link", 898 | "url": "https://grafana.net/users/sstarcher" 899 | } 900 | ], 901 | "gnetId": 314 902 | } -------------------------------------------------------------------------------- /influxdb/etcd.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_TELEGRAF", 5 | "label": "telegraf", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "influxdb", 9 | "pluginName": "InfluxDB" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "panel", 15 | "id": "graph", 16 | "name": "Graph", 17 | "version": "" 18 | }, 19 | { 20 | "type": "grafana", 21 | "id": "grafana", 22 | "name": "Grafana", 23 | "version": "3.1.1" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "influxdb", 28 | "name": "InfluxDB", 29 | "version": "1.0.0" 30 | } 31 | ], 32 | "id": null, 33 | "title": "ETCD", 34 | "description": "ETCD server metrics from telegraf to influxdb", 35 | "tags": [ 36 | "influxdb", 37 | "etcd" 38 | ], 39 | "style": "dark", 40 | "timezone": "browser", 41 | "editable": true, 42 | "hideControls": true, 43 | "sharedCrosshair": true, 44 | "rows": [ 45 | { 46 | "collapse": false, 47 | "editable": true, 48 | "height": "250px", 49 | "panels": [ 50 | { 51 | "aliasColors": {}, 52 | "bars": false, 53 | "datasource": "${DS_TELEGRAF}", 54 | "editable": true, 55 | "error": false, 56 | "fill": 1, 57 | "grid": { 58 | "threshold1": null, 59 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 60 | "threshold2": null, 61 | "threshold2Color": "rgba(234, 112, 112, 0.22)", 62 | "thresholdLine": false 63 | }, 64 | "id": 1, 65 | "isNew": true, 66 | "legend": { 67 | "alignAsTable": false, 68 | "avg": true, 69 | "current": false, 70 | "hideEmpty": false, 71 | "max": false, 72 | "min": false, 73 | "rightSide": false, 74 | "show": false, 75 | "total": false, 76 | "values": true 77 | }, 78 | "lines": true, 79 | "linewidth": 1, 80 | "links": [], 81 | "nullPointMode": "null as zero", 82 | "percentage": false, 83 | "pointradius": 5, 84 | "points": false, 85 | "renderer": "flot", 86 | "seriesOverrides": [], 87 | "span": 6, 88 | "stack": true, 89 | "steppedLine": false, 90 | "targets": [ 91 | { 92 | "dsType": "influxdb", 93 | "expr": "sum(rate(etcd_store_reads_total[5m])) by (action)", 94 | "groupBy": [ 95 | { 96 | "params": [ 97 | "auto" 98 | ], 99 | "type": "time" 100 | }, 101 | { 102 | "params": [ 103 | "previous" 104 | ], 105 | "type": "fill" 106 | } 107 | ], 108 | "hide": false, 109 | "intervalFactor": 2, 110 | "legendFormat": "{{action}}", 111 | "measurement": "etcd_store_reads_total", 112 | "metric": "etcd_store_reads_total", 113 | "policy": "default", 114 | "refId": "A", 115 | "resultFormat": "time_series", 116 | "select": [ 117 | [ 118 | { 119 | "type": "field", 120 | "params": [ 121 | "counter" 122 | ] 123 | }, 124 | { 125 | "type": "sum", 126 | "params": [] 127 | }, 128 | { 129 | "type": "non_negative_derivative", 130 | "params": [ 131 | "1m" 132 | ] 133 | } 134 | ] 135 | ], 136 | "step": 10, 137 | "tags": [] 138 | } 139 | ], 140 | "timeFrom": null, 141 | "timeShift": null, 142 | "title": "Reads by action", 143 | "tooltip": { 144 | "msResolution": true, 145 | "shared": true, 146 | "sort": 0, 147 | "value_type": "individual" 148 | }, 149 | "type": "graph", 150 | "xaxis": { 151 | "show": true 152 | }, 153 | "yaxes": [ 154 | { 155 | "format": "short", 156 | "label": "reads", 157 | "logBase": 1, 158 | "max": null, 159 | "min": 0, 160 | "show": true 161 | }, 162 | { 163 | "format": "short", 164 | "label": "", 165 | "logBase": 1, 166 | "max": null, 167 | "min": null, 168 | "show": true 169 | } 170 | ], 171 | "interval": ">60s" 172 | }, 173 | { 174 | "aliasColors": {}, 175 | "bars": false, 176 | "datasource": "${DS_TELEGRAF}", 177 | "editable": true, 178 | "error": false, 179 | "fill": 1, 180 | "grid": { 181 | "threshold1": null, 182 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 183 | "threshold2": null, 184 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 185 | }, 186 | "id": 2, 187 | "isNew": true, 188 | "legend": { 189 | "alignAsTable": false, 190 | "avg": true, 191 | "current": false, 192 | "max": false, 193 | "min": false, 194 | "show": false, 195 | "total": false, 196 | "values": true 197 | }, 198 | "lines": true, 199 | "linewidth": 1, 200 | "links": [], 201 | "nullPointMode": "null as zero", 202 | "percentage": false, 203 | "pointradius": 5, 204 | "points": false, 205 | "renderer": "flot", 206 | "seriesOverrides": [], 207 | "span": 6, 208 | "stack": true, 209 | "steppedLine": false, 210 | "targets": [ 211 | { 212 | "dsType": "influxdb", 213 | "expr": "max(rate(etcd_store_writes_total{job=\"etcd\"}[5m])) by (action)", 214 | "groupBy": [ 215 | { 216 | "params": [ 217 | "auto" 218 | ], 219 | "type": "time" 220 | }, 221 | { 222 | "params": [ 223 | "previous" 224 | ], 225 | "type": "fill" 226 | } 227 | ], 228 | "hide": false, 229 | "intervalFactor": 2, 230 | "legendFormat": "{{action}}", 231 | "measurement": "etcd_store_writes_total", 232 | "policy": "default", 233 | "refId": "A", 234 | "resultFormat": "time_series", 235 | "select": [ 236 | [ 237 | { 238 | "type": "field", 239 | "params": [ 240 | "counter" 241 | ] 242 | }, 243 | { 244 | "type": "sum", 245 | "params": [] 246 | }, 247 | { 248 | "type": "non_negative_derivative", 249 | "params": [ 250 | "1m" 251 | ] 252 | } 253 | ] 254 | ], 255 | "step": 10, 256 | "tags": [] 257 | } 258 | ], 259 | "timeFrom": null, 260 | "timeShift": null, 261 | "title": "Writes by action", 262 | "tooltip": { 263 | "msResolution": true, 264 | "shared": true, 265 | "sort": 0, 266 | "value_type": "individual" 267 | }, 268 | "type": "graph", 269 | "xaxis": { 270 | "show": true 271 | }, 272 | "yaxes": [ 273 | { 274 | "format": "short", 275 | "label": "writes", 276 | "logBase": 1, 277 | "max": null, 278 | "min": 0, 279 | "show": true 280 | }, 281 | { 282 | "format": "short", 283 | "label": null, 284 | "logBase": 1, 285 | "max": null, 286 | "min": null, 287 | "show": true 288 | } 289 | ], 290 | "interval": ">60s" 291 | } 292 | ], 293 | "showTitle": false, 294 | "title": "Actions" 295 | }, 296 | { 297 | "collapse": false, 298 | "editable": true, 299 | "height": "250px", 300 | "panels": [ 301 | { 302 | "aliasColors": {}, 303 | "bars": false, 304 | "datasource": "${DS_TELEGRAF}", 305 | "editable": true, 306 | "error": false, 307 | "fill": 1, 308 | "grid": { 309 | "threshold1": null, 310 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 311 | "threshold2": null, 312 | "threshold2Color": "rgba(234, 112, 112, 0.22)", 313 | "thresholdLine": false 314 | }, 315 | "id": 3, 316 | "isNew": true, 317 | "legend": { 318 | "alignAsTable": false, 319 | "avg": true, 320 | "current": false, 321 | "hideEmpty": false, 322 | "hideZero": false, 323 | "max": false, 324 | "min": false, 325 | "rightSide": false, 326 | "show": false, 327 | "total": false, 328 | "values": true 329 | }, 330 | "lines": true, 331 | "linewidth": 1, 332 | "links": [], 333 | "nullPointMode": "null as zero", 334 | "percentage": false, 335 | "pointradius": 5, 336 | "points": false, 337 | "renderer": "flot", 338 | "seriesOverrides": [], 339 | "span": 6, 340 | "stack": false, 341 | "steppedLine": false, 342 | "targets": [ 343 | { 344 | "dsType": "influxdb", 345 | "expr": "sum(rate(etcd_store_reads_total[5m])) by (instance)", 346 | "groupBy": [ 347 | { 348 | "params": [ 349 | "auto" 350 | ], 351 | "type": "time" 352 | }, 353 | { 354 | "params": [ 355 | "host" 356 | ], 357 | "type": "tag" 358 | }, 359 | { 360 | "params": [ 361 | "previous" 362 | ], 363 | "type": "fill" 364 | } 365 | ], 366 | "hide": false, 367 | "intervalFactor": 2, 368 | "legendFormat": "{{instance}}", 369 | "measurement": "etcd_store_reads_total", 370 | "metric": "etcd_store_reads_total", 371 | "policy": "default", 372 | "refId": "A", 373 | "resultFormat": "time_series", 374 | "select": [ 375 | [ 376 | { 377 | "type": "field", 378 | "params": [ 379 | "counter" 380 | ] 381 | }, 382 | { 383 | "type": "sum", 384 | "params": [] 385 | }, 386 | { 387 | "type": "non_negative_derivative", 388 | "params": [ 389 | "1m" 390 | ] 391 | } 392 | ] 393 | ], 394 | "step": 10, 395 | "tags": [] 396 | } 397 | ], 398 | "timeFrom": null, 399 | "timeShift": null, 400 | "title": "Reads by instance", 401 | "tooltip": { 402 | "msResolution": true, 403 | "shared": true, 404 | "sort": 0, 405 | "value_type": "individual" 406 | }, 407 | "type": "graph", 408 | "xaxis": { 409 | "show": true 410 | }, 411 | "yaxes": [ 412 | { 413 | "format": "short", 414 | "label": "reads", 415 | "logBase": 1, 416 | "max": null, 417 | "min": 0, 418 | "show": true 419 | }, 420 | { 421 | "format": "short", 422 | "label": "", 423 | "logBase": 1, 424 | "max": null, 425 | "min": null, 426 | "show": true 427 | } 428 | ], 429 | "interval": ">60s" 430 | }, 431 | { 432 | "aliasColors": {}, 433 | "bars": false, 434 | "datasource": "${DS_TELEGRAF}", 435 | "editable": true, 436 | "error": false, 437 | "fill": 1, 438 | "grid": { 439 | "threshold1": null, 440 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 441 | "threshold2": null, 442 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 443 | }, 444 | "id": 4, 445 | "isNew": true, 446 | "legend": { 447 | "alignAsTable": false, 448 | "avg": true, 449 | "current": false, 450 | "max": false, 451 | "min": false, 452 | "show": false, 453 | "total": false, 454 | "values": true 455 | }, 456 | "lines": true, 457 | "linewidth": 1, 458 | "links": [], 459 | "nullPointMode": "null as zero", 460 | "percentage": false, 461 | "pointradius": 5, 462 | "points": false, 463 | "renderer": "flot", 464 | "seriesOverrides": [], 465 | "span": 6, 466 | "stack": false, 467 | "steppedLine": false, 468 | "targets": [ 469 | { 470 | "dsType": "influxdb", 471 | "expr": "max(rate(etcd_store_writes_total{job=\"etcd\"}[5m])) by (instance)", 472 | "groupBy": [ 473 | { 474 | "params": [ 475 | "auto" 476 | ], 477 | "type": "time" 478 | }, 479 | { 480 | "params": [ 481 | "host" 482 | ], 483 | "type": "tag" 484 | }, 485 | { 486 | "params": [ 487 | "previous" 488 | ], 489 | "type": "fill" 490 | } 491 | ], 492 | "hide": false, 493 | "intervalFactor": 2, 494 | "legendFormat": "{{instance}}", 495 | "measurement": "etcd_store_writes_total", 496 | "policy": "default", 497 | "refId": "A", 498 | "resultFormat": "time_series", 499 | "select": [ 500 | [ 501 | { 502 | "type": "field", 503 | "params": [ 504 | "counter" 505 | ] 506 | }, 507 | { 508 | "type": "sum", 509 | "params": [] 510 | }, 511 | { 512 | "type": "non_negative_derivative", 513 | "params": [ 514 | "1m" 515 | ] 516 | } 517 | ] 518 | ], 519 | "step": 10, 520 | "tags": [], 521 | "query": "SELECT non_negative_derivative(sum(\"counter\"), 1m) FROM \"etcd_store_writes_total\" WHERE $timeFilter GROUP BY time(1m), \"host\" fill(null)", 522 | "rawQuery": false 523 | } 524 | ], 525 | "timeFrom": null, 526 | "timeShift": null, 527 | "title": "Writes by instance", 528 | "tooltip": { 529 | "msResolution": true, 530 | "shared": true, 531 | "sort": 0, 532 | "value_type": "individual" 533 | }, 534 | "type": "graph", 535 | "xaxis": { 536 | "show": true 537 | }, 538 | "yaxes": [ 539 | { 540 | "format": "short", 541 | "label": "writes", 542 | "logBase": 1, 543 | "max": null, 544 | "min": 0, 545 | "show": true 546 | }, 547 | { 548 | "format": "short", 549 | "label": null, 550 | "logBase": 1, 551 | "max": null, 552 | "min": null, 553 | "show": true 554 | } 555 | ], 556 | "interval": ">60s" 557 | } 558 | ], 559 | "showTitle": false, 560 | "title": "By Instance" 561 | }, 562 | { 563 | "collapse": false, 564 | "editable": true, 565 | "height": "250px", 566 | "panels": [ 567 | { 568 | "aliasColors": {}, 569 | "bars": false, 570 | "datasource": "${DS_TELEGRAF}", 571 | "editable": true, 572 | "error": false, 573 | "fill": 1, 574 | "grid": { 575 | "threshold1": null, 576 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 577 | "threshold2": null, 578 | "threshold2Color": "rgba(234, 112, 112, 0.22)", 579 | "thresholdLine": false 580 | }, 581 | "id": 5, 582 | "isNew": true, 583 | "legend": { 584 | "alignAsTable": false, 585 | "avg": true, 586 | "current": false, 587 | "hideEmpty": false, 588 | "max": false, 589 | "min": false, 590 | "rightSide": false, 591 | "show": false, 592 | "total": false, 593 | "values": true 594 | }, 595 | "lines": true, 596 | "linewidth": 1, 597 | "links": [], 598 | "nullPointMode": "null as zero", 599 | "percentage": false, 600 | "pointradius": 5, 601 | "points": false, 602 | "renderer": "flot", 603 | "seriesOverrides": [], 604 | "span": 6, 605 | "stack": true, 606 | "steppedLine": false, 607 | "targets": [ 608 | { 609 | "dsType": "influxdb", 610 | "expr": "sum(rate(etcd_store_watch_requests_total[5m]))", 611 | "groupBy": [ 612 | { 613 | "params": [ 614 | "auto" 615 | ], 616 | "type": "time" 617 | }, 618 | { 619 | "params": [ 620 | "previous" 621 | ], 622 | "type": "fill" 623 | } 624 | ], 625 | "hide": false, 626 | "intervalFactor": 2, 627 | "legendFormat": "total", 628 | "measurement": "etcd_store_watch_requests_total", 629 | "metric": "etcd_store_reads_total", 630 | "policy": "default", 631 | "refId": "A", 632 | "resultFormat": "time_series", 633 | "select": [ 634 | [ 635 | { 636 | "type": "field", 637 | "params": [ 638 | "counter" 639 | ] 640 | }, 641 | { 642 | "type": "sum", 643 | "params": [] 644 | }, 645 | { 646 | "type": "non_negative_derivative", 647 | "params": [ 648 | "1m" 649 | ] 650 | } 651 | ] 652 | ], 653 | "step": 10, 654 | "tags": [] 655 | } 656 | ], 657 | "timeFrom": null, 658 | "timeShift": null, 659 | "title": "Watch requests", 660 | "tooltip": { 661 | "msResolution": true, 662 | "shared": true, 663 | "sort": 0, 664 | "value_type": "cumulative" 665 | }, 666 | "type": "graph", 667 | "xaxis": { 668 | "show": true 669 | }, 670 | "yaxes": [ 671 | { 672 | "format": "short", 673 | "label": "requests", 674 | "logBase": 1, 675 | "max": null, 676 | "min": 0, 677 | "show": true 678 | }, 679 | { 680 | "format": "short", 681 | "label": "", 682 | "logBase": 1, 683 | "max": null, 684 | "min": null, 685 | "show": true 686 | } 687 | ], 688 | "interval": ">60s" 689 | }, 690 | { 691 | "aliasColors": {}, 692 | "bars": false, 693 | "datasource": "${DS_TELEGRAF}", 694 | "editable": true, 695 | "error": false, 696 | "fill": 1, 697 | "grid": { 698 | "threshold1": null, 699 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 700 | "threshold2": null, 701 | "threshold2Color": "rgba(234, 112, 112, 0.22)", 702 | "thresholdLine": false 703 | }, 704 | "id": 6, 705 | "isNew": true, 706 | "legend": { 707 | "alignAsTable": false, 708 | "avg": true, 709 | "current": false, 710 | "hideEmpty": false, 711 | "max": false, 712 | "min": false, 713 | "rightSide": false, 714 | "show": false, 715 | "total": false, 716 | "values": true 717 | }, 718 | "lines": true, 719 | "linewidth": 1, 720 | "links": [], 721 | "nullPointMode": "null as zero", 722 | "percentage": false, 723 | "pointradius": 5, 724 | "points": false, 725 | "renderer": "flot", 726 | "seriesOverrides": [], 727 | "span": 6, 728 | "stack": true, 729 | "steppedLine": false, 730 | "targets": [ 731 | { 732 | "dsType": "influxdb", 733 | "expr": "sum(etcd_store_watchers)", 734 | "groupBy": [ 735 | { 736 | "params": [ 737 | "auto" 738 | ], 739 | "type": "time" 740 | }, 741 | { 742 | "params": [ 743 | "previous" 744 | ], 745 | "type": "fill" 746 | } 747 | ], 748 | "hide": false, 749 | "intervalFactor": 2, 750 | "legendFormat": "total", 751 | "measurement": "etcd_store_watchers", 752 | "metric": "etcd_store_reads_total", 753 | "policy": "default", 754 | "refId": "A", 755 | "resultFormat": "time_series", 756 | "select": [ 757 | [ 758 | { 759 | "type": "field", 760 | "params": [ 761 | "gauge" 762 | ] 763 | }, 764 | { 765 | "type": "sum", 766 | "params": [] 767 | }, 768 | { 769 | "type": "non_negative_derivative", 770 | "params": [ 771 | "1m" 772 | ] 773 | } 774 | ] 775 | ], 776 | "step": 10, 777 | "tags": [] 778 | } 779 | ], 780 | "timeFrom": null, 781 | "timeShift": null, 782 | "title": "Watchers", 783 | "tooltip": { 784 | "msResolution": true, 785 | "shared": true, 786 | "sort": 0, 787 | "value_type": "cumulative" 788 | }, 789 | "type": "graph", 790 | "xaxis": { 791 | "show": true 792 | }, 793 | "yaxes": [ 794 | { 795 | "format": "short", 796 | "label": "watchers", 797 | "logBase": 1, 798 | "max": null, 799 | "min": 0, 800 | "show": true 801 | }, 802 | { 803 | "format": "short", 804 | "label": "", 805 | "logBase": 1, 806 | "max": null, 807 | "min": null, 808 | "show": true 809 | } 810 | ], 811 | "interval": ">60s" 812 | } 813 | ], 814 | "showTitle": false, 815 | "title": "Watches" 816 | } 817 | ], 818 | "time": { 819 | "from": "now-12h", 820 | "to": "now" 821 | }, 822 | "timepicker": { 823 | "refresh_intervals": [ 824 | "5s", 825 | "10s", 826 | "30s", 827 | "1m", 828 | "5m", 829 | "15m", 830 | "30m", 831 | "1h", 832 | "2h", 833 | "1d" 834 | ], 835 | "time_options": [ 836 | "5m", 837 | "15m", 838 | "1h", 839 | "6h", 840 | "12h", 841 | "24h", 842 | "2d", 843 | "7d", 844 | "30d" 845 | ] 846 | }, 847 | "templating": { 848 | "list": [ 849 | { 850 | "current": { 851 | "text": "telegraf", 852 | "value": "telegraf", 853 | "selected": true 854 | }, 855 | "datasource": null, 856 | "hide": 0, 857 | "includeAll": false, 858 | "multi": false, 859 | "name": "datasource", 860 | "query": "influxdb", 861 | "refresh": 1, 862 | "regex": "/.*telegraf.*/", 863 | "type": "datasource" 864 | } 865 | ] 866 | }, 867 | "annotations": { 868 | "list": [] 869 | }, 870 | "refresh": false, 871 | "schemaVersion": 12, 872 | "version": 4, 873 | "links": [ 874 | { 875 | "icon": "external link", 876 | "tags": [], 877 | "title": "Docs", 878 | "tooltip": "etcd prometheus documentation", 879 | "type": "link", 880 | "url": "https://github.com/coreos/etcd/blob/master/Documentation/metrics.md" 881 | }, 882 | { 883 | "icon": "external link", 884 | "tags": [], 885 | "title": "Dashboard", 886 | "tooltip": "grafana.net dashboard", 887 | "type": "link", 888 | "url": "https://grafana.net/users/sstarcher" 889 | } 890 | ], 891 | "gnetId": 485 892 | } -------------------------------------------------------------------------------- /influxdb/influxdb-metrics.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_INTERNAL_INFLUXDB", 5 | "label": "internal influxdb", 6 | "description": "_internal influxdb database", 7 | "type": "datasource", 8 | "pluginId": "influxdb", 9 | "pluginName": "InfluxDB" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "panel", 15 | "id": "graph", 16 | "name": "Graph", 17 | "version": "" 18 | }, 19 | { 20 | "type": "grafana", 21 | "id": "grafana", 22 | "name": "Grafana", 23 | "version": "3.1.1" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "influxdb", 28 | "name": "InfluxDB", 29 | "version": "1.0.0" 30 | } 31 | ], 32 | "id": null, 33 | "title": "InfluxDB Metrics", 34 | "description": "metrics on influxdb from telegraf", 35 | "tags": [ 36 | "influxdb" 37 | ], 38 | "style": "dark", 39 | "timezone": "browser", 40 | "editable": true, 41 | "hideControls": false, 42 | "sharedCrosshair": false, 43 | "rows": [ 44 | { 45 | "collapse": false, 46 | "editable": true, 47 | "height": "250px", 48 | "panels": [ 49 | { 50 | "aliasColors": {}, 51 | "bars": false, 52 | "datasource": "${DS_INTERNAL_INFLUXDB}", 53 | "editable": true, 54 | "error": false, 55 | "fill": 1, 56 | "grid": { 57 | "threshold1": null, 58 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 59 | "threshold2": null, 60 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 61 | }, 62 | "id": 1, 63 | "isNew": true, 64 | "legend": { 65 | "alignAsTable": true, 66 | "avg": false, 67 | "current": false, 68 | "max": false, 69 | "min": false, 70 | "rightSide": true, 71 | "show": false, 72 | "total": false, 73 | "values": false 74 | }, 75 | "lines": true, 76 | "linewidth": 2, 77 | "links": [], 78 | "nullPointMode": "null", 79 | "percentage": false, 80 | "pointradius": 5, 81 | "points": false, 82 | "renderer": "flot", 83 | "seriesOverrides": [], 84 | "span": 12, 85 | "stack": false, 86 | "steppedLine": false, 87 | "targets": [ 88 | { 89 | "alias": "$tag_host", 90 | "dsType": "influxdb", 91 | "groupBy": [ 92 | { 93 | "params": [ 94 | "$interval" 95 | ], 96 | "type": "time" 97 | }, 98 | { 99 | "params": [ 100 | "host" 101 | ], 102 | "type": "tag" 103 | }, 104 | { 105 | "params": [ 106 | "null" 107 | ], 108 | "type": "fill" 109 | } 110 | ], 111 | "measurement": "httpd", 112 | "policy": "default", 113 | "query": "SELECT non_negative_derivative(last(\"queryReq\"), 1s) FROM \"influxdb_httpd\" WHERE $timeFilter GROUP BY time($interval), \"host\" fill(null)", 114 | "refId": "A", 115 | "resultFormat": "time_series", 116 | "select": [ 117 | [ 118 | { 119 | "params": [ 120 | "queryReq" 121 | ], 122 | "type": "field" 123 | }, 124 | { 125 | "params": [], 126 | "type": "last" 127 | }, 128 | { 129 | "params": [ 130 | "1s" 131 | ], 132 | "type": "non_negative_derivative" 133 | } 134 | ] 135 | ], 136 | "tags": [] 137 | }, 138 | { 139 | "dsType": "influxdb", 140 | "groupBy": [ 141 | { 142 | "params": [ 143 | "$interval" 144 | ], 145 | "type": "time" 146 | }, 147 | { 148 | "params": [ 149 | "null" 150 | ], 151 | "type": "fill" 152 | } 153 | ], 154 | "policy": "default", 155 | "refId": "B", 156 | "resultFormat": "time_series", 157 | "select": [ 158 | [ 159 | { 160 | "params": [ 161 | "value" 162 | ], 163 | "type": "field" 164 | }, 165 | { 166 | "params": [], 167 | "type": "mean" 168 | } 169 | ] 170 | ], 171 | "tags": [] 172 | } 173 | ], 174 | "timeFrom": null, 175 | "timeShift": null, 176 | "title": "HTTP Queries", 177 | "tooltip": { 178 | "msResolution": false, 179 | "shared": true, 180 | "sort": 0, 181 | "value_type": "cumulative" 182 | }, 183 | "type": "graph", 184 | "xaxis": { 185 | "show": true 186 | }, 187 | "yaxes": [ 188 | { 189 | "format": "ops", 190 | "logBase": 1, 191 | "max": null, 192 | "min": null, 193 | "show": true 194 | }, 195 | { 196 | "format": "short", 197 | "logBase": 1, 198 | "max": null, 199 | "min": null, 200 | "show": true 201 | } 202 | ] 203 | }, 204 | { 205 | "aliasColors": {}, 206 | "bars": false, 207 | "datasource": "${DS_INTERNAL_INFLUXDB}", 208 | "editable": true, 209 | "error": false, 210 | "fill": 1, 211 | "grid": { 212 | "threshold1": null, 213 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 214 | "threshold2": null, 215 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 216 | }, 217 | "id": 2, 218 | "isNew": true, 219 | "legend": { 220 | "alignAsTable": true, 221 | "avg": false, 222 | "current": false, 223 | "max": false, 224 | "min": false, 225 | "rightSide": true, 226 | "show": true, 227 | "total": false, 228 | "values": false 229 | }, 230 | "lines": true, 231 | "linewidth": 2, 232 | "links": [], 233 | "nullPointMode": "null", 234 | "percentage": false, 235 | "pointradius": 5, 236 | "points": false, 237 | "renderer": "flot", 238 | "seriesOverrides": [], 239 | "span": 12, 240 | "stack": false, 241 | "steppedLine": false, 242 | "targets": [ 243 | { 244 | "alias": "Client Errors", 245 | "dsType": "influxdb", 246 | "groupBy": [ 247 | { 248 | "params": [ 249 | "$interval" 250 | ], 251 | "type": "time" 252 | }, 253 | { 254 | "params": [ 255 | "host" 256 | ], 257 | "type": "tag" 258 | }, 259 | { 260 | "params": [ 261 | "null" 262 | ], 263 | "type": "fill" 264 | } 265 | ], 266 | "measurement": "httpd", 267 | "policy": "default", 268 | "query": "SELECT non_negative_derivative(last(\"queryReq\"), 1s) FROM \"influxdb_httpd\" WHERE $timeFilter GROUP BY time($interval), \"host\" fill(null)", 269 | "refId": "A", 270 | "resultFormat": "time_series", 271 | "select": [ 272 | [ 273 | { 274 | "params": [ 275 | "clientError" 276 | ], 277 | "type": "field" 278 | }, 279 | { 280 | "params": [], 281 | "type": "last" 282 | }, 283 | { 284 | "params": [ 285 | "1s" 286 | ], 287 | "type": "non_negative_derivative" 288 | } 289 | ] 290 | ], 291 | "tags": [] 292 | }, 293 | { 294 | "alias": "Server Errors", 295 | "dsType": "influxdb", 296 | "groupBy": [ 297 | { 298 | "params": [ 299 | "$interval" 300 | ], 301 | "type": "time" 302 | }, 303 | { 304 | "params": [ 305 | "host" 306 | ], 307 | "type": "tag" 308 | }, 309 | { 310 | "params": [ 311 | "null" 312 | ], 313 | "type": "fill" 314 | } 315 | ], 316 | "measurement": "httpd", 317 | "policy": "default", 318 | "query": "SELECT non_negative_derivative(last(\"queryReq\"), 1s) FROM \"influxdb_httpd\" WHERE $timeFilter GROUP BY time($interval), \"host\" fill(null)", 319 | "refId": "B", 320 | "resultFormat": "time_series", 321 | "select": [ 322 | [ 323 | { 324 | "params": [ 325 | "serverError" 326 | ], 327 | "type": "field" 328 | }, 329 | { 330 | "params": [], 331 | "type": "last" 332 | }, 333 | { 334 | "params": [ 335 | "1s" 336 | ], 337 | "type": "non_negative_derivative" 338 | } 339 | ] 340 | ], 341 | "tags": [] 342 | } 343 | ], 344 | "timeFrom": null, 345 | "timeShift": null, 346 | "title": "HTTP Errors", 347 | "tooltip": { 348 | "msResolution": false, 349 | "shared": true, 350 | "sort": 0, 351 | "value_type": "cumulative" 352 | }, 353 | "type": "graph", 354 | "xaxis": { 355 | "show": true 356 | }, 357 | "yaxes": [ 358 | { 359 | "format": "ops", 360 | "logBase": 1, 361 | "max": null, 362 | "min": null, 363 | "show": true 364 | }, 365 | { 366 | "format": "short", 367 | "logBase": 1, 368 | "max": null, 369 | "min": null, 370 | "show": true 371 | } 372 | ] 373 | }, 374 | { 375 | "aliasColors": {}, 376 | "bars": false, 377 | "datasource": "${DS_INTERNAL_INFLUXDB}", 378 | "editable": true, 379 | "error": false, 380 | "fill": 1, 381 | "grid": { 382 | "threshold1": null, 383 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 384 | "threshold2": null, 385 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 386 | }, 387 | "id": 3, 388 | "isNew": true, 389 | "legend": { 390 | "alignAsTable": true, 391 | "avg": false, 392 | "current": false, 393 | "max": false, 394 | "min": false, 395 | "rightSide": true, 396 | "show": true, 397 | "total": false, 398 | "values": false 399 | }, 400 | "lines": true, 401 | "linewidth": 2, 402 | "links": [], 403 | "nullPointMode": "null", 404 | "percentage": false, 405 | "pointradius": 5, 406 | "points": false, 407 | "renderer": "flot", 408 | "seriesOverrides": [], 409 | "span": 12, 410 | "stack": false, 411 | "steppedLine": false, 412 | "targets": [ 413 | { 414 | "alias": "Write Fail", 415 | "dsType": "influxdb", 416 | "groupBy": [ 417 | { 418 | "params": [ 419 | "$interval" 420 | ], 421 | "type": "time" 422 | }, 423 | { 424 | "params": [ 425 | "host" 426 | ], 427 | "type": "tag" 428 | }, 429 | { 430 | "params": [ 431 | "null" 432 | ], 433 | "type": "fill" 434 | } 435 | ], 436 | "measurement": "httpd", 437 | "policy": "default", 438 | "query": "SELECT non_negative_derivative(last(\"queryReq\"), 1s) FROM \"influxdb_httpd\" WHERE $timeFilter GROUP BY time($interval), \"host\" fill(null)", 439 | "refId": "A", 440 | "resultFormat": "time_series", 441 | "select": [ 442 | [ 443 | { 444 | "params": [ 445 | "pointsWrittenFail" 446 | ], 447 | "type": "field" 448 | }, 449 | { 450 | "params": [], 451 | "type": "last" 452 | }, 453 | { 454 | "params": [ 455 | "1s" 456 | ], 457 | "type": "non_negative_derivative" 458 | } 459 | ] 460 | ], 461 | "tags": [] 462 | }, 463 | { 464 | "alias": "Write OK", 465 | "dsType": "influxdb", 466 | "groupBy": [ 467 | { 468 | "params": [ 469 | "$interval" 470 | ], 471 | "type": "time" 472 | }, 473 | { 474 | "params": [ 475 | "host" 476 | ], 477 | "type": "tag" 478 | }, 479 | { 480 | "params": [ 481 | "null" 482 | ], 483 | "type": "fill" 484 | } 485 | ], 486 | "measurement": "httpd", 487 | "policy": "default", 488 | "query": "SELECT non_negative_derivative(last(\"queryReq\"), 1s) FROM \"influxdb_httpd\" WHERE $timeFilter GROUP BY time($interval), \"host\" fill(null)", 489 | "refId": "B", 490 | "resultFormat": "time_series", 491 | "select": [ 492 | [ 493 | { 494 | "params": [ 495 | "pointsWrittenOK" 496 | ], 497 | "type": "field" 498 | }, 499 | { 500 | "params": [], 501 | "type": "last" 502 | }, 503 | { 504 | "params": [ 505 | "1s" 506 | ], 507 | "type": "non_negative_derivative" 508 | } 509 | ] 510 | ], 511 | "tags": [] 512 | } 513 | ], 514 | "timeFrom": null, 515 | "timeShift": null, 516 | "title": "Points", 517 | "tooltip": { 518 | "msResolution": false, 519 | "shared": true, 520 | "sort": 0, 521 | "value_type": "cumulative" 522 | }, 523 | "type": "graph", 524 | "xaxis": { 525 | "show": true 526 | }, 527 | "yaxes": [ 528 | { 529 | "format": "ops", 530 | "logBase": 1, 531 | "max": null, 532 | "min": null, 533 | "show": true 534 | }, 535 | { 536 | "format": "short", 537 | "logBase": 1, 538 | "max": null, 539 | "min": null, 540 | "show": true 541 | } 542 | ] 543 | } 544 | ], 545 | "showTitle": true, 546 | "title": "HTTP" 547 | }, 548 | { 549 | "collapse": false, 550 | "editable": true, 551 | "height": "250px", 552 | "panels": [ 553 | { 554 | "aliasColors": {}, 555 | "bars": false, 556 | "datasource": "${DS_INTERNAL_INFLUXDB}", 557 | "editable": true, 558 | "error": false, 559 | "fill": 1, 560 | "grid": { 561 | "threshold1": null, 562 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 563 | "threshold2": null, 564 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 565 | }, 566 | "id": 4, 567 | "isNew": true, 568 | "legend": { 569 | "avg": false, 570 | "current": false, 571 | "max": false, 572 | "min": false, 573 | "show": true, 574 | "total": false, 575 | "values": false 576 | }, 577 | "lines": true, 578 | "linewidth": 2, 579 | "links": [], 580 | "nullPointMode": "connected", 581 | "percentage": false, 582 | "pointradius": 5, 583 | "points": false, 584 | "renderer": "flot", 585 | "seriesOverrides": [], 586 | "span": 6, 587 | "stack": false, 588 | "steppedLine": false, 589 | "targets": [ 590 | { 591 | "alias": "Number of Series", 592 | "dsType": "influxdb", 593 | "groupBy": [ 594 | { 595 | "params": [ 596 | "$interval" 597 | ], 598 | "type": "time" 599 | }, 600 | { 601 | "params": [ 602 | "null" 603 | ], 604 | "type": "fill" 605 | } 606 | ], 607 | "measurement": "database", 608 | "policy": "default", 609 | "refId": "A", 610 | "resultFormat": "time_series", 611 | "select": [ 612 | [ 613 | { 614 | "params": [ 615 | "numSeries" 616 | ], 617 | "type": "field" 618 | }, 619 | { 620 | "params": [], 621 | "type": "mean" 622 | } 623 | ] 624 | ], 625 | "tags": [] 626 | } 627 | ], 628 | "timeFrom": null, 629 | "timeShift": null, 630 | "title": "Number of Series", 631 | "tooltip": { 632 | "msResolution": true, 633 | "shared": true, 634 | "sort": 0, 635 | "value_type": "cumulative" 636 | }, 637 | "type": "graph", 638 | "xaxis": { 639 | "show": true 640 | }, 641 | "yaxes": [ 642 | { 643 | "format": "short", 644 | "label": null, 645 | "logBase": 1, 646 | "max": null, 647 | "min": null, 648 | "show": true 649 | }, 650 | { 651 | "format": "short", 652 | "label": null, 653 | "logBase": 1, 654 | "max": null, 655 | "min": null, 656 | "show": true 657 | } 658 | ] 659 | }, 660 | { 661 | "aliasColors": {}, 662 | "bars": false, 663 | "datasource": "${DS_INTERNAL_INFLUXDB}", 664 | "editable": true, 665 | "error": false, 666 | "fill": 1, 667 | "grid": { 668 | "threshold1": null, 669 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 670 | "threshold2": null, 671 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 672 | }, 673 | "id": 5, 674 | "isNew": true, 675 | "legend": { 676 | "avg": false, 677 | "current": false, 678 | "max": false, 679 | "min": false, 680 | "show": true, 681 | "total": false, 682 | "values": false 683 | }, 684 | "lines": true, 685 | "linewidth": 2, 686 | "links": [], 687 | "nullPointMode": "connected", 688 | "percentage": false, 689 | "pointradius": 5, 690 | "points": false, 691 | "renderer": "flot", 692 | "seriesOverrides": [], 693 | "span": 6, 694 | "stack": false, 695 | "steppedLine": false, 696 | "targets": [ 697 | { 698 | "alias": "Number of Measurements", 699 | "dsType": "influxdb", 700 | "groupBy": [ 701 | { 702 | "params": [ 703 | "$interval" 704 | ], 705 | "type": "time" 706 | }, 707 | { 708 | "params": [ 709 | "null" 710 | ], 711 | "type": "fill" 712 | } 713 | ], 714 | "policy": "default", 715 | "query": "SELECT mean(\"numMeasurements\") FROM \"database\" WHERE $timeFilter GROUP BY time($interval) fill(null)", 716 | "rawQuery": true, 717 | "refId": "A", 718 | "resultFormat": "time_series", 719 | "select": [ 720 | [ 721 | { 722 | "params": [ 723 | "value" 724 | ], 725 | "type": "field" 726 | }, 727 | { 728 | "params": [], 729 | "type": "mean" 730 | } 731 | ] 732 | ], 733 | "tags": [] 734 | } 735 | ], 736 | "timeFrom": null, 737 | "timeShift": null, 738 | "title": "Number of Measurements", 739 | "tooltip": { 740 | "msResolution": true, 741 | "shared": true, 742 | "sort": 0, 743 | "value_type": "cumulative" 744 | }, 745 | "transparent": false, 746 | "type": "graph", 747 | "xaxis": { 748 | "show": true 749 | }, 750 | "yaxes": [ 751 | { 752 | "format": "short", 753 | "label": null, 754 | "logBase": 1, 755 | "max": null, 756 | "min": null, 757 | "show": true 758 | }, 759 | { 760 | "format": "short", 761 | "label": null, 762 | "logBase": 1, 763 | "max": null, 764 | "min": null, 765 | "show": true 766 | } 767 | ] 768 | } 769 | ], 770 | "showTitle": true, 771 | "title": "Database" 772 | }, 773 | { 774 | "collapse": false, 775 | "editable": true, 776 | "height": "250px", 777 | "panels": [ 778 | { 779 | "aliasColors": {}, 780 | "bars": false, 781 | "datasource": "${DS_INTERNAL_INFLUXDB}", 782 | "editable": true, 783 | "error": false, 784 | "fill": 1, 785 | "grid": { 786 | "threshold1": null, 787 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 788 | "threshold2": null, 789 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 790 | }, 791 | "id": 6, 792 | "isNew": true, 793 | "legend": { 794 | "avg": false, 795 | "current": false, 796 | "max": false, 797 | "min": false, 798 | "show": true, 799 | "total": false, 800 | "values": false 801 | }, 802 | "lines": true, 803 | "linewidth": 2, 804 | "links": [], 805 | "nullPointMode": "connected", 806 | "percentage": false, 807 | "pointradius": 5, 808 | "points": false, 809 | "renderer": "flot", 810 | "seriesOverrides": [], 811 | "span": 12, 812 | "stack": false, 813 | "steppedLine": false, 814 | "targets": [ 815 | { 816 | "alias": "sys", 817 | "dsType": "influxdb", 818 | "groupBy": [ 819 | { 820 | "params": [ 821 | "$interval" 822 | ], 823 | "type": "time" 824 | }, 825 | { 826 | "params": [ 827 | "null" 828 | ], 829 | "type": "fill" 830 | } 831 | ], 832 | "measurement": "runtime", 833 | "policy": "default", 834 | "query": "SELECT mean(\"TotalAlloc\")/1024 FROM \"runtime\" WHERE $timeFilter GROUP BY time($interval) fill(null)", 835 | "rawQuery": false, 836 | "refId": "A", 837 | "resultFormat": "time_series", 838 | "select": [ 839 | [ 840 | { 841 | "params": [ 842 | "Sys" 843 | ], 844 | "type": "field" 845 | }, 846 | { 847 | "params": [], 848 | "type": "mean" 849 | } 850 | ] 851 | ], 852 | "tags": [] 853 | } 854 | ], 855 | "timeFrom": null, 856 | "timeShift": null, 857 | "title": "Memory", 858 | "tooltip": { 859 | "msResolution": true, 860 | "shared": true, 861 | "sort": 0, 862 | "value_type": "cumulative" 863 | }, 864 | "type": "graph", 865 | "xaxis": { 866 | "show": true 867 | }, 868 | "yaxes": [ 869 | { 870 | "format": "bytes", 871 | "label": null, 872 | "logBase": 1, 873 | "max": null, 874 | "min": null, 875 | "show": true 876 | }, 877 | { 878 | "format": "short", 879 | "label": null, 880 | "logBase": 1, 881 | "max": null, 882 | "min": null, 883 | "show": true 884 | } 885 | ] 886 | } 887 | ], 888 | "showTitle": true, 889 | "title": "Memory" 890 | } 891 | ], 892 | "time": { 893 | "from": "now-7d", 894 | "to": "now" 895 | }, 896 | "timepicker": { 897 | "now": true, 898 | "refresh_intervals": [ 899 | "5s", 900 | "10s", 901 | "30s", 902 | "1m", 903 | "5m", 904 | "15m", 905 | "30m", 906 | "1h", 907 | "2h", 908 | "1d" 909 | ], 910 | "time_options": [ 911 | "5m", 912 | "15m", 913 | "1h", 914 | "6h", 915 | "12h", 916 | "24h", 917 | "2d", 918 | "7d", 919 | "30d" 920 | ] 921 | }, 922 | "templating": { 923 | "list": [ 924 | { 925 | "type": "datasource", 926 | "datasource": null, 927 | "refresh": 1, 928 | "name": "datasource", 929 | "hide": 0, 930 | "options": [ 931 | { 932 | "text": "internal influxdb", 933 | "value": "internal influxdb", 934 | "selected": true 935 | } 936 | ], 937 | "includeAll": false, 938 | "multi": false, 939 | "query": "influxdb", 940 | "regex": "/.*internal.*/", 941 | "current": { 942 | "text": "internal influxdb", 943 | "value": "internal influxdb" 944 | } 945 | } 946 | ] 947 | }, 948 | "annotations": { 949 | "list": [] 950 | }, 951 | "schemaVersion": 12, 952 | "version": 3, 953 | "links": [ 954 | { 955 | "icon": "external link", 956 | "tags": [], 957 | "title": "Docs", 958 | "tooltip": "documentation for metrics", 959 | "type": "link", 960 | "url": "https://github.com/influxdata/telegraf/tree/master/plugins/inputs/influxdb" 961 | }, 962 | { 963 | "icon": "external link", 964 | "tags": [], 965 | "title": "Dashboard", 966 | "tooltip": "grafana.net dashboard", 967 | "type": "link", 968 | "url": "https://grafana.net/users/sstarcher/dashboards" 969 | } 970 | ], 971 | "gnetId": 317 972 | } -------------------------------------------------------------------------------- /prometheus/deployments.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "Prometheus", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "prometheus", 9 | "pluginName": "Prometheus" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "grafana", 15 | "id": "grafana", 16 | "name": "Grafana", 17 | "version": "5.3.2" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "5.0.0" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "prometheus", 28 | "name": "Prometheus", 29 | "version": "5.0.0" 30 | } 31 | ], 32 | "annotations": { 33 | "list": [ 34 | { 35 | "builtIn": 1, 36 | "datasource": "${DS_PROMETHEUS}", 37 | "enable": true, 38 | "hide": true, 39 | "iconColor": "rgba(0, 211, 255, 1)", 40 | "name": "Annotations & Alerts", 41 | "type": "dashboard" 42 | } 43 | ] 44 | }, 45 | "editable": false, 46 | "gnetId": 5225, 47 | "graphTooltip": 1, 48 | "id": null, 49 | "iteration": 1550688543929, 50 | "links": [ 51 | { 52 | "icon": "external link", 53 | "tags": [], 54 | "title": "Github", 55 | "type": "link", 56 | "url": "https://github.com/sstarcher/grafana-dashboards" 57 | }, 58 | { 59 | "icon": "external link", 60 | "tags": [], 61 | "title": "Grafana", 62 | "type": "link", 63 | "url": "https://grafana.com/dashboards/5225" 64 | } 65 | ], 66 | "panels": [ 67 | { 68 | "aliasColors": {}, 69 | "bars": false, 70 | "dashLength": 10, 71 | "dashes": false, 72 | "datasource": "${DS_PROMETHEUS}", 73 | "editable": true, 74 | "error": false, 75 | "fill": 1, 76 | "grid": { 77 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 78 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 79 | }, 80 | "gridPos": { 81 | "h": 7, 82 | "w": 24, 83 | "x": 0, 84 | "y": 0 85 | }, 86 | "id": 1, 87 | "isNew": false, 88 | "legend": { 89 | "alignAsTable": false, 90 | "avg": false, 91 | "current": false, 92 | "hideEmpty": false, 93 | "hideZero": false, 94 | "max": false, 95 | "min": false, 96 | "rightSide": false, 97 | "show": true, 98 | "total": false, 99 | "values": false 100 | }, 101 | "lines": true, 102 | "linewidth": 2, 103 | "links": [], 104 | "nullPointMode": "null", 105 | "percentage": false, 106 | "pointradius": 5, 107 | "points": false, 108 | "renderer": "flot", 109 | "seriesOverrides": [], 110 | "spaceLength": 10, 111 | "stack": false, 112 | "steppedLine": false, 113 | "targets": [ 114 | { 115 | "expr": "sum (container_memory_usage_bytes{pod=~\"$pod\", container=~\"$container\", container!=\"POD\", container!=\"\"})", 116 | "format": "time_series", 117 | "interval": "10s", 118 | "intervalFactor": 1, 119 | "legendFormat": "Current", 120 | "metric": "container_memory_usage_bytes", 121 | "refId": "A", 122 | "step": 15 123 | }, 124 | { 125 | "expr": "sum (kube_pod_container_resource_requests_memory_bytes{pod=~\"$pod\", container=~\"$container\"})", 126 | "format": "time_series", 127 | "hide": false, 128 | "interval": "10s", 129 | "intervalFactor": 2, 130 | "legendFormat": "Request", 131 | "metric": "kube_pod_container_resource_requests_memory_bytes", 132 | "refId": "B", 133 | "step": 20 134 | }, 135 | { 136 | "expr": "sum (kube_pod_container_resource_limits_memory_bytes{pod=~\"$pod\", container=~\"$container\"})", 137 | "format": "time_series", 138 | "hide": false, 139 | "interval": "10s", 140 | "intervalFactor": 2, 141 | "legendFormat": "Limit", 142 | "metric": "kube_pod_container_resource_limits_memory_bytes", 143 | "refId": "C", 144 | "step": 20 145 | } 146 | ], 147 | "thresholds": [], 148 | "timeFrom": null, 149 | "timeShift": null, 150 | "title": "Memory Usage", 151 | "tooltip": { 152 | "msResolution": true, 153 | "shared": true, 154 | "sort": 0, 155 | "value_type": "cumulative" 156 | }, 157 | "type": "graph", 158 | "xaxis": { 159 | "buckets": null, 160 | "mode": "time", 161 | "name": null, 162 | "show": true, 163 | "values": [] 164 | }, 165 | "yaxes": [ 166 | { 167 | "format": "bytes", 168 | "logBase": 1, 169 | "max": null, 170 | "min": "0", 171 | "show": true 172 | }, 173 | { 174 | "format": "short", 175 | "logBase": 1, 176 | "show": true 177 | } 178 | ], 179 | "yaxis": { 180 | "align": false, 181 | "alignLevel": null 182 | } 183 | }, 184 | { 185 | "aliasColors": {}, 186 | "bars": false, 187 | "dashLength": 10, 188 | "dashes": false, 189 | "datasource": "${DS_PROMETHEUS}", 190 | "editable": true, 191 | "error": false, 192 | "fill": 1, 193 | "grid": { 194 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 195 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 196 | }, 197 | "gridPos": { 198 | "h": 7, 199 | "w": 24, 200 | "x": 0, 201 | "y": 7 202 | }, 203 | "id": 2, 204 | "isNew": false, 205 | "legend": { 206 | "alignAsTable": false, 207 | "avg": false, 208 | "current": false, 209 | "hideEmpty": false, 210 | "hideZero": false, 211 | "max": false, 212 | "min": false, 213 | "rightSide": false, 214 | "show": true, 215 | "total": false, 216 | "values": false 217 | }, 218 | "lines": true, 219 | "linewidth": 2, 220 | "links": [], 221 | "nullPointMode": "null", 222 | "percentage": false, 223 | "pointradius": 5, 224 | "points": false, 225 | "renderer": "flot", 226 | "seriesOverrides": [], 227 | "spaceLength": 10, 228 | "stack": false, 229 | "steppedLine": false, 230 | "targets": [ 231 | { 232 | "expr": "sum (rate(container_cpu_usage_seconds_total{image!=\"\",container!=\"POD\",pod=~\"$pod\", container=~\"$container\"}[5m]))", 233 | "format": "time_series", 234 | "intervalFactor": 2, 235 | "legendFormat": "Current", 236 | "refId": "A", 237 | "step": 30 238 | }, 239 | { 240 | "expr": "sum(kube_pod_container_resource_requests_cpu_cores{pod=~\"$pod\", container=~\"$container\"})", 241 | "format": "time_series", 242 | "interval": "10s", 243 | "intervalFactor": 2, 244 | "legendFormat": "Request", 245 | "metric": "kube_pod_container_resource_requests_cpu_cores", 246 | "refId": "B", 247 | "step": 20 248 | }, 249 | { 250 | "expr": "sum(kube_pod_container_resource_limits_cpu_cores{pod=~\"$pod\", container=~\"$container\"})", 251 | "format": "time_series", 252 | "interval": "10s", 253 | "intervalFactor": 2, 254 | "legendFormat": "Limit", 255 | "metric": "kube_pod_container_resource_limits_memory_bytes", 256 | "refId": "C", 257 | "step": 20 258 | } 259 | ], 260 | "thresholds": [], 261 | "timeFrom": null, 262 | "timeShift": null, 263 | "title": "CPU Usage", 264 | "tooltip": { 265 | "msResolution": true, 266 | "shared": true, 267 | "sort": 0, 268 | "value_type": "cumulative" 269 | }, 270 | "type": "graph", 271 | "xaxis": { 272 | "buckets": null, 273 | "mode": "time", 274 | "name": null, 275 | "show": true, 276 | "values": [] 277 | }, 278 | "yaxes": [ 279 | { 280 | "format": "short", 281 | "logBase": 1, 282 | "min": "0", 283 | "show": true 284 | }, 285 | { 286 | "format": "short", 287 | "logBase": 1, 288 | "show": true 289 | } 290 | ], 291 | "yaxis": { 292 | "align": false, 293 | "alignLevel": null 294 | } 295 | }, 296 | { 297 | "aliasColors": {}, 298 | "bars": false, 299 | "dashLength": 10, 300 | "dashes": false, 301 | "datasource": "${DS_PROMETHEUS}", 302 | "editable": true, 303 | "error": false, 304 | "fill": 1, 305 | "grid": { 306 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 307 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 308 | }, 309 | "gridPos": { 310 | "h": 6, 311 | "w": 24, 312 | "x": 0, 313 | "y": 14 314 | }, 315 | "id": 3, 316 | "isNew": false, 317 | "legend": { 318 | "alignAsTable": false, 319 | "avg": false, 320 | "current": false, 321 | "hideEmpty": false, 322 | "hideZero": false, 323 | "max": false, 324 | "min": false, 325 | "rightSide": false, 326 | "show": false, 327 | "total": false, 328 | "values": false 329 | }, 330 | "lines": true, 331 | "linewidth": 2, 332 | "links": [], 333 | "nullPointMode": "null", 334 | "percentage": false, 335 | "pointradius": 5, 336 | "points": false, 337 | "renderer": "flot", 338 | "seriesOverrides": [], 339 | "spaceLength": 10, 340 | "stack": false, 341 | "steppedLine": false, 342 | "targets": [ 343 | { 344 | "expr": "sum (rate(container_network_receive_bytes_total{pod=~\"$pod\"}[5m]))", 345 | "format": "time_series", 346 | "intervalFactor": 2, 347 | "legendFormat": "Network I/O", 348 | "refId": "A", 349 | "step": 30 350 | } 351 | ], 352 | "thresholds": [], 353 | "timeFrom": null, 354 | "timeShift": null, 355 | "title": "Network I/O", 356 | "tooltip": { 357 | "msResolution": true, 358 | "shared": true, 359 | "sort": 0, 360 | "value_type": "cumulative" 361 | }, 362 | "type": "graph", 363 | "xaxis": { 364 | "buckets": null, 365 | "mode": "time", 366 | "name": null, 367 | "show": true, 368 | "values": [] 369 | }, 370 | "yaxes": [ 371 | { 372 | "format": "bytes", 373 | "logBase": 1, 374 | "min": "0", 375 | "show": true 376 | }, 377 | { 378 | "format": "short", 379 | "logBase": 1, 380 | "show": true 381 | } 382 | ], 383 | "yaxis": { 384 | "align": false, 385 | "alignLevel": null 386 | } 387 | } 388 | ], 389 | "refresh": false, 390 | "schemaVersion": 16, 391 | "style": "dark", 392 | "tags": [ 393 | "kubernetes" 394 | ], 395 | "templating": { 396 | "list": [ 397 | { 398 | "allValue": ".*", 399 | "current": {}, 400 | "datasource": "${DS_PROMETHEUS}", 401 | "hide": 0, 402 | "includeAll": true, 403 | "label": "Namespace", 404 | "multi": false, 405 | "name": "namespace", 406 | "options": [], 407 | "query": "label_values(kube_pod_info, namespace)", 408 | "refresh": 1, 409 | "regex": "", 410 | "skipUrlSync": false, 411 | "sort": 0, 412 | "tagValuesQuery": "", 413 | "tags": [], 414 | "tagsQuery": "", 415 | "type": "query", 416 | "useTags": false 417 | }, 418 | { 419 | "allValue": ".*", 420 | "current": {}, 421 | "datasource": "${DS_PROMETHEUS}", 422 | "hide": 0, 423 | "includeAll": true, 424 | "label": "Deployments", 425 | "multi": false, 426 | "name": "deployment", 427 | "options": [], 428 | "query": "label_values(kube_deployment_metadata_generation{namespace=~\"$namespace\"}, deployment)", 429 | "refresh": 1, 430 | "regex": "", 431 | "skipUrlSync": false, 432 | "sort": 1, 433 | "tagValuesQuery": "", 434 | "tags": [], 435 | "tagsQuery": "", 436 | "type": "query", 437 | "useTags": false 438 | }, 439 | { 440 | "allValue": null, 441 | "current": {}, 442 | "datasource": "${DS_PROMETHEUS}", 443 | "hide": 0, 444 | "includeAll": true, 445 | "label": "Pod", 446 | "multi": false, 447 | "name": "pod", 448 | "options": [], 449 | "query": "label_values(kube_pod_info{namespace=~\"$namespace\", created_by_name=~\"$deployment-\\\\w{5,10}\"}, pod)", 450 | "refresh": 1, 451 | "regex": "", 452 | "skipUrlSync": false, 453 | "sort": 1, 454 | "tagValuesQuery": "", 455 | "tags": [], 456 | "tagsQuery": "", 457 | "type": "query", 458 | "useTags": false 459 | }, 460 | { 461 | "allValue": ".*", 462 | "current": {}, 463 | "datasource": "${DS_PROMETHEUS}", 464 | "hide": 0, 465 | "includeAll": true, 466 | "label": "Container", 467 | "multi": false, 468 | "name": "container", 469 | "options": [], 470 | "query": "label_values(kube_pod_container_info{namespace=~\"$namespace\", pod=~\"$pod\"}, container)", 471 | "refresh": 1, 472 | "regex": "", 473 | "skipUrlSync": false, 474 | "sort": 1, 475 | "tagValuesQuery": "", 476 | "tags": [], 477 | "tagsQuery": "", 478 | "type": "query", 479 | "useTags": false 480 | } 481 | ] 482 | }, 483 | "time": { 484 | "from": "now-24h", 485 | "to": "now" 486 | }, 487 | "timepicker": { 488 | "refresh_intervals": [ 489 | "5s", 490 | "10s", 491 | "30s", 492 | "1m", 493 | "5m", 494 | "15m", 495 | "30m", 496 | "1h", 497 | "2h", 498 | "1d" 499 | ], 500 | "time_options": [ 501 | "5m", 502 | "15m", 503 | "1h", 504 | "6h", 505 | "12h", 506 | "24h", 507 | "2d", 508 | "7d", 509 | "30d" 510 | ] 511 | }, 512 | "timezone": "browser", 513 | "title": "Kubernetes Deployments", 514 | "uid": "qZVNJvziz", 515 | "version": 1 516 | } 517 | -------------------------------------------------------------------------------- /prometheus/nodes.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "Prometheus", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "prometheus", 9 | "pluginName": "Prometheus" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "grafana", 15 | "id": "grafana", 16 | "name": "Grafana", 17 | "version": "5.3.2" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "5.0.0" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "prometheus", 28 | "name": "Prometheus", 29 | "version": "5.0.0" 30 | }, 31 | { 32 | "type": "panel", 33 | "id": "singlestat", 34 | "name": "Singlestat", 35 | "version": "5.0.0" 36 | } 37 | ], 38 | "annotations": { 39 | "list": [ 40 | { 41 | "builtIn": 1, 42 | "datasource": "${DS_PROMETHEUS}", 43 | "enable": true, 44 | "hide": true, 45 | "iconColor": "rgba(0, 211, 255, 1)", 46 | "name": "Annotations & Alerts", 47 | "type": "dashboard" 48 | } 49 | ] 50 | }, 51 | "description": "Dashboard to for node information", 52 | "editable": false, 53 | "gnetId": 5219, 54 | "graphTooltip": 0, 55 | "id": null, 56 | "iteration": 1548348798726, 57 | "links": [ 58 | { 59 | "icon": "external link", 60 | "tags": [], 61 | "targetBlank": false, 62 | "title": "Github", 63 | "tooltip": "", 64 | "type": "link", 65 | "url": "https://github.com/sstarcher/grafana-dashboards" 66 | }, 67 | { 68 | "icon": "external link", 69 | "tags": [], 70 | "title": "Grafana", 71 | "type": "link", 72 | "url": "https://grafana.com/dashboards/5219" 73 | } 74 | ], 75 | "panels": [ 76 | { 77 | "collapsed": false, 78 | "gridPos": { 79 | "h": 1, 80 | "w": 24, 81 | "x": 0, 82 | "y": 0 83 | }, 84 | "id": 18, 85 | "panels": [], 86 | "repeat": null, 87 | "title": "", 88 | "type": "row" 89 | }, 90 | { 91 | "aliasColors": {}, 92 | "bars": false, 93 | "dashLength": 10, 94 | "dashes": false, 95 | "datasource": "${DS_PROMETHEUS}", 96 | "editable": true, 97 | "error": false, 98 | "fill": 1, 99 | "grid": { 100 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 101 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 102 | }, 103 | "gridPos": { 104 | "h": 7, 105 | "w": 12, 106 | "x": 0, 107 | "y": 1 108 | }, 109 | "id": 3, 110 | "isNew": false, 111 | "legend": { 112 | "alignAsTable": false, 113 | "avg": false, 114 | "current": false, 115 | "hideEmpty": false, 116 | "hideZero": false, 117 | "max": false, 118 | "min": false, 119 | "rightSide": false, 120 | "show": true, 121 | "total": false, 122 | "values": false 123 | }, 124 | "lines": true, 125 | "linewidth": 2, 126 | "links": [], 127 | "nullPointMode": "null", 128 | "percentage": false, 129 | "pointradius": 5, 130 | "points": false, 131 | "renderer": "flot", 132 | "seriesOverrides": [], 133 | "spaceLength": 10, 134 | "stack": false, 135 | "steppedLine": false, 136 | "targets": [ 137 | { 138 | "expr": "1 - (avg by (cpu) (irate(node_cpu_seconds_total{mode=\"idle\", instance=~\"$server:.*\"}[5m])))", 139 | "format": "time_series", 140 | "hide": false, 141 | "intervalFactor": 10, 142 | "legendFormat": "{{cpu}}", 143 | "refId": "A", 144 | "step": 50 145 | } 146 | ], 147 | "thresholds": [], 148 | "timeFrom": null, 149 | "timeShift": null, 150 | "title": "CPU Usage", 151 | "tooltip": { 152 | "msResolution": false, 153 | "shared": true, 154 | "sort": 0, 155 | "value_type": "cumulative" 156 | }, 157 | "type": "graph", 158 | "xaxis": { 159 | "buckets": null, 160 | "mode": "time", 161 | "name": null, 162 | "show": true, 163 | "values": [] 164 | }, 165 | "yaxes": [ 166 | { 167 | "decimals": null, 168 | "format": "percentunit", 169 | "label": "cpu usage", 170 | "logBase": 1, 171 | "max": "1", 172 | "min": 0, 173 | "show": true 174 | }, 175 | { 176 | "format": "short", 177 | "logBase": 1, 178 | "show": true 179 | } 180 | ], 181 | "yaxis": { 182 | "align": false, 183 | "alignLevel": null 184 | } 185 | }, 186 | { 187 | "aliasColors": {}, 188 | "bars": false, 189 | "dashLength": 10, 190 | "dashes": false, 191 | "datasource": "${DS_PROMETHEUS}", 192 | "editable": true, 193 | "error": false, 194 | "fill": 1, 195 | "grid": { 196 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 197 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 198 | }, 199 | "gridPos": { 200 | "h": 7, 201 | "w": 12, 202 | "x": 12, 203 | "y": 1 204 | }, 205 | "id": 9, 206 | "isNew": false, 207 | "legend": { 208 | "alignAsTable": false, 209 | "avg": false, 210 | "current": false, 211 | "hideEmpty": false, 212 | "hideZero": false, 213 | "max": false, 214 | "min": false, 215 | "rightSide": false, 216 | "show": true, 217 | "total": false, 218 | "values": false 219 | }, 220 | "lines": true, 221 | "linewidth": 2, 222 | "links": [], 223 | "nullPointMode": "null", 224 | "percentage": false, 225 | "pointradius": 5, 226 | "points": false, 227 | "renderer": "flot", 228 | "seriesOverrides": [], 229 | "spaceLength": 10, 230 | "stack": false, 231 | "steppedLine": false, 232 | "targets": [ 233 | { 234 | "expr": "avg(node_load1{instance=~\"$server:.*\"})", 235 | "format": "time_series", 236 | "intervalFactor": 4, 237 | "legendFormat": "load 1m", 238 | "refId": "A", 239 | "step": 20, 240 | "target": "" 241 | }, 242 | { 243 | "expr": "avg(node_load5{instance=~\"$server:.*\"})", 244 | "format": "time_series", 245 | "intervalFactor": 4, 246 | "legendFormat": "load 5m", 247 | "refId": "B", 248 | "step": 20, 249 | "target": "" 250 | }, 251 | { 252 | "expr": "avg(node_load15{instance=~\"$server:.*\"})", 253 | "format": "time_series", 254 | "intervalFactor": 4, 255 | "legendFormat": "load 15m", 256 | "refId": "C", 257 | "step": 20, 258 | "target": "" 259 | } 260 | ], 261 | "thresholds": [], 262 | "timeFrom": null, 263 | "timeShift": null, 264 | "title": "System Load", 265 | "tooltip": { 266 | "msResolution": false, 267 | "shared": true, 268 | "sort": 0, 269 | "value_type": "cumulative" 270 | }, 271 | "type": "graph", 272 | "xaxis": { 273 | "buckets": null, 274 | "mode": "time", 275 | "name": null, 276 | "show": true, 277 | "values": [] 278 | }, 279 | "yaxes": [ 280 | { 281 | "format": "percentunit", 282 | "logBase": 1, 283 | "min": "0", 284 | "show": true 285 | }, 286 | { 287 | "format": "short", 288 | "logBase": 1, 289 | "show": true 290 | } 291 | ], 292 | "yaxis": { 293 | "align": false, 294 | "alignLevel": null 295 | } 296 | }, 297 | { 298 | "aliasColors": {}, 299 | "bars": false, 300 | "dashLength": 10, 301 | "dashes": false, 302 | "datasource": "${DS_PROMETHEUS}", 303 | "editable": true, 304 | "error": false, 305 | "fill": 1, 306 | "grid": { 307 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 308 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 309 | }, 310 | "gridPos": { 311 | "h": 7, 312 | "w": 18, 313 | "x": 0, 314 | "y": 8 315 | }, 316 | "id": 4, 317 | "isNew": false, 318 | "legend": { 319 | "alignAsTable": false, 320 | "avg": false, 321 | "current": false, 322 | "hideEmpty": false, 323 | "hideZero": false, 324 | "max": false, 325 | "min": false, 326 | "rightSide": false, 327 | "show": true, 328 | "total": false, 329 | "values": false 330 | }, 331 | "lines": true, 332 | "linewidth": 2, 333 | "links": [], 334 | "nullPointMode": "null", 335 | "percentage": false, 336 | "pointradius": 5, 337 | "points": false, 338 | "renderer": "flot", 339 | "seriesOverrides": [ 340 | { 341 | "alias": "node_memory_SwapFree{instance=\"172.17.0.1:9100\",job=\"prometheus\"}", 342 | "yaxis": 2 343 | } 344 | ], 345 | "spaceLength": 10, 346 | "stack": true, 347 | "steppedLine": false, 348 | "targets": [ 349 | { 350 | "expr": "avg(node_memory_MemTotal_bytes{instance=~\"$server:.*\"} - node_memory_MemFree_bytes{instance=~\"$server:.*\"} - node_memory_Buffers_bytes{instance=~\"$server:.*\"} - node_memory_Cached_bytes{instance=~\"$server:.*\"})", 351 | "format": "time_series", 352 | "hide": false, 353 | "interval": "", 354 | "intervalFactor": 2, 355 | "legendFormat": "memory used", 356 | "metric": "", 357 | "refId": "C", 358 | "step": 10 359 | }, 360 | { 361 | "expr": "avg(node_memory_Buffers_bytes{instance=~\"$server:.*\"})", 362 | "format": "time_series", 363 | "interval": "", 364 | "intervalFactor": 2, 365 | "legendFormat": "memory buffers", 366 | "metric": "", 367 | "refId": "E", 368 | "step": 10 369 | }, 370 | { 371 | "expr": "avg(node_memory_Cached_bytes{instance=~\"$server:.*\"})", 372 | "format": "time_series", 373 | "intervalFactor": 2, 374 | "legendFormat": "memory cached", 375 | "metric": "", 376 | "refId": "F", 377 | "step": 10 378 | }, 379 | { 380 | "expr": "avg(node_memory_MemFree_bytes{instance=~\"$server:.*\"})", 381 | "format": "time_series", 382 | "intervalFactor": 2, 383 | "legendFormat": "memory free", 384 | "metric": "", 385 | "refId": "D", 386 | "step": 10 387 | } 388 | ], 389 | "thresholds": [], 390 | "timeFrom": null, 391 | "timeShift": null, 392 | "title": "Memory Usage", 393 | "tooltip": { 394 | "msResolution": false, 395 | "shared": true, 396 | "sort": 0, 397 | "value_type": "individual" 398 | }, 399 | "type": "graph", 400 | "xaxis": { 401 | "buckets": null, 402 | "mode": "time", 403 | "name": null, 404 | "show": true, 405 | "values": [] 406 | }, 407 | "yaxes": [ 408 | { 409 | "format": "bytes", 410 | "logBase": 1, 411 | "min": "0", 412 | "show": true 413 | }, 414 | { 415 | "format": "short", 416 | "logBase": 1, 417 | "show": true 418 | } 419 | ], 420 | "yaxis": { 421 | "align": false, 422 | "alignLevel": null 423 | } 424 | }, 425 | { 426 | "cacheTimeout": null, 427 | "colorBackground": false, 428 | "colorValue": false, 429 | "colors": [ 430 | "rgba(50, 172, 45, 0.97)", 431 | "rgba(237, 129, 40, 0.89)", 432 | "rgba(245, 54, 54, 0.9)" 433 | ], 434 | "datasource": "${DS_PROMETHEUS}", 435 | "decimals": 1, 436 | "description": "-/+ buffers/cache", 437 | "editable": true, 438 | "format": "percentunit", 439 | "gauge": { 440 | "maxValue": 1, 441 | "minValue": 0, 442 | "show": true, 443 | "thresholdLabels": false, 444 | "thresholdMarkers": true 445 | }, 446 | "gridPos": { 447 | "h": 7, 448 | "w": 6, 449 | "x": 18, 450 | "y": 8 451 | }, 452 | "hideTimeOverride": false, 453 | "id": 5, 454 | "interval": null, 455 | "links": [], 456 | "mappingType": 1, 457 | "mappingTypes": [ 458 | { 459 | "name": "value to text", 460 | "value": 1 461 | }, 462 | { 463 | "name": "range to text", 464 | "value": 2 465 | } 466 | ], 467 | "maxDataPoints": 100, 468 | "nullPointMode": "connected", 469 | "nullText": null, 470 | "postfix": "", 471 | "postfixFontSize": "50%", 472 | "prefix": "", 473 | "prefixFontSize": "50%", 474 | "rangeMaps": [ 475 | { 476 | "from": "null", 477 | "text": "N/A", 478 | "to": "null" 479 | } 480 | ], 481 | "sparkline": { 482 | "fillColor": "rgba(31, 118, 189, 0.18)", 483 | "full": false, 484 | "lineColor": "rgb(31, 120, 193)", 485 | "show": false 486 | }, 487 | "tableColumn": "", 488 | "targets": [ 489 | { 490 | "expr": "avg((node_memory_MemTotal_bytes{instance=~\"$server:.*\"} - node_memory_MemFree_bytes{instance=~\"$server:.*\"} - node_memory_Buffers_bytes{instance=~\"$server:.*\"} - node_memory_Cached_bytes{instance=~\"$server:.*\"}) / node_memory_MemTotal_bytes{instance=~\"$server:.*\"})", 491 | "format": "time_series", 492 | "intervalFactor": 2, 493 | "refId": "A", 494 | "step": 60, 495 | "target": "" 496 | } 497 | ], 498 | "thresholds": ".8, .9", 499 | "title": "Memory Usage", 500 | "transparent": false, 501 | "type": "singlestat", 502 | "valueFontSize": "80%", 503 | "valueMaps": [ 504 | { 505 | "op": "=", 506 | "text": "N/A", 507 | "value": "null" 508 | } 509 | ], 510 | "valueName": "avg" 511 | }, 512 | { 513 | "aliasColors": {}, 514 | "bars": false, 515 | "dashLength": 10, 516 | "dashes": false, 517 | "datasource": "${DS_PROMETHEUS}", 518 | "editable": true, 519 | "error": false, 520 | "fill": 1, 521 | "grid": { 522 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 523 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 524 | }, 525 | "gridPos": { 526 | "h": 7, 527 | "w": 18, 528 | "x": 0, 529 | "y": 15 530 | }, 531 | "id": 6, 532 | "isNew": true, 533 | "legend": { 534 | "alignAsTable": false, 535 | "avg": false, 536 | "current": false, 537 | "hideEmpty": false, 538 | "hideZero": false, 539 | "max": false, 540 | "min": false, 541 | "rightSide": false, 542 | "show": true, 543 | "total": false, 544 | "values": false 545 | }, 546 | "lines": true, 547 | "linewidth": 2, 548 | "links": [], 549 | "nullPointMode": "null", 550 | "percentage": false, 551 | "pointradius": 5, 552 | "points": false, 553 | "renderer": "flot", 554 | "seriesOverrides": [ 555 | { 556 | "alias": "read", 557 | "yaxis": 1 558 | }, 559 | { 560 | "alias": "{instance=\"172.17.0.1:9100\"}", 561 | "yaxis": 2 562 | }, 563 | { 564 | "alias": "io time", 565 | "yaxis": 2 566 | } 567 | ], 568 | "spaceLength": 10, 569 | "stack": false, 570 | "steppedLine": false, 571 | "targets": [ 572 | { 573 | "expr": "sum(rate(node_disk_read_bytes_total{instance=~\"$server:.*\"}[2m]))", 574 | "format": "time_series", 575 | "hide": false, 576 | "intervalFactor": 4, 577 | "legendFormat": "read", 578 | "refId": "A", 579 | "step": 20, 580 | "target": "" 581 | }, 582 | { 583 | "expr": "sum(rate(node_disk_written_bytes_total{instance=~\"$server:.*\"}[2m]))", 584 | "format": "time_series", 585 | "intervalFactor": 4, 586 | "legendFormat": "written", 587 | "refId": "B", 588 | "step": 20 589 | }, 590 | { 591 | "expr": "sum(rate(node_disk_io_time_seconds_total{instance=~\"$server:.*\"}[2m]))", 592 | "format": "time_series", 593 | "intervalFactor": 4, 594 | "legendFormat": "io time", 595 | "refId": "C", 596 | "step": 20 597 | } 598 | ], 599 | "thresholds": [], 600 | "timeFrom": null, 601 | "timeShift": null, 602 | "title": "Disk I/O", 603 | "tooltip": { 604 | "msResolution": false, 605 | "shared": true, 606 | "sort": 0, 607 | "value_type": "cumulative" 608 | }, 609 | "type": "graph", 610 | "xaxis": { 611 | "buckets": null, 612 | "mode": "time", 613 | "name": null, 614 | "show": true, 615 | "values": [] 616 | }, 617 | "yaxes": [ 618 | { 619 | "format": "bytes", 620 | "logBase": 1, 621 | "min": "0", 622 | "show": true 623 | }, 624 | { 625 | "format": "s", 626 | "logBase": 1, 627 | "show": true 628 | } 629 | ], 630 | "yaxis": { 631 | "align": false, 632 | "alignLevel": null 633 | } 634 | }, 635 | { 636 | "cacheTimeout": null, 637 | "colorBackground": false, 638 | "colorValue": false, 639 | "colors": [ 640 | "rgba(50, 172, 45, 0.97)", 641 | "rgba(237, 129, 40, 0.89)", 642 | "rgba(245, 54, 54, 0.9)" 643 | ], 644 | "datasource": "${DS_PROMETHEUS}", 645 | "decimals": null, 646 | "editable": true, 647 | "format": "percentunit", 648 | "gauge": { 649 | "maxValue": 1, 650 | "minValue": 0, 651 | "show": true, 652 | "thresholdLabels": false, 653 | "thresholdMarkers": true 654 | }, 655 | "gridPos": { 656 | "h": 7, 657 | "w": 6, 658 | "x": 18, 659 | "y": 15 660 | }, 661 | "hideTimeOverride": false, 662 | "id": 7, 663 | "interval": null, 664 | "links": [], 665 | "mappingType": 1, 666 | "mappingTypes": [ 667 | { 668 | "name": "value to text", 669 | "value": 1 670 | }, 671 | { 672 | "name": "range to text", 673 | "value": 2 674 | } 675 | ], 676 | "maxDataPoints": 100, 677 | "nullPointMode": "connected", 678 | "nullText": null, 679 | "postfix": "", 680 | "postfixFontSize": "50%", 681 | "prefix": "", 682 | "prefixFontSize": "50%", 683 | "rangeMaps": [ 684 | { 685 | "from": "null", 686 | "text": "N/A", 687 | "to": "null" 688 | } 689 | ], 690 | "sparkline": { 691 | "fillColor": "rgba(31, 118, 189, 0.18)", 692 | "full": false, 693 | "lineColor": "rgb(31, 120, 193)", 694 | "show": false 695 | }, 696 | "tableColumn": "", 697 | "targets": [ 698 | { 699 | "expr": "(sum(node_filesystem_size_bytes{device!=\"rootfs\",instance=~\"$server:.*\"}) - sum(node_filesystem_free_bytes{device!=\"rootfs\",instance=~\"$server:.*\"})) / sum(node_filesystem_size_bytes{device!=\"rootfs\",instance=~\"$server:.*\"})", 700 | "format": "time_series", 701 | "intervalFactor": 2, 702 | "refId": "A", 703 | "step": 60, 704 | "target": "" 705 | } 706 | ], 707 | "thresholds": "0.75, 0.9", 708 | "title": "Disk Space Usage", 709 | "transparent": false, 710 | "type": "singlestat", 711 | "valueFontSize": "80%", 712 | "valueMaps": [ 713 | { 714 | "op": "=", 715 | "text": "N/A", 716 | "value": "null" 717 | } 718 | ], 719 | "valueName": "current" 720 | }, 721 | { 722 | "aliasColors": {}, 723 | "bars": false, 724 | "dashLength": 10, 725 | "dashes": false, 726 | "datasource": "${DS_PROMETHEUS}", 727 | "editable": true, 728 | "error": false, 729 | "fill": 1, 730 | "grid": { 731 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 732 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 733 | }, 734 | "gridPos": { 735 | "h": 7, 736 | "w": 12, 737 | "x": 0, 738 | "y": 22 739 | }, 740 | "id": 8, 741 | "isNew": false, 742 | "legend": { 743 | "alignAsTable": false, 744 | "avg": false, 745 | "current": false, 746 | "hideEmpty": false, 747 | "hideZero": false, 748 | "max": false, 749 | "min": false, 750 | "rightSide": false, 751 | "show": false, 752 | "total": false, 753 | "values": false 754 | }, 755 | "lines": true, 756 | "linewidth": 2, 757 | "links": [], 758 | "nullPointMode": "null", 759 | "percentage": false, 760 | "pointradius": 5, 761 | "points": false, 762 | "renderer": "flot", 763 | "seriesOverrides": [ 764 | { 765 | "alias": "transmitted", 766 | "yaxis": 2 767 | } 768 | ], 769 | "spaceLength": 10, 770 | "stack": false, 771 | "steppedLine": false, 772 | "targets": [ 773 | { 774 | "expr": "avg by(device) (rate(node_network_receive_bytes_total{instance=~\"$server:.*\",device!~\"lo\"}[5m]))", 775 | "format": "time_series", 776 | "hide": false, 777 | "intervalFactor": 2, 778 | "legendFormat": "{{device}}", 779 | "refId": "A", 780 | "step": 10, 781 | "target": "" 782 | }, 783 | { 784 | "expr": "sum (rate(node_network_receive_bytes_total{instance=~\"$server:.*\",device!~\"lo\"}[5m]))", 785 | "format": "time_series", 786 | "intervalFactor": 1, 787 | "legendFormat": "Total", 788 | "refId": "B" 789 | } 790 | ], 791 | "thresholds": [], 792 | "timeFrom": null, 793 | "timeShift": null, 794 | "title": "Network Received", 795 | "tooltip": { 796 | "msResolution": false, 797 | "shared": true, 798 | "sort": 2, 799 | "value_type": "cumulative" 800 | }, 801 | "type": "graph", 802 | "xaxis": { 803 | "buckets": null, 804 | "mode": "time", 805 | "name": null, 806 | "show": true, 807 | "values": [] 808 | }, 809 | "yaxes": [ 810 | { 811 | "format": "bytes", 812 | "logBase": 1, 813 | "show": true 814 | }, 815 | { 816 | "format": "bytes", 817 | "logBase": 1, 818 | "show": true 819 | } 820 | ], 821 | "yaxis": { 822 | "align": false, 823 | "alignLevel": null 824 | } 825 | }, 826 | { 827 | "aliasColors": {}, 828 | "bars": false, 829 | "dashLength": 10, 830 | "dashes": false, 831 | "datasource": "${DS_PROMETHEUS}", 832 | "editable": true, 833 | "error": false, 834 | "fill": 1, 835 | "grid": { 836 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 837 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 838 | }, 839 | "gridPos": { 840 | "h": 7, 841 | "w": 12, 842 | "x": 12, 843 | "y": 22 844 | }, 845 | "id": 10, 846 | "isNew": false, 847 | "legend": { 848 | "alignAsTable": false, 849 | "avg": false, 850 | "current": false, 851 | "hideEmpty": false, 852 | "hideZero": false, 853 | "max": false, 854 | "min": false, 855 | "rightSide": false, 856 | "show": false, 857 | "total": false, 858 | "values": false 859 | }, 860 | "lines": true, 861 | "linewidth": 2, 862 | "links": [], 863 | "nullPointMode": "null", 864 | "percentage": false, 865 | "pointradius": 5, 866 | "points": false, 867 | "renderer": "flot", 868 | "seriesOverrides": [ 869 | { 870 | "alias": "transmitted", 871 | "yaxis": 2 872 | } 873 | ], 874 | "spaceLength": 10, 875 | "stack": false, 876 | "steppedLine": false, 877 | "targets": [ 878 | { 879 | "expr": "avg by(device) (rate(node_network_transmit_bytes_total{instance=~\"$server:.*\",device!~\"lo\"}[5m]))", 880 | "format": "time_series", 881 | "hide": false, 882 | "intervalFactor": 2, 883 | "legendFormat": "{{device}}", 884 | "refId": "B", 885 | "step": 10, 886 | "target": "" 887 | }, 888 | { 889 | "expr": "sum (rate(node_network_transmit_bytes_total{instance=~\"$server:.*\",device!~\"lo\"}[5m]))", 890 | "format": "time_series", 891 | "intervalFactor": 1, 892 | "legendFormat": "Total", 893 | "refId": "A" 894 | } 895 | ], 896 | "thresholds": [], 897 | "timeFrom": null, 898 | "timeShift": null, 899 | "title": "Network Transmitted", 900 | "tooltip": { 901 | "msResolution": false, 902 | "shared": true, 903 | "sort": 2, 904 | "value_type": "cumulative" 905 | }, 906 | "type": "graph", 907 | "xaxis": { 908 | "buckets": null, 909 | "mode": "time", 910 | "name": null, 911 | "show": true, 912 | "values": [] 913 | }, 914 | "yaxes": [ 915 | { 916 | "format": "bytes", 917 | "logBase": 1, 918 | "min": "0", 919 | "show": true 920 | }, 921 | { 922 | "format": "bytes", 923 | "logBase": 1, 924 | "show": true 925 | } 926 | ], 927 | "yaxis": { 928 | "align": false, 929 | "alignLevel": null 930 | } 931 | }, 932 | { 933 | "collapsed": false, 934 | "gridPos": { 935 | "h": 1, 936 | "w": 24, 937 | "x": 0, 938 | "y": 29 939 | }, 940 | "id": 16, 941 | "panels": [], 942 | "repeat": null, 943 | "title": "Pods on Node", 944 | "type": "row" 945 | }, 946 | { 947 | "aliasColors": {}, 948 | "bars": false, 949 | "dashLength": 10, 950 | "dashes": false, 951 | "datasource": "${DS_PROMETHEUS}", 952 | "editable": true, 953 | "error": false, 954 | "fill": 1, 955 | "grid": { 956 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 957 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 958 | }, 959 | "gridPos": { 960 | "h": 7, 961 | "w": 24, 962 | "x": 0, 963 | "y": 30 964 | }, 965 | "id": 12, 966 | "isNew": false, 967 | "legend": { 968 | "alignAsTable": false, 969 | "avg": false, 970 | "current": false, 971 | "hideEmpty": false, 972 | "hideZero": false, 973 | "max": false, 974 | "min": false, 975 | "rightSide": false, 976 | "show": false, 977 | "total": false, 978 | "values": false 979 | }, 980 | "lines": true, 981 | "linewidth": 2, 982 | "links": [], 983 | "nullPointMode": "null", 984 | "percentage": false, 985 | "pointradius": 5, 986 | "points": false, 987 | "renderer": "flot", 988 | "seriesOverrides": [], 989 | "spaceLength": 10, 990 | "stack": false, 991 | "steppedLine": false, 992 | "targets": [ 993 | { 994 | "expr": "sum (rate(container_cpu_usage_seconds_total{image!=\"\",container!=\"POD\", node=~\"$instance\"}[5m])) by (pod)", 995 | "format": "time_series", 996 | "intervalFactor": 4, 997 | "legendFormat": "{{pod}}", 998 | "refId": "A", 999 | "step": 30 1000 | } 1001 | ], 1002 | "thresholds": [], 1003 | "timeFrom": null, 1004 | "timeShift": null, 1005 | "title": "CPU Usage", 1006 | "tooltip": { 1007 | "msResolution": true, 1008 | "shared": true, 1009 | "sort": 2, 1010 | "value_type": "cumulative" 1011 | }, 1012 | "type": "graph", 1013 | "xaxis": { 1014 | "buckets": null, 1015 | "mode": "time", 1016 | "name": null, 1017 | "show": true, 1018 | "values": [] 1019 | }, 1020 | "yaxes": [ 1021 | { 1022 | "format": "short", 1023 | "logBase": 1, 1024 | "min": "0", 1025 | "show": true 1026 | }, 1027 | { 1028 | "format": "short", 1029 | "logBase": 1, 1030 | "show": true 1031 | } 1032 | ], 1033 | "yaxis": { 1034 | "align": false, 1035 | "alignLevel": null 1036 | } 1037 | }, 1038 | { 1039 | "aliasColors": {}, 1040 | "bars": false, 1041 | "dashLength": 10, 1042 | "dashes": false, 1043 | "datasource": "${DS_PROMETHEUS}", 1044 | "editable": true, 1045 | "error": false, 1046 | "fill": 1, 1047 | "grid": {}, 1048 | "gridPos": { 1049 | "h": 7, 1050 | "w": 24, 1051 | "x": 0, 1052 | "y": 37 1053 | }, 1054 | "id": 14, 1055 | "isNew": true, 1056 | "legend": { 1057 | "alignAsTable": true, 1058 | "avg": true, 1059 | "current": true, 1060 | "max": false, 1061 | "min": false, 1062 | "rightSide": true, 1063 | "show": false, 1064 | "total": false, 1065 | "values": true 1066 | }, 1067 | "lines": true, 1068 | "linewidth": 2, 1069 | "links": [], 1070 | "nullPointMode": "null", 1071 | "percentage": false, 1072 | "pointradius": 5, 1073 | "points": false, 1074 | "renderer": "flot", 1075 | "seriesOverrides": [], 1076 | "spaceLength": 10, 1077 | "stack": false, 1078 | "steppedLine": false, 1079 | "targets": [ 1080 | { 1081 | "expr": "sum by(pod) (container_memory_usage_bytes{node=\"$instance\", container!=\"POD\",container!=\"\", pod!=\"\"})", 1082 | "format": "time_series", 1083 | "interval": "10s", 1084 | "intervalFactor": 1, 1085 | "legendFormat": "{{pod}}", 1086 | "metric": "container_memory_usage_bytes", 1087 | "refId": "A", 1088 | "step": 10 1089 | } 1090 | ], 1091 | "thresholds": [], 1092 | "timeFrom": null, 1093 | "timeShift": null, 1094 | "title": "Memory Usage", 1095 | "tooltip": { 1096 | "msResolution": true, 1097 | "shared": true, 1098 | "sort": 2, 1099 | "value_type": "cumulative" 1100 | }, 1101 | "type": "graph", 1102 | "xaxis": { 1103 | "buckets": null, 1104 | "mode": "time", 1105 | "name": null, 1106 | "show": true, 1107 | "values": [] 1108 | }, 1109 | "yaxes": [ 1110 | { 1111 | "format": "bytes", 1112 | "label": null, 1113 | "logBase": 1, 1114 | "max": null, 1115 | "min": "0", 1116 | "show": true 1117 | }, 1118 | { 1119 | "format": "short", 1120 | "label": null, 1121 | "logBase": 1, 1122 | "max": null, 1123 | "min": null, 1124 | "show": true 1125 | } 1126 | ], 1127 | "yaxis": { 1128 | "align": false, 1129 | "alignLevel": null 1130 | } 1131 | } 1132 | ], 1133 | "refresh": false, 1134 | "schemaVersion": 16, 1135 | "style": "dark", 1136 | "tags": [ 1137 | "kubernetes" 1138 | ], 1139 | "templating": { 1140 | "list": [ 1141 | { 1142 | "allValue": null, 1143 | "current": {}, 1144 | "datasource": "${DS_PROMETHEUS}", 1145 | "hide": 0, 1146 | "includeAll": false, 1147 | "label": null, 1148 | "multi": false, 1149 | "name": "server", 1150 | "options": [], 1151 | "query": "label_values(kube_pod_info, host_ip)", 1152 | "refresh": 1, 1153 | "regex": "", 1154 | "skipUrlSync": false, 1155 | "sort": 1, 1156 | "tagValuesQuery": "", 1157 | "tags": [], 1158 | "tagsQuery": "", 1159 | "type": "query", 1160 | "useTags": false 1161 | }, 1162 | { 1163 | "allValue": null, 1164 | "current": {}, 1165 | "datasource": "${DS_PROMETHEUS}", 1166 | "hide": 2, 1167 | "includeAll": false, 1168 | "label": null, 1169 | "multi": false, 1170 | "name": "instance", 1171 | "options": [], 1172 | "query": "label_values(kube_pod_info{host_ip=~\"$server\"}, node)", 1173 | "refresh": 1, 1174 | "regex": "", 1175 | "skipUrlSync": false, 1176 | "sort": 0, 1177 | "tagValuesQuery": "", 1178 | "tags": [], 1179 | "tagsQuery": "", 1180 | "type": "query", 1181 | "useTags": false 1182 | }, 1183 | { 1184 | "allValue": null, 1185 | "current": {}, 1186 | "datasource": "${DS_PROMETHEUS}", 1187 | "hide": 2, 1188 | "includeAll": false, 1189 | "label": null, 1190 | "multi": false, 1191 | "name": "pods", 1192 | "options": [], 1193 | "query": "label_values(container_cpu_usage_seconds_total{kubernetes_io_hostname =~\"$instance\"}, pod)", 1194 | "refresh": 1, 1195 | "regex": "", 1196 | "skipUrlSync": false, 1197 | "sort": 0, 1198 | "tagValuesQuery": "", 1199 | "tags": [], 1200 | "tagsQuery": "", 1201 | "type": "query", 1202 | "useTags": false 1203 | } 1204 | ] 1205 | }, 1206 | "time": { 1207 | "from": "now-24h", 1208 | "to": "now" 1209 | }, 1210 | "timepicker": { 1211 | "refresh_intervals": [ 1212 | "5s", 1213 | "10s", 1214 | "30s", 1215 | "1m", 1216 | "5m", 1217 | "15m", 1218 | "30m", 1219 | "1h", 1220 | "2h", 1221 | "1d" 1222 | ], 1223 | "time_options": [ 1224 | "5m", 1225 | "15m", 1226 | "1h", 1227 | "6h", 1228 | "12h", 1229 | "24h", 1230 | "2d", 1231 | "7d", 1232 | "30d" 1233 | ] 1234 | }, 1235 | "timezone": "browser", 1236 | "title": "Kubernetes Nodes", 1237 | "uid": "7plmFZJmk", 1238 | "version": 1 1239 | } 1240 | -------------------------------------------------------------------------------- /prometheus/pods.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "Prometheus", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "prometheus", 9 | "pluginName": "Prometheus" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "grafana", 15 | "id": "grafana", 16 | "name": "Grafana", 17 | "version": "5.3.2" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "5.0.0" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "prometheus", 28 | "name": "Prometheus", 29 | "version": "5.0.0" 30 | } 31 | ], 32 | "annotations": { 33 | "list": [ 34 | { 35 | "builtIn": 1, 36 | "datasource": "${DS_PROMETHEUS}", 37 | "enable": true, 38 | "hide": true, 39 | "iconColor": "rgba(0, 211, 255, 1)", 40 | "name": "Annotations & Alerts", 41 | "type": "dashboard" 42 | } 43 | ] 44 | }, 45 | "description": "Kubernetes to monitor POD statistics", 46 | "editable": false, 47 | "gnetId": 6588, 48 | "graphTooltip": 1, 49 | "id": null, 50 | "iteration": 1548803097055, 51 | "links": [], 52 | "panels": [ 53 | { 54 | "aliasColors": {}, 55 | "bars": false, 56 | "dashLength": 10, 57 | "dashes": false, 58 | "datasource": "${DS_PROMETHEUS}", 59 | "editable": true, 60 | "error": false, 61 | "fill": 1, 62 | "grid": {}, 63 | "gridPos": { 64 | "h": 7, 65 | "w": 24, 66 | "x": 0, 67 | "y": 0 68 | }, 69 | "id": 1, 70 | "isNew": true, 71 | "legend": { 72 | "alignAsTable": false, 73 | "avg": true, 74 | "current": true, 75 | "max": false, 76 | "min": false, 77 | "rightSide": false, 78 | "show": false, 79 | "total": false, 80 | "values": true 81 | }, 82 | "lines": true, 83 | "linewidth": 2, 84 | "links": [], 85 | "nullPointMode": "null", 86 | "percentage": false, 87 | "pointradius": 5, 88 | "points": false, 89 | "renderer": "flot", 90 | "seriesOverrides": [], 91 | "spaceLength": 10, 92 | "stack": false, 93 | "steppedLine": false, 94 | "targets": [ 95 | { 96 | "expr": "sum by(pod) (container_memory_usage_bytes{pod=\"$pod\", container=~\"$container\", container!=\"\", container!=\"POD\"})", 97 | "format": "time_series", 98 | "interval": "10s", 99 | "intervalFactor": 1, 100 | "legendFormat": "Current", 101 | "metric": "container_memory_usage_bytes", 102 | "refId": "A", 103 | "step": 10 104 | }, 105 | { 106 | "expr": "sum by(pod) (kube_pod_container_resource_requests_memory_bytes{pod=\"$pod\", container=~\"$container\"})", 107 | "format": "time_series", 108 | "interval": "10s", 109 | "intervalFactor": 1, 110 | "legendFormat": "Request", 111 | "metric": "kube_pod_container_resource_requests_memory_bytes", 112 | "refId": "B", 113 | "step": 20 114 | }, 115 | { 116 | "expr": "sum by(pod) (kube_pod_container_resource_limits_memory_bytes{pod=\"$pod\", container=~\"$container\"})", 117 | "format": "time_series", 118 | "intervalFactor": 1, 119 | "legendFormat": "Limit", 120 | "refId": "C" 121 | } 122 | ], 123 | "thresholds": [], 124 | "timeFrom": null, 125 | "timeShift": null, 126 | "title": "Memory Usage", 127 | "tooltip": { 128 | "msResolution": true, 129 | "shared": true, 130 | "sort": 0, 131 | "value_type": "cumulative" 132 | }, 133 | "type": "graph", 134 | "xaxis": { 135 | "buckets": null, 136 | "mode": "time", 137 | "name": null, 138 | "show": true, 139 | "values": [] 140 | }, 141 | "yaxes": [ 142 | { 143 | "format": "bytes", 144 | "label": null, 145 | "logBase": 1, 146 | "max": null, 147 | "min": "0", 148 | "show": true 149 | }, 150 | { 151 | "format": "short", 152 | "label": null, 153 | "logBase": 1, 154 | "max": null, 155 | "min": null, 156 | "show": true 157 | } 158 | ], 159 | "yaxis": { 160 | "align": false, 161 | "alignLevel": null 162 | } 163 | }, 164 | { 165 | "aliasColors": {}, 166 | "bars": false, 167 | "dashLength": 10, 168 | "dashes": false, 169 | "datasource": "${DS_PROMETHEUS}", 170 | "editable": true, 171 | "error": false, 172 | "fill": 1, 173 | "grid": {}, 174 | "gridPos": { 175 | "h": 7, 176 | "w": 24, 177 | "x": 0, 178 | "y": 7 179 | }, 180 | "id": 2, 181 | "isNew": true, 182 | "legend": { 183 | "alignAsTable": true, 184 | "avg": true, 185 | "current": true, 186 | "max": false, 187 | "min": false, 188 | "rightSide": true, 189 | "show": false, 190 | "total": false, 191 | "values": true 192 | }, 193 | "lines": true, 194 | "linewidth": 2, 195 | "links": [], 196 | "nullPointMode": "null", 197 | "percentage": false, 198 | "pointradius": 5, 199 | "points": false, 200 | "renderer": "flot", 201 | "seriesOverrides": [], 202 | "spaceLength": 10, 203 | "stack": false, 204 | "steppedLine": false, 205 | "targets": [ 206 | { 207 | "expr": "sum by(pod) (rate(container_cpu_usage_seconds_total{image!=\"\",container!=\"POD\",pod=\"$pod\", container=~\"$container\"}[2m] ) )", 208 | "format": "time_series", 209 | "intervalFactor": 1, 210 | "legendFormat": "Current", 211 | "refId": "A", 212 | "step": 30 213 | }, 214 | { 215 | "expr": "sum by(pod) (kube_pod_container_resource_requests_cpu_cores{pod=\"$pod\", container=~\"$container\"})", 216 | "format": "time_series", 217 | "intervalFactor": 1, 218 | "legendFormat": "Request", 219 | "refId": "B" 220 | }, 221 | { 222 | "expr": "sum by(pod) (kube_pod_container_resource_limits_cpu_cores{pod=\"$pod\", container=~\"$container\"})", 223 | "format": "time_series", 224 | "intervalFactor": 1, 225 | "legendFormat": "Limit", 226 | "refId": "C" 227 | } 228 | ], 229 | "thresholds": [], 230 | "timeFrom": null, 231 | "timeShift": null, 232 | "title": "CPU Usage", 233 | "tooltip": { 234 | "msResolution": true, 235 | "shared": true, 236 | "sort": 0, 237 | "value_type": "cumulative" 238 | }, 239 | "type": "graph", 240 | "xaxis": { 241 | "buckets": null, 242 | "mode": "time", 243 | "name": null, 244 | "show": true, 245 | "values": [] 246 | }, 247 | "yaxes": [ 248 | { 249 | "format": "short", 250 | "label": null, 251 | "logBase": 1, 252 | "max": null, 253 | "min": "0", 254 | "show": true 255 | }, 256 | { 257 | "format": "short", 258 | "label": null, 259 | "logBase": 1, 260 | "max": null, 261 | "min": null, 262 | "show": true 263 | } 264 | ], 265 | "yaxis": { 266 | "align": false, 267 | "alignLevel": null 268 | } 269 | }, 270 | { 271 | "aliasColors": {}, 272 | "bars": false, 273 | "dashLength": 10, 274 | "dashes": false, 275 | "datasource": "${DS_PROMETHEUS}", 276 | "editable": true, 277 | "error": false, 278 | "fill": 1, 279 | "grid": {}, 280 | "gridPos": { 281 | "h": 7, 282 | "w": 24, 283 | "x": 0, 284 | "y": 14 285 | }, 286 | "id": 3, 287 | "isNew": true, 288 | "legend": { 289 | "alignAsTable": true, 290 | "avg": true, 291 | "current": true, 292 | "max": false, 293 | "min": false, 294 | "rightSide": true, 295 | "show": false, 296 | "total": false, 297 | "values": true 298 | }, 299 | "lines": true, 300 | "linewidth": 2, 301 | "links": [], 302 | "nullPointMode": "null", 303 | "percentage": false, 304 | "pointradius": 5, 305 | "points": false, 306 | "renderer": "flot", 307 | "seriesOverrides": [], 308 | "spaceLength": 10, 309 | "stack": false, 310 | "steppedLine": false, 311 | "targets": [ 312 | { 313 | "expr": "sort_desc(sum by (pod) (rate (container_network_receive_bytes_total{pod=\"$pod\"}[2m]) ))", 314 | "format": "time_series", 315 | "intervalFactor": 1, 316 | "legendFormat": "{{ pod }}", 317 | "refId": "A", 318 | "step": 30 319 | } 320 | ], 321 | "thresholds": [], 322 | "timeFrom": null, 323 | "timeShift": null, 324 | "title": "Network I/O", 325 | "tooltip": { 326 | "msResolution": true, 327 | "shared": true, 328 | "sort": 0, 329 | "value_type": "cumulative" 330 | }, 331 | "type": "graph", 332 | "xaxis": { 333 | "buckets": null, 334 | "mode": "time", 335 | "name": null, 336 | "show": true, 337 | "values": [] 338 | }, 339 | "yaxes": [ 340 | { 341 | "format": "bytes", 342 | "label": null, 343 | "logBase": 1, 344 | "max": null, 345 | "min": "0", 346 | "show": true 347 | }, 348 | { 349 | "format": "short", 350 | "label": null, 351 | "logBase": 1, 352 | "max": null, 353 | "min": null, 354 | "show": true 355 | } 356 | ], 357 | "yaxis": { 358 | "align": false, 359 | "alignLevel": null 360 | } 361 | } 362 | ], 363 | "schemaVersion": 16, 364 | "style": "dark", 365 | "tags": [ 366 | "kubernetes" 367 | ], 368 | "templating": { 369 | "list": [ 370 | { 371 | "allValue": ".*", 372 | "current": {}, 373 | "datasource": "${DS_PROMETHEUS}", 374 | "hide": 0, 375 | "includeAll": true, 376 | "label": "Namespace", 377 | "multi": false, 378 | "name": "namespace", 379 | "options": [], 380 | "query": "label_values(kube_pod_info, namespace)", 381 | "refresh": 1, 382 | "regex": "", 383 | "skipUrlSync": false, 384 | "sort": 0, 385 | "tagValuesQuery": "", 386 | "tags": [], 387 | "tagsQuery": "", 388 | "type": "query", 389 | "useTags": false 390 | }, 391 | { 392 | "allValue": null, 393 | "current": {}, 394 | "datasource": "${DS_PROMETHEUS}", 395 | "hide": 0, 396 | "includeAll": false, 397 | "label": "Pod", 398 | "multi": false, 399 | "name": "pod", 400 | "options": [], 401 | "query": "label_values(kube_pod_info{namespace=~\"$namespace\"}, pod)", 402 | "refresh": 1, 403 | "regex": "", 404 | "skipUrlSync": false, 405 | "sort": 0, 406 | "tagValuesQuery": "", 407 | "tags": [], 408 | "tagsQuery": "", 409 | "type": "query", 410 | "useTags": false 411 | }, 412 | { 413 | "allValue": ".*", 414 | "current": {}, 415 | "datasource": "${DS_PROMETHEUS}", 416 | "hide": 0, 417 | "includeAll": true, 418 | "label": "Container", 419 | "multi": false, 420 | "name": "container", 421 | "options": [], 422 | "query": "label_values(kube_pod_container_info{namespace=~\"$namespace\", pod=\"$pod\"}, container)", 423 | "refresh": 1, 424 | "regex": "", 425 | "skipUrlSync": false, 426 | "sort": 0, 427 | "tagValuesQuery": "", 428 | "tags": [], 429 | "tagsQuery": "", 430 | "type": "query", 431 | "useTags": false 432 | } 433 | ] 434 | }, 435 | "time": { 436 | "from": "now-24h", 437 | "to": "now" 438 | }, 439 | "timepicker": { 440 | "refresh_intervals": [ 441 | "5s", 442 | "10s", 443 | "30s", 444 | "1m", 445 | "5m", 446 | "15m", 447 | "30m", 448 | "1h", 449 | "2h", 450 | "1d" 451 | ], 452 | "time_options": [ 453 | "5m", 454 | "15m", 455 | "1h", 456 | "6h", 457 | "12h", 458 | "24h", 459 | "2d", 460 | "7d", 461 | "30d" 462 | ] 463 | }, 464 | "timezone": "browser", 465 | "title": "Kubernetes Pods", 466 | "uid": "3U44p1Hmk", 467 | "version": 1 468 | } 469 | -------------------------------------------------------------------------------- /prometheus/pv.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "Prometheus", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "prometheus", 9 | "pluginName": "Prometheus" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "grafana", 15 | "id": "grafana", 16 | "name": "Grafana", 17 | "version": "5.1.3" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "5.0.0" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "prometheus", 28 | "name": "Prometheus", 29 | "version": "5.0.0" 30 | } 31 | ], 32 | "annotations": { 33 | "list": [ 34 | { 35 | "builtIn": 1, 36 | "datasource": "${DS_PROMETHEUS}", 37 | "enable": true, 38 | "hide": true, 39 | "iconColor": "rgba(0, 211, 255, 1)", 40 | "name": "Annotations & Alerts", 41 | "type": "dashboard" 42 | } 43 | ] 44 | }, 45 | "editable": false, 46 | "gnetId": 6739, 47 | "graphTooltip": 1, 48 | "id": null, 49 | "iteration": 1530372368621, 50 | "links": [ 51 | { 52 | "icon": "external link", 53 | "tags": [], 54 | "title": "Github", 55 | "type": "link", 56 | "url": "https://github.com/sstarcher/grafana-dashboards" 57 | }, 58 | { 59 | "icon": "external link", 60 | "tags": [], 61 | "title": "Grafana", 62 | "type": "link", 63 | "url": "https://grafana.com/dashboards/5225" 64 | } 65 | ], 66 | "panels": [ 67 | { 68 | "aliasColors": {}, 69 | "bars": false, 70 | "dashLength": 10, 71 | "dashes": false, 72 | "datasource": "${DS_PROMETHEUS}", 73 | "fill": 1, 74 | "gridPos": { 75 | "h": 8, 76 | "w": 24, 77 | "x": 0, 78 | "y": 0 79 | }, 80 | "id": 5, 81 | "legend": { 82 | "avg": false, 83 | "current": false, 84 | "max": false, 85 | "min": false, 86 | "show": true, 87 | "total": false, 88 | "values": false 89 | }, 90 | "lines": true, 91 | "linewidth": 1, 92 | "links": [], 93 | "nullPointMode": "null", 94 | "percentage": false, 95 | "pointradius": 5, 96 | "points": false, 97 | "renderer": "flot", 98 | "seriesOverrides": [], 99 | "spaceLength": 10, 100 | "stack": false, 101 | "steppedLine": false, 102 | "targets": [ 103 | { 104 | "expr": "1 / kubelet_volume_stats_capacity_bytes * kubelet_volume_stats_used_bytes{persistentvolumeclaim=~\"$persistentvolumeclaim\", namespace=~\"$namespace\", instance=~\"$instance\"}", 105 | "format": "time_series", 106 | "intervalFactor": 1, 107 | "legendFormat": "{{persistentvolumeclaim}}", 108 | "refId": "A" 109 | } 110 | ], 111 | "thresholds": [], 112 | "timeFrom": null, 113 | "timeShift": null, 114 | "title": "Disk Usage", 115 | "tooltip": { 116 | "shared": true, 117 | "sort": 2, 118 | "value_type": "individual" 119 | }, 120 | "type": "graph", 121 | "xaxis": { 122 | "buckets": null, 123 | "mode": "time", 124 | "name": null, 125 | "show": true, 126 | "values": [] 127 | }, 128 | "yaxes": [ 129 | { 130 | "format": "percentunit", 131 | "label": null, 132 | "logBase": 1, 133 | "max": "1", 134 | "min": "0", 135 | "show": true 136 | }, 137 | { 138 | "format": "short", 139 | "label": null, 140 | "logBase": 1, 141 | "max": null, 142 | "min": null, 143 | "show": true 144 | } 145 | ], 146 | "yaxis": { 147 | "align": false, 148 | "alignLevel": null 149 | } 150 | }, 151 | { 152 | "aliasColors": {}, 153 | "bars": false, 154 | "dashLength": 10, 155 | "dashes": false, 156 | "datasource": "${DS_PROMETHEUS}", 157 | "fill": 1, 158 | "gridPos": { 159 | "h": 8, 160 | "w": 24, 161 | "x": 0, 162 | "y": 8 163 | }, 164 | "id": 6, 165 | "legend": { 166 | "avg": false, 167 | "current": false, 168 | "max": false, 169 | "min": false, 170 | "show": true, 171 | "total": false, 172 | "values": false 173 | }, 174 | "lines": true, 175 | "linewidth": 1, 176 | "links": [], 177 | "nullPointMode": "null", 178 | "percentage": false, 179 | "pointradius": 5, 180 | "points": false, 181 | "renderer": "flot", 182 | "seriesOverrides": [], 183 | "spaceLength": 10, 184 | "stack": false, 185 | "steppedLine": false, 186 | "targets": [ 187 | { 188 | "expr": "1 / kubelet_volume_stats_inodes * kubelet_volume_stats_inodes_used{namespace=~\"$namespace\", persistentvolumeclaim=~\"$persistentvolumeclaim\", instance=~\"$instance\"}", 189 | "format": "time_series", 190 | "intervalFactor": 1, 191 | "legendFormat": "{{persistentvolumeclaim}}", 192 | "refId": "A" 193 | } 194 | ], 195 | "thresholds": [], 196 | "timeFrom": null, 197 | "timeShift": null, 198 | "title": "Inode Usage", 199 | "tooltip": { 200 | "shared": true, 201 | "sort": 2, 202 | "value_type": "individual" 203 | }, 204 | "type": "graph", 205 | "xaxis": { 206 | "buckets": null, 207 | "mode": "time", 208 | "name": null, 209 | "show": true, 210 | "values": [] 211 | }, 212 | "yaxes": [ 213 | { 214 | "format": "percentunit", 215 | "label": null, 216 | "logBase": 1, 217 | "max": "1", 218 | "min": "0", 219 | "show": true 220 | }, 221 | { 222 | "format": "short", 223 | "label": null, 224 | "logBase": 1, 225 | "max": null, 226 | "min": null, 227 | "show": true 228 | } 229 | ], 230 | "yaxis": { 231 | "align": false, 232 | "alignLevel": null 233 | } 234 | } 235 | ], 236 | "refresh": false, 237 | "schemaVersion": 16, 238 | "style": "dark", 239 | "tags": [ 240 | "kubernetes" 241 | ], 242 | "templating": { 243 | "list": [ 244 | { 245 | "allValue": ".*", 246 | "current": {}, 247 | "datasource": "${DS_PROMETHEUS}", 248 | "hide": 0, 249 | "includeAll": true, 250 | "label": "Namespace", 251 | "multi": false, 252 | "name": "namespace", 253 | "options": [], 254 | "query": "label_values(kube_pod_info, namespace)", 255 | "refresh": 1, 256 | "regex": "", 257 | "sort": 0, 258 | "tagValuesQuery": "", 259 | "tags": [], 260 | "tagsQuery": "", 261 | "type": "query", 262 | "useTags": false 263 | }, 264 | { 265 | "allValue": ".*", 266 | "current": {}, 267 | "datasource": "${DS_PROMETHEUS}", 268 | "hide": 0, 269 | "includeAll": true, 270 | "label": "Instance", 271 | "multi": false, 272 | "name": "instance", 273 | "options": [], 274 | "query": "label_values(kubelet_volume_stats_inodes, instance)", 275 | "refresh": 1, 276 | "regex": "", 277 | "sort": 1, 278 | "tagValuesQuery": "", 279 | "tags": [], 280 | "tagsQuery": "", 281 | "type": "query", 282 | "useTags": false 283 | }, 284 | { 285 | "allValue": null, 286 | "current": {}, 287 | "datasource": "${DS_PROMETHEUS}", 288 | "hide": 0, 289 | "includeAll": true, 290 | "label": "Persistent Volume Claim", 291 | "multi": false, 292 | "name": "persistentvolumeclaim", 293 | "options": [], 294 | "query": "label_values(kubelet_volume_stats_inodes{namespace=~\"$namespace\", instance=~\"$instance\"}, persistentvolumeclaim)", 295 | "refresh": 1, 296 | "regex": "", 297 | "sort": 1, 298 | "tagValuesQuery": "", 299 | "tags": [], 300 | "tagsQuery": "", 301 | "type": "query", 302 | "useTags": false 303 | } 304 | ] 305 | }, 306 | "time": { 307 | "from": "now-7d", 308 | "to": "now" 309 | }, 310 | "timepicker": { 311 | "refresh_intervals": [ 312 | "5s", 313 | "10s", 314 | "30s", 315 | "1m", 316 | "5m", 317 | "15m", 318 | "30m", 319 | "1h", 320 | "2h", 321 | "1d" 322 | ], 323 | "time_options": [ 324 | "5m", 325 | "15m", 326 | "1h", 327 | "6h", 328 | "12h", 329 | "24h", 330 | "2d", 331 | "7d", 332 | "30d" 333 | ] 334 | }, 335 | "timezone": "browser", 336 | "title": "Kubernetes Persistence Volumes", 337 | "uid": "ChNm4Mvik", 338 | "version": 4, 339 | "description": "Kubernetes persistent volume inode and disk usage" 340 | } -------------------------------------------------------------------------------- /prometheus/status.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_PROMETHEUS", 5 | "label": "prometheus", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "prometheus", 9 | "pluginName": "Prometheus" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "grafana", 15 | "id": "grafana", 16 | "name": "Grafana", 17 | "version": "5.0.1" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "5.0.0" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "prometheus", 28 | "name": "Prometheus", 29 | "version": "5.0.0" 30 | }, 31 | { 32 | "type": "panel", 33 | "id": "singlestat", 34 | "name": "Singlestat", 35 | "version": "5.0.0" 36 | } 37 | ], 38 | "annotations": { 39 | "list": [ 40 | { 41 | "builtIn": 1, 42 | "datasource": "-- Grafana --", 43 | "enable": true, 44 | "hide": true, 45 | "iconColor": "rgba(0, 211, 255, 1)", 46 | "name": "Annotations & Alerts", 47 | "type": "dashboard" 48 | } 49 | ] 50 | }, 51 | "description": "", 52 | "editable": false, 53 | "gnetId": 5231, 54 | "graphTooltip": 0, 55 | "id": null, 56 | "links": [ 57 | { 58 | "icon": "external link", 59 | "tags": [], 60 | "title": "Grafana", 61 | "type": "link", 62 | "url": "https://grafana.com/dashboards/5231" 63 | }, 64 | { 65 | "icon": "external link", 66 | "tags": [], 67 | "title": "Github", 68 | "type": "link", 69 | "url": "https://github.com/sstarcher/grafana-dashboards" 70 | } 71 | ], 72 | "panels": [ 73 | { 74 | "collapsed": false, 75 | "gridPos": { 76 | "h": 1, 77 | "w": 24, 78 | "x": 0, 79 | "y": 0 80 | }, 81 | "id": 11, 82 | "panels": [], 83 | "title": "Cluster Health", 84 | "type": "row" 85 | }, 86 | { 87 | "cacheTimeout": null, 88 | "colorBackground": false, 89 | "colorValue": true, 90 | "colors": [ 91 | "rgba(50, 172, 45, 0.97)", 92 | "rgba(237, 129, 40, 0.89)", 93 | "rgba(245, 54, 54, 0.9)" 94 | ], 95 | "datasource": "${DS_PROMETHEUS}", 96 | "editable": true, 97 | "format": "none", 98 | "gauge": { 99 | "maxValue": 100, 100 | "minValue": 0, 101 | "show": false, 102 | "thresholdLabels": false, 103 | "thresholdMarkers": true 104 | }, 105 | "gridPos": { 106 | "h": 4, 107 | "w": 3, 108 | "x": 0, 109 | "y": 1 110 | }, 111 | "id": 5, 112 | "interval": null, 113 | "links": [], 114 | "mappingType": 1, 115 | "mappingTypes": [ 116 | { 117 | "name": "value to text", 118 | "value": 1 119 | }, 120 | { 121 | "name": "range to text", 122 | "value": 2 123 | } 124 | ], 125 | "maxDataPoints": 100, 126 | "nullPointMode": "connected", 127 | "nullText": null, 128 | "postfix": "", 129 | "postfixFontSize": "50%", 130 | "prefix": "", 131 | "prefixFontSize": "50%", 132 | "rangeMaps": [ 133 | { 134 | "from": "null", 135 | "text": "N/A", 136 | "to": "null" 137 | } 138 | ], 139 | "sparkline": { 140 | "fillColor": "rgba(31, 118, 189, 0.18)", 141 | "full": false, 142 | "lineColor": "rgb(31, 120, 193)", 143 | "show": false 144 | }, 145 | "tableColumn": "", 146 | "targets": [ 147 | { 148 | "expr": "sum(up{job=~\"apiserver|kube-scheduler|kube-controller-manager\"} == 0)", 149 | "format": "time_series", 150 | "intervalFactor": 2, 151 | "refId": "A", 152 | "step": 600 153 | } 154 | ], 155 | "thresholds": "1, 3", 156 | "title": "Control Plane UP", 157 | "transparent": true, 158 | "type": "singlestat", 159 | "valueFontSize": "80%", 160 | "valueMaps": [ 161 | { 162 | "op": "=", 163 | "text": "UP", 164 | "value": "null" 165 | } 166 | ], 167 | "valueName": "total" 168 | }, 169 | { 170 | "cacheTimeout": null, 171 | "colorBackground": false, 172 | "colorValue": true, 173 | "colors": [ 174 | "rgba(50, 172, 45, 0.97)", 175 | "rgba(237, 129, 40, 0.89)", 176 | "rgba(245, 54, 54, 0.9)" 177 | ], 178 | "datasource": "${DS_PROMETHEUS}", 179 | "editable": true, 180 | "format": "none", 181 | "gauge": { 182 | "maxValue": 100, 183 | "minValue": 0, 184 | "show": false, 185 | "thresholdLabels": false, 186 | "thresholdMarkers": true 187 | }, 188 | "gridPos": { 189 | "h": 4, 190 | "w": 3, 191 | "x": 3, 192 | "y": 1 193 | }, 194 | "id": 6, 195 | "interval": null, 196 | "links": [], 197 | "mappingType": 1, 198 | "mappingTypes": [ 199 | { 200 | "name": "value to text", 201 | "value": 1 202 | }, 203 | { 204 | "name": "range to text", 205 | "value": 2 206 | } 207 | ], 208 | "maxDataPoints": 100, 209 | "nullPointMode": "connected", 210 | "nullText": null, 211 | "postfix": "", 212 | "postfixFontSize": "50%", 213 | "prefix": "", 214 | "prefixFontSize": "50%", 215 | "rangeMaps": [ 216 | { 217 | "from": "null", 218 | "text": "N/A", 219 | "to": "null" 220 | } 221 | ], 222 | "sparkline": { 223 | "fillColor": "rgba(31, 118, 189, 0.18)", 224 | "full": false, 225 | "lineColor": "rgb(31, 120, 193)", 226 | "show": false 227 | }, 228 | "tableColumn": "", 229 | "targets": [ 230 | { 231 | "expr": "sum(ALERTS{alertstate=\"firing\",alertname!=\"DeadMansSwitch\"})", 232 | "format": "time_series", 233 | "intervalFactor": 2, 234 | "refId": "A", 235 | "step": 600 236 | } 237 | ], 238 | "thresholds": "3, 5", 239 | "title": "Alerts Firing", 240 | "transparent": true, 241 | "type": "singlestat", 242 | "valueFontSize": "80%", 243 | "valueMaps": [ 244 | { 245 | "op": "=", 246 | "text": "0", 247 | "value": "null" 248 | } 249 | ], 250 | "valueName": "current" 251 | }, 252 | { 253 | "cacheTimeout": null, 254 | "colorBackground": false, 255 | "colorValue": true, 256 | "colors": [ 257 | "rgba(50, 172, 45, 0.97)", 258 | "rgba(237, 129, 40, 0.89)", 259 | "rgba(245, 54, 54, 0.9)" 260 | ], 261 | "datasource": "${DS_PROMETHEUS}", 262 | "editable": true, 263 | "format": "none", 264 | "gauge": { 265 | "maxValue": 100, 266 | "minValue": 0, 267 | "show": false, 268 | "thresholdLabels": false, 269 | "thresholdMarkers": true 270 | }, 271 | "gridPos": { 272 | "h": 4, 273 | "w": 3, 274 | "x": 6, 275 | "y": 1 276 | }, 277 | "id": 14, 278 | "interval": null, 279 | "links": [], 280 | "mappingType": 1, 281 | "mappingTypes": [ 282 | { 283 | "name": "value to text", 284 | "value": 1 285 | }, 286 | { 287 | "name": "range to text", 288 | "value": 2 289 | } 290 | ], 291 | "maxDataPoints": 100, 292 | "nullPointMode": "connected", 293 | "nullText": null, 294 | "postfix": "", 295 | "postfixFontSize": "50%", 296 | "prefix": "", 297 | "prefixFontSize": "50%", 298 | "rangeMaps": [ 299 | { 300 | "from": "null", 301 | "text": "N/A", 302 | "to": "null" 303 | } 304 | ], 305 | "sparkline": { 306 | "fillColor": "rgba(31, 118, 189, 0.18)", 307 | "full": false, 308 | "lineColor": "rgb(31, 120, 193)", 309 | "show": false 310 | }, 311 | "tableColumn": "", 312 | "targets": [ 313 | { 314 | "expr": "sum(ALERTS{alertstate=\"pending\",alertname!=\"DeadMansSwitch\"})", 315 | "format": "time_series", 316 | "intervalFactor": 2, 317 | "refId": "A", 318 | "step": 600 319 | } 320 | ], 321 | "thresholds": "3, 5", 322 | "title": "Alerts Pending", 323 | "transparent": true, 324 | "type": "singlestat", 325 | "valueFontSize": "80%", 326 | "valueMaps": [ 327 | { 328 | "op": "=", 329 | "text": "0", 330 | "value": "null" 331 | } 332 | ], 333 | "valueName": "current" 334 | }, 335 | { 336 | "cacheTimeout": null, 337 | "colorBackground": false, 338 | "colorValue": true, 339 | "colors": [ 340 | "rgba(50, 172, 45, 0.97)", 341 | "rgba(237, 129, 40, 0.89)", 342 | "rgba(245, 54, 54, 0.9)" 343 | ], 344 | "datasource": "${DS_PROMETHEUS}", 345 | "editable": true, 346 | "format": "none", 347 | "gauge": { 348 | "maxValue": 100, 349 | "minValue": 0, 350 | "show": false, 351 | "thresholdLabels": false, 352 | "thresholdMarkers": true 353 | }, 354 | "gridPos": { 355 | "h": 4, 356 | "w": 3, 357 | "x": 9, 358 | "y": 1 359 | }, 360 | "hideTimeOverride": false, 361 | "id": 22, 362 | "interval": null, 363 | "links": [], 364 | "mappingType": 1, 365 | "mappingTypes": [ 366 | { 367 | "name": "value to text", 368 | "value": 1 369 | }, 370 | { 371 | "name": "range to text", 372 | "value": 2 373 | } 374 | ], 375 | "maxDataPoints": 100, 376 | "nullPointMode": "connected", 377 | "nullText": null, 378 | "postfix": "", 379 | "postfixFontSize": "50%", 380 | "prefix": "", 381 | "prefixFontSize": "50%", 382 | "rangeMaps": [ 383 | { 384 | "from": "null", 385 | "text": "N/A", 386 | "to": "null" 387 | } 388 | ], 389 | "sparkline": { 390 | "fillColor": "rgba(31, 118, 189, 0.18)", 391 | "full": false, 392 | "lineColor": "rgb(31, 120, 193)", 393 | "show": false 394 | }, 395 | "tableColumn": "", 396 | "targets": [ 397 | { 398 | "expr": "sum(kube_node_status_condition{condition=\"DiskPressure\",status=\"true\"})", 399 | "format": "time_series", 400 | "intervalFactor": 2, 401 | "legendFormat": "", 402 | "refId": "A", 403 | "step": 600 404 | } 405 | ], 406 | "thresholds": "1, 3", 407 | "title": "Node Disk Pressure", 408 | "transparent": true, 409 | "type": "singlestat", 410 | "valueFontSize": "80%", 411 | "valueMaps": [ 412 | { 413 | "op": "=", 414 | "text": "N/A", 415 | "value": "null" 416 | } 417 | ], 418 | "valueName": "current" 419 | }, 420 | { 421 | "cacheTimeout": null, 422 | "colorBackground": false, 423 | "colorValue": true, 424 | "colors": [ 425 | "rgba(50, 172, 45, 0.97)", 426 | "rgba(237, 129, 40, 0.89)", 427 | "rgba(245, 54, 54, 0.9)" 428 | ], 429 | "datasource": "${DS_PROMETHEUS}", 430 | "editable": true, 431 | "format": "none", 432 | "gauge": { 433 | "maxValue": 100, 434 | "minValue": 0, 435 | "show": false, 436 | "thresholdLabels": false, 437 | "thresholdMarkers": true 438 | }, 439 | "gridPos": { 440 | "h": 4, 441 | "w": 3, 442 | "x": 12, 443 | "y": 1 444 | }, 445 | "hideTimeOverride": false, 446 | "id": 20, 447 | "interval": null, 448 | "links": [], 449 | "mappingType": 1, 450 | "mappingTypes": [ 451 | { 452 | "name": "value to text", 453 | "value": 1 454 | }, 455 | { 456 | "name": "range to text", 457 | "value": 2 458 | } 459 | ], 460 | "maxDataPoints": 100, 461 | "nullPointMode": "connected", 462 | "nullText": null, 463 | "postfix": "", 464 | "postfixFontSize": "50%", 465 | "prefix": "", 466 | "prefixFontSize": "50%", 467 | "rangeMaps": [ 468 | { 469 | "from": "null", 470 | "text": "N/A", 471 | "to": "null" 472 | } 473 | ], 474 | "sparkline": { 475 | "fillColor": "rgba(31, 118, 189, 0.18)", 476 | "full": false, 477 | "lineColor": "rgb(31, 120, 193)", 478 | "show": false 479 | }, 480 | "tableColumn": "", 481 | "targets": [ 482 | { 483 | "expr": "sum(kube_node_status_condition{condition=\"MemoryPressure\",status=\"true\"})", 484 | "format": "time_series", 485 | "intervalFactor": 2, 486 | "legendFormat": "", 487 | "refId": "A", 488 | "step": 600 489 | } 490 | ], 491 | "thresholds": "1, 3", 492 | "title": "Node Memory Pressure", 493 | "transparent": true, 494 | "type": "singlestat", 495 | "valueFontSize": "80%", 496 | "valueMaps": [ 497 | { 498 | "op": "=", 499 | "text": "N/A", 500 | "value": "null" 501 | } 502 | ], 503 | "valueName": "current" 504 | }, 505 | { 506 | "cacheTimeout": null, 507 | "colorBackground": false, 508 | "colorValue": true, 509 | "colors": [ 510 | "rgba(50, 172, 45, 0.97)", 511 | "rgba(237, 129, 40, 0.89)", 512 | "rgba(245, 54, 54, 0.9)" 513 | ], 514 | "datasource": "${DS_PROMETHEUS}", 515 | "editable": true, 516 | "format": "none", 517 | "gauge": { 518 | "maxValue": 100, 519 | "minValue": 0, 520 | "show": false, 521 | "thresholdLabels": false, 522 | "thresholdMarkers": true 523 | }, 524 | "gridPos": { 525 | "h": 4, 526 | "w": 3, 527 | "x": 15, 528 | "y": 1 529 | }, 530 | "hideTimeOverride": false, 531 | "id": 16, 532 | "interval": null, 533 | "links": [], 534 | "mappingType": 1, 535 | "mappingTypes": [ 536 | { 537 | "name": "value to text", 538 | "value": 1 539 | }, 540 | { 541 | "name": "range to text", 542 | "value": 2 543 | } 544 | ], 545 | "maxDataPoints": 100, 546 | "nullPointMode": "connected", 547 | "nullText": null, 548 | "postfix": "", 549 | "postfixFontSize": "50%", 550 | "prefix": "", 551 | "prefixFontSize": "50%", 552 | "rangeMaps": [ 553 | { 554 | "from": "null", 555 | "text": "N/A", 556 | "to": "null" 557 | } 558 | ], 559 | "sparkline": { 560 | "fillColor": "rgba(31, 118, 189, 0.18)", 561 | "full": false, 562 | "lineColor": "rgb(31, 120, 193)", 563 | "show": false 564 | }, 565 | "tableColumn": "", 566 | "targets": [ 567 | { 568 | "expr": "sum(kube_node_status_condition{condition=\"Ready\",status!=\"true\"})", 569 | "format": "time_series", 570 | "intervalFactor": 2, 571 | "legendFormat": "", 572 | "refId": "A", 573 | "step": 600 574 | } 575 | ], 576 | "thresholds": "1, 3", 577 | "title": "Node Not Ready", 578 | "transparent": true, 579 | "type": "singlestat", 580 | "valueFontSize": "80%", 581 | "valueMaps": [ 582 | { 583 | "op": "=", 584 | "text": "N/A", 585 | "value": "null" 586 | } 587 | ], 588 | "valueName": "current" 589 | }, 590 | { 591 | "cacheTimeout": null, 592 | "colorBackground": false, 593 | "colorValue": true, 594 | "colors": [ 595 | "rgba(50, 172, 45, 0.97)", 596 | "rgba(237, 129, 40, 0.89)", 597 | "rgba(245, 54, 54, 0.9)" 598 | ], 599 | "datasource": "${DS_PROMETHEUS}", 600 | "editable": true, 601 | "format": "none", 602 | "gauge": { 603 | "maxValue": 100, 604 | "minValue": 0, 605 | "show": false, 606 | "thresholdLabels": false, 607 | "thresholdMarkers": true 608 | }, 609 | "gridPos": { 610 | "h": 4, 611 | "w": 3, 612 | "x": 18, 613 | "y": 1 614 | }, 615 | "hideTimeOverride": false, 616 | "id": 18, 617 | "interval": null, 618 | "links": [], 619 | "mappingType": 1, 620 | "mappingTypes": [ 621 | { 622 | "name": "value to text", 623 | "value": 1 624 | }, 625 | { 626 | "name": "range to text", 627 | "value": 2 628 | } 629 | ], 630 | "maxDataPoints": 100, 631 | "nullPointMode": "connected", 632 | "nullText": null, 633 | "postfix": "", 634 | "postfixFontSize": "50%", 635 | "prefix": "", 636 | "prefixFontSize": "50%", 637 | "rangeMaps": [ 638 | { 639 | "from": "null", 640 | "text": "N/A", 641 | "to": "null" 642 | } 643 | ], 644 | "sparkline": { 645 | "fillColor": "rgba(31, 118, 189, 0.18)", 646 | "full": false, 647 | "lineColor": "rgb(31, 120, 193)", 648 | "show": false 649 | }, 650 | "tableColumn": "", 651 | "targets": [ 652 | { 653 | "expr": "sum(kube_node_spec_unschedulable)", 654 | "format": "time_series", 655 | "intervalFactor": 2, 656 | "legendFormat": "", 657 | "refId": "A", 658 | "step": 600 659 | } 660 | ], 661 | "thresholds": "1, 3", 662 | "title": "Nodes Unschedulable", 663 | "transparent": true, 664 | "type": "singlestat", 665 | "valueFontSize": "80%", 666 | "valueMaps": [ 667 | { 668 | "op": "=", 669 | "text": "N/A", 670 | "value": "null" 671 | } 672 | ], 673 | "valueName": "current" 674 | }, 675 | { 676 | "cacheTimeout": null, 677 | "colorBackground": false, 678 | "colorValue": true, 679 | "colors": [ 680 | "rgba(50, 172, 45, 0.97)", 681 | "rgba(237, 129, 40, 0.89)", 682 | "rgba(245, 54, 54, 0.9)" 683 | ], 684 | "datasource": "${DS_PROMETHEUS}", 685 | "editable": true, 686 | "format": "none", 687 | "gauge": { 688 | "maxValue": 100, 689 | "minValue": 0, 690 | "show": false, 691 | "thresholdLabels": false, 692 | "thresholdMarkers": true 693 | }, 694 | "gridPos": { 695 | "h": 4, 696 | "w": 3, 697 | "x": 21, 698 | "y": 1 699 | }, 700 | "id": 4, 701 | "interval": null, 702 | "links": [], 703 | "mappingType": 1, 704 | "mappingTypes": [ 705 | { 706 | "name": "value to text", 707 | "value": 1 708 | }, 709 | { 710 | "name": "range to text", 711 | "value": 2 712 | } 713 | ], 714 | "maxDataPoints": 100, 715 | "nullPointMode": "connected", 716 | "nullText": null, 717 | "postfix": "", 718 | "postfixFontSize": "50%", 719 | "prefix": "", 720 | "prefixFontSize": "50%", 721 | "rangeMaps": [ 722 | { 723 | "from": "null", 724 | "text": "N/A", 725 | "to": "null" 726 | } 727 | ], 728 | "sparkline": { 729 | "fillColor": "rgba(31, 118, 189, 0.18)", 730 | "full": false, 731 | "lineColor": "rgb(31, 120, 193)", 732 | "show": false 733 | }, 734 | "tableColumn": "", 735 | "targets": [ 736 | { 737 | "expr": "count(increase(kube_pod_container_status_restarts{namespace=~\"kube-system\"}[1h]) > 5)", 738 | "format": "time_series", 739 | "intervalFactor": 2, 740 | "refId": "A", 741 | "step": 600 742 | } 743 | ], 744 | "thresholds": "1, 3", 745 | "title": "Crashing Control Plane Pods", 746 | "transparent": true, 747 | "type": "singlestat", 748 | "valueFontSize": "80%", 749 | "valueMaps": [ 750 | { 751 | "op": "=", 752 | "text": "0", 753 | "value": "null" 754 | } 755 | ], 756 | "valueName": "current" 757 | }, 758 | { 759 | "collapsed": false, 760 | "gridPos": { 761 | "h": 1, 762 | "w": 24, 763 | "x": 0, 764 | "y": 5 765 | }, 766 | "id": 12, 767 | "panels": [], 768 | "title": "Status", 769 | "type": "row" 770 | }, 771 | { 772 | "cacheTimeout": null, 773 | "colorBackground": false, 774 | "colorValue": false, 775 | "colors": [ 776 | "rgba(245, 54, 54, 0.9)", 777 | "rgba(237, 129, 40, 0.89)", 778 | "rgba(50, 172, 45, 0.97)" 779 | ], 780 | "datasource": "${DS_PROMETHEUS}", 781 | "editable": true, 782 | "format": "percent", 783 | "gauge": { 784 | "maxValue": 100, 785 | "minValue": 0, 786 | "show": true, 787 | "thresholdLabels": false, 788 | "thresholdMarkers": true 789 | }, 790 | "gridPos": { 791 | "h": 5, 792 | "w": 6, 793 | "x": 0, 794 | "y": 6 795 | }, 796 | "id": 1, 797 | "interval": null, 798 | "links": [], 799 | "mappingType": 1, 800 | "mappingTypes": [ 801 | { 802 | "name": "value to text", 803 | "value": 1 804 | }, 805 | { 806 | "name": "range to text", 807 | "value": 2 808 | } 809 | ], 810 | "maxDataPoints": 100, 811 | "nullPointMode": "connected", 812 | "nullText": null, 813 | "postfix": "", 814 | "postfixFontSize": "50%", 815 | "prefix": "", 816 | "prefixFontSize": "50%", 817 | "rangeMaps": [ 818 | { 819 | "from": "null", 820 | "text": "N/A", 821 | "to": "null" 822 | } 823 | ], 824 | "sparkline": { 825 | "fillColor": "rgba(31, 118, 189, 0.18)", 826 | "full": false, 827 | "lineColor": "rgb(31, 120, 193)", 828 | "show": false 829 | }, 830 | "tableColumn": "", 831 | "targets": [ 832 | { 833 | "expr": "(sum(up{job=\"kubernetes-apiservers\"} == 1) / count(up{job=\"kubernetes-apiservers\"})) * 100", 834 | "format": "time_series", 835 | "intervalFactor": 2, 836 | "refId": "A", 837 | "step": 600 838 | } 839 | ], 840 | "thresholds": "50, 80", 841 | "title": "API Servers UP", 842 | "transparent": true, 843 | "type": "singlestat", 844 | "valueFontSize": "80%", 845 | "valueMaps": [ 846 | { 847 | "op": "=", 848 | "text": "N/A", 849 | "value": "null" 850 | } 851 | ], 852 | "valueName": "current" 853 | }, 854 | { 855 | "cacheTimeout": null, 856 | "colorBackground": false, 857 | "colorValue": false, 858 | "colors": [ 859 | "rgba(245, 54, 54, 0.9)", 860 | "rgba(237, 129, 40, 0.89)", 861 | "rgba(50, 172, 45, 0.97)" 862 | ], 863 | "datasource": "${DS_PROMETHEUS}", 864 | "editable": true, 865 | "format": "percent", 866 | "gauge": { 867 | "maxValue": 100, 868 | "minValue": 0, 869 | "show": true, 870 | "thresholdLabels": false, 871 | "thresholdMarkers": true 872 | }, 873 | "gridPos": { 874 | "h": 5, 875 | "w": 6, 876 | "x": 6, 877 | "y": 6 878 | }, 879 | "id": 2, 880 | "interval": null, 881 | "links": [], 882 | "mappingType": 1, 883 | "mappingTypes": [ 884 | { 885 | "name": "value to text", 886 | "value": 1 887 | }, 888 | { 889 | "name": "range to text", 890 | "value": 2 891 | } 892 | ], 893 | "maxDataPoints": 100, 894 | "nullPointMode": "connected", 895 | "nullText": null, 896 | "postfix": "", 897 | "postfixFontSize": "50%", 898 | "prefix": "", 899 | "prefixFontSize": "50%", 900 | "rangeMaps": [ 901 | { 902 | "from": "null", 903 | "text": "N/A", 904 | "to": "null" 905 | } 906 | ], 907 | "sparkline": { 908 | "fillColor": "rgba(31, 118, 189, 0.18)", 909 | "full": false, 910 | "lineColor": "rgb(31, 120, 193)", 911 | "show": false 912 | }, 913 | "tableColumn": "", 914 | "targets": [ 915 | { 916 | "expr": "(sum(up{job=\"kubernetes-nodes\"} == 1) / count(up{job=\"kubernetes-nodes\"})) * 100", 917 | "format": "time_series", 918 | "intervalFactor": 2, 919 | "refId": "A", 920 | "step": 600 921 | } 922 | ], 923 | "thresholds": "50, 80", 924 | "title": "Nodes UP", 925 | "transparent": true, 926 | "type": "singlestat", 927 | "valueFontSize": "80%", 928 | "valueMaps": [ 929 | { 930 | "op": "=", 931 | "text": "N/A", 932 | "value": "null" 933 | } 934 | ], 935 | "valueName": "current" 936 | }, 937 | { 938 | "cacheTimeout": null, 939 | "colorBackground": false, 940 | "colorValue": false, 941 | "colors": [ 942 | "rgba(50, 172, 45, 0.97)", 943 | "rgba(237, 129, 40, 0.89)", 944 | "rgba(245, 54, 54, 0.9)" 945 | ], 946 | "datasource": "${DS_PROMETHEUS}", 947 | "editable": true, 948 | "format": "percent", 949 | "gauge": { 950 | "maxValue": 100, 951 | "minValue": 0, 952 | "show": true, 953 | "thresholdLabels": false, 954 | "thresholdMarkers": true 955 | }, 956 | "gridPos": { 957 | "h": 5, 958 | "w": 6, 959 | "x": 12, 960 | "y": 6 961 | }, 962 | "hideTimeOverride": false, 963 | "id": 24, 964 | "interval": null, 965 | "links": [], 966 | "mappingType": 1, 967 | "mappingTypes": [ 968 | { 969 | "name": "value to text", 970 | "value": 1 971 | }, 972 | { 973 | "name": "range to text", 974 | "value": 2 975 | } 976 | ], 977 | "maxDataPoints": 100, 978 | "nullPointMode": "connected", 979 | "nullText": null, 980 | "postfix": "", 981 | "postfixFontSize": "50%", 982 | "prefix": "", 983 | "prefixFontSize": "50%", 984 | "rangeMaps": [ 985 | { 986 | "from": "null", 987 | "text": "N/A", 988 | "to": "null" 989 | } 990 | ], 991 | "sparkline": { 992 | "fillColor": "rgba(31, 118, 189, 0.18)", 993 | "full": false, 994 | "lineColor": "rgb(31, 120, 193)", 995 | "show": false 996 | }, 997 | "tableColumn": "", 998 | "targets": [ 999 | { 1000 | "expr": "max(sum by(instance) (rate(apiserver_request_count{code=~\"5..\"}[5m])) / sum by(instance) (rate(apiserver_request_count[5m]))) * 100", 1001 | "format": "time_series", 1002 | "intervalFactor": 2, 1003 | "legendFormat": "", 1004 | "refId": "A", 1005 | "step": 600 1006 | } 1007 | ], 1008 | "thresholds": "5, 10", 1009 | "title": "API Server Request Error Rate", 1010 | "transparent": true, 1011 | "type": "singlestat", 1012 | "valueFontSize": "80%", 1013 | "valueMaps": [ 1014 | { 1015 | "op": "=", 1016 | "text": "0", 1017 | "value": "null" 1018 | } 1019 | ], 1020 | "valueName": "avg" 1021 | }, 1022 | { 1023 | "aliasColors": {}, 1024 | "bars": false, 1025 | "dashLength": 10, 1026 | "dashes": false, 1027 | "datasource": "${DS_PROMETHEUS}", 1028 | "editable": true, 1029 | "error": false, 1030 | "fill": 1, 1031 | "grid": { 1032 | "threshold1Color": "rgba(216, 200, 27, 0.27)", 1033 | "threshold2Color": "rgba(234, 112, 112, 0.22)" 1034 | }, 1035 | "gridPos": { 1036 | "h": 5, 1037 | "w": 6, 1038 | "x": 18, 1039 | "y": 6 1040 | }, 1041 | "id": 26, 1042 | "isNew": false, 1043 | "legend": { 1044 | "alignAsTable": false, 1045 | "avg": false, 1046 | "current": false, 1047 | "hideEmpty": false, 1048 | "hideZero": false, 1049 | "max": false, 1050 | "min": false, 1051 | "rightSide": false, 1052 | "show": true, 1053 | "total": false, 1054 | "values": false 1055 | }, 1056 | "lines": true, 1057 | "linewidth": 1, 1058 | "links": [], 1059 | "nullPointMode": "null", 1060 | "percentage": false, 1061 | "pointradius": 5, 1062 | "points": false, 1063 | "renderer": "flot", 1064 | "seriesOverrides": [], 1065 | "spaceLength": 10, 1066 | "stack": false, 1067 | "steppedLine": false, 1068 | "targets": [ 1069 | { 1070 | "expr": "sum by(instance) (rate(apiserver_request_count{code=~\"5..\"}[5m])) / sum by(instance) (rate(apiserver_request_count[5m]))", 1071 | "format": "time_series", 1072 | "intervalFactor": 2, 1073 | "legendFormat": "{{instance}}", 1074 | "refId": "A", 1075 | "step": 60 1076 | } 1077 | ], 1078 | "thresholds": [], 1079 | "timeFrom": null, 1080 | "timeShift": null, 1081 | "title": "API Server Request Rates", 1082 | "tooltip": { 1083 | "msResolution": false, 1084 | "shared": true, 1085 | "sort": 0, 1086 | "value_type": "individual" 1087 | }, 1088 | "transparent": true, 1089 | "type": "graph", 1090 | "xaxis": { 1091 | "buckets": null, 1092 | "mode": "time", 1093 | "name": null, 1094 | "show": true, 1095 | "values": [] 1096 | }, 1097 | "yaxes": [ 1098 | { 1099 | "format": "percentunit", 1100 | "logBase": 1, 1101 | "max": "1", 1102 | "show": true 1103 | }, 1104 | { 1105 | "format": "short", 1106 | "logBase": 1, 1107 | "show": true 1108 | } 1109 | ] 1110 | }, 1111 | { 1112 | "collapsed": false, 1113 | "gridPos": { 1114 | "h": 1, 1115 | "w": 24, 1116 | "x": 0, 1117 | "y": 11 1118 | }, 1119 | "id": 13, 1120 | "panels": [], 1121 | "title": "Capacity", 1122 | "type": "row" 1123 | }, 1124 | { 1125 | "cacheTimeout": null, 1126 | "colorBackground": false, 1127 | "colorValue": false, 1128 | "colors": [ 1129 | "rgba(50, 172, 45, 0.97)", 1130 | "rgba(237, 129, 40, 0.89)", 1131 | "rgba(245, 54, 54, 0.9)" 1132 | ], 1133 | "datasource": "${DS_PROMETHEUS}", 1134 | "editable": true, 1135 | "format": "percent", 1136 | "gauge": { 1137 | "maxValue": 100, 1138 | "minValue": 0, 1139 | "show": true, 1140 | "thresholdLabels": false, 1141 | "thresholdMarkers": true 1142 | }, 1143 | "gridPos": { 1144 | "h": 4, 1145 | "w": 6, 1146 | "x": 0, 1147 | "y": 12 1148 | }, 1149 | "id": 8, 1150 | "interval": null, 1151 | "links": [], 1152 | "mappingType": 1, 1153 | "mappingTypes": [ 1154 | { 1155 | "name": "value to text", 1156 | "value": 1 1157 | }, 1158 | { 1159 | "name": "range to text", 1160 | "value": 2 1161 | } 1162 | ], 1163 | "maxDataPoints": 100, 1164 | "nullPointMode": "connected", 1165 | "nullText": null, 1166 | "postfix": "", 1167 | "postfixFontSize": "50%", 1168 | "prefix": "", 1169 | "prefixFontSize": "50%", 1170 | "rangeMaps": [ 1171 | { 1172 | "from": "null", 1173 | "text": "N/A", 1174 | "to": "null" 1175 | } 1176 | ], 1177 | "sparkline": { 1178 | "fillColor": "rgba(31, 118, 189, 0.18)", 1179 | "full": false, 1180 | "lineColor": "rgb(31, 120, 193)", 1181 | "show": false 1182 | }, 1183 | "tableColumn": "", 1184 | "targets": [ 1185 | { 1186 | "expr": "sum(100 - (avg by (instance) (rate(node_cpu{mode=\"idle\"}[5m])) * 100)) / count(node_cpu{mode=\"idle\"})", 1187 | "format": "time_series", 1188 | "intervalFactor": 2, 1189 | "refId": "A", 1190 | "step": 600 1191 | } 1192 | ], 1193 | "thresholds": "80, 90", 1194 | "title": "CPU Utilization", 1195 | "transparent": true, 1196 | "type": "singlestat", 1197 | "valueFontSize": "80%", 1198 | "valueMaps": [ 1199 | { 1200 | "op": "=", 1201 | "text": "N/A", 1202 | "value": "null" 1203 | } 1204 | ], 1205 | "valueName": "avg" 1206 | }, 1207 | { 1208 | "cacheTimeout": null, 1209 | "colorBackground": false, 1210 | "colorValue": false, 1211 | "colors": [ 1212 | "rgba(50, 172, 45, 0.97)", 1213 | "rgba(237, 129, 40, 0.89)", 1214 | "rgba(245, 54, 54, 0.9)" 1215 | ], 1216 | "datasource": "${DS_PROMETHEUS}", 1217 | "editable": true, 1218 | "format": "percent", 1219 | "gauge": { 1220 | "maxValue": 100, 1221 | "minValue": 0, 1222 | "show": true, 1223 | "thresholdLabels": false, 1224 | "thresholdMarkers": true 1225 | }, 1226 | "gridPos": { 1227 | "h": 4, 1228 | "w": 6, 1229 | "x": 6, 1230 | "y": 12 1231 | }, 1232 | "id": 7, 1233 | "interval": null, 1234 | "links": [], 1235 | "mappingType": 1, 1236 | "mappingTypes": [ 1237 | { 1238 | "name": "value to text", 1239 | "value": 1 1240 | }, 1241 | { 1242 | "name": "range to text", 1243 | "value": 2 1244 | } 1245 | ], 1246 | "maxDataPoints": 100, 1247 | "nullPointMode": "connected", 1248 | "nullText": null, 1249 | "postfix": "", 1250 | "postfixFontSize": "50%", 1251 | "prefix": "", 1252 | "prefixFontSize": "50%", 1253 | "rangeMaps": [ 1254 | { 1255 | "from": "null", 1256 | "text": "N/A", 1257 | "to": "null" 1258 | } 1259 | ], 1260 | "sparkline": { 1261 | "fillColor": "rgba(31, 118, 189, 0.18)", 1262 | "full": false, 1263 | "lineColor": "rgb(31, 120, 193)", 1264 | "show": false 1265 | }, 1266 | "tableColumn": "", 1267 | "targets": [ 1268 | { 1269 | "expr": "((sum(node_memory_MemTotal) - sum(node_memory_MemFree) - sum(node_memory_Buffers) - sum(node_memory_Cached)) / sum(node_memory_MemTotal)) * 100", 1270 | "format": "time_series", 1271 | "intervalFactor": 2, 1272 | "refId": "A", 1273 | "step": 600 1274 | } 1275 | ], 1276 | "thresholds": "80, 90", 1277 | "title": "Memory Utilization", 1278 | "transparent": true, 1279 | "type": "singlestat", 1280 | "valueFontSize": "80%", 1281 | "valueMaps": [ 1282 | { 1283 | "op": "=", 1284 | "text": "N/A", 1285 | "value": "null" 1286 | } 1287 | ], 1288 | "valueName": "avg" 1289 | }, 1290 | { 1291 | "cacheTimeout": null, 1292 | "colorBackground": false, 1293 | "colorValue": false, 1294 | "colors": [ 1295 | "rgba(50, 172, 45, 0.97)", 1296 | "rgba(237, 129, 40, 0.89)", 1297 | "rgba(245, 54, 54, 0.9)" 1298 | ], 1299 | "datasource": "${DS_PROMETHEUS}", 1300 | "editable": true, 1301 | "format": "percent", 1302 | "gauge": { 1303 | "maxValue": 100, 1304 | "minValue": 0, 1305 | "show": true, 1306 | "thresholdLabels": false, 1307 | "thresholdMarkers": true 1308 | }, 1309 | "gridPos": { 1310 | "h": 4, 1311 | "w": 6, 1312 | "x": 12, 1313 | "y": 12 1314 | }, 1315 | "id": 9, 1316 | "interval": null, 1317 | "links": [], 1318 | "mappingType": 1, 1319 | "mappingTypes": [ 1320 | { 1321 | "name": "value to text", 1322 | "value": 1 1323 | }, 1324 | { 1325 | "name": "range to text", 1326 | "value": 2 1327 | } 1328 | ], 1329 | "maxDataPoints": 100, 1330 | "nullPointMode": "connected", 1331 | "nullText": null, 1332 | "postfix": "", 1333 | "postfixFontSize": "50%", 1334 | "prefix": "", 1335 | "prefixFontSize": "50%", 1336 | "rangeMaps": [ 1337 | { 1338 | "from": "null", 1339 | "text": "N/A", 1340 | "to": "null" 1341 | } 1342 | ], 1343 | "sparkline": { 1344 | "fillColor": "rgba(31, 118, 189, 0.18)", 1345 | "full": false, 1346 | "lineColor": "rgb(31, 120, 193)", 1347 | "show": false 1348 | }, 1349 | "tableColumn": "", 1350 | "targets": [ 1351 | { 1352 | "expr": "(sum(node_filesystem_size{device!=\"rootfs\"}) - sum(node_filesystem_free{device!=\"rootfs\"})) / sum(node_filesystem_size{device!=\"rootfs\"})", 1353 | "format": "time_series", 1354 | "intervalFactor": 2, 1355 | "refId": "A", 1356 | "step": 600 1357 | } 1358 | ], 1359 | "thresholds": "80, 90", 1360 | "title": "Filesystem Utilization", 1361 | "transparent": true, 1362 | "type": "singlestat", 1363 | "valueFontSize": "80%", 1364 | "valueMaps": [ 1365 | { 1366 | "op": "=", 1367 | "text": "N/A", 1368 | "value": "null" 1369 | } 1370 | ], 1371 | "valueName": "avg" 1372 | }, 1373 | { 1374 | "cacheTimeout": null, 1375 | "colorBackground": false, 1376 | "colorValue": false, 1377 | "colors": [ 1378 | "rgba(50, 172, 45, 0.97)", 1379 | "rgba(237, 129, 40, 0.89)", 1380 | "rgba(245, 54, 54, 0.9)" 1381 | ], 1382 | "datasource": "${DS_PROMETHEUS}", 1383 | "editable": true, 1384 | "format": "percent", 1385 | "gauge": { 1386 | "maxValue": 100, 1387 | "minValue": 0, 1388 | "show": true, 1389 | "thresholdLabels": false, 1390 | "thresholdMarkers": true 1391 | }, 1392 | "gridPos": { 1393 | "h": 4, 1394 | "w": 6, 1395 | "x": 18, 1396 | "y": 12 1397 | }, 1398 | "id": 10, 1399 | "interval": null, 1400 | "links": [], 1401 | "mappingType": 1, 1402 | "mappingTypes": [ 1403 | { 1404 | "name": "value to text", 1405 | "value": 1 1406 | }, 1407 | { 1408 | "name": "range to text", 1409 | "value": 2 1410 | } 1411 | ], 1412 | "maxDataPoints": 100, 1413 | "nullPointMode": "connected", 1414 | "nullText": null, 1415 | "postfix": "", 1416 | "postfixFontSize": "50%", 1417 | "prefix": "", 1418 | "prefixFontSize": "50%", 1419 | "rangeMaps": [ 1420 | { 1421 | "from": "null", 1422 | "text": "N/A", 1423 | "to": "null" 1424 | } 1425 | ], 1426 | "sparkline": { 1427 | "fillColor": "rgba(31, 118, 189, 0.18)", 1428 | "full": false, 1429 | "lineColor": "rgb(31, 120, 193)", 1430 | "show": false 1431 | }, 1432 | "tableColumn": "", 1433 | "targets": [ 1434 | { 1435 | "expr": "100 - (sum(kube_node_status_capacity_pods) - sum(kube_pod_info)) / sum(kube_node_status_capacity_pods) * 100", 1436 | "format": "time_series", 1437 | "intervalFactor": 2, 1438 | "refId": "A", 1439 | "step": 600 1440 | } 1441 | ], 1442 | "thresholds": "80, 90", 1443 | "title": "Pod Utilization", 1444 | "transparent": true, 1445 | "type": "singlestat", 1446 | "valueFontSize": "80%", 1447 | "valueMaps": [ 1448 | { 1449 | "op": "=", 1450 | "text": "N/A", 1451 | "value": "null" 1452 | } 1453 | ], 1454 | "valueName": "avg" 1455 | } 1456 | ], 1457 | "schemaVersion": 16, 1458 | "style": "dark", 1459 | "tags": [ 1460 | "kubernetes" 1461 | ], 1462 | "templating": { 1463 | "list": [] 1464 | }, 1465 | "time": { 1466 | "from": "now-6h", 1467 | "to": "now" 1468 | }, 1469 | "timepicker": { 1470 | "refresh_intervals": [ 1471 | "5s", 1472 | "10s", 1473 | "30s", 1474 | "1m", 1475 | "5m", 1476 | "15m", 1477 | "30m", 1478 | "1h", 1479 | "2h", 1480 | "1d" 1481 | ], 1482 | "time_options": [ 1483 | "5m", 1484 | "15m", 1485 | "1h", 1486 | "6h", 1487 | "12h", 1488 | "24h", 1489 | "2d", 1490 | "7d", 1491 | "30d" 1492 | ] 1493 | }, 1494 | "timezone": "browser", 1495 | "title": "Kubernetes Status", 1496 | "uid": "wqCZ1vzmk", 1497 | "version": 10 1498 | } --------------------------------------------------------------------------------