使用Prometheus和Grafana监控Gitlab指标

在本教程中,我们将学习如何使用Prometheus和Grafana监视Gitlab指标。 格拉法纳 是数据可视化和监视工具,支持时间序列数据存储,例如Graphite,InfluxDB,Prometheus,Elasticsearch。 普罗米修斯 是一项功能强大的时间序列监视服务,为监视GitLab和其他软件产品提供了一个灵活的平台。 GitLab提供Prometheus的开箱即用监视功能,可轻松访问GitLab服务的高质量时间序列监视。 Grafana可用于更好地可视化Prometheus收集的指标。

使用Prometheus和Grafana监控Gitlab指标

在继续之前,我们假定您已启动并运行Gitlab服务器。但是,您可以按照下面的链接在Ubuntu 20.04系统上安装和设置Gitlab服务器。

在Ubuntu 20.04上使用SSL / TLS证书安装Gitlab

默认情况下,Omnibus Gitlab安装与Grafana和Prometheus捆绑在一起。要确认这一点,只需检查Gitlab服务的状态即可;

gitlab-ctl status
run: alertmanager: (pid 4248) 22043s; run: log: (pid 4158) 22046s
run: gitaly: (pid 4273) 22042s; run: log: (pid 4147) 22046s
run: gitlab-exporter: (pid 4285) 22042s; run: log: (pid 4151) 22046s
run: gitlab-workhorse: (pid 4297) 22042s; run: log: (pid 4157) 22046s
run: grafana: (pid 96055) 13581s; run: log: (pid 4152) 22046s
run: logrotate: (pid 190276) 422s; run: log: (pid 4156) 22046s
run: nginx: (pid 96045) 13583s; run: log: (pid 4155) 22047s
run: node-exporter: (pid 4352) 22041s; run: log: (pid 4148) 22047s
run: postgres-exporter: (pid 4384) 22041s; run: log: (pid 4159) 22047s
run: postgresql: (pid 4425) 22038s; run: log: (pid 4149) 22047s
run: prometheus: (pid 78644) 15085s; run: log: (pid 4160) 22047s
run: puma: (pid 95895) 13594s; run: log: (pid 4150) 22047s
run: redis: (pid 4469) 22036s; run: log: (pid 4153) 22047s
run: redis-exporter: (pid 4477) 22036s; run: log: (pid 4161) 22047s
run: sidekiq: (pid 95784) 13602s; run: log: (pid 4154) 22047s

如您所见,我们已经启动并运行了Grafana和Prometheus服务。同样,您可以看到我们有各种出口商,例如 node-exportergitlab-exporter 用于收集主机和Gitlab性能指标。

您可以按以下方式检查单个服务的状态;

gitlab-ctl status prometheus
gitlab-ctl status grafana

在Gitlab服务器上配置Prometheus

要开始使用Prometheus和Grafana监视Gitlab指标,您需要开始配置Prometheus Gitlab服务器。

默认情况下,Prometheus配置为可从Gitlab服务器本身本地访问。如果您希望能够从外部访问Prometheus,请编辑配置文件并相应地调整下面的行。

vim /etc/gitlab/gitlab.rb
##! Advanced settings. Should be changed only if absolutely needed.
#prometheus['listen_address'] = 'localhost:9090'
prometheus['listen_address'] = '192.168.57.3:9090'
#
...

您可以用FQDN或IP地址替换localhost。

如果您不想允许外部访问Gitlab Prometheus,则可以跳过上述内容。

进行更改后,请确保重新配置Gitlab服务以使更改生效。

gitlab-ctl reconfigure
...
Recipe: gitlab::gitlab-rails
  * execute[clear the gitlab-rails cache] action run
    - execute /opt/gitlab/bin/gitlab-rake cache:clear
Recipe: monitoring::prometheus
  * execute[reload prometheus] action run
    - execute /opt/gitlab/bin/gitlab-ctl hup prometheus

Running handlers:
Running handlers complete
Chef Infra Client finished, 9/811 resources updated in 01 minutes 09 seconds
gitlab Reconfigured!

在Prometheus上查看Gitlab性能指标

您可以根据设置在本地或外部访问Prometheus仪表板。就我而言,我们已配置Prometheus进行外部访问。

要允许外部访问,请确保该端口 9090/tcp 如果防火墙正在运行,则在防火墙上打开。

Ubuntu系统之类;

ufw allow 9090/tcp

CentOS系统等;

firewall-cmd --add-port=9090/tcp --permanent
firewall-cmd --reload

