├── Gluster Dashboard-1558059750440.json ├── README.md ├── burstconfig.yaml ├── clusterhosts ├── drivetemp.sh ├── odroid-setup.sh ├── scav.service └── telegraf.conf /Gluster Dashboard-1558059750440.json: -------------------------------------------------------------------------------- 1 | { 2 | "__inputs": [ 3 | { 4 | "name": "DS_MYDB", 5 | "label": "MyDB", 6 | "description": "", 7 | "type": "datasource", 8 | "pluginId": "influxdb", 9 | "pluginName": "InfluxDB" 10 | } 11 | ], 12 | "__requires": [ 13 | { 14 | "type": "grafana", 15 | "id": "grafana", 16 | "name": "Grafana", 17 | "version": "6.1.6" 18 | }, 19 | { 20 | "type": "panel", 21 | "id": "graph", 22 | "name": "Graph", 23 | "version": "" 24 | }, 25 | { 26 | "type": "datasource", 27 | "id": "influxdb", 28 | "name": "InfluxDB", 29 | "version": "1.0.0" 30 | }, 31 | { 32 | "type": "panel", 33 | "id": "table", 34 | "name": "Table", 35 | "version": "" 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 | "editable": true, 52 | "gnetId": 7233, 53 | "graphTooltip": 0, 54 | "id": null, 55 | "iteration": 1558059715074, 56 | "links": [], 57 | "panels": [ 58 | { 59 | "collapsed": false, 60 | "gridPos": { 61 | "h": 1, 62 | "w": 24, 63 | "x": 0, 64 | "y": 0 65 | }, 66 | "id": 16, 67 | "panels": [], 68 | "repeat": null, 69 | "title": "CPU Stats", 70 | "type": "row" 71 | }, 72 | { 73 | "aliasColors": { 74 | "CPU Total": "#64b0c8", 75 | "IO Wait": "#ba43a9", 76 | "Nice": "#cca300", 77 | "Softirq": "rgb(106, 218, 75)", 78 | "System": "#ba43a9", 79 | "iowait": "rgb(255, 0, 0)" 80 | }, 81 | "bars": false, 82 | "dashLength": 10, 83 | "dashes": false, 84 | "datasource": "${DS_MYDB}", 85 | "fill": 4, 86 | "gridPos": { 87 | "h": 16, 88 | "w": 8, 89 | "x": 0, 90 | "y": 1 91 | }, 92 | "hideTimeOverride": false, 93 | "id": 15, 94 | "legend": { 95 | "alignAsTable": true, 96 | "avg": true, 97 | "current": true, 98 | "max": true, 99 | "min": false, 100 | "rightSide": false, 101 | "show": true, 102 | "sort": "current", 103 | "sortDesc": true, 104 | "total": false, 105 | "values": true 106 | }, 107 | "lines": true, 108 | "linewidth": 1, 109 | "links": [], 110 | "nullPointMode": "null", 111 | "percentage": false, 112 | "pointradius": 5, 113 | "points": false, 114 | "renderer": "flot", 115 | "seriesOverrides": [], 116 | "spaceLength": 10, 117 | "stack": false, 118 | "steppedLine": false, 119 | "targets": [ 120 | { 121 | "alias": "Gluster10TB01", 122 | "dsType": "influxdb", 123 | "groupBy": [ 124 | { 125 | "params": [ 126 | "$__interval" 127 | ], 128 | "type": "time" 129 | }, 130 | { 131 | "params": [ 132 | "null" 133 | ], 134 | "type": "fill" 135 | } 136 | ], 137 | "measurement": "cpu", 138 | "orderByTime": "ASC", 139 | "policy": "default", 140 | "refId": "A", 141 | "resultFormat": "time_series", 142 | "select": [ 143 | [ 144 | { 145 | "params": [ 146 | "usage_idle" 147 | ], 148 | "type": "field" 149 | }, 150 | { 151 | "params": [], 152 | "type": "distinct" 153 | }, 154 | { 155 | "params": [ 156 | "*-1+100" 157 | ], 158 | "type": "math" 159 | } 160 | ] 161 | ], 162 | "tags": [ 163 | { 164 | "key": "cpu", 165 | "operator": "=", 166 | "value": "cpu-total" 167 | }, 168 | { 169 | "condition": "AND", 170 | "key": "host", 171 | "operator": "=", 172 | "value": "gluster10tb01" 173 | } 174 | ] 175 | }, 176 | { 177 | "alias": "Gluster10TB02", 178 | "dsType": "influxdb", 179 | "groupBy": [ 180 | { 181 | "params": [ 182 | "$__interval" 183 | ], 184 | "type": "time" 185 | }, 186 | { 187 | "params": [ 188 | "null" 189 | ], 190 | "type": "fill" 191 | } 192 | ], 193 | "measurement": "cpu", 194 | "orderByTime": "ASC", 195 | "policy": "default", 196 | "refId": "B", 197 | "resultFormat": "time_series", 198 | "select": [ 199 | [ 200 | { 201 | "params": [ 202 | "usage_idle" 203 | ], 204 | "type": "field" 205 | }, 206 | { 207 | "params": [], 208 | "type": "distinct" 209 | }, 210 | { 211 | "params": [ 212 | "*-1+100" 213 | ], 214 | "type": "math" 215 | } 216 | ] 217 | ], 218 | "tags": [ 219 | { 220 | "key": "cpu", 221 | "operator": "=", 222 | "value": "cpu-total" 223 | }, 224 | { 225 | "condition": "AND", 226 | "key": "host", 227 | "operator": "=", 228 | "value": "gluster10tb02" 229 | } 230 | ] 231 | }, 232 | { 233 | "alias": "Gluster10TB03", 234 | "dsType": "influxdb", 235 | "groupBy": [ 236 | { 237 | "params": [ 238 | "$__interval" 239 | ], 240 | "type": "time" 241 | }, 242 | { 243 | "params": [ 244 | "null" 245 | ], 246 | "type": "fill" 247 | } 248 | ], 249 | "measurement": "cpu", 250 | "orderByTime": "ASC", 251 | "policy": "default", 252 | "refId": "C", 253 | "resultFormat": "time_series", 254 | "select": [ 255 | [ 256 | { 257 | "params": [ 258 | "usage_idle" 259 | ], 260 | "type": "field" 261 | }, 262 | { 263 | "params": [], 264 | "type": "distinct" 265 | }, 266 | { 267 | "params": [ 268 | "*-1+100" 269 | ], 270 | "type": "math" 271 | } 272 | ] 273 | ], 274 | "tags": [ 275 | { 276 | "key": "cpu", 277 | "operator": "=", 278 | "value": "cpu-total" 279 | }, 280 | { 281 | "condition": "AND", 282 | "key": "host", 283 | "operator": "=", 284 | "value": "gluster10tb03" 285 | } 286 | ] 287 | }, 288 | { 289 | "alias": "Gluster10TB04", 290 | "dsType": "influxdb", 291 | "groupBy": [ 292 | { 293 | "params": [ 294 | "$__interval" 295 | ], 296 | "type": "time" 297 | }, 298 | { 299 | "params": [ 300 | "null" 301 | ], 302 | "type": "fill" 303 | } 304 | ], 305 | "measurement": "cpu", 306 | "orderByTime": "ASC", 307 | "policy": "default", 308 | "refId": "D", 309 | "resultFormat": "time_series", 310 | "select": [ 311 | [ 312 | { 313 | "params": [ 314 | "usage_idle" 315 | ], 316 | "type": "field" 317 | }, 318 | { 319 | "params": [], 320 | "type": "distinct" 321 | }, 322 | { 323 | "params": [ 324 | "*-1+100" 325 | ], 326 | "type": "math" 327 | } 328 | ] 329 | ], 330 | "tags": [ 331 | { 332 | "key": "cpu", 333 | "operator": "=", 334 | "value": "cpu-total" 335 | }, 336 | { 337 | "condition": "AND", 338 | "key": "host", 339 | "operator": "=", 340 | "value": "gluster10tb04" 341 | } 342 | ] 343 | }, 344 | { 345 | "alias": "Gluster10TB05", 346 | "dsType": "influxdb", 347 | "groupBy": [ 348 | { 349 | "params": [ 350 | "$__interval" 351 | ], 352 | "type": "time" 353 | }, 354 | { 355 | "params": [ 356 | "null" 357 | ], 358 | "type": "fill" 359 | } 360 | ], 361 | "measurement": "cpu", 362 | "orderByTime": "ASC", 363 | "policy": "default", 364 | "refId": "E", 365 | "resultFormat": "time_series", 366 | "select": [ 367 | [ 368 | { 369 | "params": [ 370 | "usage_idle" 371 | ], 372 | "type": "field" 373 | }, 374 | { 375 | "params": [], 376 | "type": "distinct" 377 | }, 378 | { 379 | "params": [ 380 | "*-1+100" 381 | ], 382 | "type": "math" 383 | } 384 | ] 385 | ], 386 | "tags": [ 387 | { 388 | "key": "cpu", 389 | "operator": "=", 390 | "value": "cpu-total" 391 | }, 392 | { 393 | "condition": "AND", 394 | "key": "host", 395 | "operator": "=", 396 | "value": "gluster10tb04" 397 | } 398 | ] 399 | }, 400 | { 401 | "alias": "Gluster10TB06", 402 | "dsType": "influxdb", 403 | "groupBy": [ 404 | { 405 | "params": [ 406 | "$__interval" 407 | ], 408 | "type": "time" 409 | }, 410 | { 411 | "params": [ 412 | "null" 413 | ], 414 | "type": "fill" 415 | } 416 | ], 417 | "measurement": "cpu", 418 | "orderByTime": "ASC", 419 | "policy": "default", 420 | "refId": "F", 421 | "resultFormat": "time_series", 422 | "select": [ 423 | [ 424 | { 425 | "params": [ 426 | "usage_idle" 427 | ], 428 | "type": "field" 429 | }, 430 | { 431 | "params": [], 432 | "type": "distinct" 433 | }, 434 | { 435 | "params": [ 436 | "*-1+100" 437 | ], 438 | "type": "math" 439 | } 440 | ] 441 | ], 442 | "tags": [ 443 | { 444 | "key": "cpu", 445 | "operator": "=", 446 | "value": "cpu-total" 447 | }, 448 | { 449 | "condition": "AND", 450 | "key": "host", 451 | "operator": "=", 452 | "value": "gluster10tb06" 453 | } 454 | ] 455 | }, 456 | { 457 | "alias": "Gluster10TB07", 458 | "dsType": "influxdb", 459 | "groupBy": [ 460 | { 461 | "params": [ 462 | "$__interval" 463 | ], 464 | "type": "time" 465 | }, 466 | { 467 | "params": [ 468 | "null" 469 | ], 470 | "type": "fill" 471 | } 472 | ], 473 | "measurement": "cpu", 474 | "orderByTime": "ASC", 475 | "policy": "default", 476 | "refId": "G", 477 | "resultFormat": "time_series", 478 | "select": [ 479 | [ 480 | { 481 | "params": [ 482 | "usage_idle" 483 | ], 484 | "type": "field" 485 | }, 486 | { 487 | "params": [], 488 | "type": "distinct" 489 | }, 490 | { 491 | "params": [ 492 | "*-1+100" 493 | ], 494 | "type": "math" 495 | } 496 | ] 497 | ], 498 | "tags": [ 499 | { 500 | "key": "cpu", 501 | "operator": "=", 502 | "value": "cpu-total" 503 | }, 504 | { 505 | "condition": "AND", 506 | "key": "host", 507 | "operator": "=", 508 | "value": "gluster10tb07" 509 | } 510 | ] 511 | }, 512 | { 513 | "alias": "Gluster10TB08", 514 | "dsType": "influxdb", 515 | "groupBy": [ 516 | { 517 | "params": [ 518 | "$__interval" 519 | ], 520 | "type": "time" 521 | }, 522 | { 523 | "params": [ 524 | "null" 525 | ], 526 | "type": "fill" 527 | } 528 | ], 529 | "measurement": "cpu", 530 | "orderByTime": "ASC", 531 | "policy": "default", 532 | "refId": "H", 533 | "resultFormat": "time_series", 534 | "select": [ 535 | [ 536 | { 537 | "params": [ 538 | "usage_idle" 539 | ], 540 | "type": "field" 541 | }, 542 | { 543 | "params": [], 544 | "type": "distinct" 545 | }, 546 | { 547 | "params": [ 548 | "*-1+100" 549 | ], 550 | "type": "math" 551 | } 552 | ] 553 | ], 554 | "tags": [ 555 | { 556 | "key": "cpu", 557 | "operator": "=", 558 | "value": "cpu-total" 559 | }, 560 | { 561 | "condition": "AND", 562 | "key": "host", 563 | "operator": "=", 564 | "value": "gluster10tb08" 565 | } 566 | ] 567 | } 568 | ], 569 | "thresholds": [], 570 | "timeFrom": "30m", 571 | "timeRegions": [], 572 | "timeShift": null, 573 | "title": "CPU Total", 574 | "tooltip": { 575 | "shared": true, 576 | "sort": 2, 577 | "value_type": "individual" 578 | }, 579 | "type": "graph", 580 | "xaxis": { 581 | "buckets": null, 582 | "mode": "time", 583 | "name": null, 584 | "show": true, 585 | "values": [] 586 | }, 587 | "yaxes": [ 588 | { 589 | "decimals": null, 590 | "format": "percent", 591 | "label": "", 592 | "logBase": 1, 593 | "max": null, 594 | "min": null, 595 | "show": true 596 | }, 597 | { 598 | "format": "short", 599 | "label": null, 600 | "logBase": 1, 601 | "max": null, 602 | "min": null, 603 | "show": false 604 | } 605 | ], 606 | "yaxis": { 607 | "align": false, 608 | "alignLevel": null 609 | } 610 | }, 611 | { 612 | "aliasColors": {}, 613 | "bars": false, 614 | "dashLength": 10, 615 | "dashes": false, 616 | "datasource": "${DS_MYDB}", 617 | "fill": 0, 618 | "gridPos": { 619 | "h": 16, 620 | "w": 5, 621 | "x": 8, 622 | "y": 1 623 | }, 624 | "id": 83, 625 | "legend": { 626 | "alignAsTable": true, 627 | "avg": false, 628 | "current": true, 629 | "max": true, 630 | "min": false, 631 | "rightSide": false, 632 | "show": true, 633 | "sort": "current", 634 | "sortDesc": true, 635 | "total": false, 636 | "values": true 637 | }, 638 | "lines": true, 639 | "linewidth": 2, 640 | "links": [], 641 | "nullPointMode": "null as zero", 642 | "percentage": false, 643 | "pointradius": 5, 644 | "points": false, 645 | "renderer": "flot", 646 | "seriesOverrides": [], 647 | "spaceLength": 10, 648 | "stack": false, 649 | "steppedLine": false, 650 | "targets": [ 651 | { 652 | "alias": "gluster10tb01", 653 | "dsType": "influxdb", 654 | "groupBy": [ 655 | { 656 | "params": [ 657 | "$__interval" 658 | ], 659 | "type": "time" 660 | }, 661 | { 662 | "params": [ 663 | "null" 664 | ], 665 | "type": "fill" 666 | } 667 | ], 668 | "measurement": "hddtemp", 669 | "orderByTime": "ASC", 670 | "policy": "default", 671 | "refId": "A", 672 | "resultFormat": "time_series", 673 | "select": [ 674 | [ 675 | { 676 | "params": [ 677 | "temp" 678 | ], 679 | "type": "field" 680 | }, 681 | { 682 | "params": [], 683 | "type": "distinct" 684 | } 685 | ] 686 | ], 687 | "tags": [ 688 | { 689 | "key": "host", 690 | "operator": "=", 691 | "value": "gluster10tb01" 692 | } 693 | ] 694 | }, 695 | { 696 | "alias": "gluster10tb02", 697 | "dsType": "influxdb", 698 | "groupBy": [ 699 | { 700 | "params": [ 701 | "$__interval" 702 | ], 703 | "type": "time" 704 | }, 705 | { 706 | "params": [ 707 | "null" 708 | ], 709 | "type": "fill" 710 | } 711 | ], 712 | "measurement": "hddtemp", 713 | "orderByTime": "ASC", 714 | "policy": "default", 715 | "refId": "B", 716 | "resultFormat": "time_series", 717 | "select": [ 718 | [ 719 | { 720 | "params": [ 721 | "temp" 722 | ], 723 | "type": "field" 724 | }, 725 | { 726 | "params": [], 727 | "type": "distinct" 728 | } 729 | ] 730 | ], 731 | "tags": [ 732 | { 733 | "key": "host", 734 | "operator": "=", 735 | "value": "gluster10tb02" 736 | } 737 | ] 738 | }, 739 | { 740 | "alias": "gluster10tb03", 741 | "dsType": "influxdb", 742 | "groupBy": [ 743 | { 744 | "params": [ 745 | "$__interval" 746 | ], 747 | "type": "time" 748 | }, 749 | { 750 | "params": [ 751 | "null" 752 | ], 753 | "type": "fill" 754 | } 755 | ], 756 | "measurement": "hddtemp", 757 | "orderByTime": "ASC", 758 | "policy": "default", 759 | "refId": "C", 760 | "resultFormat": "time_series", 761 | "select": [ 762 | [ 763 | { 764 | "params": [ 765 | "temp" 766 | ], 767 | "type": "field" 768 | }, 769 | { 770 | "params": [], 771 | "type": "distinct" 772 | } 773 | ] 774 | ], 775 | "tags": [ 776 | { 777 | "key": "host", 778 | "operator": "=", 779 | "value": "gluster10tb03" 780 | } 781 | ] 782 | }, 783 | { 784 | "alias": "gluster10tb04", 785 | "dsType": "influxdb", 786 | "groupBy": [ 787 | { 788 | "params": [ 789 | "$__interval" 790 | ], 791 | "type": "time" 792 | }, 793 | { 794 | "params": [ 795 | "null" 796 | ], 797 | "type": "fill" 798 | } 799 | ], 800 | "measurement": "hddtemp", 801 | "orderByTime": "ASC", 802 | "policy": "default", 803 | "refId": "D", 804 | "resultFormat": "time_series", 805 | "select": [ 806 | [ 807 | { 808 | "params": [ 809 | "temp" 810 | ], 811 | "type": "field" 812 | }, 813 | { 814 | "params": [], 815 | "type": "distinct" 816 | } 817 | ] 818 | ], 819 | "tags": [ 820 | { 821 | "key": "host", 822 | "operator": "=", 823 | "value": "gluster10tb04" 824 | } 825 | ] 826 | }, 827 | { 828 | "alias": "gluster10tb05", 829 | "dsType": "influxdb", 830 | "groupBy": [ 831 | { 832 | "params": [ 833 | "$__interval" 834 | ], 835 | "type": "time" 836 | }, 837 | { 838 | "params": [ 839 | "null" 840 | ], 841 | "type": "fill" 842 | } 843 | ], 844 | "measurement": "hddtemp", 845 | "orderByTime": "ASC", 846 | "policy": "default", 847 | "refId": "E", 848 | "resultFormat": "time_series", 849 | "select": [ 850 | [ 851 | { 852 | "params": [ 853 | "temp" 854 | ], 855 | "type": "field" 856 | }, 857 | { 858 | "params": [], 859 | "type": "distinct" 860 | } 861 | ] 862 | ], 863 | "tags": [ 864 | { 865 | "key": "host", 866 | "operator": "=", 867 | "value": "gluster10tb05" 868 | } 869 | ] 870 | }, 871 | { 872 | "alias": "gluster10tb06", 873 | "dsType": "influxdb", 874 | "groupBy": [ 875 | { 876 | "params": [ 877 | "$__interval" 878 | ], 879 | "type": "time" 880 | }, 881 | { 882 | "params": [ 883 | "null" 884 | ], 885 | "type": "fill" 886 | } 887 | ], 888 | "measurement": "hddtemp", 889 | "orderByTime": "ASC", 890 | "policy": "default", 891 | "refId": "F", 892 | "resultFormat": "time_series", 893 | "select": [ 894 | [ 895 | { 896 | "params": [ 897 | "temp" 898 | ], 899 | "type": "field" 900 | }, 901 | { 902 | "params": [], 903 | "type": "distinct" 904 | } 905 | ] 906 | ], 907 | "tags": [ 908 | { 909 | "key": "host", 910 | "operator": "=", 911 | "value": "gluster10tb06" 912 | } 913 | ] 914 | }, 915 | { 916 | "alias": "gluster10tb07", 917 | "dsType": "influxdb", 918 | "groupBy": [ 919 | { 920 | "params": [ 921 | "$__interval" 922 | ], 923 | "type": "time" 924 | }, 925 | { 926 | "params": [ 927 | "null" 928 | ], 929 | "type": "fill" 930 | } 931 | ], 932 | "measurement": "hddtemp", 933 | "orderByTime": "ASC", 934 | "policy": "default", 935 | "refId": "G", 936 | "resultFormat": "time_series", 937 | "select": [ 938 | [ 939 | { 940 | "params": [ 941 | "temp" 942 | ], 943 | "type": "field" 944 | }, 945 | { 946 | "params": [], 947 | "type": "distinct" 948 | } 949 | ] 950 | ], 951 | "tags": [ 952 | { 953 | "key": "host", 954 | "operator": "=", 955 | "value": "gluster10tb07" 956 | } 957 | ] 958 | }, 959 | { 960 | "alias": "gluster10tb08", 961 | "dsType": "influxdb", 962 | "groupBy": [ 963 | { 964 | "params": [ 965 | "$__interval" 966 | ], 967 | "type": "time" 968 | }, 969 | { 970 | "params": [ 971 | "null" 972 | ], 973 | "type": "fill" 974 | } 975 | ], 976 | "measurement": "hddtemp", 977 | "orderByTime": "ASC", 978 | "policy": "default", 979 | "refId": "H", 980 | "resultFormat": "time_series", 981 | "select": [ 982 | [ 983 | { 984 | "params": [ 985 | "temp" 986 | ], 987 | "type": "field" 988 | }, 989 | { 990 | "params": [], 991 | "type": "distinct" 992 | } 993 | ] 994 | ], 995 | "tags": [ 996 | { 997 | "key": "host", 998 | "operator": "=", 999 | "value": "gluster10tb08" 1000 | } 1001 | ] 1002 | } 1003 | ], 1004 | "thresholds": [], 1005 | "timeFrom": null, 1006 | "timeRegions": [], 1007 | "timeShift": null, 1008 | "title": "Gluster - Drive Temperatures", 1009 | "tooltip": { 1010 | "shared": true, 1011 | "sort": 0, 1012 | "value_type": "individual" 1013 | }, 1014 | "type": "graph", 1015 | "xaxis": { 1016 | "buckets": null, 1017 | "mode": "time", 1018 | "name": null, 1019 | "show": true, 1020 | "values": [] 1021 | }, 1022 | "yaxes": [ 1023 | { 1024 | "format": "celsius", 1025 | "label": null, 1026 | "logBase": 1, 1027 | "max": null, 1028 | "min": "0", 1029 | "show": true 1030 | }, 1031 | { 1032 | "format": "short", 1033 | "label": null, 1034 | "logBase": 1, 1035 | "max": null, 1036 | "min": null, 1037 | "show": false 1038 | } 1039 | ], 1040 | "yaxis": { 1041 | "align": false, 1042 | "alignLevel": null 1043 | } 1044 | }, 1045 | { 1046 | "columns": [], 1047 | "datasource": "${DS_MYDB}", 1048 | "fontSize": "100%", 1049 | "gridPos": { 1050 | "h": 8, 1051 | "w": 5, 1052 | "x": 13, 1053 | "y": 1 1054 | }, 1055 | "hideTimeOverride": false, 1056 | "id": 85, 1057 | "links": [], 1058 | "pageSize": null, 1059 | "scroll": true, 1060 | "showHeader": true, 1061 | "sort": { 1062 | "col": 0, 1063 | "desc": false 1064 | }, 1065 | "styles": [ 1066 | { 1067 | "alias": "Host", 1068 | "colorMode": "value", 1069 | "colors": [ 1070 | "#6ed0e0", 1071 | "rgba(237, 129, 40, 0.89)", 1072 | "#052b51" 1073 | ], 1074 | "dateFormat": "YYYY-MM-DD HH:mm:ss", 1075 | "decimals": 2, 1076 | "link": false, 1077 | "mappingType": 1, 1078 | "pattern": "host", 1079 | "preserveFormat": false, 1080 | "rangeMaps": [ 1081 | { 1082 | "from": "", 1083 | "text": "", 1084 | "to": "" 1085 | } 1086 | ], 1087 | "sanitize": false, 1088 | "thresholds": [ 1089 | "" 1090 | ], 1091 | "type": "string", 1092 | "unit": "short", 1093 | "valueMaps": [] 1094 | }, 1095 | { 1096 | "alias": "", 1097 | "colorMode": null, 1098 | "colors": [ 1099 | "rgba(245, 54, 54, 0.9)", 1100 | "rgba(237, 129, 40, 0.89)", 1101 | "rgba(50, 172, 45, 0.97)" 1102 | ], 1103 | "dateFormat": "YYYY-MM-DD HH:mm:ss", 1104 | "decimals": 2, 1105 | "mappingType": 1, 1106 | "pattern": "Time", 1107 | "thresholds": [], 1108 | "type": "hidden", 1109 | "unit": "short" 1110 | }, 1111 | { 1112 | "alias": "", 1113 | "colorMode": null, 1114 | "colors": [ 1115 | "rgba(245, 54, 54, 0.9)", 1116 | "rgba(237, 129, 40, 0.89)", 1117 | "rgba(50, 172, 45, 0.97)" 1118 | ], 1119 | "dateFormat": "YYYY-MM-DD HH:mm:ss", 1120 | "decimals": 2, 1121 | "mappingType": 1, 1122 | "pattern": "", 1123 | "thresholds": [], 1124 | "type": "number", 1125 | "unit": "short" 1126 | }, 1127 | { 1128 | "alias": "", 1129 | "colorMode": null, 1130 | "colors": [ 1131 | "rgba(50, 172, 45, 0.97)", 1132 | "rgba(237, 129, 40, 0.89)", 1133 | "rgba(245, 54, 54, 0.9)" 1134 | ], 1135 | "decimals": 2, 1136 | "link": false, 1137 | "pattern": "/.*/", 1138 | "thresholds": [ 1139 | "" 1140 | ], 1141 | "type": "number", 1142 | "unit": "decbytes" 1143 | } 1144 | ], 1145 | "targets": [ 1146 | { 1147 | "alias": "Disk 1", 1148 | "dsType": "influxdb", 1149 | "groupBy": [ 1150 | { 1151 | "params": [ 1152 | "host" 1153 | ], 1154 | "type": "tag" 1155 | } 1156 | ], 1157 | "measurement": "disk", 1158 | "orderByTime": "ASC", 1159 | "policy": "default", 1160 | "query": "SELECT last(\"free\") AS \"Free\", last(\"used\") AS \"Used\", last(\"total\") AS \"Total\" FROM \"disk\" WHERE (\"path\" = '/rootfs/mnt/user') AND $timeFilter GROUP BY \"path\"", 1161 | "rawQuery": false, 1162 | "refId": "B", 1163 | "resultFormat": "table", 1164 | "select": [ 1165 | [ 1166 | { 1167 | "params": [ 1168 | "free" 1169 | ], 1170 | "type": "field" 1171 | }, 1172 | { 1173 | "params": [], 1174 | "type": "last" 1175 | }, 1176 | { 1177 | "params": [ 1178 | "Free" 1179 | ], 1180 | "type": "alias" 1181 | } 1182 | ], 1183 | [ 1184 | { 1185 | "params": [ 1186 | "used" 1187 | ], 1188 | "type": "field" 1189 | }, 1190 | { 1191 | "params": [], 1192 | "type": "last" 1193 | }, 1194 | { 1195 | "params": [ 1196 | "Used" 1197 | ], 1198 | "type": "alias" 1199 | } 1200 | ], 1201 | [ 1202 | { 1203 | "params": [ 1204 | "total" 1205 | ], 1206 | "type": "field" 1207 | }, 1208 | { 1209 | "params": [], 1210 | "type": "last" 1211 | }, 1212 | { 1213 | "params": [ 1214 | "Total" 1215 | ], 1216 | "type": "alias" 1217 | } 1218 | ] 1219 | ], 1220 | "tags": [ 1221 | { 1222 | "key": "path", 1223 | "operator": "=", 1224 | "value": "/gluster" 1225 | }, 1226 | { 1227 | "condition": "AND", 1228 | "key": "host", 1229 | "operator": "=", 1230 | "value": "gluster10tb01" 1231 | } 1232 | ] 1233 | }, 1234 | { 1235 | "alias": "Disk 1", 1236 | "dsType": "influxdb", 1237 | "groupBy": [ 1238 | { 1239 | "params": [ 1240 | "host" 1241 | ], 1242 | "type": "tag" 1243 | } 1244 | ], 1245 | "measurement": "disk", 1246 | "orderByTime": "ASC", 1247 | "policy": "default", 1248 | "query": "SELECT last(\"free\") AS \"Free\", last(\"used\") AS \"Used\", last(\"total\") AS \"Total\" FROM \"disk\" WHERE (\"path\" = '/rootfs/mnt/Disk1') AND $timeFilter GROUP BY \"path\"", 1249 | "rawQuery": false, 1250 | "refId": "N", 1251 | "resultFormat": "table", 1252 | "select": [ 1253 | [ 1254 | { 1255 | "params": [ 1256 | "free" 1257 | ], 1258 | "type": "field" 1259 | }, 1260 | { 1261 | "params": [], 1262 | "type": "last" 1263 | }, 1264 | { 1265 | "params": [ 1266 | "Free" 1267 | ], 1268 | "type": "alias" 1269 | } 1270 | ], 1271 | [ 1272 | { 1273 | "params": [ 1274 | "used" 1275 | ], 1276 | "type": "field" 1277 | }, 1278 | { 1279 | "params": [], 1280 | "type": "last" 1281 | }, 1282 | { 1283 | "params": [ 1284 | "Used" 1285 | ], 1286 | "type": "alias" 1287 | } 1288 | ], 1289 | [ 1290 | { 1291 | "params": [ 1292 | "total" 1293 | ], 1294 | "type": "field" 1295 | }, 1296 | { 1297 | "params": [], 1298 | "type": "last" 1299 | }, 1300 | { 1301 | "params": [ 1302 | "Total" 1303 | ], 1304 | "type": "alias" 1305 | } 1306 | ] 1307 | ], 1308 | "tags": [ 1309 | { 1310 | "key": "path", 1311 | "operator": "=", 1312 | "value": "/gluster" 1313 | }, 1314 | { 1315 | "condition": "AND", 1316 | "key": "host", 1317 | "operator": "=", 1318 | "value": "gluster10tb02" 1319 | } 1320 | ] 1321 | }, 1322 | { 1323 | "alias": "Disk 1", 1324 | "dsType": "influxdb", 1325 | "groupBy": [ 1326 | { 1327 | "params": [ 1328 | "host" 1329 | ], 1330 | "type": "tag" 1331 | } 1332 | ], 1333 | "measurement": "disk", 1334 | "orderByTime": "ASC", 1335 | "policy": "default", 1336 | "refId": "C", 1337 | "resultFormat": "table", 1338 | "select": [ 1339 | [ 1340 | { 1341 | "params": [ 1342 | "free" 1343 | ], 1344 | "type": "field" 1345 | }, 1346 | { 1347 | "params": [], 1348 | "type": "last" 1349 | }, 1350 | { 1351 | "params": [ 1352 | "Free" 1353 | ], 1354 | "type": "alias" 1355 | } 1356 | ], 1357 | [ 1358 | { 1359 | "params": [ 1360 | "used" 1361 | ], 1362 | "type": "field" 1363 | }, 1364 | { 1365 | "params": [], 1366 | "type": "last" 1367 | }, 1368 | { 1369 | "params": [ 1370 | "Used" 1371 | ], 1372 | "type": "alias" 1373 | } 1374 | ], 1375 | [ 1376 | { 1377 | "params": [ 1378 | "total" 1379 | ], 1380 | "type": "field" 1381 | }, 1382 | { 1383 | "params": [], 1384 | "type": "last" 1385 | }, 1386 | { 1387 | "params": [ 1388 | "Total" 1389 | ], 1390 | "type": "alias" 1391 | } 1392 | ] 1393 | ], 1394 | "tags": [ 1395 | { 1396 | "key": "path", 1397 | "operator": "=", 1398 | "value": "/gluster" 1399 | }, 1400 | { 1401 | "condition": "AND", 1402 | "key": "host", 1403 | "operator": "=", 1404 | "value": "gluster10tb03" 1405 | } 1406 | ] 1407 | }, 1408 | { 1409 | "alias": "Disk 1", 1410 | "dsType": "influxdb", 1411 | "groupBy": [ 1412 | { 1413 | "params": [ 1414 | "host" 1415 | ], 1416 | "type": "tag" 1417 | } 1418 | ], 1419 | "measurement": "disk", 1420 | "orderByTime": "ASC", 1421 | "policy": "default", 1422 | "refId": "D", 1423 | "resultFormat": "table", 1424 | "select": [ 1425 | [ 1426 | { 1427 | "params": [ 1428 | "free" 1429 | ], 1430 | "type": "field" 1431 | }, 1432 | { 1433 | "params": [], 1434 | "type": "last" 1435 | }, 1436 | { 1437 | "params": [ 1438 | "Free" 1439 | ], 1440 | "type": "alias" 1441 | } 1442 | ], 1443 | [ 1444 | { 1445 | "params": [ 1446 | "used" 1447 | ], 1448 | "type": "field" 1449 | }, 1450 | { 1451 | "params": [], 1452 | "type": "last" 1453 | }, 1454 | { 1455 | "params": [ 1456 | "Used" 1457 | ], 1458 | "type": "alias" 1459 | } 1460 | ], 1461 | [ 1462 | { 1463 | "params": [ 1464 | "total" 1465 | ], 1466 | "type": "field" 1467 | }, 1468 | { 1469 | "params": [], 1470 | "type": "last" 1471 | }, 1472 | { 1473 | "params": [ 1474 | "Total" 1475 | ], 1476 | "type": "alias" 1477 | } 1478 | ] 1479 | ], 1480 | "tags": [ 1481 | { 1482 | "key": "path", 1483 | "operator": "=", 1484 | "value": "/gluster" 1485 | }, 1486 | { 1487 | "condition": "AND", 1488 | "key": "host", 1489 | "operator": "=", 1490 | "value": "gluster10tb04" 1491 | } 1492 | ] 1493 | }, 1494 | { 1495 | "alias": "Disk 1", 1496 | "dsType": "influxdb", 1497 | "groupBy": [ 1498 | { 1499 | "params": [ 1500 | "host" 1501 | ], 1502 | "type": "tag" 1503 | } 1504 | ], 1505 | "measurement": "disk", 1506 | "orderByTime": "ASC", 1507 | "policy": "default", 1508 | "refId": "E", 1509 | "resultFormat": "table", 1510 | "select": [ 1511 | [ 1512 | { 1513 | "params": [ 1514 | "free" 1515 | ], 1516 | "type": "field" 1517 | }, 1518 | { 1519 | "params": [], 1520 | "type": "last" 1521 | }, 1522 | { 1523 | "params": [ 1524 | "Free" 1525 | ], 1526 | "type": "alias" 1527 | } 1528 | ], 1529 | [ 1530 | { 1531 | "params": [ 1532 | "used" 1533 | ], 1534 | "type": "field" 1535 | }, 1536 | { 1537 | "params": [], 1538 | "type": "last" 1539 | }, 1540 | { 1541 | "params": [ 1542 | "Used" 1543 | ], 1544 | "type": "alias" 1545 | } 1546 | ], 1547 | [ 1548 | { 1549 | "params": [ 1550 | "total" 1551 | ], 1552 | "type": "field" 1553 | }, 1554 | { 1555 | "params": [], 1556 | "type": "last" 1557 | }, 1558 | { 1559 | "params": [ 1560 | "Total" 1561 | ], 1562 | "type": "alias" 1563 | } 1564 | ] 1565 | ], 1566 | "tags": [ 1567 | { 1568 | "key": "path", 1569 | "operator": "=", 1570 | "value": "/gluster" 1571 | }, 1572 | { 1573 | "condition": "AND", 1574 | "key": "host", 1575 | "operator": "=", 1576 | "value": "gluster10tb05" 1577 | } 1578 | ] 1579 | }, 1580 | { 1581 | "alias": "Disk 1", 1582 | "dsType": "influxdb", 1583 | "groupBy": [ 1584 | { 1585 | "params": [ 1586 | "host" 1587 | ], 1588 | "type": "tag" 1589 | } 1590 | ], 1591 | "measurement": "disk", 1592 | "orderByTime": "ASC", 1593 | "policy": "default", 1594 | "refId": "A", 1595 | "resultFormat": "table", 1596 | "select": [ 1597 | [ 1598 | { 1599 | "params": [ 1600 | "free" 1601 | ], 1602 | "type": "field" 1603 | }, 1604 | { 1605 | "params": [], 1606 | "type": "last" 1607 | }, 1608 | { 1609 | "params": [ 1610 | "Free" 1611 | ], 1612 | "type": "alias" 1613 | } 1614 | ], 1615 | [ 1616 | { 1617 | "params": [ 1618 | "used" 1619 | ], 1620 | "type": "field" 1621 | }, 1622 | { 1623 | "params": [], 1624 | "type": "last" 1625 | }, 1626 | { 1627 | "params": [ 1628 | "Used" 1629 | ], 1630 | "type": "alias" 1631 | } 1632 | ], 1633 | [ 1634 | { 1635 | "params": [ 1636 | "total" 1637 | ], 1638 | "type": "field" 1639 | }, 1640 | { 1641 | "params": [], 1642 | "type": "last" 1643 | }, 1644 | { 1645 | "params": [ 1646 | "Total" 1647 | ], 1648 | "type": "alias" 1649 | } 1650 | ] 1651 | ], 1652 | "tags": [ 1653 | { 1654 | "key": "path", 1655 | "operator": "=", 1656 | "value": "/gluster" 1657 | }, 1658 | { 1659 | "condition": "AND", 1660 | "key": "host", 1661 | "operator": "=", 1662 | "value": "gluster10tb06" 1663 | } 1664 | ] 1665 | }, 1666 | { 1667 | "alias": "Disk 1", 1668 | "dsType": "influxdb", 1669 | "groupBy": [ 1670 | { 1671 | "params": [ 1672 | "host" 1673 | ], 1674 | "type": "tag" 1675 | } 1676 | ], 1677 | "measurement": "disk", 1678 | "orderByTime": "ASC", 1679 | "policy": "default", 1680 | "refId": "F", 1681 | "resultFormat": "table", 1682 | "select": [ 1683 | [ 1684 | { 1685 | "params": [ 1686 | "free" 1687 | ], 1688 | "type": "field" 1689 | }, 1690 | { 1691 | "params": [], 1692 | "type": "last" 1693 | }, 1694 | { 1695 | "params": [ 1696 | "Free" 1697 | ], 1698 | "type": "alias" 1699 | } 1700 | ], 1701 | [ 1702 | { 1703 | "params": [ 1704 | "used" 1705 | ], 1706 | "type": "field" 1707 | }, 1708 | { 1709 | "params": [], 1710 | "type": "last" 1711 | }, 1712 | { 1713 | "params": [ 1714 | "Used" 1715 | ], 1716 | "type": "alias" 1717 | } 1718 | ], 1719 | [ 1720 | { 1721 | "params": [ 1722 | "total" 1723 | ], 1724 | "type": "field" 1725 | }, 1726 | { 1727 | "params": [], 1728 | "type": "last" 1729 | }, 1730 | { 1731 | "params": [ 1732 | "Total" 1733 | ], 1734 | "type": "alias" 1735 | } 1736 | ] 1737 | ], 1738 | "tags": [ 1739 | { 1740 | "key": "path", 1741 | "operator": "=", 1742 | "value": "/gluster" 1743 | }, 1744 | { 1745 | "condition": "AND", 1746 | "key": "host", 1747 | "operator": "=", 1748 | "value": "gluster10tb07" 1749 | } 1750 | ] 1751 | }, 1752 | { 1753 | "alias": "Disk 1", 1754 | "dsType": "influxdb", 1755 | "groupBy": [ 1756 | { 1757 | "params": [ 1758 | "host" 1759 | ], 1760 | "type": "tag" 1761 | } 1762 | ], 1763 | "measurement": "disk", 1764 | "orderByTime": "ASC", 1765 | "policy": "default", 1766 | "refId": "G", 1767 | "resultFormat": "table", 1768 | "select": [ 1769 | [ 1770 | { 1771 | "params": [ 1772 | "free" 1773 | ], 1774 | "type": "field" 1775 | }, 1776 | { 1777 | "params": [], 1778 | "type": "last" 1779 | }, 1780 | { 1781 | "params": [ 1782 | "Free" 1783 | ], 1784 | "type": "alias" 1785 | } 1786 | ], 1787 | [ 1788 | { 1789 | "params": [ 1790 | "used" 1791 | ], 1792 | "type": "field" 1793 | }, 1794 | { 1795 | "params": [], 1796 | "type": "last" 1797 | }, 1798 | { 1799 | "params": [ 1800 | "Used" 1801 | ], 1802 | "type": "alias" 1803 | } 1804 | ], 1805 | [ 1806 | { 1807 | "params": [ 1808 | "total" 1809 | ], 1810 | "type": "field" 1811 | }, 1812 | { 1813 | "params": [], 1814 | "type": "last" 1815 | }, 1816 | { 1817 | "params": [ 1818 | "Total" 1819 | ], 1820 | "type": "alias" 1821 | } 1822 | ] 1823 | ], 1824 | "tags": [ 1825 | { 1826 | "key": "path", 1827 | "operator": "=", 1828 | "value": "/gluster" 1829 | }, 1830 | { 1831 | "condition": "AND", 1832 | "key": "host", 1833 | "operator": "=", 1834 | "value": "gluster10tb08" 1835 | } 1836 | ] 1837 | } 1838 | ], 1839 | "title": "$host - Storage Consumption", 1840 | "transform": "table", 1841 | "type": "table" 1842 | }, 1843 | { 1844 | "collapsed": false, 1845 | "gridPos": { 1846 | "h": 1, 1847 | "w": 24, 1848 | "x": 0, 1849 | "y": 17 1850 | }, 1851 | "id": 17, 1852 | "panels": [], 1853 | "repeat": null, 1854 | "title": "Network", 1855 | "type": "row" 1856 | }, 1857 | { 1858 | "aliasColors": { 1859 | "Received": "#70dbed", 1860 | "Sent": "#bf1b00" 1861 | }, 1862 | "bars": false, 1863 | "dashLength": 10, 1864 | "dashes": false, 1865 | "datasource": "${DS_MYDB}", 1866 | "decimals": 2, 1867 | "fill": 2, 1868 | "gridPos": { 1869 | "h": 6, 1870 | "w": 7, 1871 | "x": 0, 1872 | "y": 18 1873 | }, 1874 | "id": 10, 1875 | "legend": { 1876 | "alignAsTable": true, 1877 | "avg": true, 1878 | "current": true, 1879 | "hideEmpty": false, 1880 | "hideZero": false, 1881 | "max": true, 1882 | "min": false, 1883 | "rightSide": false, 1884 | "show": true, 1885 | "total": false, 1886 | "values": true 1887 | }, 1888 | "lines": true, 1889 | "linewidth": 1, 1890 | "links": [], 1891 | "nullPointMode": "null", 1892 | "percentage": false, 1893 | "pointradius": 5, 1894 | "points": false, 1895 | "renderer": "flot", 1896 | "seriesOverrides": [], 1897 | "spaceLength": 10, 1898 | "stack": false, 1899 | "steppedLine": false, 1900 | "targets": [ 1901 | { 1902 | "alias": "Received", 1903 | "dsType": "influxdb", 1904 | "groupBy": [ 1905 | { 1906 | "params": [ 1907 | "$__interval" 1908 | ], 1909 | "type": "time" 1910 | }, 1911 | { 1912 | "params": [ 1913 | "null" 1914 | ], 1915 | "type": "fill" 1916 | } 1917 | ], 1918 | "measurement": "net", 1919 | "orderByTime": "ASC", 1920 | "policy": "default", 1921 | "refId": "A", 1922 | "resultFormat": "time_series", 1923 | "select": [ 1924 | [ 1925 | { 1926 | "params": [ 1927 | "bytes_recv" 1928 | ], 1929 | "type": "field" 1930 | }, 1931 | { 1932 | "params": [], 1933 | "type": "mean" 1934 | }, 1935 | { 1936 | "params": [ 1937 | "1s" 1938 | ], 1939 | "type": "non_negative_derivative" 1940 | }, 1941 | { 1942 | "params": [ 1943 | "*8" 1944 | ], 1945 | "type": "math" 1946 | } 1947 | ] 1948 | ], 1949 | "tags": [ 1950 | { 1951 | "key": "host", 1952 | "operator": "=", 1953 | "value": "gluster10tb01" 1954 | }, 1955 | { 1956 | "condition": "AND", 1957 | "key": "interface", 1958 | "operator": "=", 1959 | "value": "eth0" 1960 | } 1961 | ] 1962 | }, 1963 | { 1964 | "alias": "Sent", 1965 | "dsType": "influxdb", 1966 | "groupBy": [ 1967 | { 1968 | "params": [ 1969 | "$__interval" 1970 | ], 1971 | "type": "time" 1972 | }, 1973 | { 1974 | "params": [ 1975 | "null" 1976 | ], 1977 | "type": "fill" 1978 | } 1979 | ], 1980 | "measurement": "net", 1981 | "orderByTime": "ASC", 1982 | "policy": "default", 1983 | "refId": "B", 1984 | "resultFormat": "time_series", 1985 | "select": [ 1986 | [ 1987 | { 1988 | "params": [ 1989 | "bytes_sent" 1990 | ], 1991 | "type": "field" 1992 | }, 1993 | { 1994 | "params": [], 1995 | "type": "mean" 1996 | }, 1997 | { 1998 | "params": [ 1999 | "1s" 2000 | ], 2001 | "type": "non_negative_derivative" 2002 | }, 2003 | { 2004 | "params": [ 2005 | "*8" 2006 | ], 2007 | "type": "math" 2008 | } 2009 | ] 2010 | ], 2011 | "tags": [ 2012 | { 2013 | "key": "host", 2014 | "operator": "=", 2015 | "value": "gluster10tb01" 2016 | }, 2017 | { 2018 | "condition": "AND", 2019 | "key": "interface", 2020 | "operator": "=", 2021 | "value": "eth0" 2022 | } 2023 | ] 2024 | } 2025 | ], 2026 | "thresholds": [], 2027 | "timeFrom": "30m", 2028 | "timeRegions": [], 2029 | "timeShift": null, 2030 | "title": "Gluster10TB01 Network", 2031 | "tooltip": { 2032 | "shared": true, 2033 | "sort": 2, 2034 | "value_type": "individual" 2035 | }, 2036 | "type": "graph", 2037 | "xaxis": { 2038 | "buckets": null, 2039 | "mode": "time", 2040 | "name": null, 2041 | "show": true, 2042 | "values": [] 2043 | }, 2044 | "yaxes": [ 2045 | { 2046 | "decimals": null, 2047 | "format": "bps", 2048 | "label": null, 2049 | "logBase": 1, 2050 | "max": null, 2051 | "min": "0", 2052 | "show": true 2053 | }, 2054 | { 2055 | "format": "Bps", 2056 | "label": null, 2057 | "logBase": 1, 2058 | "max": null, 2059 | "min": null, 2060 | "show": true 2061 | } 2062 | ], 2063 | "yaxis": { 2064 | "align": false, 2065 | "alignLevel": null 2066 | } 2067 | }, 2068 | { 2069 | "aliasColors": { 2070 | "Received": "#70dbed", 2071 | "Sent": "#bf1b00" 2072 | }, 2073 | "bars": false, 2074 | "dashLength": 10, 2075 | "dashes": false, 2076 | "datasource": "${DS_MYDB}", 2077 | "decimals": 2, 2078 | "fill": 2, 2079 | "gridPos": { 2080 | "h": 6, 2081 | "w": 7, 2082 | "x": 7, 2083 | "y": 18 2084 | }, 2085 | "id": 89, 2086 | "legend": { 2087 | "alignAsTable": true, 2088 | "avg": true, 2089 | "current": true, 2090 | "hideEmpty": false, 2091 | "hideZero": false, 2092 | "max": true, 2093 | "min": false, 2094 | "rightSide": false, 2095 | "show": true, 2096 | "total": false, 2097 | "values": true 2098 | }, 2099 | "lines": true, 2100 | "linewidth": 1, 2101 | "links": [], 2102 | "nullPointMode": "null", 2103 | "percentage": false, 2104 | "pointradius": 5, 2105 | "points": false, 2106 | "renderer": "flot", 2107 | "seriesOverrides": [], 2108 | "spaceLength": 10, 2109 | "stack": false, 2110 | "steppedLine": false, 2111 | "targets": [ 2112 | { 2113 | "alias": "Received", 2114 | "dsType": "influxdb", 2115 | "groupBy": [ 2116 | { 2117 | "params": [ 2118 | "$__interval" 2119 | ], 2120 | "type": "time" 2121 | }, 2122 | { 2123 | "params": [ 2124 | "null" 2125 | ], 2126 | "type": "fill" 2127 | } 2128 | ], 2129 | "measurement": "net", 2130 | "orderByTime": "ASC", 2131 | "policy": "default", 2132 | "refId": "A", 2133 | "resultFormat": "time_series", 2134 | "select": [ 2135 | [ 2136 | { 2137 | "params": [ 2138 | "bytes_recv" 2139 | ], 2140 | "type": "field" 2141 | }, 2142 | { 2143 | "params": [], 2144 | "type": "mean" 2145 | }, 2146 | { 2147 | "params": [ 2148 | "1s" 2149 | ], 2150 | "type": "non_negative_derivative" 2151 | }, 2152 | { 2153 | "params": [ 2154 | "*8" 2155 | ], 2156 | "type": "math" 2157 | } 2158 | ] 2159 | ], 2160 | "tags": [ 2161 | { 2162 | "key": "host", 2163 | "operator": "=", 2164 | "value": "gluster10tb02" 2165 | }, 2166 | { 2167 | "condition": "AND", 2168 | "key": "interface", 2169 | "operator": "=", 2170 | "value": "eth0" 2171 | } 2172 | ] 2173 | }, 2174 | { 2175 | "alias": "Sent", 2176 | "dsType": "influxdb", 2177 | "groupBy": [ 2178 | { 2179 | "params": [ 2180 | "$__interval" 2181 | ], 2182 | "type": "time" 2183 | }, 2184 | { 2185 | "params": [ 2186 | "null" 2187 | ], 2188 | "type": "fill" 2189 | } 2190 | ], 2191 | "measurement": "net", 2192 | "orderByTime": "ASC", 2193 | "policy": "default", 2194 | "refId": "B", 2195 | "resultFormat": "time_series", 2196 | "select": [ 2197 | [ 2198 | { 2199 | "params": [ 2200 | "bytes_sent" 2201 | ], 2202 | "type": "field" 2203 | }, 2204 | { 2205 | "params": [], 2206 | "type": "mean" 2207 | }, 2208 | { 2209 | "params": [ 2210 | "1s" 2211 | ], 2212 | "type": "non_negative_derivative" 2213 | }, 2214 | { 2215 | "params": [ 2216 | "*8" 2217 | ], 2218 | "type": "math" 2219 | } 2220 | ] 2221 | ], 2222 | "tags": [ 2223 | { 2224 | "key": "host", 2225 | "operator": "=", 2226 | "value": "gluster10tb02" 2227 | }, 2228 | { 2229 | "condition": "AND", 2230 | "key": "interface", 2231 | "operator": "=", 2232 | "value": "eth0" 2233 | } 2234 | ] 2235 | } 2236 | ], 2237 | "thresholds": [], 2238 | "timeFrom": "30m", 2239 | "timeRegions": [], 2240 | "timeShift": null, 2241 | "title": "Gluster10TB02 Network", 2242 | "tooltip": { 2243 | "shared": true, 2244 | "sort": 2, 2245 | "value_type": "individual" 2246 | }, 2247 | "type": "graph", 2248 | "xaxis": { 2249 | "buckets": null, 2250 | "mode": "time", 2251 | "name": null, 2252 | "show": true, 2253 | "values": [] 2254 | }, 2255 | "yaxes": [ 2256 | { 2257 | "decimals": null, 2258 | "format": "bps", 2259 | "label": null, 2260 | "logBase": 1, 2261 | "max": null, 2262 | "min": "0", 2263 | "show": true 2264 | }, 2265 | { 2266 | "format": "Bps", 2267 | "label": null, 2268 | "logBase": 1, 2269 | "max": null, 2270 | "min": null, 2271 | "show": true 2272 | } 2273 | ], 2274 | "yaxis": { 2275 | "align": false, 2276 | "alignLevel": null 2277 | } 2278 | }, 2279 | { 2280 | "aliasColors": { 2281 | "Received": "#70dbed", 2282 | "Sent": "#bf1b00" 2283 | }, 2284 | "bars": false, 2285 | "dashLength": 10, 2286 | "dashes": false, 2287 | "datasource": "${DS_MYDB}", 2288 | "decimals": 2, 2289 | "fill": 2, 2290 | "gridPos": { 2291 | "h": 6, 2292 | "w": 7, 2293 | "x": 14, 2294 | "y": 18 2295 | }, 2296 | "id": 90, 2297 | "legend": { 2298 | "alignAsTable": true, 2299 | "avg": true, 2300 | "current": true, 2301 | "hideEmpty": false, 2302 | "hideZero": false, 2303 | "max": true, 2304 | "min": false, 2305 | "rightSide": false, 2306 | "show": true, 2307 | "total": false, 2308 | "values": true 2309 | }, 2310 | "lines": true, 2311 | "linewidth": 1, 2312 | "links": [], 2313 | "nullPointMode": "null", 2314 | "percentage": false, 2315 | "pointradius": 5, 2316 | "points": false, 2317 | "renderer": "flot", 2318 | "seriesOverrides": [], 2319 | "spaceLength": 10, 2320 | "stack": false, 2321 | "steppedLine": false, 2322 | "targets": [ 2323 | { 2324 | "alias": "Received", 2325 | "dsType": "influxdb", 2326 | "groupBy": [ 2327 | { 2328 | "params": [ 2329 | "$__interval" 2330 | ], 2331 | "type": "time" 2332 | }, 2333 | { 2334 | "params": [ 2335 | "null" 2336 | ], 2337 | "type": "fill" 2338 | } 2339 | ], 2340 | "measurement": "net", 2341 | "orderByTime": "ASC", 2342 | "policy": "default", 2343 | "refId": "A", 2344 | "resultFormat": "time_series", 2345 | "select": [ 2346 | [ 2347 | { 2348 | "params": [ 2349 | "bytes_recv" 2350 | ], 2351 | "type": "field" 2352 | }, 2353 | { 2354 | "params": [], 2355 | "type": "mean" 2356 | }, 2357 | { 2358 | "params": [ 2359 | "1s" 2360 | ], 2361 | "type": "non_negative_derivative" 2362 | }, 2363 | { 2364 | "params": [ 2365 | "*8" 2366 | ], 2367 | "type": "math" 2368 | } 2369 | ] 2370 | ], 2371 | "tags": [ 2372 | { 2373 | "key": "host", 2374 | "operator": "=", 2375 | "value": "gluster10tb03" 2376 | }, 2377 | { 2378 | "condition": "AND", 2379 | "key": "interface", 2380 | "operator": "=", 2381 | "value": "eth0" 2382 | } 2383 | ] 2384 | }, 2385 | { 2386 | "alias": "Sent", 2387 | "dsType": "influxdb", 2388 | "groupBy": [ 2389 | { 2390 | "params": [ 2391 | "$__interval" 2392 | ], 2393 | "type": "time" 2394 | }, 2395 | { 2396 | "params": [ 2397 | "null" 2398 | ], 2399 | "type": "fill" 2400 | } 2401 | ], 2402 | "measurement": "net", 2403 | "orderByTime": "ASC", 2404 | "policy": "default", 2405 | "refId": "B", 2406 | "resultFormat": "time_series", 2407 | "select": [ 2408 | [ 2409 | { 2410 | "params": [ 2411 | "bytes_sent" 2412 | ], 2413 | "type": "field" 2414 | }, 2415 | { 2416 | "params": [], 2417 | "type": "mean" 2418 | }, 2419 | { 2420 | "params": [ 2421 | "1s" 2422 | ], 2423 | "type": "non_negative_derivative" 2424 | }, 2425 | { 2426 | "params": [ 2427 | "*8" 2428 | ], 2429 | "type": "math" 2430 | } 2431 | ] 2432 | ], 2433 | "tags": [ 2434 | { 2435 | "key": "host", 2436 | "operator": "=", 2437 | "value": "gluster10tb03" 2438 | }, 2439 | { 2440 | "condition": "AND", 2441 | "key": "interface", 2442 | "operator": "=", 2443 | "value": "eth0" 2444 | } 2445 | ] 2446 | } 2447 | ], 2448 | "thresholds": [], 2449 | "timeFrom": "30m", 2450 | "timeRegions": [], 2451 | "timeShift": null, 2452 | "title": "Gluster10TB03 Network", 2453 | "tooltip": { 2454 | "shared": true, 2455 | "sort": 2, 2456 | "value_type": "individual" 2457 | }, 2458 | "type": "graph", 2459 | "xaxis": { 2460 | "buckets": null, 2461 | "mode": "time", 2462 | "name": null, 2463 | "show": true, 2464 | "values": [] 2465 | }, 2466 | "yaxes": [ 2467 | { 2468 | "decimals": null, 2469 | "format": "bps", 2470 | "label": null, 2471 | "logBase": 1, 2472 | "max": null, 2473 | "min": "0", 2474 | "show": true 2475 | }, 2476 | { 2477 | "format": "Bps", 2478 | "label": null, 2479 | "logBase": 1, 2480 | "max": null, 2481 | "min": null, 2482 | "show": true 2483 | } 2484 | ], 2485 | "yaxis": { 2486 | "align": false, 2487 | "alignLevel": null 2488 | } 2489 | }, 2490 | { 2491 | "aliasColors": { 2492 | "Received": "#70dbed", 2493 | "Sent": "#bf1b00" 2494 | }, 2495 | "bars": false, 2496 | "dashLength": 10, 2497 | "dashes": false, 2498 | "datasource": "${DS_MYDB}", 2499 | "decimals": 2, 2500 | "fill": 2, 2501 | "gridPos": { 2502 | "h": 6, 2503 | "w": 7, 2504 | "x": 0, 2505 | "y": 24 2506 | }, 2507 | "id": 91, 2508 | "legend": { 2509 | "alignAsTable": true, 2510 | "avg": true, 2511 | "current": true, 2512 | "hideEmpty": false, 2513 | "hideZero": false, 2514 | "max": true, 2515 | "min": false, 2516 | "rightSide": false, 2517 | "show": true, 2518 | "total": false, 2519 | "values": true 2520 | }, 2521 | "lines": true, 2522 | "linewidth": 1, 2523 | "links": [], 2524 | "nullPointMode": "null", 2525 | "percentage": false, 2526 | "pointradius": 5, 2527 | "points": false, 2528 | "renderer": "flot", 2529 | "seriesOverrides": [], 2530 | "spaceLength": 10, 2531 | "stack": false, 2532 | "steppedLine": false, 2533 | "targets": [ 2534 | { 2535 | "alias": "Received", 2536 | "dsType": "influxdb", 2537 | "groupBy": [ 2538 | { 2539 | "params": [ 2540 | "$__interval" 2541 | ], 2542 | "type": "time" 2543 | }, 2544 | { 2545 | "params": [ 2546 | "null" 2547 | ], 2548 | "type": "fill" 2549 | } 2550 | ], 2551 | "measurement": "net", 2552 | "orderByTime": "ASC", 2553 | "policy": "default", 2554 | "refId": "A", 2555 | "resultFormat": "time_series", 2556 | "select": [ 2557 | [ 2558 | { 2559 | "params": [ 2560 | "bytes_recv" 2561 | ], 2562 | "type": "field" 2563 | }, 2564 | { 2565 | "params": [], 2566 | "type": "mean" 2567 | }, 2568 | { 2569 | "params": [ 2570 | "1s" 2571 | ], 2572 | "type": "non_negative_derivative" 2573 | }, 2574 | { 2575 | "params": [ 2576 | "*8" 2577 | ], 2578 | "type": "math" 2579 | } 2580 | ] 2581 | ], 2582 | "tags": [ 2583 | { 2584 | "key": "host", 2585 | "operator": "=", 2586 | "value": "gluster10tb04" 2587 | }, 2588 | { 2589 | "condition": "AND", 2590 | "key": "interface", 2591 | "operator": "=", 2592 | "value": "eth0" 2593 | } 2594 | ] 2595 | }, 2596 | { 2597 | "alias": "Sent", 2598 | "dsType": "influxdb", 2599 | "groupBy": [ 2600 | { 2601 | "params": [ 2602 | "$__interval" 2603 | ], 2604 | "type": "time" 2605 | }, 2606 | { 2607 | "params": [ 2608 | "null" 2609 | ], 2610 | "type": "fill" 2611 | } 2612 | ], 2613 | "measurement": "net", 2614 | "orderByTime": "ASC", 2615 | "policy": "default", 2616 | "refId": "B", 2617 | "resultFormat": "time_series", 2618 | "select": [ 2619 | [ 2620 | { 2621 | "params": [ 2622 | "bytes_sent" 2623 | ], 2624 | "type": "field" 2625 | }, 2626 | { 2627 | "params": [], 2628 | "type": "mean" 2629 | }, 2630 | { 2631 | "params": [ 2632 | "1s" 2633 | ], 2634 | "type": "non_negative_derivative" 2635 | }, 2636 | { 2637 | "params": [ 2638 | "*8" 2639 | ], 2640 | "type": "math" 2641 | } 2642 | ] 2643 | ], 2644 | "tags": [ 2645 | { 2646 | "key": "host", 2647 | "operator": "=", 2648 | "value": "gluster10tb04" 2649 | }, 2650 | { 2651 | "condition": "AND", 2652 | "key": "interface", 2653 | "operator": "=", 2654 | "value": "eth0" 2655 | } 2656 | ] 2657 | } 2658 | ], 2659 | "thresholds": [], 2660 | "timeFrom": "30m", 2661 | "timeRegions": [], 2662 | "timeShift": null, 2663 | "title": "Gluster10TB04 Network", 2664 | "tooltip": { 2665 | "shared": true, 2666 | "sort": 2, 2667 | "value_type": "individual" 2668 | }, 2669 | "type": "graph", 2670 | "xaxis": { 2671 | "buckets": null, 2672 | "mode": "time", 2673 | "name": null, 2674 | "show": true, 2675 | "values": [] 2676 | }, 2677 | "yaxes": [ 2678 | { 2679 | "decimals": null, 2680 | "format": "bps", 2681 | "label": null, 2682 | "logBase": 1, 2683 | "max": null, 2684 | "min": "0", 2685 | "show": true 2686 | }, 2687 | { 2688 | "format": "Bps", 2689 | "label": null, 2690 | "logBase": 1, 2691 | "max": null, 2692 | "min": null, 2693 | "show": true 2694 | } 2695 | ], 2696 | "yaxis": { 2697 | "align": false, 2698 | "alignLevel": null 2699 | } 2700 | }, 2701 | { 2702 | "aliasColors": { 2703 | "Received": "#70dbed", 2704 | "Sent": "#bf1b00" 2705 | }, 2706 | "bars": false, 2707 | "dashLength": 10, 2708 | "dashes": false, 2709 | "datasource": "${DS_MYDB}", 2710 | "decimals": 2, 2711 | "fill": 2, 2712 | "gridPos": { 2713 | "h": 6, 2714 | "w": 7, 2715 | "x": 7, 2716 | "y": 24 2717 | }, 2718 | "id": 92, 2719 | "legend": { 2720 | "alignAsTable": true, 2721 | "avg": true, 2722 | "current": true, 2723 | "hideEmpty": false, 2724 | "hideZero": false, 2725 | "max": true, 2726 | "min": false, 2727 | "rightSide": false, 2728 | "show": true, 2729 | "total": false, 2730 | "values": true 2731 | }, 2732 | "lines": true, 2733 | "linewidth": 1, 2734 | "links": [], 2735 | "nullPointMode": "null", 2736 | "percentage": false, 2737 | "pointradius": 5, 2738 | "points": false, 2739 | "renderer": "flot", 2740 | "seriesOverrides": [], 2741 | "spaceLength": 10, 2742 | "stack": false, 2743 | "steppedLine": false, 2744 | "targets": [ 2745 | { 2746 | "alias": "Received", 2747 | "dsType": "influxdb", 2748 | "groupBy": [ 2749 | { 2750 | "params": [ 2751 | "$__interval" 2752 | ], 2753 | "type": "time" 2754 | }, 2755 | { 2756 | "params": [ 2757 | "null" 2758 | ], 2759 | "type": "fill" 2760 | } 2761 | ], 2762 | "measurement": "net", 2763 | "orderByTime": "ASC", 2764 | "policy": "default", 2765 | "refId": "A", 2766 | "resultFormat": "time_series", 2767 | "select": [ 2768 | [ 2769 | { 2770 | "params": [ 2771 | "bytes_recv" 2772 | ], 2773 | "type": "field" 2774 | }, 2775 | { 2776 | "params": [], 2777 | "type": "mean" 2778 | }, 2779 | { 2780 | "params": [ 2781 | "1s" 2782 | ], 2783 | "type": "non_negative_derivative" 2784 | }, 2785 | { 2786 | "params": [ 2787 | "*8" 2788 | ], 2789 | "type": "math" 2790 | } 2791 | ] 2792 | ], 2793 | "tags": [ 2794 | { 2795 | "key": "host", 2796 | "operator": "=", 2797 | "value": "gluster10tb05" 2798 | }, 2799 | { 2800 | "condition": "AND", 2801 | "key": "interface", 2802 | "operator": "=", 2803 | "value": "eth0" 2804 | } 2805 | ] 2806 | }, 2807 | { 2808 | "alias": "Sent", 2809 | "dsType": "influxdb", 2810 | "groupBy": [ 2811 | { 2812 | "params": [ 2813 | "$__interval" 2814 | ], 2815 | "type": "time" 2816 | }, 2817 | { 2818 | "params": [ 2819 | "null" 2820 | ], 2821 | "type": "fill" 2822 | } 2823 | ], 2824 | "measurement": "net", 2825 | "orderByTime": "ASC", 2826 | "policy": "default", 2827 | "refId": "B", 2828 | "resultFormat": "time_series", 2829 | "select": [ 2830 | [ 2831 | { 2832 | "params": [ 2833 | "bytes_sent" 2834 | ], 2835 | "type": "field" 2836 | }, 2837 | { 2838 | "params": [], 2839 | "type": "mean" 2840 | }, 2841 | { 2842 | "params": [ 2843 | "1s" 2844 | ], 2845 | "type": "non_negative_derivative" 2846 | }, 2847 | { 2848 | "params": [ 2849 | "*8" 2850 | ], 2851 | "type": "math" 2852 | } 2853 | ] 2854 | ], 2855 | "tags": [ 2856 | { 2857 | "key": "host", 2858 | "operator": "=", 2859 | "value": "gluster10tb05" 2860 | }, 2861 | { 2862 | "condition": "AND", 2863 | "key": "interface", 2864 | "operator": "=", 2865 | "value": "eth0" 2866 | } 2867 | ] 2868 | } 2869 | ], 2870 | "thresholds": [], 2871 | "timeFrom": "30m", 2872 | "timeRegions": [], 2873 | "timeShift": null, 2874 | "title": "Gluster10TB05 Network", 2875 | "tooltip": { 2876 | "shared": true, 2877 | "sort": 2, 2878 | "value_type": "individual" 2879 | }, 2880 | "type": "graph", 2881 | "xaxis": { 2882 | "buckets": null, 2883 | "mode": "time", 2884 | "name": null, 2885 | "show": true, 2886 | "values": [] 2887 | }, 2888 | "yaxes": [ 2889 | { 2890 | "decimals": null, 2891 | "format": "bps", 2892 | "label": null, 2893 | "logBase": 1, 2894 | "max": null, 2895 | "min": "0", 2896 | "show": true 2897 | }, 2898 | { 2899 | "format": "Bps", 2900 | "label": null, 2901 | "logBase": 1, 2902 | "max": null, 2903 | "min": null, 2904 | "show": true 2905 | } 2906 | ], 2907 | "yaxis": { 2908 | "align": false, 2909 | "alignLevel": null 2910 | } 2911 | }, 2912 | { 2913 | "aliasColors": { 2914 | "Received": "#70dbed", 2915 | "Sent": "#bf1b00" 2916 | }, 2917 | "bars": false, 2918 | "dashLength": 10, 2919 | "dashes": false, 2920 | "datasource": "${DS_MYDB}", 2921 | "decimals": 2, 2922 | "fill": 2, 2923 | "gridPos": { 2924 | "h": 6, 2925 | "w": 7, 2926 | "x": 14, 2927 | "y": 24 2928 | }, 2929 | "id": 97, 2930 | "legend": { 2931 | "alignAsTable": true, 2932 | "avg": true, 2933 | "current": true, 2934 | "hideEmpty": false, 2935 | "hideZero": false, 2936 | "max": true, 2937 | "min": false, 2938 | "rightSide": false, 2939 | "show": true, 2940 | "total": false, 2941 | "values": true 2942 | }, 2943 | "lines": true, 2944 | "linewidth": 1, 2945 | "links": [], 2946 | "nullPointMode": "null", 2947 | "percentage": false, 2948 | "pointradius": 5, 2949 | "points": false, 2950 | "renderer": "flot", 2951 | "seriesOverrides": [], 2952 | "spaceLength": 10, 2953 | "stack": false, 2954 | "steppedLine": false, 2955 | "targets": [ 2956 | { 2957 | "alias": "Received", 2958 | "dsType": "influxdb", 2959 | "groupBy": [ 2960 | { 2961 | "params": [ 2962 | "$__interval" 2963 | ], 2964 | "type": "time" 2965 | }, 2966 | { 2967 | "params": [ 2968 | "null" 2969 | ], 2970 | "type": "fill" 2971 | } 2972 | ], 2973 | "measurement": "net", 2974 | "orderByTime": "ASC", 2975 | "policy": "default", 2976 | "refId": "A", 2977 | "resultFormat": "time_series", 2978 | "select": [ 2979 | [ 2980 | { 2981 | "params": [ 2982 | "bytes_recv" 2983 | ], 2984 | "type": "field" 2985 | }, 2986 | { 2987 | "params": [], 2988 | "type": "mean" 2989 | }, 2990 | { 2991 | "params": [ 2992 | "1s" 2993 | ], 2994 | "type": "non_negative_derivative" 2995 | }, 2996 | { 2997 | "params": [ 2998 | "*8" 2999 | ], 3000 | "type": "math" 3001 | } 3002 | ] 3003 | ], 3004 | "tags": [ 3005 | { 3006 | "key": "host", 3007 | "operator": "=", 3008 | "value": "gluster10tb06" 3009 | }, 3010 | { 3011 | "condition": "AND", 3012 | "key": "interface", 3013 | "operator": "=", 3014 | "value": "eth0" 3015 | } 3016 | ] 3017 | }, 3018 | { 3019 | "alias": "Sent", 3020 | "dsType": "influxdb", 3021 | "groupBy": [ 3022 | { 3023 | "params": [ 3024 | "$__interval" 3025 | ], 3026 | "type": "time" 3027 | }, 3028 | { 3029 | "params": [ 3030 | "null" 3031 | ], 3032 | "type": "fill" 3033 | } 3034 | ], 3035 | "measurement": "net", 3036 | "orderByTime": "ASC", 3037 | "policy": "default", 3038 | "refId": "B", 3039 | "resultFormat": "time_series", 3040 | "select": [ 3041 | [ 3042 | { 3043 | "params": [ 3044 | "bytes_sent" 3045 | ], 3046 | "type": "field" 3047 | }, 3048 | { 3049 | "params": [], 3050 | "type": "mean" 3051 | }, 3052 | { 3053 | "params": [ 3054 | "1s" 3055 | ], 3056 | "type": "non_negative_derivative" 3057 | }, 3058 | { 3059 | "params": [ 3060 | "*8" 3061 | ], 3062 | "type": "math" 3063 | } 3064 | ] 3065 | ], 3066 | "tags": [ 3067 | { 3068 | "key": "host", 3069 | "operator": "=", 3070 | "value": "gluster10tb06" 3071 | }, 3072 | { 3073 | "condition": "AND", 3074 | "key": "interface", 3075 | "operator": "=", 3076 | "value": "eth0" 3077 | } 3078 | ] 3079 | } 3080 | ], 3081 | "thresholds": [], 3082 | "timeFrom": "30m", 3083 | "timeRegions": [], 3084 | "timeShift": null, 3085 | "title": "Gluster10TB06 Network", 3086 | "tooltip": { 3087 | "shared": true, 3088 | "sort": 2, 3089 | "value_type": "individual" 3090 | }, 3091 | "type": "graph", 3092 | "xaxis": { 3093 | "buckets": null, 3094 | "mode": "time", 3095 | "name": null, 3096 | "show": true, 3097 | "values": [] 3098 | }, 3099 | "yaxes": [ 3100 | { 3101 | "decimals": null, 3102 | "format": "bps", 3103 | "label": null, 3104 | "logBase": 1, 3105 | "max": null, 3106 | "min": "0", 3107 | "show": true 3108 | }, 3109 | { 3110 | "format": "Bps", 3111 | "label": null, 3112 | "logBase": 1, 3113 | "max": null, 3114 | "min": null, 3115 | "show": true 3116 | } 3117 | ], 3118 | "yaxis": { 3119 | "align": false, 3120 | "alignLevel": null 3121 | } 3122 | }, 3123 | { 3124 | "aliasColors": { 3125 | "Received": "#70dbed", 3126 | "Sent": "#bf1b00" 3127 | }, 3128 | "bars": false, 3129 | "dashLength": 10, 3130 | "dashes": false, 3131 | "datasource": "${DS_MYDB}", 3132 | "decimals": 2, 3133 | "fill": 2, 3134 | "gridPos": { 3135 | "h": 6, 3136 | "w": 7, 3137 | "x": 0, 3138 | "y": 30 3139 | }, 3140 | "id": 99, 3141 | "legend": { 3142 | "alignAsTable": true, 3143 | "avg": true, 3144 | "current": true, 3145 | "hideEmpty": false, 3146 | "hideZero": false, 3147 | "max": true, 3148 | "min": false, 3149 | "rightSide": false, 3150 | "show": true, 3151 | "total": false, 3152 | "values": true 3153 | }, 3154 | "lines": true, 3155 | "linewidth": 1, 3156 | "links": [], 3157 | "nullPointMode": "null", 3158 | "percentage": false, 3159 | "pointradius": 5, 3160 | "points": false, 3161 | "renderer": "flot", 3162 | "seriesOverrides": [], 3163 | "spaceLength": 10, 3164 | "stack": false, 3165 | "steppedLine": false, 3166 | "targets": [ 3167 | { 3168 | "alias": "Received", 3169 | "dsType": "influxdb", 3170 | "groupBy": [ 3171 | { 3172 | "params": [ 3173 | "$__interval" 3174 | ], 3175 | "type": "time" 3176 | }, 3177 | { 3178 | "params": [ 3179 | "null" 3180 | ], 3181 | "type": "fill" 3182 | } 3183 | ], 3184 | "measurement": "net", 3185 | "orderByTime": "ASC", 3186 | "policy": "default", 3187 | "refId": "A", 3188 | "resultFormat": "time_series", 3189 | "select": [ 3190 | [ 3191 | { 3192 | "params": [ 3193 | "bytes_recv" 3194 | ], 3195 | "type": "field" 3196 | }, 3197 | { 3198 | "params": [], 3199 | "type": "mean" 3200 | }, 3201 | { 3202 | "params": [ 3203 | "1s" 3204 | ], 3205 | "type": "non_negative_derivative" 3206 | }, 3207 | { 3208 | "params": [ 3209 | "*8" 3210 | ], 3211 | "type": "math" 3212 | } 3213 | ] 3214 | ], 3215 | "tags": [ 3216 | { 3217 | "key": "host", 3218 | "operator": "=", 3219 | "value": "gluster10tb07" 3220 | }, 3221 | { 3222 | "condition": "AND", 3223 | "key": "interface", 3224 | "operator": "=", 3225 | "value": "eth0" 3226 | } 3227 | ] 3228 | }, 3229 | { 3230 | "alias": "Sent", 3231 | "dsType": "influxdb", 3232 | "groupBy": [ 3233 | { 3234 | "params": [ 3235 | "$__interval" 3236 | ], 3237 | "type": "time" 3238 | }, 3239 | { 3240 | "params": [ 3241 | "null" 3242 | ], 3243 | "type": "fill" 3244 | } 3245 | ], 3246 | "measurement": "net", 3247 | "orderByTime": "ASC", 3248 | "policy": "default", 3249 | "refId": "B", 3250 | "resultFormat": "time_series", 3251 | "select": [ 3252 | [ 3253 | { 3254 | "params": [ 3255 | "bytes_sent" 3256 | ], 3257 | "type": "field" 3258 | }, 3259 | { 3260 | "params": [], 3261 | "type": "mean" 3262 | }, 3263 | { 3264 | "params": [ 3265 | "1s" 3266 | ], 3267 | "type": "non_negative_derivative" 3268 | }, 3269 | { 3270 | "params": [ 3271 | "*8" 3272 | ], 3273 | "type": "math" 3274 | } 3275 | ] 3276 | ], 3277 | "tags": [ 3278 | { 3279 | "key": "host", 3280 | "operator": "=", 3281 | "value": "gluster10tb07" 3282 | }, 3283 | { 3284 | "condition": "AND", 3285 | "key": "interface", 3286 | "operator": "=", 3287 | "value": "eth0" 3288 | } 3289 | ] 3290 | } 3291 | ], 3292 | "thresholds": [], 3293 | "timeFrom": "30m", 3294 | "timeRegions": [], 3295 | "timeShift": null, 3296 | "title": "Gluster10TB07 Network", 3297 | "tooltip": { 3298 | "shared": true, 3299 | "sort": 2, 3300 | "value_type": "individual" 3301 | }, 3302 | "type": "graph", 3303 | "xaxis": { 3304 | "buckets": null, 3305 | "mode": "time", 3306 | "name": null, 3307 | "show": true, 3308 | "values": [] 3309 | }, 3310 | "yaxes": [ 3311 | { 3312 | "decimals": null, 3313 | "format": "bps", 3314 | "label": null, 3315 | "logBase": 1, 3316 | "max": null, 3317 | "min": "0", 3318 | "show": true 3319 | }, 3320 | { 3321 | "format": "Bps", 3322 | "label": null, 3323 | "logBase": 1, 3324 | "max": null, 3325 | "min": null, 3326 | "show": true 3327 | } 3328 | ], 3329 | "yaxis": { 3330 | "align": false, 3331 | "alignLevel": null 3332 | } 3333 | }, 3334 | { 3335 | "aliasColors": { 3336 | "Received": "#70dbed", 3337 | "Sent": "#bf1b00" 3338 | }, 3339 | "bars": false, 3340 | "dashLength": 10, 3341 | "dashes": false, 3342 | "datasource": "${DS_MYDB}", 3343 | "decimals": 2, 3344 | "fill": 2, 3345 | "gridPos": { 3346 | "h": 6, 3347 | "w": 7, 3348 | "x": 7, 3349 | "y": 30 3350 | }, 3351 | "id": 100, 3352 | "legend": { 3353 | "alignAsTable": true, 3354 | "avg": true, 3355 | "current": true, 3356 | "hideEmpty": false, 3357 | "hideZero": false, 3358 | "max": true, 3359 | "min": false, 3360 | "rightSide": false, 3361 | "show": true, 3362 | "total": false, 3363 | "values": true 3364 | }, 3365 | "lines": true, 3366 | "linewidth": 1, 3367 | "links": [], 3368 | "nullPointMode": "null", 3369 | "percentage": false, 3370 | "pointradius": 5, 3371 | "points": false, 3372 | "renderer": "flot", 3373 | "seriesOverrides": [], 3374 | "spaceLength": 10, 3375 | "stack": false, 3376 | "steppedLine": false, 3377 | "targets": [ 3378 | { 3379 | "alias": "Received", 3380 | "dsType": "influxdb", 3381 | "groupBy": [ 3382 | { 3383 | "params": [ 3384 | "$__interval" 3385 | ], 3386 | "type": "time" 3387 | }, 3388 | { 3389 | "params": [ 3390 | "null" 3391 | ], 3392 | "type": "fill" 3393 | } 3394 | ], 3395 | "measurement": "net", 3396 | "orderByTime": "ASC", 3397 | "policy": "default", 3398 | "refId": "A", 3399 | "resultFormat": "time_series", 3400 | "select": [ 3401 | [ 3402 | { 3403 | "params": [ 3404 | "bytes_recv" 3405 | ], 3406 | "type": "field" 3407 | }, 3408 | { 3409 | "params": [], 3410 | "type": "mean" 3411 | }, 3412 | { 3413 | "params": [ 3414 | "1s" 3415 | ], 3416 | "type": "non_negative_derivative" 3417 | }, 3418 | { 3419 | "params": [ 3420 | "*8" 3421 | ], 3422 | "type": "math" 3423 | } 3424 | ] 3425 | ], 3426 | "tags": [ 3427 | { 3428 | "key": "host", 3429 | "operator": "=", 3430 | "value": "gluster10tb08" 3431 | }, 3432 | { 3433 | "condition": "AND", 3434 | "key": "interface", 3435 | "operator": "=", 3436 | "value": "eth0" 3437 | } 3438 | ] 3439 | }, 3440 | { 3441 | "alias": "Sent", 3442 | "dsType": "influxdb", 3443 | "groupBy": [ 3444 | { 3445 | "params": [ 3446 | "$__interval" 3447 | ], 3448 | "type": "time" 3449 | }, 3450 | { 3451 | "params": [ 3452 | "null" 3453 | ], 3454 | "type": "fill" 3455 | } 3456 | ], 3457 | "measurement": "net", 3458 | "orderByTime": "ASC", 3459 | "policy": "default", 3460 | "refId": "B", 3461 | "resultFormat": "time_series", 3462 | "select": [ 3463 | [ 3464 | { 3465 | "params": [ 3466 | "bytes_sent" 3467 | ], 3468 | "type": "field" 3469 | }, 3470 | { 3471 | "params": [], 3472 | "type": "mean" 3473 | }, 3474 | { 3475 | "params": [ 3476 | "1s" 3477 | ], 3478 | "type": "non_negative_derivative" 3479 | }, 3480 | { 3481 | "params": [ 3482 | "*8" 3483 | ], 3484 | "type": "math" 3485 | } 3486 | ] 3487 | ], 3488 | "tags": [ 3489 | { 3490 | "key": "host", 3491 | "operator": "=", 3492 | "value": "gluster10tb08" 3493 | }, 3494 | { 3495 | "condition": "AND", 3496 | "key": "interface", 3497 | "operator": "=", 3498 | "value": "eth0" 3499 | } 3500 | ] 3501 | } 3502 | ], 3503 | "thresholds": [], 3504 | "timeFrom": "30m", 3505 | "timeRegions": [], 3506 | "timeShift": null, 3507 | "title": "Gluster10TB08 Network", 3508 | "tooltip": { 3509 | "shared": true, 3510 | "sort": 2, 3511 | "value_type": "individual" 3512 | }, 3513 | "type": "graph", 3514 | "xaxis": { 3515 | "buckets": null, 3516 | "mode": "time", 3517 | "name": null, 3518 | "show": true, 3519 | "values": [] 3520 | }, 3521 | "yaxes": [ 3522 | { 3523 | "decimals": null, 3524 | "format": "bps", 3525 | "label": null, 3526 | "logBase": 1, 3527 | "max": null, 3528 | "min": "0", 3529 | "show": true 3530 | }, 3531 | { 3532 | "format": "Bps", 3533 | "label": null, 3534 | "logBase": 1, 3535 | "max": null, 3536 | "min": null, 3537 | "show": true 3538 | } 3539 | ], 3540 | "yaxis": { 3541 | "align": false, 3542 | "alignLevel": null 3543 | } 3544 | }, 3545 | { 3546 | "collapsed": false, 3547 | "gridPos": { 3548 | "h": 1, 3549 | "w": 24, 3550 | "x": 0, 3551 | "y": 36 3552 | }, 3553 | "id": 18, 3554 | "panels": [], 3555 | "repeat": null, 3556 | "title": "Disks", 3557 | "type": "row" 3558 | }, 3559 | { 3560 | "aliasColors": {}, 3561 | "bars": false, 3562 | "dashLength": 10, 3563 | "dashes": false, 3564 | "datasource": "${DS_MYDB}", 3565 | "decimals": 2, 3566 | "fill": 2, 3567 | "gridPos": { 3568 | "h": 6, 3569 | "w": 7, 3570 | "x": 0, 3571 | "y": 37 3572 | }, 3573 | "id": 87, 3574 | "legend": { 3575 | "alignAsTable": true, 3576 | "avg": false, 3577 | "current": true, 3578 | "max": false, 3579 | "min": false, 3580 | "rightSide": false, 3581 | "show": true, 3582 | "sort": "current", 3583 | "sortDesc": true, 3584 | "total": false, 3585 | "values": true 3586 | }, 3587 | "lines": true, 3588 | "linewidth": 1, 3589 | "links": [], 3590 | "nullPointMode": "connected", 3591 | "percentage": false, 3592 | "pointradius": 5, 3593 | "points": false, 3594 | "renderer": "flot", 3595 | "seriesOverrides": [], 3596 | "spaceLength": 10, 3597 | "stack": false, 3598 | "steppedLine": false, 3599 | "targets": [ 3600 | { 3601 | "alias": "$tag_host: $tag_name: $col", 3602 | "groupBy": [ 3603 | { 3604 | "params": [ 3605 | "$__interval" 3606 | ], 3607 | "type": "time" 3608 | }, 3609 | { 3610 | "params": [ 3611 | "null" 3612 | ], 3613 | "type": "fill" 3614 | } 3615 | ], 3616 | "orderByTime": "ASC", 3617 | "policy": "default", 3618 | "query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb01') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 3619 | "rawQuery": true, 3620 | "refId": "A", 3621 | "resultFormat": "time_series", 3622 | "select": [ 3623 | [ 3624 | { 3625 | "params": [ 3626 | "value" 3627 | ], 3628 | "type": "field" 3629 | }, 3630 | { 3631 | "params": [], 3632 | "type": "mean" 3633 | } 3634 | ] 3635 | ], 3636 | "tags": [] 3637 | }, 3638 | { 3639 | "alias": "$tag_host: $tag_name: $col", 3640 | "groupBy": [ 3641 | { 3642 | "params": [ 3643 | "$__interval" 3644 | ], 3645 | "type": "time" 3646 | }, 3647 | { 3648 | "params": [ 3649 | "null" 3650 | ], 3651 | "type": "fill" 3652 | } 3653 | ], 3654 | "orderByTime": "ASC", 3655 | "policy": "default", 3656 | "query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb01') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 3657 | "rawQuery": true, 3658 | "refId": "B", 3659 | "resultFormat": "time_series", 3660 | "select": [ 3661 | [ 3662 | { 3663 | "params": [ 3664 | "value" 3665 | ], 3666 | "type": "field" 3667 | }, 3668 | { 3669 | "params": [], 3670 | "type": "mean" 3671 | } 3672 | ] 3673 | ], 3674 | "tags": [] 3675 | } 3676 | ], 3677 | "thresholds": [], 3678 | "timeFrom": "30m", 3679 | "timeRegions": [], 3680 | "timeShift": null, 3681 | "title": "Gluster10TB01 - IO", 3682 | "tooltip": { 3683 | "shared": true, 3684 | "sort": 2, 3685 | "value_type": "individual" 3686 | }, 3687 | "type": "graph", 3688 | "xaxis": { 3689 | "buckets": null, 3690 | "mode": "time", 3691 | "name": null, 3692 | "show": true, 3693 | "values": [] 3694 | }, 3695 | "yaxes": [ 3696 | { 3697 | "decimals": null, 3698 | "format": "bytes", 3699 | "label": null, 3700 | "logBase": 1, 3701 | "max": null, 3702 | "min": null, 3703 | "show": true 3704 | }, 3705 | { 3706 | "format": "short", 3707 | "label": null, 3708 | "logBase": 1, 3709 | "max": null, 3710 | "min": null, 3711 | "show": false 3712 | } 3713 | ], 3714 | "yaxis": { 3715 | "align": false, 3716 | "alignLevel": null 3717 | } 3718 | }, 3719 | { 3720 | "aliasColors": {}, 3721 | "bars": false, 3722 | "dashLength": 10, 3723 | "dashes": false, 3724 | "datasource": "${DS_MYDB}", 3725 | "decimals": 2, 3726 | "fill": 2, 3727 | "gridPos": { 3728 | "h": 6, 3729 | "w": 7, 3730 | "x": 7, 3731 | "y": 37 3732 | }, 3733 | "id": 93, 3734 | "legend": { 3735 | "alignAsTable": true, 3736 | "avg": false, 3737 | "current": true, 3738 | "max": false, 3739 | "min": false, 3740 | "rightSide": false, 3741 | "show": true, 3742 | "sort": "current", 3743 | "sortDesc": true, 3744 | "total": false, 3745 | "values": true 3746 | }, 3747 | "lines": true, 3748 | "linewidth": 1, 3749 | "links": [], 3750 | "nullPointMode": "connected", 3751 | "percentage": false, 3752 | "pointradius": 5, 3753 | "points": false, 3754 | "renderer": "flot", 3755 | "seriesOverrides": [], 3756 | "spaceLength": 10, 3757 | "stack": false, 3758 | "steppedLine": false, 3759 | "targets": [ 3760 | { 3761 | "alias": "$tag_host: $tag_name: $col", 3762 | "groupBy": [ 3763 | { 3764 | "params": [ 3765 | "$__interval" 3766 | ], 3767 | "type": "time" 3768 | }, 3769 | { 3770 | "params": [ 3771 | "null" 3772 | ], 3773 | "type": "fill" 3774 | } 3775 | ], 3776 | "orderByTime": "ASC", 3777 | "policy": "default", 3778 | "query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb02') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 3779 | "rawQuery": true, 3780 | "refId": "A", 3781 | "resultFormat": "time_series", 3782 | "select": [ 3783 | [ 3784 | { 3785 | "params": [ 3786 | "value" 3787 | ], 3788 | "type": "field" 3789 | }, 3790 | { 3791 | "params": [], 3792 | "type": "mean" 3793 | } 3794 | ] 3795 | ], 3796 | "tags": [] 3797 | }, 3798 | { 3799 | "alias": "$tag_host: $tag_name: $col", 3800 | "groupBy": [ 3801 | { 3802 | "params": [ 3803 | "$__interval" 3804 | ], 3805 | "type": "time" 3806 | }, 3807 | { 3808 | "params": [ 3809 | "null" 3810 | ], 3811 | "type": "fill" 3812 | } 3813 | ], 3814 | "orderByTime": "ASC", 3815 | "policy": "default", 3816 | "query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb02') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 3817 | "rawQuery": true, 3818 | "refId": "B", 3819 | "resultFormat": "time_series", 3820 | "select": [ 3821 | [ 3822 | { 3823 | "params": [ 3824 | "value" 3825 | ], 3826 | "type": "field" 3827 | }, 3828 | { 3829 | "params": [], 3830 | "type": "mean" 3831 | } 3832 | ] 3833 | ], 3834 | "tags": [] 3835 | } 3836 | ], 3837 | "thresholds": [], 3838 | "timeFrom": "30m", 3839 | "timeRegions": [], 3840 | "timeShift": null, 3841 | "title": "Gluster10TB02 - IO", 3842 | "tooltip": { 3843 | "shared": true, 3844 | "sort": 2, 3845 | "value_type": "individual" 3846 | }, 3847 | "type": "graph", 3848 | "xaxis": { 3849 | "buckets": null, 3850 | "mode": "time", 3851 | "name": null, 3852 | "show": true, 3853 | "values": [] 3854 | }, 3855 | "yaxes": [ 3856 | { 3857 | "decimals": null, 3858 | "format": "bytes", 3859 | "label": null, 3860 | "logBase": 1, 3861 | "max": null, 3862 | "min": null, 3863 | "show": true 3864 | }, 3865 | { 3866 | "format": "short", 3867 | "label": null, 3868 | "logBase": 1, 3869 | "max": null, 3870 | "min": null, 3871 | "show": false 3872 | } 3873 | ], 3874 | "yaxis": { 3875 | "align": false, 3876 | "alignLevel": null 3877 | } 3878 | }, 3879 | { 3880 | "aliasColors": {}, 3881 | "bars": false, 3882 | "dashLength": 10, 3883 | "dashes": false, 3884 | "datasource": "${DS_MYDB}", 3885 | "decimals": 2, 3886 | "fill": 2, 3887 | "gridPos": { 3888 | "h": 6, 3889 | "w": 7, 3890 | "x": 14, 3891 | "y": 37 3892 | }, 3893 | "id": 94, 3894 | "legend": { 3895 | "alignAsTable": true, 3896 | "avg": false, 3897 | "current": true, 3898 | "max": false, 3899 | "min": false, 3900 | "rightSide": false, 3901 | "show": true, 3902 | "sort": "current", 3903 | "sortDesc": true, 3904 | "total": false, 3905 | "values": true 3906 | }, 3907 | "lines": true, 3908 | "linewidth": 1, 3909 | "links": [], 3910 | "nullPointMode": "connected", 3911 | "percentage": false, 3912 | "pointradius": 5, 3913 | "points": false, 3914 | "renderer": "flot", 3915 | "seriesOverrides": [], 3916 | "spaceLength": 10, 3917 | "stack": false, 3918 | "steppedLine": false, 3919 | "targets": [ 3920 | { 3921 | "alias": "$tag_host: $tag_name: $col", 3922 | "groupBy": [ 3923 | { 3924 | "params": [ 3925 | "$__interval" 3926 | ], 3927 | "type": "time" 3928 | }, 3929 | { 3930 | "params": [ 3931 | "null" 3932 | ], 3933 | "type": "fill" 3934 | } 3935 | ], 3936 | "orderByTime": "ASC", 3937 | "policy": "default", 3938 | "query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb03') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 3939 | "rawQuery": true, 3940 | "refId": "A", 3941 | "resultFormat": "time_series", 3942 | "select": [ 3943 | [ 3944 | { 3945 | "params": [ 3946 | "value" 3947 | ], 3948 | "type": "field" 3949 | }, 3950 | { 3951 | "params": [], 3952 | "type": "mean" 3953 | } 3954 | ] 3955 | ], 3956 | "tags": [] 3957 | }, 3958 | { 3959 | "alias": "$tag_host: $tag_name: $col", 3960 | "groupBy": [ 3961 | { 3962 | "params": [ 3963 | "$__interval" 3964 | ], 3965 | "type": "time" 3966 | }, 3967 | { 3968 | "params": [ 3969 | "null" 3970 | ], 3971 | "type": "fill" 3972 | } 3973 | ], 3974 | "orderByTime": "ASC", 3975 | "policy": "default", 3976 | "query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb03') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 3977 | "rawQuery": true, 3978 | "refId": "B", 3979 | "resultFormat": "time_series", 3980 | "select": [ 3981 | [ 3982 | { 3983 | "params": [ 3984 | "value" 3985 | ], 3986 | "type": "field" 3987 | }, 3988 | { 3989 | "params": [], 3990 | "type": "mean" 3991 | } 3992 | ] 3993 | ], 3994 | "tags": [] 3995 | } 3996 | ], 3997 | "thresholds": [], 3998 | "timeFrom": "30m", 3999 | "timeRegions": [], 4000 | "timeShift": null, 4001 | "title": "Gluster10TB03 - IO", 4002 | "tooltip": { 4003 | "shared": true, 4004 | "sort": 2, 4005 | "value_type": "individual" 4006 | }, 4007 | "type": "graph", 4008 | "xaxis": { 4009 | "buckets": null, 4010 | "mode": "time", 4011 | "name": null, 4012 | "show": true, 4013 | "values": [] 4014 | }, 4015 | "yaxes": [ 4016 | { 4017 | "decimals": null, 4018 | "format": "bytes", 4019 | "label": null, 4020 | "logBase": 1, 4021 | "max": null, 4022 | "min": null, 4023 | "show": true 4024 | }, 4025 | { 4026 | "format": "short", 4027 | "label": null, 4028 | "logBase": 1, 4029 | "max": null, 4030 | "min": null, 4031 | "show": false 4032 | } 4033 | ], 4034 | "yaxis": { 4035 | "align": false, 4036 | "alignLevel": null 4037 | } 4038 | }, 4039 | { 4040 | "aliasColors": {}, 4041 | "bars": false, 4042 | "dashLength": 10, 4043 | "dashes": false, 4044 | "datasource": "${DS_MYDB}", 4045 | "decimals": 2, 4046 | "fill": 2, 4047 | "gridPos": { 4048 | "h": 6, 4049 | "w": 7, 4050 | "x": 0, 4051 | "y": 43 4052 | }, 4053 | "id": 95, 4054 | "legend": { 4055 | "alignAsTable": true, 4056 | "avg": false, 4057 | "current": true, 4058 | "max": false, 4059 | "min": false, 4060 | "rightSide": false, 4061 | "show": true, 4062 | "sort": "current", 4063 | "sortDesc": true, 4064 | "total": false, 4065 | "values": true 4066 | }, 4067 | "lines": true, 4068 | "linewidth": 1, 4069 | "links": [], 4070 | "nullPointMode": "connected", 4071 | "percentage": false, 4072 | "pointradius": 5, 4073 | "points": false, 4074 | "renderer": "flot", 4075 | "seriesOverrides": [], 4076 | "spaceLength": 10, 4077 | "stack": false, 4078 | "steppedLine": false, 4079 | "targets": [ 4080 | { 4081 | "alias": "$tag_host: $tag_name: $col", 4082 | "groupBy": [ 4083 | { 4084 | "params": [ 4085 | "$__interval" 4086 | ], 4087 | "type": "time" 4088 | }, 4089 | { 4090 | "params": [ 4091 | "null" 4092 | ], 4093 | "type": "fill" 4094 | } 4095 | ], 4096 | "orderByTime": "ASC", 4097 | "policy": "default", 4098 | "query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb04') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 4099 | "rawQuery": true, 4100 | "refId": "A", 4101 | "resultFormat": "time_series", 4102 | "select": [ 4103 | [ 4104 | { 4105 | "params": [ 4106 | "value" 4107 | ], 4108 | "type": "field" 4109 | }, 4110 | { 4111 | "params": [], 4112 | "type": "mean" 4113 | } 4114 | ] 4115 | ], 4116 | "tags": [] 4117 | }, 4118 | { 4119 | "alias": "$tag_host: $tag_name: $col", 4120 | "groupBy": [ 4121 | { 4122 | "params": [ 4123 | "$__interval" 4124 | ], 4125 | "type": "time" 4126 | }, 4127 | { 4128 | "params": [ 4129 | "null" 4130 | ], 4131 | "type": "fill" 4132 | } 4133 | ], 4134 | "orderByTime": "ASC", 4135 | "policy": "default", 4136 | "query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb04') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 4137 | "rawQuery": true, 4138 | "refId": "B", 4139 | "resultFormat": "time_series", 4140 | "select": [ 4141 | [ 4142 | { 4143 | "params": [ 4144 | "value" 4145 | ], 4146 | "type": "field" 4147 | }, 4148 | { 4149 | "params": [], 4150 | "type": "mean" 4151 | } 4152 | ] 4153 | ], 4154 | "tags": [] 4155 | } 4156 | ], 4157 | "thresholds": [], 4158 | "timeFrom": "30m", 4159 | "timeRegions": [], 4160 | "timeShift": null, 4161 | "title": "Gluster10TB04 - IO", 4162 | "tooltip": { 4163 | "shared": true, 4164 | "sort": 2, 4165 | "value_type": "individual" 4166 | }, 4167 | "type": "graph", 4168 | "xaxis": { 4169 | "buckets": null, 4170 | "mode": "time", 4171 | "name": null, 4172 | "show": true, 4173 | "values": [] 4174 | }, 4175 | "yaxes": [ 4176 | { 4177 | "decimals": null, 4178 | "format": "bytes", 4179 | "label": null, 4180 | "logBase": 1, 4181 | "max": null, 4182 | "min": null, 4183 | "show": true 4184 | }, 4185 | { 4186 | "format": "short", 4187 | "label": null, 4188 | "logBase": 1, 4189 | "max": null, 4190 | "min": null, 4191 | "show": false 4192 | } 4193 | ], 4194 | "yaxis": { 4195 | "align": false, 4196 | "alignLevel": null 4197 | } 4198 | }, 4199 | { 4200 | "aliasColors": {}, 4201 | "bars": false, 4202 | "dashLength": 10, 4203 | "dashes": false, 4204 | "datasource": "${DS_MYDB}", 4205 | "decimals": 2, 4206 | "fill": 2, 4207 | "gridPos": { 4208 | "h": 6, 4209 | "w": 7, 4210 | "x": 7, 4211 | "y": 43 4212 | }, 4213 | "id": 96, 4214 | "legend": { 4215 | "alignAsTable": true, 4216 | "avg": false, 4217 | "current": true, 4218 | "max": false, 4219 | "min": false, 4220 | "rightSide": false, 4221 | "show": true, 4222 | "sort": "current", 4223 | "sortDesc": true, 4224 | "total": false, 4225 | "values": true 4226 | }, 4227 | "lines": true, 4228 | "linewidth": 1, 4229 | "links": [], 4230 | "nullPointMode": "connected", 4231 | "percentage": false, 4232 | "pointradius": 5, 4233 | "points": false, 4234 | "renderer": "flot", 4235 | "seriesOverrides": [], 4236 | "spaceLength": 10, 4237 | "stack": false, 4238 | "steppedLine": false, 4239 | "targets": [ 4240 | { 4241 | "alias": "$tag_host: $tag_name: $col", 4242 | "groupBy": [ 4243 | { 4244 | "params": [ 4245 | "$__interval" 4246 | ], 4247 | "type": "time" 4248 | }, 4249 | { 4250 | "params": [ 4251 | "null" 4252 | ], 4253 | "type": "fill" 4254 | } 4255 | ], 4256 | "orderByTime": "ASC", 4257 | "policy": "default", 4258 | "query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb05') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 4259 | "rawQuery": true, 4260 | "refId": "A", 4261 | "resultFormat": "time_series", 4262 | "select": [ 4263 | [ 4264 | { 4265 | "params": [ 4266 | "value" 4267 | ], 4268 | "type": "field" 4269 | }, 4270 | { 4271 | "params": [], 4272 | "type": "mean" 4273 | } 4274 | ] 4275 | ], 4276 | "tags": [] 4277 | }, 4278 | { 4279 | "alias": "$tag_host: $tag_name: $col", 4280 | "groupBy": [ 4281 | { 4282 | "params": [ 4283 | "$__interval" 4284 | ], 4285 | "type": "time" 4286 | }, 4287 | { 4288 | "params": [ 4289 | "null" 4290 | ], 4291 | "type": "fill" 4292 | } 4293 | ], 4294 | "orderByTime": "ASC", 4295 | "policy": "default", 4296 | "query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb05') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 4297 | "rawQuery": true, 4298 | "refId": "B", 4299 | "resultFormat": "time_series", 4300 | "select": [ 4301 | [ 4302 | { 4303 | "params": [ 4304 | "value" 4305 | ], 4306 | "type": "field" 4307 | }, 4308 | { 4309 | "params": [], 4310 | "type": "mean" 4311 | } 4312 | ] 4313 | ], 4314 | "tags": [] 4315 | } 4316 | ], 4317 | "thresholds": [], 4318 | "timeFrom": "30m", 4319 | "timeRegions": [], 4320 | "timeShift": null, 4321 | "title": "Gluster10TB05 - IO", 4322 | "tooltip": { 4323 | "shared": true, 4324 | "sort": 2, 4325 | "value_type": "individual" 4326 | }, 4327 | "type": "graph", 4328 | "xaxis": { 4329 | "buckets": null, 4330 | "mode": "time", 4331 | "name": null, 4332 | "show": true, 4333 | "values": [] 4334 | }, 4335 | "yaxes": [ 4336 | { 4337 | "decimals": null, 4338 | "format": "bytes", 4339 | "label": null, 4340 | "logBase": 1, 4341 | "max": null, 4342 | "min": null, 4343 | "show": true 4344 | }, 4345 | { 4346 | "format": "short", 4347 | "label": null, 4348 | "logBase": 1, 4349 | "max": null, 4350 | "min": null, 4351 | "show": false 4352 | } 4353 | ], 4354 | "yaxis": { 4355 | "align": false, 4356 | "alignLevel": null 4357 | } 4358 | }, 4359 | { 4360 | "aliasColors": {}, 4361 | "bars": false, 4362 | "dashLength": 10, 4363 | "dashes": false, 4364 | "datasource": "${DS_MYDB}", 4365 | "decimals": 2, 4366 | "fill": 2, 4367 | "gridPos": { 4368 | "h": 6, 4369 | "w": 7, 4370 | "x": 14, 4371 | "y": 43 4372 | }, 4373 | "id": 98, 4374 | "legend": { 4375 | "alignAsTable": true, 4376 | "avg": false, 4377 | "current": true, 4378 | "max": false, 4379 | "min": false, 4380 | "rightSide": false, 4381 | "show": true, 4382 | "sort": "current", 4383 | "sortDesc": true, 4384 | "total": false, 4385 | "values": true 4386 | }, 4387 | "lines": true, 4388 | "linewidth": 1, 4389 | "links": [], 4390 | "nullPointMode": "connected", 4391 | "percentage": false, 4392 | "pointradius": 5, 4393 | "points": false, 4394 | "renderer": "flot", 4395 | "seriesOverrides": [], 4396 | "spaceLength": 10, 4397 | "stack": false, 4398 | "steppedLine": false, 4399 | "targets": [ 4400 | { 4401 | "alias": "$tag_host: $tag_name: $col", 4402 | "groupBy": [ 4403 | { 4404 | "params": [ 4405 | "$__interval" 4406 | ], 4407 | "type": "time" 4408 | }, 4409 | { 4410 | "params": [ 4411 | "null" 4412 | ], 4413 | "type": "fill" 4414 | } 4415 | ], 4416 | "orderByTime": "ASC", 4417 | "policy": "default", 4418 | "query": "SELECT non_negative_derivative(mean(write_bytes),1s) as \"write\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb06') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 4419 | "rawQuery": true, 4420 | "refId": "A", 4421 | "resultFormat": "time_series", 4422 | "select": [ 4423 | [ 4424 | { 4425 | "params": [ 4426 | "value" 4427 | ], 4428 | "type": "field" 4429 | }, 4430 | { 4431 | "params": [], 4432 | "type": "mean" 4433 | } 4434 | ] 4435 | ], 4436 | "tags": [] 4437 | }, 4438 | { 4439 | "alias": "$tag_host: $tag_name: $col", 4440 | "groupBy": [ 4441 | { 4442 | "params": [ 4443 | "$__interval" 4444 | ], 4445 | "type": "time" 4446 | }, 4447 | { 4448 | "params": [ 4449 | "null" 4450 | ], 4451 | "type": "fill" 4452 | } 4453 | ], 4454 | "orderByTime": "ASC", 4455 | "policy": "default", 4456 | "query": "SELECT non_negative_derivative(mean(read_bytes),1s) as \"read\" FROM \"diskio\" WHERE (\"host\" = 'gluster10tb06') AND (\"name\" = 'sda') AND $timeFilter GROUP BY time($interval), *", 4457 | "rawQuery": true, 4458 | "refId": "B", 4459 | "resultFormat": "time_series", 4460 | "select": [ 4461 | [ 4462 | { 4463 | "params": [ 4464 | "value" 4465 | ], 4466 | "type": "field" 4467 | }, 4468 | { 4469 | "params": [], 4470 | "type": "mean" 4471 | } 4472 | ] 4473 | ], 4474 | "tags": [] 4475 | } 4476 | ], 4477 | "thresholds": [], 4478 | "timeFrom": "30m", 4479 | "timeRegions": [], 4480 | "timeShift": null, 4481 | "title": "Gluster10TB06 - IO", 4482 | "tooltip": { 4483 | "shared": true, 4484 | "sort": 2, 4485 | "value_type": "individual" 4486 | }, 4487 | "type": "graph", 4488 | "xaxis": { 4489 | "buckets": null, 4490 | "mode": "time", 4491 | "name": null, 4492 | "show": true, 4493 | "values": [] 4494 | }, 4495 | "yaxes": [ 4496 | { 4497 | "decimals": null, 4498 | "format": "bytes", 4499 | "label": null, 4500 | "logBase": 1, 4501 | "max": null, 4502 | "min": null, 4503 | "show": true 4504 | }, 4505 | { 4506 | "format": "short", 4507 | "label": null, 4508 | "logBase": 1, 4509 | "max": null, 4510 | "min": null, 4511 | "show": false 4512 | } 4513 | ], 4514 | "yaxis": { 4515 | "align": false, 4516 | "alignLevel": null 4517 | } 4518 | } 4519 | ], 4520 | "refresh": "1m", 4521 | "schemaVersion": 18, 4522 | "style": "dark", 4523 | "tags": [], 4524 | "templating": { 4525 | "list": [ 4526 | { 4527 | "allValue": null, 4528 | "current": {}, 4529 | "datasource": "${DS_MYDB}", 4530 | "definition": "", 4531 | "hide": 0, 4532 | "includeAll": false, 4533 | "label": "host", 4534 | "multi": false, 4535 | "name": "host", 4536 | "options": [], 4537 | "query": "SHOW TAG VALUES FROM \"system\" WITH KEY = \"host\"", 4538 | "refresh": 1, 4539 | "regex": "", 4540 | "skipUrlSync": false, 4541 | "sort": 0, 4542 | "tagValuesQuery": "", 4543 | "tags": [], 4544 | "tagsQuery": "", 4545 | "type": "query", 4546 | "useTags": true 4547 | } 4548 | ] 4549 | }, 4550 | "time": { 4551 | "from": "now-30m", 4552 | "to": "now" 4553 | }, 4554 | "timepicker": { 4555 | "refresh_intervals": [ 4556 | "5s", 4557 | "10s", 4558 | "30s", 4559 | "1m", 4560 | "5m", 4561 | "15m", 4562 | "30m", 4563 | "1h", 4564 | "2h", 4565 | "1d" 4566 | ], 4567 | "time_options": [ 4568 | "5m", 4569 | "15m", 4570 | "1h", 4571 | "6h", 4572 | "12h", 4573 | "24h", 4574 | "2d", 4575 | "7d", 4576 | "30d" 4577 | ] 4578 | }, 4579 | "timezone": "browser", 4580 | "title": "Gluster Dashboard", 4581 | "uid": "000000001fdsa", 4582 | "version": 68 4583 | } 4584 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # glusterdroid v0.0.1 2 | Semi Automated Setup of GlusterFS on odroid HC2 3 | 4 | ## Disclaimer: 5 | 6 | ** Right now there are some things broken and I don't have an extra HC2 to test ** 7 | 8 | With that said, you can still follow the steps in the bash script manually. There are a couple things that don't work quite right when running it straight up. 9 | 10 | This is probably not the most optimal of things. There are much better ways to 11 | do things but this project was never meant to show off any 1337 bash skillz. It was just 12 | an easy way for me to consistently build new gluster nodes and have them work. There 13 | are no guarantees and this is use at your own risk. 14 | 15 | 16 | - This has been tested on Odroid HC2 but would probably work on the 2.5" version. 17 | - This **does not** take care of the gluster setup as far as setting up/adding to volumes. 18 | That part is up to you. 19 | 20 | 21 | ## Installation: 22 | 23 | I am using [Ubuntu 18.04](https://forum.odroid.com/viewtopic.php?t=27449) on my odroid HC2s. You can download it from the Odroid forum. 24 | First things first, let's install git. You can run an update here if you like as well but I call that in the script. 25 | It will reboot and you will have to run the setup a second time. You will notices the script knows 26 | when you reboot and takes you to the encryption part. 27 | 28 | **MAKE SURE YOU CLEAR ALL THE PARTITIONS ON THE 3.5" DRIVE with FDISK!!!** 29 | 30 | 31 | 1. Install git: 32 | `apt install git` 33 | 2. Clone the repo: 34 | `git clone https://github.com/TOoSmOotH/glusterdroid.git` 35 | 3. Edit clusterhosts and add all your nodes to the list. When you add new nodes it will append the new ones to existing host files on the nodes. 36 | 4. Edit the setup script and review the variables that you need to customize. 37 | 38 | **HN** = The Hostname of the node you are currently building. 39 | **FILESYSTEM** = Pick a file system. You can choose XFS or ext4. Other might work but those are the ones I tested. 40 | **CRYPTVOL** = This is your crypt volume name. Nothing really speacial about this except that it will show up as this unde /dev/mapper. 41 | **MOUNTPOINT** = This is where you plan on mounting your 3.5" drive. I chose /gluster but you can change this to whatever. 42 | **BRICKNAME** = Again this is what you plan on calling your brick. you can name it whatever you like. 43 | **GTYPE** = Gluster Node Type. This only really matters if you plan on burst mining on free space. 44 | **TELEGRAF** = 1 enables telegraf to be installed and 0 disables it. See Details below. 45 | **INFLUXSERVER** = This is the URL for your influxDB server. This only matters is you enable Telegraf.. 46 | **BURST** = 1 enabled 0 disabled. See details below 47 | **BURSTPOOL** = This is the pool you are mining on. I recommend using the default. Make sure you read up on joining a pool. 48 | you have to set the reward assignment to the pools address etc. 49 | **BURSTACCOUNT** = Set this to your account ID of the wallet you using to mine with. 50 | **BURSTDEADLINE** = This is where you set the deadline. Research this... It's based on how much space you have etc. 51 | **BURSTPATH** = This is the path. Default should work. 52 | 53 | 5. run setup as root 54 | `bash odroid-setup.sh` 55 | 6. You will get prompted about postgress. I personally choose no config. 56 | 57 | 58 | ## Telegraf 59 | Telegraf is a slick way to monitor what's going on with your setup. I will include a grafana dashboard that you will have to edit for your environment. I have included a custom monitoring script for disk temps that gets dropped into cron. 60 | 61 | ## Burst 62 | Might as well mine with your free space right? Enabling this feature allows you to copy plots to your drives and have your odroids mine. This document or this script don't cover what you need to do to start burst mining. I have only tested this in distributed mode. I am not sure what would happen in dispersed when you fill the drive up 63 | outside the brick. Its on the list of thins to try. I find that 50GB plot sizes seem to work the best for balancing out across the cluster. Your experience may be different though. I will be releasing a script that will track the size of your 64 | plots and the size of your data and delete older plot files to free up space for real data. Stay Tuned! 65 | 66 | 67 | Feel free to submit PRs to make this better. 68 | -------------------------------------------------------------------------------- /burstconfig.yaml: -------------------------------------------------------------------------------- 1 | account_id: ACNT 2 | 3 | plot_dirs: 4 | - 'PLOTPATH' 5 | 6 | # url: 'http://pool.dev.burst-test.net:8124' # testnet pool 7 | # url: 'http://dummypool.megash.it' # dummypool with constant scoop number for benchmarking 8 | url: 'POOL' 9 | 10 | hdd_reader_thread_count: 0 # default 0 (=number of disks) 11 | hdd_use_direct_io: false # default true 12 | hdd_wakeup_after: 240 # default 240s 13 | 14 | cpu_worker_thread_count: 4 # default 4 (0=GPU only) 15 | cpu_nonces_per_cache: 65536 # default 65536 16 | cpu_thread_pinning: false # default false 17 | 18 | gpu_platform: 0 # default 0 19 | gpu_device: 0 # default 0 20 | gpu_worker_thread_count: 0 # default 0 (=CPU only) 21 | gpu_nonces_per_cache: 262144 # default 262144 22 | gpu_mem_mapping: false # default false 23 | 24 | target_deadline: DEADLINE # default u32::MAX 25 | 26 | get_mining_info_interval: 3000 # default 3000ms 27 | timeout: 5000 # default 5000ms 28 | send_proxy_details: true # default false 29 | 30 | console_log_level: 'info' # default Info, options (off, error, warn, info, debug, trace) 31 | logfile_log_level: 'warn' # default Warn, options (off, error, warn, info, debug, trace) 32 | logfile_max_count: 10 # maximum number of log files to keep 33 | logfile_max_size : 20 # maximum size per logfile in MiB 34 | 35 | show_progress: true # default true 36 | show_drive_stats: false # default false 37 | benchmark_only: 'disabled' # default disabled, options (disabled, I/O, XPU) 38 | 39 | # Low noise log patterns 40 | console_log_pattern: "{({d(%H:%M:%S)} [{l}]):16.16} {m}{n}" 41 | logfile_log_pattern: "{({d(%Y-%m-%d %H:%M:%S)} [{l}]):26.26} {m}{n}" 42 | 43 | # More detailed log patterns 44 | #console_log_pattern: "{d(%H:%M:%S.%3f%z)} [{h({l}):<5}] [{T}] [{t}] - {M}:{m}{n}" 45 | #logfile_log_pattern: "{d(%Y-%m-%dT%H:%M:%S.%3f%z)} [{h({l}):<5}] [{T}]-[{t}] [{f}:{L}] - {M}:{m}{n}" 46 | -------------------------------------------------------------------------------- /clusterhosts: -------------------------------------------------------------------------------- 1 | 192.168.2.30 gluster10tb01 2 | 192.168.2.31 gluster10tb02 3 | 192.168.2.32 gluster10tb03 4 | 192.168.2.33 gluster10tb04 5 | 192.168.2.34 gluster10tb05 6 | 192.168.2.35 gluster10tb06 7 | -------------------------------------------------------------------------------- /drivetemp.sh: -------------------------------------------------------------------------------- 1 | smartctl -a /dev/sda -d sat | grep Temperature_Celsius | awk {'print "hddtemp temp="$10'} > /var/log/temps/hddtemps.log 2 | -------------------------------------------------------------------------------- /odroid-setup.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | ################################ 4 | ### ### 5 | ### Config Section ### 6 | ### ### 7 | ################################ 8 | 9 | # Change stuff to match in here. Add ALL your gluster nodes to the clusterhosts before you run this script 10 | # Hostname of the node you are adding 11 | HN=gluster10tb06 12 | # Get your IP cause DHCP FTW 13 | MAINIP=$(ip route get 1 | awk '{print $7;exit}') 14 | # Pick a filesystem. I would choose either ext4 or xfs. It's up to you! 15 | FILESYSTEM=ext4 16 | # Name of the encrypted volume. This can be anything you want 17 | CRYPTVOL=securedata 18 | # This is where we are mounting the 3.5" drive 19 | MOUNTPOINT=/gluster 20 | # This is what we are naming the brick. 21 | BRICKNAME=brick1 22 | # GTYPE can be "distributed" or "dispersed". This is the type of volume you will be setting up. If using replicated disable BURST 23 | GTYPE=distributed 24 | # Do you want to set up Telegraf? 1 is on 0 is off. You need influx and grafana for this to be of any use. 25 | TELEGRAF=1 26 | INFLUXSERVER=http://192.168.2.4:8086 27 | # Do you want to mine burst on your free space? Set to 0 to disable. 28 | BURST=0 29 | # Enter the Pool you want to use. 30 | BURSTPOOL=http://voiplanparty.com:8124 31 | # Don't know if you really need this but this is the account id for which you are mining. 32 | BURSTACCOUNT=XXXXXXXXXXXXXXXXXXXXXXX 33 | # This is based on total TB you are mining with. Do research on the pool and the space you have for mining. 34 | BURSTDEADLINE=11087847 35 | # This path is dependant on the type of volume in gluster you are creating 36 | if [ $GTYPE == "distributed" ]; then 37 | BURSTPATH=/$MOUNTPOINT/$BRICKNAME/burst 38 | else 39 | BUSTPATH=/$MOUNTPOINT/burst 40 | fi 41 | 42 | ############################### 43 | ### ### 44 | ### This is the magic ### 45 | ### ### 46 | ############################### 47 | 48 | # Don't mess with anything below this unless you know what you are doing. 49 | if [ ! -f 1stboot ]; then 50 | # Set the Hostname 51 | hostnamectl set-hostname $HN 52 | 53 | # Change the hosts file 54 | sed -i "s/odroid/$HN/g" /etc/hosts 55 | 56 | # Add all the nodes to the local hosts file 57 | cat clusterhosts | while read line 58 | do 59 | echo $line >> /etc/hosts 60 | done 61 | 62 | # Add the new gluster node to all the other nodes 63 | # Yes this is lame 64 | cat clusterhosts | grep -v $HN | awk '{print $1}' >> hostscluster 65 | CMD=$(echo "$MAINIP $HN") 66 | echo $CMD 67 | for host in $(cat hostscluster); do ssh -o StrictHostKeyChecking=accept-new root@$host sudo echo "$CMD >> /etc/hosts"; done 68 | rm hostscluster 69 | 70 | # Update the OS 71 | apt update 72 | echo "Upgrading all the things" 73 | apt -y upgrade 74 | 75 | # Install some tools we need. 76 | apt -y install wget parted curl cryptsetup 77 | 78 | # Add some Repos 79 | wget -O- https://download.gluster.org/pub/gluster/glusterfs/3.12/rsa.pub | apt-key add - 80 | add-apt-repository ppa:gluster/glusterfs-4.1 81 | wget -O- https://repos.influxdata.com/influxdb.key | apt-key add - 82 | echo "deb https://repos.influxdata.com/ubuntu bionic stable" > /etc/apt/sources.list.d/influxdata.list 83 | apt update 84 | 85 | # Install what we came here for. 86 | echo "Installing Gluster Server.. This will error out sometimes but that is ok." 87 | apt install glusterfs-server -y 88 | echo " If you got an error about gluster server don't worry about it." 89 | touch 1stboot 90 | echo "Rebooting in 30s... Re-run this script when you log in again." 91 | sleep 30 92 | reboot 93 | fi 94 | 95 | if [ -f 1stboot ]; then 96 | 97 | # Toss up the warning. Can't say I didn't warn you! 98 | 99 | install="no" 100 | while [ "$install" != "yes" ]; do 101 | echo "###########################################" 102 | echo "## ** W A R N I N G ** ##" 103 | echo "## _______________________________ ##" 104 | echo "## ##" 105 | echo "## If you continue from here ##" 106 | echo "## ALL DATA on the 3.5 inch drive ##" 107 | echo "## WILL BE DESTROYED! ##" 108 | echo "## ##" 109 | echo "## ** ALL DATA WILL BE LOST ** ##" 110 | echo "###########################################" 111 | echo "Do you wish to continue? (Type the entire word "yes" to proceed.) " 112 | read install 113 | done 114 | 115 | # Partition and encrypt 116 | echo "Nuking all the partitions on the 3.5 incher" 117 | dd if=/dev/zero of=/dev/sda bs=512 count=1 118 | echo "Partitioning the drive" 119 | parted -a opt /dev/sda mktable gpt 120 | parted -a opt /dev/sda mkpart primary 0% 100% 121 | 122 | # Crypto Time 123 | echo "Loading Crypto Modules into the Kernel" 124 | modprobe dm-crypt sha256 aes 125 | 126 | # Wipe the partition 127 | echo "Wiping the partition" 128 | wipefs -a /dev/sda1 129 | 130 | # This key is used to auto mount the drive on reboot. If someone swipes your entire system then they could get to the data. 131 | # The main reason for this is so that if you RMA a drive your data is encrypted. 132 | # This is not meant to protect you from the Matrix. 133 | echo "Generating a random key for auto mount purposes" 134 | dd if=/dev/urandom of=/root/keyfile bs=1024 count=4 135 | chmod 400 /root/keyfile 136 | 137 | # Make this like at least 32 characters 138 | echo "Make a hard password and remember it or store in a password manager" 139 | cryptsetup --verify-passphrase luksFormat /dev/sda1 -c aes-ctr-plain -h sha256 -s 128 140 | echo "Opening the encrypted volume" 141 | cryptsetup luksOpen /dev/sda1 $CRYPTVOL 142 | ls -la /dev/mapper 143 | echo "Creating a $FILESYSTEM filesystem on the encrypted volume $CRYPTVOL" 144 | mkfs -t $FILESYSTEM -m 1 /dev/mapper/$CRYPTVOL 145 | echo "Closing the volume so we can apply the key to it for booting.. This will take a sec" 146 | cryptsetup -v luksClose $CRYPTVOL 147 | sleep 30 148 | echo " Applying key to the volume. You will need that password again." 149 | cryptsetup luksAddKey /dev/sda1 /root/keyfile 150 | echo "Setting up the crypttab" 151 | echo "$CRYPTVOL /dev/sda1 /root/keyfile luks" >> /etc/crypttab 152 | echo "Assigning the key to cryptdisks" 153 | sed -i "/CRYPTDISKS_MOUNT*/c\CRYPTDISKS_MOUNT=\"/root/keyfile\"" /etc/default/cryptdisks 154 | mkdir -p $MOUNTPOINT 155 | echo "Adding the mount to /etc/fstab FIX THE TABS HERE" 156 | echo "/dev/mapper/$CRYPTVOL $MOUNTPOINT $FILESYSTEM default,rw 0 2" >> /etc/fstab 157 | echo "Mounting the encrypted drive. You will need that PW one last time" 158 | cryptsetup luksOpen /dev/sda1 $CRYPTVOL 159 | mount -a 160 | mkdir -p $MOUNTPOINT/$BRICKNAME 161 | 162 | # Get Telegraf rocking if it is enabled. 163 | if [ $TELEGRAF == 1 ]; then 164 | echo "Installing Telegraf to monitor the things" 165 | apt -y install telegraf smartmontools 166 | mkdir -p /var/log/temps 167 | touch /var/log/temps/hddtemps.log 168 | cp drivetemp.sh /usr/sbin/ 169 | chmod 755 /usr/sbin/drivetemp.sh 170 | # Add the job to Cron 171 | echo "*/10 * * * * root /usr/sbin/drivetemp.sh" > /etc/cron.d/hddtemp 172 | cp telegraf.conf /etc/telegraf/ 173 | sed -i "s/ACIDINFLUX/$INFLUXSERVER/g" /etc/telegraf/telegraf.conf 174 | systemctl restart telegraf 175 | systemctl enable telegraf 176 | fi 177 | if [ $BURST == 1 ]; then 178 | echo "Installing Burst" 179 | wget https://github.com/TOoSmOotH/glusterdroid/releases/download/scav1.6.6/scavenger-1.6.6-odroid.tar.gz 180 | tar zxf scavenger-1.6.6-odroid.tar.gz 181 | mkdir -p /opt 182 | mv release /opt/scavenger 183 | cp burstconfig.yaml /opt/scavenger/config.yaml 184 | sed -i "s/POOL/$BURSTPOOL/g" /opt/scavenger/config.yaml 185 | sed -i "s/PLOTPATH/$BURSTPATH/g" /opt/scavenger/config.yaml 186 | sed -i "s/DEADLINE/$BURSTDEADLINE/g" /opt/scavenger/config.yaml 187 | sed -i "s/ACNT/$BURSTACCOUNT/g" /opt/scavenger/config.yaml 188 | 189 | # Install screen 190 | apt -y install screen 191 | # Create a junky script 192 | echo "cd /opt/scavenger" > /usr/sbin/scav.sh 193 | echo "./scavenger" >> /usr/sbin/scav.sh 194 | chmod +x /usr/sbin/scav.sh 195 | echo "screen -dmS scav /usr/sbin/scav.sh" > /usr/sbin/screenscav.sh 196 | chmod +x /usr/sbin/screenscav.sh 197 | # Add this so it starts at boot 198 | cp scav.service /etc/systemd/system/ 199 | systemctl daemon-reload 200 | systemctl enable scav.service 201 | # Launch scavenger in the background. You can connect by doing screen -r scav 202 | systemctl start scav 203 | fi 204 | 205 | # This should not be automated because there are a multitude of options here. 206 | echo "All Done. It's up to you to handle the gluster volume creation" 207 | fi 208 | -------------------------------------------------------------------------------- /scav.service: -------------------------------------------------------------------------------- 1 | [Unit] 2 | After=network.target 3 | 4 | [Service] 5 | ExecStart=/usr/sbin/screenscav.sh 6 | 7 | [Install] 8 | WantedBy=default.target 9 | --------------------------------------------------------------------------------