然后在本地导航到Prometheus仪表板,(http://localhost:9090)或外部(http://fqdn-or-IP:9090)。

在以下位置提供了一个示例Prometheus仪表板查询 Gitlab文档页面;

  • 可用内存百分比: ((node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) or ((node_memory_MemFree_bytes + node_memory_Buffers_bytes + node_memory_Cached_bytes) / node_memory_MemTotal_bytes)) * 100
  • CPU使用率百分比: 1 - avg without (mode,cpu) (rate(node_cpu_seconds_total{mode="idle"}[5m]))
  • 传输的数据: rate(node_network_transmit_bytes_total{device!="lo"}[5m])
  • 收到的数据: rate(node_network_receive_bytes_total{device!="lo"}[5m])

您可以在Prometheus仪表板上执行和查看报告。例如,让我们执行上面的内存利用率查询(系统上可用的内存百分比)。您应该获得以下控制台屏幕快照中所示的示例控制台值和图形;

控制台

使用Prometheus和Grafana监控Gitlab指标

使用Prometheus和Grafana监控Gitlab指标

您可以阅读更多有关 普罗米修斯查询

使用Prometheus和Grafana监控Gitlab指标

正如您在上面看到的,我们得到的指标是,但是可视化效果不及标准-:)。

我们想感受Grafana可视化的好处。请注意,在此设置中,我们利用了与Gitlab服务器本身捆绑在一起的Grafana。

使用用户名和密码启用Grafana登录

默认情况下,Grafana已启用,并且Gitlab的单点登录也已自动启用。但是,在此设置中,我们启用使用用户名和密码登录。

默认情况下,使用用户名/密码对Grafana进行身份验证是禁用的。因此,打开配置文件并导航至Grafana仪表板部分,并通过取消注释该行来启用用户名/密码身份验证, grafana['disable_login_form'] = false

vim /etc/gitlab/gitlab.rb
...
################################################################################
## Grafana Dashboards
##! Docs: https://docs.gitlab.com/ee/administration/monitoring/prometheus/#prometheus-as-a-grafana-data-source
################################################################################

#grafana['enable'] = true
# grafana['log_directory'] = '/var/log/gitlab/grafana'
# grafana['home'] = '/var/opt/gitlab/grafana'
# grafana['admin_password'] = 'admin'
# grafana['allow_user_sign_up'] = false
# grafana['basic_auth_enabled'] = false
grafana['disable_login_form'] = false

保存并退出文件。

重新配置Gitlab以使更改生效;

gitlab-ctl reconfigure

访问Gitlab Grafana仪表板

启用用户名/密码验证后,导航至Gitlab Grafana URL, http:// FQDN-or-IP /-/ grafana

使用Prometheus和Grafana监控Gitlab指标

用户名 用于登录的是 admin。对于密码,您可以通过运行以下命令来重置密码;

gitlab-ctl set-grafana-password

然后登录到Grafana。成功登录后,欢迎您进入Grafana仪表板。

使用Prometheus和Grafana监控Gitlab指标

将Prometheus数据源添加到Grafana

为了让Grafana从Prometheus收集指标并提供可视化效果,您需要添加Prometheus数据源。默认情况下,您会发现Prometheus数据源已自动添加。您可以通过导航到 组态 > 数据源

使用Prometheus和Grafana监控Gitlab指标

但是,如果您需要添加新的数据源,请执行以下操作:

  • 导航 组态 > 数据源 > 添加数据源
  • 从数据源类型中,选择Prometheus。这将打开Prometheus数据源配置页面。
  • 输入Prometheus服务器URL。如果您在同一台服务器上运行Grafana和Prometheus,请使用该地址 http://本地主机:9090 否则,请使用地址 http:// :9090
  • 之后,点击 保存并测试

导入Gitlab Grafana仪表盘

同样,Prometheus数据源附带一些默认的仪表板。如果您导航到 组态 > 数据源 >单击Gitlab Omnibus数据源>仪表板。请点击 进口 导入仪表板。按钮变为 重新汇入 导入后。

使用Prometheus和Grafana监控Gitlab指标
查看Gitlab Grafana仪表板

导入仪表盘后,现在就可以查看它们。单击搜索按钮,然后选择要查看其可视化效果的仪表板。例如,让我们查看Prometheus 2.0统计信息仪表板。

使用Prometheus和Grafana监控Gitlab指标

同样,您可以监视Gitlab服务器系统指标,例如CPU使用率,RAM,磁盘I / O等。

使用Prometheus和Grafana监控Gitlab指标
使用Prometheus和Grafana监控Gitlab指标
使用Prometheus和Grafana监控Gitlab指标

对于上述仪表板,以下是修改后的json配置文件( 用于Grafana的Gitlab系统仪表板)。

{
  "annotations": {
    "list": [
      {
        "builtIn": 1,
        "datasource": "-- Grafana --",
        "enable": true,
        "hide": true,
        "iconColor": "rgba(0, 211, 255, 1)",
        "name": "Annotations & Alerts",
        "type": "dashboard"
      },
      {
        "datasource": "GitLab Omnibus",
        "enable": false,
        "expr": "ALERTS{alias="$host", alertstate="firing"}",
        "iconColor": "rgb(252, 5, 0)",
        "name": "Alert",
        "tagKeys": "severity",
        "textFormat": "{{ alias }} : {{alertstate}}",
        "titleFormat": "{{ alertname }}"
      },
      {
        "datasource": "GitLab Omnibus",
        "enable": true,
        "expr": "ALERTS{alias="$host",alertstate="pending"}",
        "iconColor": "rgb(228, 242, 9)",
        "name": "Warning",
        "tagKeys": "severity",
        "textFormat": "{{ alias }} : {{ alertstate }}",
        "titleFormat": "{{ alertname }}"
      }
    ]
  },
  "description": "GitLab Prometheus for system metrics. rnLoad, CPU, RAM, network, process ... ",
  "editable": true,
  "gnetId": 7697,
  "graphTooltip": 1,
  "id": 17,
  "iteration": 1606596413793,
  "links": [],
  "panels": [
    {
      "cacheTimeout": null,
      "colorBackground": false,
      "colorValue": true,
      "colors": [
        "rgba(245, 54, 54, 0.9)",
        "rgba(237, 129, 40, 0.89)",
        "rgba(50, 172, 45, 0.97)"
      ],
      "datasource": "GitLab Omnibus",
      "decimals": 1,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "format": "s",
      "gauge": {
        "maxValue": 100,
        "minValue": 0,
        "show": false,
        "thresholdLabels": false,
        "thresholdMarkers": true
      },
      "height": "50px",
      "id": 19,
      "interval": null,
      "links": [],
      "mappingType": 1,
      "mappingTypes": [
        {
          "name": "value to text",
          "value": 1
        },
        {
          "name": "range to text",
          "value": 2
        }
      ],
      "maxDataPoints": 100,
      "nullPointMode": "connected",
      "nullText": null,
      "postfix": "s",
      "postfixFontSize": "80%",
      "prefix": "",
      "prefixFontSize": "80%",
      "rangeMaps": [
        {
          "from": "null",
          "text": "N/A",
          "to": "null"
        }
      ],
      "sparkline": {
        "fillColor": "rgba(31, 118, 189, 0.18)",
        "full": false,
        "lineColor": "rgb(31, 120, 193)",
        "show": false
      },
      "tableColumn": "{instance="192.168.57.3:9090", job="prometheus"}",
      "targets": [
        {
          "calculatedInterval": "10m",
          "datasourceErrors": {},
          "errors": {},
          "expr": "(time() - process_start_time_seconds{job="prometheus"})",
          "format": "time_series",
          "interval": "5m",
          "intervalFactor": 1,
          "legendFormat": "",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_time%7Balias%3D%5C%22%24host%5C%22%7D%20-%20node_boot_time%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%2243200s%22%2C%22end_input%22%3A%222015-9-18%2013%3A25%22%2C%22step_input%22%3A%22%22%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 300
        }
      ],
      "thresholds": "300,3600",
      "title": "System Uptime",
      "type": "singlestat",
      "valueFontSize": "80%",
      "valueMaps": [],
      "valueName": "current"
    },
    {
      "cacheTimeout": null,
      "colorBackground": false,
      "colorValue": false,
      "colors": [
        "rgba(245, 54, 54, 0.9)",
        "rgba(237, 129, 40, 0.89)",
        "rgba(50, 172, 45, 0.97)"
      ],
      "datasource": "GitLab Omnibus",
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "format": "none",
      "gauge": {
        "maxValue": 100,
        "minValue": 0,
        "show": false,
        "thresholdLabels": false,
        "thresholdMarkers": true
      },
      "gridPos": {
        "h": 3,
        "w": 4,
        "x": 6,
        "y": 0
      },
      "height": "55px",
      "id": 25,
      "interval": null,
      "links": [],
      "mappingType": 1,
      "mappingTypes": [
        {
          "name": "value to text",
          "value": 1
        },
        {
          "name": "range to text",
          "value": 2
        }
      ],
      "maxDataPoints": 100,
      "nullPointMode": "connected",
      "nullText": null,
      "postfix": "",
      "postfixFontSize": "50%",
      "prefix": "",
      "prefixFontSize": "80%",
      "rangeMaps": [
        {
          "from": "null",
          "text": "N/A",
          "to": "null"
        }
      ],
      "sparkline": {
        "fillColor": "rgba(31, 118, 189, 0.18)",
        "full": false,
        "lineColor": "rgb(31, 120, 193)",
        "show": false
      },
      "tableColumn": "instance:node_cpus:count{instance="localhost:9100", job="node"}",
      "targets": [
        {
          "expr": "instance:node_cpus:count{instance="localhost:9100",job="node"}",
          "format": "time_series",
          "interval": "5m",
          "intervalFactor": 1,
          "legendFormat": "",
          "refId": "A",
          "step": 300
        }
      ],
      "thresholds": "",
      "title": "Virtual CPUs",
      "type": "singlestat",
      "valueFontSize": "80%",
      "valueMaps": [
        {
          "op": "=",
          "text": "N/A",
          "value": "null"
        }
      ],
      "valueName": "current"
    },
    {
      "cacheTimeout": null,
      "colorBackground": false,
      "colorValue": true,
      "colors": [
        "rgba(245, 54, 54, 0.9)",
        "rgba(237, 129, 40, 0.89)",
        "rgba(50, 172, 45, 0.97)"
      ],
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "format": "bytes",
      "gauge": {
        "maxValue": 100,
        "minValue": 0,
        "show": false,
        "thresholdLabels": false,
        "thresholdMarkers": true
      },
      "gridPos": {
        "h": 3,
        "w": 4,
        "x": 10,
        "y": 0
      },
      "height": "55px",
      "id": 26,
      "interval": null,
      "links": [],
      "mappingType": 1,
      "mappingTypes": [
        {
          "name": "value to text",
          "value": 1
        },
        {
          "name": "range to text",
          "value": 2
        }
      ],
      "maxDataPoints": 100,
      "nullPointMode": "connected",
      "nullText": null,
      "postfix": "",
      "postfixFontSize": "50%",
      "prefix": "",
      "prefixFontSize": "80%",
      "rangeMaps": [
        {
          "from": "null",
          "text": "N/A",
          "to": "null"
        }
      ],
      "sparkline": {
        "fillColor": "rgba(31, 118, 189, 0.18)",
        "full": false,
        "lineColor": "rgb(31, 120, 193)",
        "show": false
      },
      "tableColumn": "node_memory_MemAvailable_bytes{instance="localhost:9100", job="node"}",
      "targets": [
        {
          "expr": "node_memory_MemAvailable_bytes{instance="localhost:9100",job="node"}",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "",
          "metric": "node_memory_MemAvailable",
          "refId": "A",
          "step": 30
        }
      ],
      "thresholds": "",
      "title": "RAM available",
      "type": "singlestat",
      "valueFontSize": "80%",
      "valueMaps": [
        {
          "op": "=",
          "text": "N/A",
          "value": "null"
        }
      ],
      "valueName": "current"
    },
    {
      "cacheTimeout": null,
      "colorBackground": false,
      "colorValue": true,
      "colors": [
        "rgba(245, 54, 54, 0.9)",
        "rgba(237, 129, 40, 0.89)",
        "rgba(50, 172, 45, 0.97)"
      ],
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "format": "bytes",
      "gauge": {
        "maxValue": 100,
        "minValue": 0,
        "show": false,
        "thresholdLabels": false,
        "thresholdMarkers": true
      },
      "gridPos": {
        "h": 3,
        "w": 4,
        "x": 14,
        "y": 0
      },
      "height": "55px",
      "id": 34,
      "interval": null,
      "links": [],
      "mappingType": 1,
      "mappingTypes": [
        {
          "name": "value to text",
          "value": 1
        },
        {
          "name": "range to text",
          "value": 2
        }
      ],
      "maxDataPoints": 100,
      "nullPointMode": "connected",
      "nullText": null,
      "postfix": "",
      "postfixFontSize": "50%",
      "prefix": "",
      "prefixFontSize": "80%",
      "rangeMaps": [
        {
          "from": "null",
          "text": "N/A",
          "to": "null"
        }
      ],
      "sparkline": {
        "fillColor": "rgba(31, 118, 189, 0.18)",
        "full": false,
        "lineColor": "rgb(31, 120, 193)",
        "show": false
      },
      "tableColumn": "node_memory_MemFree_bytes{instance="localhost:9100", job="node"}",
      "targets": [
        {
          "expr": "node_memory_MemFree_bytes{instance="localhost:9100",job="node"}",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "",
          "metric": "node_memory_MemAvailable",
          "refId": "A",
          "step": 30
        }
      ],
      "thresholds": "",
      "title": "Free RAM",
      "type": "singlestat",
      "valueFontSize": "80%",
      "valueMaps": [
        {
          "op": "=",
          "text": "N/A",
          "value": "null"
        }
      ],
      "valueName": "current"
    },
    {
      "cacheTimeout": null,
      "colorBackground": false,
      "colorValue": true,
      "colors": [
        "rgba(245, 54, 54, 0.9)",
        "rgba(237, 129, 40, 0.89)",
        "rgba(50, 172, 45, 0.97)"
      ],
      "datasource": "GitLab Omnibus",
      "decimals": 0,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "format": "percent",
      "gauge": {
        "maxValue": 100,
        "minValue": 0,
        "show": false,
        "thresholdLabels": false,
        "thresholdMarkers": true
      },
      "gridPos": {
        "h": 3,
        "w": 6,
        "x": 18,
        "y": 0
      },
      "height": "50px",
      "id": 9,
      "interval": null,
      "links": [],
      "mappingType": 1,
      "mappingTypes": [
        {
          "name": "value to text",
          "value": 1
        },
        {
          "name": "range to text",
          "value": 2
        }
      ],
      "maxDataPoints": 100,
      "nullPointMode": "connected",
      "nullText": null,
      "postfix": "",
      "postfixFontSize": "50%",
      "prefix": "",
      "prefixFontSize": "80%",
      "rangeMaps": [
        {
          "from": "null",
          "text": "N/A",
          "to": "null"
        }
      ],
      "sparkline": {
        "fillColor": "rgba(31, 118, 189, 0.18)",
        "full": true,
        "lineColor": "rgb(31, 120, 193)",
        "show": true
      },
      "tableColumn": "{instance="localhost:9100", job="node"}",
      "targets": [
        {
          "calculatedInterval": "10m",
          "datasourceErrors": {},
          "errors": {},
          "expr": "(node_memory_MemAvailable_bytes{instance="localhost:9100",job="node"} or (node_memory_MemFree_bytes{instance="localhost:9100",job="node"} + node_memory_Buffers_bytes{instance="localhost:9100",job="node"} + node_memory_Cached_bytes{instance="localhost:9100",job="node"})) / node_memory_MemTotal_bytes{instance="localhost:9100",job="node"} * 100",
          "format": "time_series",
          "interval": "5m",
          "intervalFactor": 1,
          "legendFormat": "",
          "metric": "node_mem",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%20%2F%20node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20*%20100%22%2C%22range_input%22%3A%2243201s%22%2C%22end_input%22%3A%222015-9-15%2013%3A54%22%2C%22step_input%22%3A%22%22%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 300
        }
      ],
      "thresholds": "10,50",
      "title": "% RAM Available",
      "type": "singlestat",
      "valueFontSize": "80%",
      "valueMaps": [],
      "valueName": "current"
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 6,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 7,
        "w": 24,
        "x": 0,
        "y": 3
      },
      "height": "260px",
      "hiddenSeries": false,
      "id": 2,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": true,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "sum(rate(node_cpu_seconds_total{instance="localhost:9100",job='node'}[$interval])) by (mode) * 100 / count(node_cpu{instance="localhost:9100",job='node'}) by (mode) or sum(irate(node_cpu_seconds_total{instance="localhost:9100",job='node'}[5m])) by (mode) * 100 / count(node_cpu_seconds_total{instance="localhost:9100",job='node'}) by (mode)",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "{{ mode }}",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22sum(rate(node_cpu%7Balias%3D%5C%22%24host%5C%22%7D%5B%24interval%5D))%20by%20(mode)%20*%20100%22%2C%22range_input%22%3A%223600s%22%2C%22end_input%22%3A%222015-10-22%2015%3A27%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 2
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "CPU Usage",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "percent",
          "label": "",
          "logBase": 1,
          "max": 100,
          "min": 0,
          "show": true
        },
        {
          "format": "short",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 2,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 7,
        "w": 24,
        "x": 0,
        "y": 10
      },
      "hiddenSeries": false,
      "id": 18,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": true,
        "show": true,
        "sortDesc": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [
        {
          "alias": "Load 1m",
          "color": "#E24D42"
        },
        {
          "alias": "Load 5m",
          "color": "#E0752D"
        },
        {
          "alias": "Load 15m",
          "color": "#E5AC0E"
        }
      ],
      "spaceLength": 10,
      "stack": false,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "10s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_load1{instance="localhost:9100",job='node'}",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "Load 1m",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_load1%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%223601s%22%2C%22end_input%22%3A%222015-10-22%2015%3A27%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Afalse%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 2,
          "target": ""
        },
        {
          "calculatedInterval": "10s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_load5{instance="localhost:9100",job='node'}",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "Load 5m",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_load5%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%223600s%22%2C%22end_input%22%3A%222015-10-22%2015%3A27%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Afalse%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 2,
          "target": ""
        },
        {
          "calculatedInterval": "10s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_load15{instance="localhost:9100",job='node'}",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "Load 15m",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_load15%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%223600s%22%2C%22end_input%22%3A%222015-10-22%2015%3A27%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Afalse%2C%22tab%22%3A0%7D%5D",
          "refId": "C",
          "step": 2,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Load Average",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "none",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "none",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 4,
      "fillGradient": 0,
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 0,
        "y": 17
      },
      "hiddenSeries": false,
      "id": 33,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "max": true,
        "min": true,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "alias": "",
          "expr": "node_memory_MemTotal_bytes{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Total",
          "rawSql": "SELECTn  UNIX_TIMESTAMP() as time_sec,n   as value,n   as metricnFROM nWHERE $__timeFilter(time_column)nORDER BY  ASCn",
          "refId": "A"
        },
        {
          "expr": "node_memory_MemTotal_bytes{job='node',instance="localhost:9100"} - (node_memory_MemAvailable_bytes{job='node',instance="localhost:9100"} or (node_memory_MemFree_bytes{job='node',instance="localhost:9100"} + node_memory_Buffers_bytes{job='node',instance="localhost:9100"} + node_memory_Cached_bytes{job='node',instance="localhost:9100"}))",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Used",
          "refId": "B"
        },
        {
          "expr": "node_memory_MemAvailable_bytes{job='node',instance="localhost:9100"} or (node_memory_MemFree_bytes{job='node',instance="localhost:9100"} + node_memory_Buffers_bytes{job='node',instance="localhost:9100"} + node_memory_Cached_bytes{job='node',instance="localhost:9100"})",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Available",
          "refId": "C"
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Memory",
      "tooltip": {
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "bytes",
          "label": null,
          "logBase": 1,
          "max": null,
          "min": "0",
          "show": true
        },
        {
          "format": "bytes",
          "label": null,
          "logBase": 1,
          "max": null,
          "min": "0",
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 6,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 12,
        "y": 17
      },
      "height": "",
      "hiddenSeries": false,
      "id": 29,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_memory_MemTotal_bytes{job='node',instance="localhost:9100"} - (node_memory_MemFree_bytes{job='node',instance="localhost:9100"} + node_memory_Buffers_bytes{job='node',instance="localhost:9100"} + node_memory_Cached_bytes{job='node',instance="localhost:9100"})",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Used",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_memory_MemFree_bytes{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Free",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_memory_Buffers_bytes{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Buffers",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "D",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_memory_Cached_bytes{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Cached",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "E",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Memory Distribution",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "bytes",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "bytes",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 6,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 0,
        "y": 25
      },
      "hiddenSeries": false,
      "id": 21,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_network_receive_bytes_total{job='node',instance="localhost:9100", device!="lo"}[$interval]) or irate(node_network_receive_bytes_total{job='node',instance="localhost:9100", device!="lo"}[5m])",
          "format": "time_series",
          "interval": "",
          "intervalFactor": 1,
          "legendFormat": "Inbound: {{ device }}",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_network_transmit_bytes_total{job='node',instance="localhost:9100", device!="lo"}[$interval]) or irate(node_network_transmit_bytes_total{alias="$host", device!="lo"}[5m])",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Outbound: {{ device }}",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Network Traffic",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "Bps",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "bytes",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": true,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 6,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 12,
        "y": 25
      },
      "hiddenSeries": false,
      "id": 22,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "sort": "min",
        "sortDesc": true,
        "total": false,
        "values": true
      },
      "lines": false,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "sum(increase(node_network_receive_bytes_total{job='node',instance="localhost:9100", device!="lo"}[1h]))",
          "format": "time_series",
          "interval": "1h",
          "intervalFactor": 1,
          "legendFormat": "Received",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 3600,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "sum(increase(node_network_transmit_bytes_total{job='node',instance="localhost:9100", device!="lo"}[1h]))",
          "format": "time_series",
          "hide": false,
          "interval": "1h",
          "intervalFactor": 1,
          "legendFormat": "Sent",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 3600,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": "24h",
      "timeRegions": [],
      "timeShift": null,
      "title": "Network Utilization Hourly",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "bytes",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "bytes",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 2,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 0,
        "y": 33
      },
      "hiddenSeries": false,
      "id": 27,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": false,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2m",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_context_switches_total{job='node',instance="localhost:9100"}[$interval]) or irate(node_context_switches_total{job='node',instance="localhost:9100"}[5m])",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Context Switches",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_procs_running%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%2243200s%22%2C%22end_input%22%3A%222015-9-18%2013%3A46%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Context Switches",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "none",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "none",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": true,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 2,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 12,
        "y": 33
      },
      "hiddenSeries": false,
      "id": 20,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": false,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [
        {
          "alias": "Processes blocked waiting for I/O to complete",
          "color": "#E24D42"
        },
        {
          "alias": "Processes in runnable state",
          "color": "#6ED0E0"
        }
      ],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2m",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_procs_running{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Processes in runnable state",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_procs_running%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%2243200s%22%2C%22end_input%22%3A%222015-9-18%2013%3A46%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2m",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_procs_blocked{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Processes blocked waiting for I/O to complete",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_procs_blocked%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%2243200s%22%2C%22end_input%22%3A%222015-9-18%2013%3A46%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Processes",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "none",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "none",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 2,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 0,
        "y": 41
      },
      "hiddenSeries": false,
      "id": 31,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": false,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_vmstat_pgpgin{job='node'}[$interval]) * 1024 or irate(node_vmstat_pgpgin{job='node'}[5m]) * 1024",
          "format": "time_series",
          "hide": false,
          "intervalFactor": 1,
          "legendFormat": "Page In",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_vmstat_pgpgout{job='node'}[$interval]) * 1024 or irate(node_vmstat_pgpgout{job='node'}[5m]) * 1024",
          "format": "time_series",
          "hide": false,
          "intervalFactor": 1,
          "legendFormat": "Page Out",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "I/O Activity",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "Bps",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "bytes",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 2,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 12,
        "y": 41
      },
      "hiddenSeries": false,
      "id": 28,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [
        {
          "alias": "Interrupts",
          "color": "#D683CE"
        }
      ],
      "spaceLength": 10,
      "stack": false,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2m",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_intr_total{instance=":9100",job="node"}[$interval]) or irate(node_intr_total{job="node"}[5m])",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Interrupts",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_procs_running%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%2243200s%22%2C%22end_input%22%3A%222015-9-18%2013%3A46%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Interrupts",
      "tooltip": {
        "msResolution": true,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "none",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "none",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 6,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 0,
        "y": 49
      },
      "hiddenSeries": false,
      "id": 23,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [
        {
          "alias": "Used",
          "color": "#584477"
        },
        {
          "alias": "Free",
          "color": "#AEA2E0"
        }
      ],
      "spaceLength": 10,
      "stack": true,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_memory_SwapTotal_bytes{job='node',instance="localhost:9100"} - node_memory_SwapFree_bytes{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Used",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "node_memory_SwapFree_bytes{job='node',instance="localhost:9100"}",
          "format": "time_series",
          "hide": false,
          "intervalFactor": 1,
          "legendFormat": "Free",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Swap",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "bytes",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "bytes",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    },
    {
      "aliasColors": {},
      "bars": false,
      "dashLength": 10,
      "dashes": false,
      "datasource": "GitLab Omnibus",
      "decimals": 2,
      "editable": true,
      "error": false,
      "fieldConfig": {
        "defaults": {
          "custom": {}
        },
        "overrides": []
      },
      "fill": 2,
      "fillGradient": 0,
      "grid": {},
      "gridPos": {
        "h": 8,
        "w": 12,
        "x": 12,
        "y": 49
      },
      "hiddenSeries": false,
      "id": 30,
      "legend": {
        "alignAsTable": true,
        "avg": true,
        "current": false,
        "hideEmpty": false,
        "max": true,
        "min": true,
        "rightSide": false,
        "show": true,
        "total": false,
        "values": true
      },
      "lines": true,
      "linewidth": 2,
      "links": [],
      "nullPointMode": "null",
      "options": {
        "dataLinks": []
      },
      "percentage": false,
      "pointradius": 5,
      "points": false,
      "renderer": "flot",
      "seriesOverrides": [],
      "spaceLength": 10,
      "stack": false,
      "steppedLine": false,
      "targets": [
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_vmstat_pswpin{job='node',instance="localhost:9100"}[$interval]) * 4096 or irate(node_vmstat_pswpin{job='node',instance="localhost:9100"}[5m]) * 4096",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Swap In",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemTotal%7Balias%3D%5C%22%24host%5C%22%7D%20-%20(node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D)%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "A",
          "step": 5,
          "target": ""
        },
        {
          "calculatedInterval": "2s",
          "datasourceErrors": {},
          "errors": {},
          "expr": "rate(node_vmstat_pswpout{job='node',instance="localhost:9100"}[$interval]) * 4096 or irate(node_vmstat_pswpout{job='node',instance="localhost:9100"}[5m]) * 4096",
          "format": "time_series",
          "intervalFactor": 1,
          "legendFormat": "Swap Out",
          "metric": "",
          "prometheusLink": "/api/datasources/proxy/1/graph#%5B%7B%22expr%22%3A%22node_memory_MemFree%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Buffers%7Balias%3D%5C%22%24host%5C%22%7D%20%2B%20node_memory_Cached%7Balias%3D%5C%22%24host%5C%22%7D%22%2C%22range_input%22%3A%22900s%22%2C%22end_input%22%3A%222015-10-22%2015%3A25%22%2C%22step_input%22%3A%22%22%2C%22stacked%22%3Atrue%2C%22tab%22%3A0%7D%5D",
          "refId": "B",
          "step": 5,
          "target": ""
        }
      ],
      "thresholds": [],
      "timeFrom": null,
      "timeRegions": [],
      "timeShift": null,
      "title": "Swap Activity",
      "tooltip": {
        "msResolution": false,
        "shared": true,
        "sort": 0,
        "value_type": "individual"
      },
      "type": "graph",
      "xaxis": {
        "buckets": null,
        "mode": "time",
        "name": null,
        "show": true,
        "values": []
      },
      "yaxes": [
        {
          "format": "Bps",
          "label": "",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        },
        {
          "format": "bytes",
          "logBase": 1,
          "max": null,
          "min": 0,
          "show": true
        }
      ],
      "yaxis": {
        "align": false,
        "alignLevel": null
      }
    }
  ],
  "refresh": "30s",
  "schemaVersion": 25,
  "style": "dark",
  "tags": [
    "system",
    "prometheus",
    "online",
    "GetLab"
  ],
  "templating": {
    "list": [
      {
        "allFormat": "glob",
        "auto": true,
        "auto_count": 200,
        "auto_min": "1s",
        "current": {
          "selected": false,
          "text": "5s",
          "value": "5s"
        },
        "datasource": "GitLab Omnibus",
        "hide": 0,
        "includeAll": false,
        "label": "Interval",
        "multi": false,
        "multiFormat": "glob",
        "name": "interval",
        "options": [
          {
            "selected": false,
            "text": "auto",
            "value": "$__auto_interval_interval"
          },
          {
            "selected": false,
            "text": "1s",
            "value": "1s"
          },
          {
            "selected": true,
            "text": "5s",
            "value": "5s"
          },
          {
            "selected": false,
            "text": "1m",
            "value": "1m"
          },
          {
            "selected": false,
            "text": "5m",
            "value": "5m"
          },
          {
            "selected": false,
            "text": "1h",
            "value": "1h"
          },
          {
            "selected": false,
            "text": "6h",
            "value": "6h"
          },
          {
            "selected": false,
            "text": "1d",
            "value": "1d"
          }
        ],
        "query": "1s,5s,1m,5m,1h,6h,1d",
        "refresh": 2,
        "skipUrlSync": false,
        "type": "interval"
      }
    ]
  },
  "time": {
    "from": "now-1h",
    "to": "now"
  },
  "timepicker": {
    "collapse": false,
    "enable": true,
    "notice": false,
    "now": true,
    "refresh_intervals": [
      "5s",
      "10s",
      "30s",
      "1m",
      "5m",
      "15m",
      "30m",
      "1h",
      "2h",
      "1d"
    ],
    "status": "Stable",
    "time_options": [
      "5m",
      "15m",
      "1h",
      "6h",
      "12h",
      "24h",
      "2d",
      "7d",
      "30d"
    ],
    "type": "timepicker"
  },
  "timezone": "",
  "title": "Gitlab System",
  "uid": "4W5aRFAGz",
  "version": 2
}




And there you go. You can further enable and collect various Gitlab metric data and visualize them on Grafana. That marks the end of our tutorial on monitoring Gitlab metrics with Prometheus and Grafana.

Reference

Monitoring Gitlab with Prometheus

Other Tutorials

Monitor OpenVPN Connections with Prometheus and Grafana

Install Latest Grafana on CentOS 8

Integrate Prometheus with Grafana for Monitoring

Monitor Squid logs with Grafana and Graylog

  • TAGS
  • gitlab
  • gitlab grafana dashboard
  • gitlab prometheus dashboards
  • gitlab prometheus queries
  • Grafana
  • monitor gitlab metrics with grafana
  • monitoring gitlab with prometheus
  • prometheus
  • visualize gitlab metrics with grafana
Share Facebook Pinterest WhatsApp
    Previous articleInstall Cheat Command on Ubuntu 20.04 使用Prometheus和Grafana监控Gitlab指标koromichaI am the Co-founder of Kifarunix.com, Linux and the whole FOSS enthusiast, Linux System Admin and a Blue Teamer who loves to share technological tips and hacks with others as a way of sharing knowledge as: "In vain have you acquired knowledge if you have not imparted it to others". RELATED ARTICLESMORE FROM AUTHOR

    Install Cheat Command on Ubuntu 20.04

    Install Gitlab with SSL/TLS Certificate on Ubuntu 20.04

    Install latest Apache Solr on CentOS 8

    Monitor Linux System Metrics with ELK Stack

    Install latest Apache Solr on Ubuntu 20.04

    Quick Way to Install and Configure SNMP on Ubuntu 20.04

    LEAVE A REPLY Cancel reply

    Please enter your comment! Please enter your name here You have entered an incorrect email address! Please enter your email address here

    Recent Posts
    • Monitoring Gitlab Metrics with Prometheus and Grafana November 29, 2020
    • Install Cheat Command on Ubuntu 20.04 November 28, 2020
    • Install Gitlab with SSL/TLS Certificate on Ubuntu 20.04 November 20, 2020
    • Install latest Apache Solr on CentOS 8 November 19, 2020
    • Monitor Linux System Metrics with ELK Stack November 17, 2020
    CategoriesCategoriesSelect CategoryAcutenixAlienVaultanacronAnsibleAntivirusAnyDeskApacheAsset Managementat/batchAutomate System TasksAutomationAutomationBackupPCBINDCapacity planningCephCertificationsCheatsheetschronyCisco CCNA R&SCloud ComputeCMSCockpitContainersCRMcron jobsDatabaseDesktop EnvironmentDHCP ServerDirectory ServerDNSDockerElastic StackEmailEncryptionEnigmailFile RecoveryFIMfindFirewallForemostForensicsFreeBSDFreeIPAGlusterFSGoAccessGrafanaGrayloggrepGuacamoleHAProxyHowTosIcingaIdentity ManagementInfluxDBiSCSIJavaKDEKolideKubernetesKVMLAMP StackLandscapeLEMP StackLoad BalancersLPIC-1LPIC-2LPIC-2 Exam 201-405 Topics and ObjectivesLPIC-2 Exam 202-405 Topics and ObjectivesLVMManageEngine AssetExplorerMariaDBMetasploitmodsecurityMongoDBMonitoringMonitorixMSSQLMySQLNagiosNessusNetplanNetworkingNextcloudNFSNginxnmclinmcliNode ExporterNTPntpdOCS InventoryOpenLDAPOpenStackOpenVASOpenVPNOPNsenseosqueryOSSECownCloudPackage InstallationPassword ManagersPassword PoliciesPerfpfSensePhishingPHPphpMyAdminPostfixPoundPowerDNSProject ManagementPrometheusProxyQRadarRADIUSRedmineRemote DesktopRequest Tracker (RT)RHELRsyslogSamplerSecuritySEDSendmailSIEMSnipe-ITSNMPSSHSSL/TLSStoragesudoSuricataSyslogsyspassSystem AuditingSystem ManagerTelegrafThreat DetectionTICK StackTicketing SystemsTIG stacktomcatUbuntu 18.04UncategorizedvimVirtualBoxVirtualizationVMwareVNCVPNVulnerability ScannersWAFWazuhWeb ServersWebminwikiwirelessWiresharkWordPressWPScanZabbixzimbra 使用Prometheus和Grafana监控Gitlab指标Kifarunix is a blog dedicated to providing tips, tricks and HowTos for *Nix enthusiasts; Command cheat sheets, monitoring, server configurations, virtualization, systems security, networking…the whole FOSS technologies. The major aim of all this is to share our *Nix skills and knowledge with anyone who is interested especially the upcoming system admins. Stay connected and let us grow together. © Copyright 2020 Kifarunix. All rights reserved

    Sidebar