当前位置: 首页 > news >正文

docker-compose部署prometheus+grafana+node_exporter+alertmanager规则+邮件告警

目录

一.docker-compose文件

二.配置文件

三.文件层级关系,docker-compose和配置文件位于同级目录

四.node_exporter页面json文件

五.效果展示

prometheus+alertmanager+邮件告警

grafana面板效果

六.涉及离线包


 

一.docker-compose文件

[root@sulibao prometheus]# cat docker-compose.yml 
version: '3'services:prometheus:image: registry.cn-chengdu.aliyuncs.com/su03/prometheus:2.46.0-debian-11-r5container_name: prometheusports:- "9090:9090"volumes:- ./prometheus.yml:/etc/prometheus/prometheus.yml- ./rules.yml:/etc/prometheus/rules.ymlcommand:- '--config.file=/etc/prometheus/prometheus.yml'restart: alwaysalertmanager:image: registry.cn-chengdu.aliyuncs.com/su03/alertmanager:0.25.0-debian-11-r171container_name: alertmanagerports:- "9093:9093"volumes:- ./alertmanager.yml:/etc/alertmanager/alertmanager.ymlcommand:- '--config.file=/etc/alertmanager/alertmanager.yml'restart: alwaysgrafana:image: registry.cn-chengdu.aliyuncs.com/su03/grafana:9.3.6container_name: grafanaports:- "3000:3000"volumes:- grafana_data:/var/lib/grafana- ./dashboards:/usr/share/grafana/conf/provisioning/dashboardsenvironment:- GF_SECURITY_ADMIN_USER=admin- GF_SECURITY_ADMIN_PASSWORD=adminrestart: alwayspushgateway:image: registry.cn-chengdu.aliyuncs.com/su03/pushgateway:v1.6.2 container_name: pushgatewayports:- "9091:9091"restart: alwaysblackbox-exporter:image: registry.cn-chengdu.aliyuncs.com/su03/blackbox-exporter:0.25.0container_name: blackbox-exporterports:- "9115:9115"volumes:- ./blackbox.yml:/etc/blackbox_exporter/config.ymlcommand:- '--config.file=/etc/blackbox_exporter/config.yml'restart: alwaysnode-exporter:image: registry.cn-chengdu.aliyuncs.com/su03/node-exporter:1.6.1-debian-11-r8container_name: node-exporterports:- "9100:9100"restart: alwaysvolumes:grafana_data:    

二.配置文件

  • prometheus.yml,监控和告警配置
[root@sulibao prometheus]# cat prometheus.yml 
global:scrape_interval: 15sevaluation_interval: 15sscrape_configs:- job_name: 'prometheus'static_configs:- targets: ['localhost:9090']- job_name: 'alertmanager'static_configs:- targets: ['alertmanager:9093']- job_name: 'pushgateway'static_configs:- targets: ['pushgateway:9091']- job_name: 'blackbox'metrics_path: /probeparams:module: [http_2xx]static_configs:- targets:- http://example.comrelabel_configs:- source_labels: [__address__]target_label: __param_target- source_labels: [__param_target]target_label: instance- target_label: __address__replacement: blackbox-exporter:9115- job_name: 'node-exporter'static_configs:- targets: ['node-exporter:9100']alerting:alertmanagers:- static_configs:- targets: ['alertmanager:9093']rule_files:- "rules.yml"
  • blackbox.yml,黑盒测试文件
[root@sulibao prometheus]# cat blackbox.yml 
modules:http_2xx:prober: httptimeout: 5shttp:valid_status_codes: [200]
  • alertmanager.yml,告警通知配置文件
[root@sulibao prometheus]# cat alertmanager.yml 
global:resolve_timeout: 5msmtp_smarthost: 'smtp.qq.com:465'   #邮件服务器地址smtp_from: 'xxx'                #邮件发送地址smtp_auth_username: 'xxx'       #邮箱认证用户地址,一般和smtp_from一致smtp_auth_password: 'xxx'          #邮箱授权码smtp_require_tls: falseroute:group_by: ['alertname']group_wait: 30sgroup_interval: 5mrepeat_interval: 12hreceiver: 'test-alertmanager'receivers:
- name: 'test-alertmanager'email_configs:- to: 'xxx'               #告警接收邮箱地址
  •   rules.yml,告警规则配置文件
[root@sulibao prometheus]# cat rules.yml 
groups:- name: test-rulesrules:- alert: HighCPUUsageexpr: avg by (instance) (rate(node_cpu_seconds_total{mode!="idle"}[5m])) > 0.8for: 5mlabels:severity: warningannotations:summary: "High CPU usage on {{ $labels.instance }}"description: "{{ $labels.instance }} has a CPU usage of {{ $value }}"

三.文件层级关系,docker-compose和配置文件位于同级目录

[root@sulibao prometheus]# ll
total 20
-rw-r--r-- 1 root root  421 Mar 31 13:39 alertmanager.yml
-rw-r--r-- 1 root root  100 Mar 30 18:28 blackbox.yml
-rw-r--r-- 1 root root 1793 Mar 31 13:25 docker-compose.yml
-rw-r--r-- 1 root root  945 Mar 31 13:21 prometheus.yml
-rw-r--r-- 1 root root  378 Mar 31 13:48 rules.yml
[root@sulibao prometheus]# pwd
/data/prometheus

四.node_exporter页面json文件

{"__inputs": [{"name": "DS__VICTORIAMETRICS","label": " VictoriaMetrics","description": "","type": "datasource","pluginId": "prometheus","pluginName": "Prometheus"}],"__requires": [{"type": "panel","id": "bargauge","name": "Bar gauge","version": ""},{"type": "grafana","id": "grafana","name": "Grafana","version": "7.2.0"},{"type": "panel","id": "graph","name": "Graph","version": ""},{"type": "datasource","id": "prometheus","name": "Prometheus","version": "1.0.0"},{"type": "panel","id": "stat","name": "Stat","version": ""},{"type": "panel","id": "table-old","name": "Table (old)","version": ""}],"annotations": {"list": [{"$$hashKey": "object:2875","builtIn": 1,"datasource": "-- Grafana --","enable": true,"hide": true,"iconColor": "rgba(0, 211, 255, 1)","name": "Annotations & Alerts","type": "dashboard"}]},"description": "服务器监控","editable": true,"gnetId": 11074,"graphTooltip": 0,"id": null,"iteration": 1602304673501,"links": [{"$$hashKey": "object:2300","icon": "bolt","tags": [],"targetBlank": true,"title": "Update","tooltip": "Update dashboard","type": "link","url": "https://grafana.com/grafana/dashboards/11074"},{"$$hashKey": "object:2301","icon": "question","tags": [],"targetBlank": true,"title": "GitHub","tooltip": "more dashboard","type": "link","url": "https://github.com/starsliao"},{"$$hashKey": "object:2302","asDropdown": true,"icon": "external link","tags": [],"targetBlank": true,"title": "","type": "dashboards"}],"panels": [{"collapsed": false,"datasource": "${DS__VICTORIAMETRICS}","gridPos": {"h": 1,"w": 24,"x": 0,"y": 0},"id": 187,"panels": [],"title": "Resource Overview (associated JOB),Host:$show_hostname,Instance:$node","type": "row"},{"columns": [],"datasource": "${DS__VICTORIAMETRICS}","description": "Partition utilization, disk read, disk write, download bandwidth, upload bandwidth, if there are multiple network cards or multiple partitions, it is the value of the network card or partition with the highest utilization rate collected.\n\nCurrEstab: The number of TCP connections whose current status is ESTABLISHED or CLOSE-WAIT.","fieldConfig": {"defaults": {"custom": {}},"overrides": []},"fontSize": "80%","gridPos": {"h": 7,"w": 24,"x": 0,"y": 1},"id": 185,"pageSize": null,"showHeader": true,"sort": {"col": 31,"desc": false},"styles": [{"$$hashKey": "object:1600","alias": "Hostname","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 1,"link": false,"linkTooltip": "","linkUrl": "","mappingType": 1,"pattern": "nodename","thresholds": [],"type": "string","unit": "bytes"},{"$$hashKey": "object:1601","alias": "IP(Link to details)","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"link": true,"linkTargetBlank": false,"linkTooltip": "Browse host details","linkUrl": "d/xfpJB9FGz/node-exporter?orgId=1&var-job=${job}&var-hostname=All&var-node=${__cell}&var-device=All&var-origin_prometheus=$origin_prometheus","mappingType": 1,"pattern": "instance","thresholds": [],"type": "number","unit": "short"},{"$$hashKey": "object:1602","alias": "Memory","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"link": false,"mappingType": 1,"pattern": "Value #B","thresholds": [],"type": "number","unit": "bytes"},{"$$hashKey": "object:1603","alias": "CPU Cores","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": null,"mappingType": 1,"pattern": "Value #C","thresholds": [],"type": "number","unit": "short"},{"$$hashKey": "object:1604","alias": " Uptime","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #D","thresholds": [],"type": "number","unit": "s"},{"$$hashKey": "object:1605","alias": "Partition used%*","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #E","thresholds": ["70","85"],"type": "number","unit": "percent"},{"$$hashKey": "object:1606","alias": "CPU used%","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #F","thresholds": ["70","85"],"type": "number","unit": "percent"},{"$$hashKey": "object:1607","alias": "Memory used%","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #G","thresholds": ["70","85"],"type": "number","unit": "percent"},{"$$hashKey": "object:1608","alias": "Disk read*","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #H","thresholds": ["10485760","20485760"],"type": "number","unit": "Bps"},{"$$hashKey": "object:1609","alias": "Disk write*","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #I","thresholds": ["10485760","20485760"],"type": "number","unit": "Bps"},{"$$hashKey": "object:1610","alias": "Download*","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #J","thresholds": ["30485760","104857600"],"type": "number","unit": "bps"},{"$$hashKey": "object:1611","alias": "Upload*","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #K","thresholds": ["30485760","104857600"],"type": "number","unit": "bps"},{"$$hashKey": "object:1612","alias": "5m load","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #L","thresholds": [],"type": "number","unit": "short"},{"$$hashKey": "object:1613","alias": "CurrEstab","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "Value #M","thresholds": ["1000","1500"],"type": "string","unit": "short"},{"$$hashKey": "object:1614","alias": "TCP_tw","align": "center","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": null,"mappingType": 1,"pattern": "Value #N","thresholds": ["5000","20000"],"type": "number","unit": "short"},{"$$hashKey": "object:1615","alias": "","align": "right","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"decimals": 2,"pattern": "/.*/","thresholds": [],"type": "hidden","unit": "short"}],"targets": [{"expr": "node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} - 0","format": "table","instant": true,"interval": "","legendFormat": "主机名","refId": "A"},{"expr": "sum(time() - node_boot_time_seconds{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"})by(instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "运行时间","refId": "D"},{"expr": "node_memory_MemTotal_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} - 0","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "总内存","refId": "B"},{"expr": "count(node_cpu_seconds_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",mode='system'}) by (instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "总核数","refId": "C"},{"expr": "node_load5{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}","format": "table","instant": true,"interval": "","legendFormat": "5分钟负载","refId": "L"},{"expr": "(1 - avg(rate(node_cpu_seconds_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",mode=\"idle\"}[$interval])) by (instance)) * 100","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "CPU使用率","refId": "F"},{"expr": "(1 - (node_memory_MemAvailable_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} / (node_memory_MemTotal_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"})))* 100","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "内存使用率","refId": "G"},{"expr": "max((node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"ext.?|xfs\"}-node_filesystem_free_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"ext.?|xfs\"}) *100/(node_filesystem_avail_bytes {origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"ext.?|xfs\"}+(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"ext.?|xfs\"}-node_filesystem_free_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"ext.?|xfs\"})))by(instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "分区使用率","refId": "E"},{"expr": "max(rate(node_disk_read_bytes_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}[$interval])) by (instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "最大读取","refId": "H"},{"expr": "max(rate(node_disk_written_bytes_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}[$interval])) by (instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "最大写入","refId": "I"},{"expr": "node_netstat_Tcp_CurrEstab{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} - 0","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "连接数","refId": "M"},{"expr": "node_sockstat_TCP_tw{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} - 0","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "TIME_WAIT","refId": "N"},{"expr": "max(rate(node_network_receive_bytes_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}[$interval])*8) by (instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "下载带宽","refId": "J"},{"expr": "max(rate(node_network_transmit_bytes_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}[$interval])*8) by (instance)","format": "table","hide": false,"instant": true,"interval": "","legendFormat": "上传带宽","refId": "K"}],"timeFrom": null,"timeShift": null,"title": "Server Resource Overview【JOB:$job,Total:$total】","transform": "table","type": "table-old"},{"aliasColors": {"192.168.200.241:9100_Total": "dark-red","Idle - Waiting for something to happen": "#052B51","guest": "#9AC48A","idle": "#052B51","iowait": "#EAB839","irq": "#BF1B00","nice": "#C15C17","sdb_每秒I/O操作%": "#d683ce","softirq": "#E24D42","steal": "#FCE2DE","system": "#508642","user": "#5195CE","磁盘花费在I/O操作占比": "#ba43a9"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": null,"description": "","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 0,"gridPos": {"h": 7,"w": 8,"x": 0,"y": 8},"hiddenSeries": false,"id": 191,"legend": {"alignAsTable": false,"avg": false,"current": true,"hideEmpty": true,"hideZero": true,"max": false,"min": false,"rightSide": false,"show": true,"sideWidth": null,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"maxPerRow": 6,"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","repeat": null,"seriesOverrides": [{"$$hashKey": "object:2312","alias": "Overall average used%","lines": false,"pointradius": 1,"points": true,"yaxis": 2},{"$$hashKey": "object:2313","alias": "CPU Cores","color": "#C4162A"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "count(node_cpu_seconds_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\", mode='system'})","format": "time_series","hide": false,"instant": false,"interval": "30m","intervalFactor": 1,"legendFormat": "CPU Cores","refId": "B","step": 240},{"expr": "sum(node_load5{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"})","format": "time_series","hide": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Total 5m load","refId": "A","step": 240},{"expr": "avg(1 - avg(rate(node_cpu_seconds_total{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",mode=\"idle\"}[$interval])) by (instance)) * 100","format": "time_series","hide": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Overall average used%","refId": "F","step": 240}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "$job:Overall total 5m load & average CPU used%","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:8791","decimals": null,"format": "short","label": "Total 5m load","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:8792","decimals": 0,"format": "percent","label": "Overall average used%","logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"192.168.200.241:9100_总内存": "dark-red","内存_Avaliable": "#6ED0E0","内存_Cached": "#EF843C","内存_Free": "#629E51","内存_Total": "#6d1f62","内存_Used": "#eab839","可用": "#9ac48a","总内存": "#bf1b00"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 1,"fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 0,"gridPos": {"h": 7,"w": 8,"x": 8,"y": 8},"height": "300","hiddenSeries": false,"id": 195,"legend": {"alignAsTable": false,"avg": false,"current": true,"max": false,"min": false,"rightSide": false,"show": true,"sort": "current","sortDesc": false,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:2494","alias": "Total","color": "#C4162A","fill": 0},{"$$hashKey": "object:2495","alias": "Overall Average Used%","lines": false,"pointradius": 1,"points": true,"yaxis": 2}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "sum(node_memory_MemTotal_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"})","format": "time_series","hide": false,"instant": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Total","refId": "A","step": 4},{"expr": "sum(node_memory_MemTotal_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} - node_memory_MemAvailable_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"})","format": "time_series","hide": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Total Used","refId": "B","step": 4},{"expr": "(sum(node_memory_MemTotal_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"} - node_memory_MemAvailable_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}) / sum(node_memory_MemTotal_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}))*100","format": "time_series","hide": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Overall Average Used%","refId": "H"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "$job:Overall total memory & average memory used%","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:8938","decimals": null,"format": "bytes","label": "Total","logBase": 1,"max": null,"min": "0","show": true},{"$$hashKey": "object:8939","decimals": null,"format": "percent","label": "Overall Average Used%","logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 1,"description": "","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 0,"gridPos": {"h": 7,"w": 8,"x": 16,"y": 8},"hiddenSeries": false,"id": 197,"legend": {"alignAsTable": false,"avg": false,"current": true,"hideEmpty": false,"hideZero": false,"max": false,"min": false,"rightSide": false,"show": true,"sideWidth": null,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:2617","alias": "Overall Average Used%","lines": false,"pointradius": 1,"points": true,"yaxis": 2},{"$$hashKey": "object:2618","alias": "Total","color": "#C4162A"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "sum(avg(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance))","format": "time_series","instant": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Total","refId": "E"},{"expr": "sum(avg(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance)) - sum(avg(node_filesystem_free_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance))","format": "time_series","instant": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Total Used","refId": "C"},{"expr": "(sum(avg(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance)) - sum(avg(node_filesystem_free_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance))) *100/(sum(avg(node_filesystem_avail_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance))+(sum(avg(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance)) - sum(avg(node_filesystem_free_bytes{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",fstype=~\"xfs|ext.*\"})by(device,instance))))","format": "time_series","instant": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Overall Average Used%","refId": "A"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "$job:Overall total disk & average disk used%","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:8990","decimals": 1,"format": "bytes","label": "Total","logBase": 1,"max": null,"min": "0","show": true},{"$$hashKey": "object:8991","decimals": null,"format": "percent","label": "Overall Average Used%","logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}},{"collapsed": false,"datasource": "${DS__VICTORIAMETRICS}","gridPos": {"h": 1,"w": 24,"x": 0,"y": 15},"id": 189,"panels": [],"title": "Resource Details:【$show_hostname】","type": "row"},{"cacheTimeout": null,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"decimals": 0,"mappings": [{"id": 0,"op": "=","text": "N/A","type": 1,"value": "null"}],"nullValueMode": "null","thresholds": {"mode": "absolute","steps": [{"color": "rgba(245, 54, 54, 0.9)","value": null},{"color": "rgba(237, 129, 40, 0.89)","value": 1},{"color": "rgba(50, 172, 45, 0.97)","value": 3}]},"unit": "s"},"overrides": []},"gridPos": {"h": 2,"w": 2,"x": 0,"y": 16},"hideTimeOverride": true,"id": 15,"interval": null,"links": [],"maxDataPoints": 100,"options": {"colorMode": "value","graphMode": "none","justifyMode": "auto","orientation": "horizontal","reduceOptions": {"calcs": ["lastNotNull"],"fields": "","values": false},"textMode": "auto"},"pluginVersion": "7.2.0","targets": [{"expr": "avg(time() - node_boot_time_seconds{instance=~\"$node\"})","format": "time_series","hide": false,"instant": true,"interval": "","intervalFactor": 1,"legendFormat": "","refId": "A","step": 40}],"title": "Uptime","type": "stat"},{"datasource": "${DS__VICTORIAMETRICS}","fieldConfig": {"defaults": {"color": {"mode": "thresholds"},"custom": {},"decimals": 1,"mappings": [{"from": "","id": 1,"operator": "","text": "N/A","to": "","type": 1,"value": "0"}],"max": 100,"min": 0.1,"thresholds": {"mode": "absolute","steps": [{"color": "green","value": null},{"color": "#EAB839","value": 70},{"color": "red","value": 90}]},"unit": "percent"},"overrides": []},"gridPos": {"h": 6,"w": 3,"x": 2,"y": 16},"id": 177,"options": {"displayMode": "lcd","orientation": "horizontal","reduceOptions": {"calcs": ["last"],"fields": "","values": false},"showUnfilled": true},"pluginVersion": "7.2.0","targets": [{"expr": "100 - (avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"idle\"}[$interval])) * 100)","instant": true,"interval": "","legendFormat": "CPU Busy","refId": "A"},{"expr": "avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"iowait\"}[$interval])) * 100","hide": true,"instant": true,"interval": "","legendFormat": "IOwait使用率","refId": "C"},{"expr": "(1 - (node_memory_MemAvailable_bytes{instance=~\"$node\"} / (node_memory_MemTotal_bytes{instance=~\"$node\"})))* 100","instant": true,"interval": "","legendFormat": "Used RAM Memory","refId": "B"},{"expr": "(node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint=\"$maxmount\"}-node_filesystem_free_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint=\"$maxmount\"})*100 /(node_filesystem_avail_bytes {instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint=\"$maxmount\"}+(node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint=\"$maxmount\"}-node_filesystem_free_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint=\"$maxmount\"}))","hide": false,"instant": true,"interval": "","legendFormat": "Used Max Mount($maxmount)","refId": "D"},{"expr": "(1 - ((node_memory_SwapFree_bytes{instance=~\"$node\"} + 1)/ (node_memory_SwapTotal_bytes{instance=~\"$node\"} + 1))) * 100","instant": true,"interval": "","legendFormat": "Used SWAP","refId": "F"}],"timeFrom": null,"timeShift": null,"title": "","transformations": [],"type": "bargauge"},{"columns": [],"datasource": "${DS__VICTORIAMETRICS}","description": "In this kanban: the total disk, usage, available, and usage rate are consistent with the values of the Size, Used, Avail, and Use% columns of the df command, and the value of Use% will be rounded to one decimal place, which will be more accurate .\n\nNote: The Use% algorithm in df is: (size-free) * 100 / (avail + (size-free)), the result is divisible by this value, non-divisible by this value is +1, and the unit of the result is %.\nRefer to the df command source code:","fieldConfig": {"defaults": {"custom": {}},"overrides": []},"fontSize": "80%","gridPos": {"h": 6,"w": 10,"x": 5,"y": 16},"id": 181,"links": [{"targetBlank": true,"title": "https://github.com/coreutils/coreutils/blob/master/src/df.c","url": "https://github.com/coreutils/coreutils/blob/master/src/df.c"}],"pageSize": null,"scroll": true,"showHeader": true,"sort": {"col": 6,"desc": false},"styles": [{"$$hashKey": "object:307","alias": "Mounted on","align": "auto","colorMode": null,"colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"mappingType": 1,"pattern": "mountpoint","thresholds": [""],"type": "string","unit": "bytes"},{"$$hashKey": "object:308","alias": "Avail","align": "auto","colorMode": "value","colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 1,"mappingType": 1,"pattern": "Value #A","thresholds": ["10000000000","20000000000"],"type": "number","unit": "bytes"},{"$$hashKey": "object:309","alias": "Used","align": "auto","colorMode": "cell","colors": ["rgba(50, 172, 45, 0.97)","rgba(237, 129, 40, 0.89)","rgba(245, 54, 54, 0.9)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 1,"mappingType": 1,"pattern": "Value #B","thresholds": ["70","85"],"type": "number","unit": "percent"},{"$$hashKey": "object:310","alias": "Size","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 0,"link": false,"mappingType": 1,"pattern": "Value #C","thresholds": [],"type": "number","unit": "bytes"},{"$$hashKey": "object:311","alias": "Filesystem","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"link": false,"mappingType": 1,"pattern": "fstype","thresholds": [],"type": "string","unit": "short"},{"$$hashKey": "object:312","alias": "Device","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"dateFormat": "YYYY-MM-DD HH:mm:ss","decimals": 2,"link": false,"mappingType": 1,"pattern": "device","preserveFormat": false,"sanitize": false,"thresholds": [],"type": "string","unit": "short"},{"$$hashKey": "object:313","alias": "","align": "auto","colorMode": null,"colors": ["rgba(245, 54, 54, 0.9)","rgba(237, 129, 40, 0.89)","rgba(50, 172, 45, 0.97)"],"decimals": 2,"pattern": "/.*/","preserveFormat": true,"sanitize": false,"thresholds": [],"type": "hidden","unit": "short"}],"targets": [{"expr": "node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}-0","format": "table","hide": false,"instant": true,"interval": "","intervalFactor": 1,"legendFormat": "总量","refId": "C"},{"expr": "node_filesystem_avail_bytes {instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}-0","format": "table","hide": false,"instant": true,"interval": "10s","intervalFactor": 1,"legendFormat": "","refId": "A"},{"expr": "(node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}-node_filesystem_free_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}) *100/(node_filesystem_avail_bytes {instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}+(node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}-node_filesystem_free_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}))","format": "table","hide": false,"instant": true,"interval": "","intervalFactor": 1,"legendFormat": "","refId": "B"}],"title": "【$show_hostname】:Disk Space Used Basic(EXT?/XFS)","transform": "table","type": "table-old"},{"cacheTimeout": null,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"decimals": 2,"mappings": [{"id": 0,"op": "=","text": "N/A","type": 1,"value": "null"}],"nullValueMode": "connected","thresholds": {"mode": "absolute","steps": [{"color": "rgba(50, 172, 45, 0.97)","value": null},{"color": "rgba(237, 129, 40, 0.89)","value": 20},{"color": "#d44a3a","value": 50}]},"unit": "percent"},"overrides": []},"gridPos": {"h": 2,"w": 2,"x": 15,"y": 16},"id": 20,"interval": null,"links": [],"maxDataPoints": 100,"options": {"colorMode": "value","graphMode": "area","justifyMode": "auto","orientation": "horizontal","reduceOptions": {"calcs": ["last"],"fields": "","values": false},"textMode": "auto"},"pluginVersion": "7.2.0","targets": [{"expr": "avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"iowait\"}[$interval])) * 100","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "","refId": "A","step": 20}],"timeFrom": null,"timeShift": null,"title": "CPU iowait","type": "stat"},{"aliasColors": {"cn-shenzhen.i-wz9cq1dcb6zwc39ehw59_cni0_in": "light-red","cn-shenzhen.i-wz9cq1dcb6zwc39ehw59_cni0_in下载": "green","cn-shenzhen.i-wz9cq1dcb6zwc39ehw59_cni0_out上传": "yellow","cn-shenzhen.i-wz9cq1dcb6zwc39ehw59_eth0_in下载": "purple","cn-shenzhen.i-wz9cq1dcb6zwc39ehw59_eth0_out": "purple","cn-shenzhen.i-wz9cq1dcb6zwc39ehw59_eth0_out上传": "blue"},"bars": true,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","editable": true,"error": false,"fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 0,"grid": {},"gridPos": {"h": 6,"w": 7,"x": 17,"y": 16},"hiddenSeries": false,"id": 183,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": false,"show": false,"sort": "current","sortDesc": true,"total": true,"values": true},"lines": false,"linewidth": 2,"links": [],"nullPointMode": "null as zero","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 1,"points": false,"renderer": "flot","repeat": null,"seriesOverrides": [{"$$hashKey": "object:2970","alias": "/.*_transmit$/","transform": "negative-Y"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "increase(node_network_receive_bytes_total{instance=~\"$node\",device=~\"$device\"}[60m])","interval": "60m","intervalFactor": 1,"legendFormat": "{{device}}_receive","metric": "","refId": "A","step": 600,"target": ""},{"expr": "increase(node_network_transmit_bytes_total{instance=~\"$node\",device=~\"$device\"}[60m])","hide": false,"interval": "60m","intervalFactor": 1,"legendFormat": "{{device}}_transmit","refId": "B","step": 600}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Internet traffic per hour $device","tooltip": {"msResolution": false,"shared": true,"sort": 0,"value_type": "cumulative"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:2977","format": "bytes","label": "transmit(-)/receive(+)","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:2978","format": "short","logBase": 1,"max": null,"min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"cacheTimeout": null,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"mappings": [{"id": 0,"op": "=","text": "N/A","type": 1,"value": "null"}],"nullValueMode": "null","thresholds": {"mode": "absolute","steps": [{"color": "rgba(245, 54, 54, 0.9)","value": null},{"color": "rgba(237, 129, 40, 0.89)","value": 1},{"color": "rgba(50, 172, 45, 0.97)","value": 2}]},"unit": "short"},"overrides": []},"gridPos": {"h": 2,"w": 2,"x": 0,"y": 18},"id": 14,"interval": null,"links": [],"maxDataPoints": 100,"options": {"colorMode": "value","graphMode": "none","justifyMode": "auto","orientation": "horizontal","reduceOptions": {"calcs": ["lastNotNull"],"fields": "","values": false},"textMode": "value"},"pluginVersion": "7.2.0","targets": [{"expr": "count(node_cpu_seconds_total{instance=~\"$node\", mode='system'})","format": "time_series","instant": true,"interval": "","intervalFactor": 1,"legendFormat": "","refId": "A","step": 20}],"title": "CPU Cores","type": "stat"},{"cacheTimeout": null,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"mappings": [{"$$hashKey": "object:193","id": 0,"op": "=","text": "N/A","type": 1,"value": "null"}],"nullValueMode": "null","thresholds": {"mode": "absolute","steps": [{"color": "rgba(245, 54, 54, 0.9)","value": null},{"color": "rgba(237, 129, 40, 0.89)","value": 100000},{"color": "rgba(50, 172, 45, 0.97)","value": 1000000}]},"unit": "short"},"overrides": []},"gridPos": {"h": 2,"w": 2,"x": 15,"y": 18},"id": 179,"interval": null,"links": [],"maxDataPoints": 100,"options": {"colorMode": "value","graphMode": "none","justifyMode": "auto","orientation": "horizontal","reduceOptions": {"calcs": ["lastNotNull"],"fields": "","values": false},"textMode": "auto"},"pluginVersion": "7.2.0","targets": [{"expr": "avg(node_filesystem_files_free{instance=~\"$node\",mountpoint=\"$maxmount\",fstype=~\"ext.?|xfs\"})","format": "time_series","instant": true,"interval": "","intervalFactor": 1,"legendFormat": "","refId": "A","step": 20}],"title": "Free inodes:$maxmount ","type": "stat"},{"cacheTimeout": null,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"decimals": 0,"mappings": [{"id": 0,"op": "=","text": "N/A","type": 1,"value": "null"}],"nullValueMode": "null","thresholds": {"mode": "absolute","steps": [{"color": "rgba(245, 54, 54, 0.9)","value": null},{"color": "rgba(237, 129, 40, 0.89)","value": 2},{"color": "rgba(50, 172, 45, 0.97)","value": 3}]},"unit": "bytes"},"overrides": []},"gridPos": {"h": 2,"w": 2,"x": 0,"y": 20},"id": 75,"interval": null,"links": [],"maxDataPoints": 100,"options": {"colorMode": "value","graphMode": "none","justifyMode": "auto","orientation": "horizontal","reduceOptions": {"calcs": ["lastNotNull"],"fields": "","values": false},"textMode": "auto"},"pluginVersion": "7.2.0","targets": [{"expr": "sum(node_memory_MemTotal_bytes{instance=~\"$node\"})","format": "time_series","instant": true,"interval": "","intervalFactor": 1,"legendFormat": "{{instance}}","refId": "A","step": 20}],"title": "Total RAM","type": "stat"},{"cacheTimeout": null,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"mappings": [{"$$hashKey": "object:271","id": 0,"op": "=","text": "N/A","type": 1,"value": "null"}],"nullValueMode": "null","thresholds": {"mode": "absolute","steps": [{"color": "rgba(245, 54, 54, 0.9)","value": null},{"color": "rgba(237, 129, 40, 0.89)","value": 1024},{"color": "rgba(50, 172, 45, 0.97)","value": 10000}]},"unit": "locale"},"overrides": []},"gridPos": {"h": 2,"w": 2,"x": 15,"y": 20},"id": 178,"interval": null,"links": [],"maxDataPoints": 100,"options": {"colorMode": "value","graphMode": "none","justifyMode": "auto","orientation": "horizontal","reduceOptions": {"calcs": ["lastNotNull"],"fields": "","values": false},"textMode": "auto"},"pluginVersion": "7.2.0","targets": [{"expr": "avg(node_filefd_maximum{instance=~\"$node\"})","format": "time_series","instant": true,"intervalFactor": 1,"legendFormat": "","refId": "A","step": 20}],"title": "Total filefd","type": "stat"},{"aliasColors": {"192.168.200.241:9100_Total": "dark-red","Idle - Waiting for something to happen": "#052B51","guest": "#9AC48A","idle": "#052B51","iowait": "#EAB839","irq": "#BF1B00","nice": "#C15C17","sdb_每秒I/O操作%": "#d683ce","softirq": "#E24D42","steal": "#FCE2DE","system": "#508642","user": "#5195CE","磁盘花费在I/O操作占比": "#ba43a9"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"description": "","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 0,"gridPos": {"h": 8,"w": 8,"x": 0,"y": 22},"hiddenSeries": false,"id": 7,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"rightSide": false,"show": true,"sideWidth": null,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"maxPerRow": 6,"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","repeat": null,"seriesOverrides": [{"$$hashKey": "object:3051","alias": "/.*Total/","color": "#C4162A","fill": 0}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"system\"}[$interval])) by (instance) *100","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "System","refId": "A","step": 20},{"expr": "avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"user\"}[$interval])) by (instance) *100","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "User","refId": "B","step": 240},{"expr": "avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"iowait\"}[$interval])) by (instance) *100","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "Iowait","refId": "D","step": 240},{"expr": "(1 - avg(rate(node_cpu_seconds_total{instance=~\"$node\",mode=\"idle\"}[$interval])) by (instance))*100","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "Total","refId": "F","step": 240}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "CPU% Basic","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:11294","decimals": 0,"format": "percent","label": "","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:11295","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"192.168.200.241:9100_总内存": "dark-red","使用率": "yellow","内存_Avaliable": "#6ED0E0","内存_Cached": "#EF843C","内存_Free": "#629E51","内存_Total": "#6d1f62","内存_Used": "#eab839","可用": "#9ac48a","总内存": "#bf1b00"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 0,"gridPos": {"h": 8,"w": 8,"x": 8,"y": 22},"height": "300","hiddenSeries": false,"id": 156,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"rightSide": false,"show": true,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:3234","alias": "Total","color": "#C4162A","fill": 0},{"$$hashKey": "object:3235","alias": "Used%","color": "rgb(0, 209, 255)","lines": false,"pointradius": 1,"points": true,"yaxis": 2}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "node_memory_MemTotal_bytes{instance=~\"$node\"}","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "Total","refId": "A","step": 4},{"expr": "node_memory_MemTotal_bytes{instance=~\"$node\"} - node_memory_MemAvailable_bytes{instance=~\"$node\"}","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "Used","refId": "B","step": 4},{"expr": "node_memory_MemAvailable_bytes{instance=~\"$node\"}","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "Avaliable","refId": "F","step": 4},{"expr": "node_memory_Buffers_bytes{instance=~\"$node\"}","format": "time_series","hide": true,"interval": "","intervalFactor": 1,"legendFormat": "内存_Buffers","refId": "D","step": 4},{"expr": "node_memory_MemFree_bytes{instance=~\"$node\"}","format": "time_series","hide": true,"intervalFactor": 1,"legendFormat": "内存_Free","refId": "C","step": 4},{"expr": "node_memory_Cached_bytes{instance=~\"$node\"}","format": "time_series","hide": true,"intervalFactor": 1,"legendFormat": "内存_Cached","refId": "E","step": 4},{"expr": "node_memory_MemTotal_bytes{instance=~\"$node\"} - (node_memory_Cached_bytes{instance=~\"$node\"} + node_memory_Buffers_bytes{instance=~\"$node\"} + node_memory_MemFree_bytes{instance=~\"$node\"})","format": "time_series","hide": true,"intervalFactor": 1,"refId": "G"},{"expr": "(1 - (node_memory_MemAvailable_bytes{instance=~\"$node\"} / (node_memory_MemTotal_bytes{instance=~\"$node\"})))* 100","format": "time_series","hide": false,"interval": "30m","intervalFactor": 10,"legendFormat": "Used%","refId": "H"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Memory Basic","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3130","format": "bytes","label": null,"logBase": 1,"max": null,"min": "0","show": true},{"$$hashKey": "object:3131","format": "percent","label": "Utilization%","logBase": 1,"max": "100","min": "0","show": true}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"192.168.10.227:9100_em1_in下载": "super-light-green","192.168.10.227:9100_em1_out上传": "dark-blue"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 0,"gridPos": {"h": 8,"w": 8,"x": 16,"y": 22},"height": "300","hiddenSeries": false,"id": 157,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"rightSide": false,"show": true,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 1,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 2,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:3308","alias": "/.*_transmit$/","transform": "negative-Y"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "rate(node_network_receive_bytes_total{instance=~'$node',device=~\"$device\"}[$interval])*8","format": "time_series","interval": "","intervalFactor": 1,"legendFormat": "{{device}}_receive","refId": "A","step": 4},{"expr": "rate(node_network_transmit_bytes_total{instance=~'$node',device=~\"$device\"}[$interval])*8","format": "time_series","interval": "","intervalFactor": 1,"legendFormat": "{{device}}_transmit","refId": "B","step": 4}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Network bandwidth usage per second $device","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3315","format": "bps","label": "transmit(-)/receive(+)","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:3316","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"15分钟": "#6ED0E0","1分钟": "#BF1B00","5分钟": "#CCA300"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"editable": true,"error": false,"fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 1,"grid": {},"gridPos": {"h": 8,"w": 8,"x": 0,"y": 30},"height": "300","hiddenSeries": false,"id": 13,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"rightSide": false,"show": true,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"maxPerRow": 6,"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","repeat": null,"seriesOverrides": [{"$$hashKey": "object:3389","alias": "/.*CPU cores/","color": "#C4162A"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "node_load1{instance=~\"$node\"}","format": "time_series","instant": false,"interval": "","intervalFactor": 1,"legendFormat": "1m","metric": "","refId": "A","step": 20,"target": ""},{"expr": "node_load5{instance=~\"$node\"}","format": "time_series","instant": false,"interval": "","intervalFactor": 1,"legendFormat": "5m","refId": "B","step": 20},{"expr": "node_load15{instance=~\"$node\"}","format": "time_series","instant": false,"interval": "","intervalFactor": 1,"legendFormat": "15m","refId": "C","step": 20},{"expr": " sum(count(node_cpu_seconds_total{instance=~\"$node\", mode='system'}) by (cpu,instance)) by(instance)","format": "time_series","instant": false,"interval": "","intervalFactor": 1,"legendFormat": "CPU cores","refId": "D","step": 20}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "System Load","tooltip": {"msResolution": false,"shared": true,"sort": 2,"value_type": "cumulative"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3396","format": "short","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:3397","format": "short","logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"vda_write": "#6ED0E0"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"description": "Per second read / write bytes ","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 1,"gridPos": {"h": 8,"w": 8,"x": 8,"y": 30},"height": "300","hiddenSeries": false,"id": 168,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"show": true,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:3474","alias": "/.*_Read bytes$/","transform": "negative-Y"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "rate(node_disk_read_bytes_total{instance=~\"$node\"}[$interval])","format": "time_series","interval": "","intervalFactor": 1,"legendFormat": "{{device}}_Read bytes","refId": "A","step": 10},{"expr": "rate(node_disk_written_bytes_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}_Written bytes","refId": "B","step": 10}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Disk R/W Data","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3481","decimals": null,"format": "Bps","label": "Bytes read (-) / write (+)","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:3482","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 1,"description": "","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 0,"gridPos": {"h": 8,"w": 8,"x": 16,"y": 30},"hiddenSeries": false,"id": 174,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"rightSide": false,"show": true,"sideWidth": null,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:3554","alias": "/Inodes.*/","yaxis": 2}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "(node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}-node_filesystem_free_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}) *100/(node_filesystem_avail_bytes {instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}+(node_filesystem_size_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}-node_filesystem_free_bytes{instance=~'$node',fstype=~\"ext.*|xfs\",mountpoint !~\".*pod.*\"}))","format": "time_series","instant": false,"interval": "","intervalFactor": 1,"legendFormat": "{{mountpoint}}","refId": "A"},{"expr": "node_filesystem_files_free{instance=~'$node',fstype=~\"ext.?|xfs\"} / node_filesystem_files{instance=~'$node',fstype=~\"ext.?|xfs\"}","hide": true,"interval": "","legendFormat": "Inodes:{{instance}}:{{mountpoint}}","refId": "B"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Disk Space Used% Basic","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3561","decimals": null,"format": "percent","label": "","logBase": 1,"max": "100","min": "0","show": true},{"$$hashKey": "object:3562","decimals": 2,"format": "percentunit","label": null,"logBase": 1,"max": "1","min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"vda_write": "#6ED0E0"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"description": "Read/write completions per second\n\nWrites completed: 每个磁盘分区每秒写完成次数\n\nIO now 每个磁盘分区每秒正在处理的输入/输出请求数","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 0,"gridPos": {"h": 9,"w": 8,"x": 0,"y": 38},"height": "300","hiddenSeries": false,"id": 161,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"show": true,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 1,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:3711","alias": "/.*_Reads completed$/","transform": "negative-Y"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "rate(node_disk_reads_completed_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}_Reads completed","refId": "A","step": 10},{"expr": "rate(node_disk_writes_completed_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": false,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}_Writes completed","refId": "B","step": 10},{"expr": "node_disk_io_now{instance=~\"$node\"}","format": "time_series","hide": true,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}","refId": "C"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Disk IOps Completed(IOPS)","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3718","decimals": null,"format": "iops","label": "IO read (-) / write (+)","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:3719","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"Idle - Waiting for something to happen": "#052B51","guest": "#9AC48A","idle": "#052B51","iowait": "#EAB839","irq": "#BF1B00","nice": "#C15C17","sdb_每秒I/O操作%": "#d683ce","softirq": "#E24D42","steal": "#FCE2DE","system": "#508642","user": "#5195CE","磁盘花费在I/O操作占比": "#ba43a9"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": null,"description": "The time spent on I/O in the natural time of each second.(wall-clock time)","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 0,"gridPos": {"h": 9,"w": 8,"x": 8,"y": 38},"hiddenSeries": false,"id": 175,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": false,"rightSide": false,"show": true,"sideWidth": null,"sort": null,"sortDesc": null,"total": false,"values": true},"lines": true,"linewidth": 1,"links": [],"maxPerRow": 6,"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "rate(node_disk_io_time_seconds_total{instance=~\"$node\"}[$interval])","format": "time_series","interval": "","intervalFactor": 1,"legendFormat": "{{device}}_ IO time","refId": "C"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Time Spent Doing I/Os","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:3796","decimals": null,"format": "percentunit","label": "","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:3797","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"vda": "#6ED0E0"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"description": "Time spent on each read/write operation","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 1,"fillGradient": 1,"gridPos": {"h": 9,"w": 8,"x": 16,"y": 38},"height": "300","hiddenSeries": false,"id": 160,"legend": {"alignAsTable": true,"avg": true,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": true,"show": true,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null as zero","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:4023","alias": "/,*_Read time$/","transform": "negative-Y"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "rate(node_disk_read_time_seconds_total{instance=~\"$node\"}[$interval]) / rate(node_disk_reads_completed_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}_Read time","refId": "B"},{"expr": "rate(node_disk_write_time_seconds_total{instance=~\"$node\"}[$interval]) / rate(node_disk_writes_completed_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}_Write time","refId": "C"},{"expr": "rate(node_disk_io_time_seconds_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": true,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}","refId": "A","step": 10},{"expr": "rate(node_disk_io_time_weighted_seconds_total{instance=~\"$node\"}[$interval])","format": "time_series","hide": true,"interval": "","intervalFactor": 1,"legendFormat": "{{device}}_加权","refId": "D"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Disk R/W Time(Reference: less than 100ms)(beta)","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:4030","format": "s","label": "Time read (-) / write (+)","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:4031","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": false}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"192.168.200.241:9100_TCP_alloc": "semi-dark-blue","TCP": "#6ED0E0","TCP_alloc": "blue"},"bars": false,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","decimals": 2,"description": "Sockets_used - Sockets currently in use\n\nCurrEstab - TCP connections for which the current state is either ESTABLISHED or CLOSE- WAIT\n\nTCP_alloc - Allocated sockets\n\nTCP_tw - Sockets wating close\n\nUDP_inuse - Udp sockets currently in use\n\nRetransSegs - TCP retransmission packets\n\nOutSegs - Number of packets sent by TCP\n\nInSegs - Number of packets received by TCP","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 0,"gridPos": {"h": 8,"w": 16,"x": 0,"y": 47},"height": "300","hiddenSeries": false,"id": 158,"interval": "","legend": {"alignAsTable": true,"avg": false,"current": true,"hideEmpty": true,"hideZero": true,"max": true,"min": false,"rightSide": true,"show": true,"sideWidth": null,"sort": "current","sortDesc": true,"total": false,"values": true},"lines": true,"linewidth": 1,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 5,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:4103","alias": "/.*Sockets_used/","color": "#E02F44","lines": false,"pointradius": 1,"points": true,"yaxis": 2}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "node_netstat_Tcp_CurrEstab{instance=~'$node'}","format": "time_series","hide": false,"instant": false,"interval": "","intervalFactor": 1,"legendFormat": "CurrEstab","refId": "A","step": 20},{"expr": "node_sockstat_TCP_tw{instance=~'$node'}","format": "time_series","interval": "","intervalFactor": 1,"legendFormat": "TCP_tw","refId": "D"},{"expr": "node_sockstat_sockets_used{instance=~'$node'}","hide": false,"interval": "30m","intervalFactor": 1,"legendFormat": "Sockets_used","refId": "B"},{"expr": "node_sockstat_UDP_inuse{instance=~'$node'}","interval": "","legendFormat": "UDP_inuse","refId": "C"},{"expr": "node_sockstat_TCP_alloc{instance=~'$node'}","interval": "","legendFormat": "TCP_alloc","refId": "E"},{"expr": "rate(node_netstat_Tcp_PassiveOpens{instance=~'$node'}[$interval])","hide": true,"interval": "","legendFormat": "{{instance}}_Tcp_PassiveOpens","refId": "G"},{"expr": "rate(node_netstat_Tcp_ActiveOpens{instance=~'$node'}[$interval])","hide": true,"interval": "","legendFormat": "{{instance}}_Tcp_ActiveOpens","refId": "F"},{"expr": "rate(node_netstat_Tcp_InSegs{instance=~'$node'}[$interval])","interval": "","legendFormat": "Tcp_InSegs","refId": "H"},{"expr": "rate(node_netstat_Tcp_OutSegs{instance=~'$node'}[$interval])","interval": "","legendFormat": "Tcp_OutSegs","refId": "I"},{"expr": "rate(node_netstat_Tcp_RetransSegs{instance=~'$node'}[$interval])","hide": false,"interval": "","legendFormat": "Tcp_RetransSegs","refId": "J"},{"expr": "rate(node_netstat_TcpExt_ListenDrops{instance=~'$node'}[$interval])","hide": true,"interval": "","legendFormat": "","refId": "K"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Network Sockstat","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"transformations": [],"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:4118","format": "short","label": null,"logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:4119","format": "short","label": "Total_Sockets_used","logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}},{"aliasColors": {"filefd_192.168.200.241:9100": "super-light-green","switches_192.168.200.241:9100": "semi-dark-red","使用的文件描述符_10.118.72.128:9100": "red","每秒上下文切换次数_10.118.71.245:9100": "yellow","每秒上下文切换次数_10.118.72.128:9100": "yellow"},"bars": false,"cacheTimeout": null,"dashLength": 10,"dashes": false,"datasource": "${DS__VICTORIAMETRICS}","description": "","fieldConfig": {"defaults": {"custom": {},"links": []},"overrides": []},"fill": 0,"fillGradient": 1,"gridPos": {"h": 8,"w": 8,"x": 16,"y": 47},"hiddenSeries": false,"hideTimeOverride": false,"id": 16,"legend": {"alignAsTable": false,"avg": false,"current": true,"max": false,"min": false,"rightSide": false,"show": true,"total": false,"values": true},"lines": true,"linewidth": 2,"links": [],"nullPointMode": "null","options": {"alertThreshold": true},"percentage": false,"pluginVersion": "7.2.0","pointradius": 1,"points": false,"renderer": "flot","seriesOverrides": [{"$$hashKey": "object:4197","alias": "switches","color": "#FADE2A","lines": false,"pointradius": 1,"points": true,"yaxis": 2},{"$$hashKey": "object:4198","alias": "used filefd","color": "#F2495C"}],"spaceLength": 10,"stack": false,"steppedLine": false,"targets": [{"expr": "node_filefd_allocated{instance=~\"$node\"}","format": "time_series","instant": false,"interval": "","intervalFactor": 5,"legendFormat": "used filefd","refId": "B"},{"expr": "rate(node_context_switches_total{instance=~\"$node\"}[$interval])","interval": "","intervalFactor": 5,"legendFormat": "switches","refId": "A"},{"expr": "  (node_filefd_allocated{instance=~\"$node\"}/node_filefd_maximum{instance=~\"$node\"}) *100","format": "time_series","hide": true,"instant": false,"interval": "","intervalFactor": 5,"legendFormat": "使用的文件描述符占比_{{instance}}","refId": "C"}],"thresholds": [],"timeFrom": null,"timeRegions": [],"timeShift": null,"title": "Open  File Descriptor(left)/Context switches(right)","tooltip": {"shared": true,"sort": 2,"value_type": "individual"},"type": "graph","xaxis": {"buckets": null,"mode": "time","name": null,"show": true,"values": []},"yaxes": [{"$$hashKey": "object:4219","format": "short","label": "used filefd","logBase": 1,"max": null,"min": null,"show": true},{"$$hashKey": "object:4220","format": "short","label": "context_switches","logBase": 1,"max": null,"min": null,"show": true}],"yaxis": {"align": false,"alignLevel": null}}],"refresh": "","schemaVersion": 26,"style": "dark","tags": ["Prometheus","node_exporter","StarsL.cn"],"templating": {"list": [{"allValue": "","current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "label_values(origin_prometheus)","hide": 0,"includeAll": false,"label": "Origin_prom","multi": false,"name": "origin_prometheus","options": [],"query": "label_values(origin_prometheus)","refresh": 1,"regex": "","skipUrlSync": false,"sort": 5,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\"}, job)","hide": 0,"includeAll": false,"label": "JOB","multi": false,"name": "job","options": [],"query": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\"}, job)","refresh": 1,"regex": "","skipUrlSync": false,"sort": 5,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}, nodename)","hide": 0,"includeAll": true,"label": "Host","multi": false,"name": "hostname","options": [],"query": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}, nodename)","refresh": 1,"regex": "","skipUrlSync": false,"sort": 5,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"allFormat": "glob","allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",nodename=~\"$hostname\"},instance)","hide": 0,"includeAll": false,"label": "Instance","multi": true,"multiFormat": "regex values","name": "node","options": [],"query": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",nodename=~\"$hostname\"},instance)","refresh": 1,"regex": "","skipUrlSync": false,"sort": 5,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"allFormat": "glob","allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "label_values(node_network_info{origin_prometheus=~\"$origin_prometheus\",device!~'tap.*|veth.*|br.*|docker.*|virbr.*|lo.*|cni.*'},device)","hide": 0,"includeAll": true,"label": "NIC","multi": true,"multiFormat": "regex values","name": "device","options": [],"query": "label_values(node_network_info{origin_prometheus=~\"$origin_prometheus\",device!~'tap.*|veth.*|br.*|docker.*|virbr.*|lo.*|cni.*'},device)","refresh": 1,"regex": "","skipUrlSync": false,"sort": 1,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"auto": false,"auto_count": 100,"auto_min": "10s","current": {"selected": false,"text": "2m","value": "2m"},"hide": 0,"label": "Interval","name": "interval","options": [{"selected": false,"text": "30s","value": "30s"},{"selected": false,"text": "1m","value": "1m"},{"selected": true,"text": "2m","value": "2m"},{"selected": false,"text": "3m","value": "3m"},{"selected": false,"text": "5m","value": "5m"},{"selected": false,"text": "10m","value": "10m"},{"selected": false,"text": "30m","value": "30m"}],"query": "30s,1m,2m,3m,5m,10m,30m","queryValue": "","refresh": 2,"skipUrlSync": false,"type": "interval"},{"allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "query_result(topk(1,sort_desc (max(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",instance=~'$node',fstype=~\"ext.?|xfs\",mountpoint!~\".*pods.*\"}) by (mountpoint))))","hide": 2,"includeAll": false,"label": "maxmount","multi": false,"name": "maxmount","options": [],"query": "query_result(topk(1,sort_desc (max(node_filesystem_size_bytes{origin_prometheus=~\"$origin_prometheus\",instance=~'$node',fstype=~\"ext.?|xfs\",mountpoint!~\".*pods.*\"}) by (mountpoint))))","refresh": 2,"regex": "/.*\\\"(.*)\\\".*/","skipUrlSync": false,"sort": 5,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",instance=~\"$node\"}, nodename)","hide": 2,"includeAll": false,"label": "show_hostname","multi": false,"name": "show_hostname","options": [],"query": "label_values(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\",instance=~\"$node\"}, nodename)","refresh": 1,"regex": "","skipUrlSync": false,"sort": 5,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false},{"allValue": null,"current": {},"datasource": "${DS__VICTORIAMETRICS}","definition": "query_result(count(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}))","hide": 2,"includeAll": false,"label": "total_servers","multi": false,"name": "total","options": [],"query": "query_result(count(node_uname_info{origin_prometheus=~\"$origin_prometheus\",job=~\"$job\"}))","refresh": 1,"regex": "/{} (.*) .*/","skipUrlSync": false,"sort": 0,"tagValuesQuery": "","tags": [],"tagsQuery": "","type": "query","useTags": false}]},"time": {"from": "now-12h","to": "now"},"timepicker": {"hidden": false,"now": true,"refresh_intervals": ["15s","30s","1m","5m","15m","30m"],"time_options": ["5m","15m","1h","6h","12h","24h","2d","7d","30d"]},"timezone": "browser","title": "服务器监控","uid": "xfpJB9FGz","version": 2
}

通过网盘分享的文件:node-exporter.json
链接: https://pan.baidu.com/s/1OkaIlBjQ4JknkJcw7BF5Uw?pwd=9gd9 提取码: 9gd9

五.效果展示

prometheus+alertmanager+邮件告警

 

grafana面板效果

 

六.涉及离线包

包含镜像包(X86版本)、脚本文件

通过网盘分享的文件:prometheus.tgz
链接: https://pan.baidu.com/s/1ShVWSpPB2OhPdxsFTcdu8g?pwd=g7zd 提取码: g7zd

 

相关文章:

docker-compose部署prometheus+grafana+node_exporter+alertmanager规则+邮件告警

目录 一.docker-compose文件 二.配置文件 三.文件层级关系,docker-compose和配置文件位于同级目录 四.node_exporter页面json文件 五.效果展示 prometheusalertmanager邮件告警 grafana面板效果 六.涉及离线包 一.docker-compose文件 [rootsulibao prometh…...

CPM:大规模生成式中文预训练语言模型

摘要 预训练语言模型(PLMs)已被证明对各种下游自然语言处理(NLP)任务有益。最近,GPT-3 以 1750 亿参数和 570GB 训练数据引起了广泛关注,因为它具备少样本(甚至零样本)学习的能力。…...

k8s scheduler几种扩展方式的关系及区别

网上关于scheduler扩展介绍的文章很多,但都是东说一句西说一嘴,完全没有逻辑性,对于逻辑建构者看着很痛苦,这篇文章不会深入教你怎么扩展,而是教你几种扩展方式的关系和逻辑结构: 目前Kubernetes支持五种方…...

Spring Boot 3.4.3 基于 SpringDoc 2 和 Swagger 3 实现项目接口文档管理

在现代企业级应用开发中,前后端分离已成为主流模式,前端负责界面呈现,后端专注提供 RESTful API 接口。然而,接口文档的编写和维护往往是开发过程中的痛点。Spring Boot 3.4.3 结合 SpringDoc 2 和 Swagger 3,为开发者…...

前端D3.js面试题及参考答案

目录 解释 D3.js 中 enter ()、update ()、exit () 的作用及典型应用场景 描述数据连接(Data Join)的原理,如何通过 data () 方法实现数据集与 DOM 元素的动态绑定? 如何利用 datum () 实现单个元素的数据绑定?与 data () 有何区别? 在动态数据更新时,如何通过 merge…...

Docker实现MySQL主从复制配置【简易版】

Docker实现MySQL主从复制配置 环境准备 安装docker 拉取MySQL 8.0镜像 docker pull mysql:8.0#检查 docker images | grep mysql代码流程 由于Mysql8.0的ssl验证十分繁琐,在创建容器的时候一定要禁掉 创建自定义网络 docker network create mysql-replication-ne…...

IDEA中打开项目Vue+Vue基本语法

一、IDEA中打开项目 1.IDEA中安装Vue基本插件 2.项目结构 项目根目录 node_modules : npm 加载的项目依赖模块 public : 存放静态资源,如图片、视频等。 src : 项目源码目录,包含主要的开发文件。 index.html : 首页入口文件,可以添…...

【深度学习新浪潮】图像修复(Image Inpainting)技术综述:定义、进展与应用展望

本文为精简版,完整技术细节与参考文献可与作者讨论。 1. 图像修复的定义与核心目标 图像修复(Image Inpainting)是一种通过算法手段填补图像中缺失区域或移除不需要对象的技术,其核心目标是利用图像上下文信息生成与周围像素一致且视觉自然的内容。该技术通过计算机视觉和…...

【实战】解决图片 Hover 抖动问题的完整指南

在开发网站时,很多人都会遇到一个常见问题:鼠标移动到图片上,图片放大,结果发生抖动或闪烁。这个问题往往伴随着后端接口请求、JS 动态追加 DOM 等复杂行为。 本文将深入剖析这个问题的成因,并提供一套彻底的解决方案…...

java容器

一、List 接口实现类 1. ​ArrayList 特性:基于动态数组实现,支持快速随机访问(时间复杂度 O(1)),但插入/删除元素时需移动后续元素(时间复杂度 O(n)) 一、核心方法分类 ​添加元素 add(E e):尾部追加元素,均摊时间复杂度O(1)add(int index, E element):指定位置插入…...

arthas之jvm相关命令

文章目录 1. dashboard2. thread线程相关3. jvmTHREAD相关文件描述符相关 4. sysprop5. 小结6. sysenv7. vmoption8. getstatic9. ognl10. 小结 1. dashboard 作用:显示当前系统的实时数据面板,按q或ctrlc退出 数据说明 ID: Java级别的线程ID&#xff…...

UDP视频传输中的丢包和播放花屏处理方法

在处理UDP视频传输中的丢包和花屏问题时,需要结合编码优化、网络传输策略和接收端纠错技术。以下是分步骤的解决方案: 1. 前向纠错(FEC,Forward Error Correction) 原理:在发送数据时附加冗余包,接收方通过冗余信息恢复丢失的数据包。 实现方法: 使用Reed-Solomon、XO…...

蓝桥杯 班级活动

问题描述 小明的老师准备组织一次班级活动。班上一共有 n 名同学(n 为偶数),老师想把所有同学进行分组,每两名同学一组。 为了公平,老师给每名同学随机分配了一个 n 以内的正整数作为 id,第 i 名同学的 i…...

Open webui的使用

问题 之前本地量化模型管理器ollama的文章,我们知道可以通过ollama来管理本地量化模型,也能够在命令行中与相关模型进行对话。现在我们想要在有个web页面通过浏览器来与本地模型对话。这里我们就使用Open webui作为界面来与本地模型对话。 安装启动 这…...

页面重构过程中如何保证良好的跨浏览器一致性?

在页面重构的过程中,为了确保网页能够在不同的浏览器中呈现一致的效果,我们需要采取一系列措施来提高跨浏览器的一致性。以下是几个关键步骤和技术要点: 使用标准化的HTML和CSS:始终遵循最新的Web标准编写代码,例如采用…...

Python库与Excel

目录 一、库 1、Python自带的库 2、第三方库 3、第三方库的安装 二、import的用法 三、datetime库 1、处理日期 2、处理时刻 3、局限性 四、random库 1、函数 2、随机种子 3、发牌模拟器 五、jieba库 六、openpyxl库 1、表格读取 2、表格元素遍历 3、工作表的…...

记录一下最近参与实习 外包 社招流程里的一些感悟

记录一下最近参与实习 外包 社招流程里的一些感悟 1.简历门面要重视 1.简历非常重要,它是你的门面 初步了解到你的一个实习/工作经历,然后掌握的技术栈,是否与当前项目匹配,哪些模块上的设计是我们想要重点关注的,可…...

流动的梦境:GPT-4o 的自回归图像生成深度解析

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...

HarmonyOS NEXT开发进阶(十四):HarmonyOS应用开发者基础认证试题集汇总及答案解析

文章目录 一、前言二、判断题(134道)三、单选题(210道)四、多选题(123道)五、拓展阅读 一、前言 鸿蒙原生技能学习阶段,通过官方认证的资格十分有必要,在项目实战前掌握基础开发理论…...

Visual Studio Code(简称 VS Code)下载与使用教程1(新建文件,语法高亮,快捷键,主题,快捷指令)

简介 由 微软(Microsoft) 开发的 免费、开源、跨平台 的 代码编辑器,广泛用于编程开发、文本编辑和调试。 主要功能 代码编辑:支持几乎所有编程语言(Python、JavaScript、Java、C、Go 等),提供…...

3.28前端模拟面试

针对你 1.5 年的前端经验,结合 Vue 3、TypeScript、微前端(qiankun)等背景,我准备了一套模拟面试题,偏向场景化问题,考察你的实战经验和思维能力。 一、工程化 & 架构 你们的前端项目使用 qiankun 做微…...

pip 安装某个包之后,Jupyter Lab仍旧显示包冲突;例如:Numba needs NumPy 2.1 or less. Got NumPy 2.2.

异常提示 Numba needs NumPy 2.1 or less. Got NumPy 2.2. --------------------------------------------------------------------------- ImportError Traceback (most recent call last) Cell In[8], line 53 import pywt4 import matplot…...

Python:爬虫概念与分类

网络请求: https://www.baidu.com url——统一资源定位符 请求过程: 客户端,指web浏览器向服务器发送请求 请求:请求网址(request url);请求方法(request methods);请求头(request header)&…...

flask开发中设置Flask SQLAlchemy 的 db.Column 只存储非负整数(即 0 或正整数)

如果你想控制一个 Flask SQLAlchemy 的 db.Column 只存储非负整数(即 0 或正整数),你可以在模型中使用验证来确保这一点。一种常见的方法是使用模型的 validate 方法或者在执行插入或更新操作时进行检查。 以下是实现这一目标的几种方法&…...

从0到1解决项目问题经验-Vue3前端

问题1: 我有文件里面这么一段代码,但是现在有个问题,就是在设备信息详情的抽屉页面中,当我首次点击查看的时候,显示的物流中心名称现在是跟"deviceInfo.logisticsCenterName"做的绑定,于是现在显…...

Vue.js的CSS过渡与动画:常用案例解析

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 🍚 蓝桥云课签约作者、…...

【论文阅读】Co2l: Contrastive continual learning

原文链接:[2106.14413] Co$^2$L: Contrastive Continual Learning 阅读本文前,需要对持续学习的基本概念以及面临的问题有大致了解,可参考综述: Wang L, Zhang X, Su H, et al. A comprehensive survey of continual learning: …...

Python给对象数组排序

文章目录 1. 使用sorted()函数(返回新的排序后的列表)2. 使用list.sort()方法(原地排序,不返回新列表)3. 如果数据结构是集合(set),集合本身是无序的,无法直接排序&#…...

Docker-清理容器空间prune

docker system prune -a 是一个非常有用的命令,用于清理 Docker 系统中未使用的资源,包括停止的容器、未使用的网络、卷以及未被任何容器引用的镜像(悬空镜像和所有未使用的镜像)。以下是关于该命令的详细说明: 命令…...

Kubernetes》》K8S》》Deployment 、Pod、Rs 、部署 nginx

Deployment deployment文档说明 kubectl get rs,deployment,pods 删除pod 、deployment 、service # 如果只删除pod,deployment会自动重建,所以应该先删除deployment。 # 下面演示的是删除所有deployment,可以指定只删除某个 # 删除所有…...

【Zookeeper搭建】Zookeeper分布式集群搭建完整指南

Zookeeper分布式集群搭建 (一)克隆前准备工作 一、时钟同步 步骤: 1、输入date命令可以查看当前系统时间,可以看到此时系统时间为PDT(部分机器或许为EST),并非中国标准时间。我们在中国地区…...

基于YOLO11/WVP的电梯系统开发-模型训练与rk3568移植

1. 环境准备 代码下载: https://github.com/ultralytics/ultralytics.git切换到 8.3.0 以上的分支,yolov11 只在上述分支支持, 下载后在 ultralytics 根目录下安装 yolo 依赖环境: pip install -e . -i https://pypi.tuna.tsinghua.edu.cn…...

[数据结构]并查集(系统整理版)

基础用法 int p[N];//路径压缩 寻找祖宗节点 int find(int x){if(p[x]!x) p[x]find(p[x]);return p[x]; }int main(){ //初始化for(int i1;i<n;i) p[i]i; }合并 void merge(int a,int b){int aafind(a),bbfind(bb);if(aa!bb){p[aa]bb;} }查询是否联通 bool is_connected(…...

人工智能与软件工程结合的发展趋势

AI与软件工程的结合正在深刻改变软件开发的流程、工具和方法&#xff0c;其发展方向涵盖了从代码生成到系统维护的整个生命周期。以下是主要的发展方向和技术趋势&#xff1a; 1. 软件架构体系的重构 从“面向过程”到“面向目标”的架构转型&#xff1a; AI驱动软件设计以目标…...

Compose 实践与探索十七 —— 多指手势与自定义触摸反馈

上一节我们讲了滑动的手势识别以及嵌套滑动&#xff0c;二者都属于触摸反馈这个大的范畴内的知识。本节我们将深入触摸反馈这个话题&#xff0c;讲一讲多指手势的识别与完全自定义的触摸反馈的实现。 1、多指手势 多指手势可以分为两类&#xff1a; 利用 API 处理预设好的手…...

哈希表 - 两个数组的交集(集合、数组) - JS

一、Set基础 在 JavaScript 中&#xff0c;Set 是一种集合&#xff08;Collection&#xff09;​数据结构&#xff0c;用于存储唯一值​&#xff08;不允许重复&#xff09;&#xff0c;并且可以高效地进行添加、删除、查询等操作。它类似于数组&#xff08;Array&#xff09;…...

26_ajax

目录 了解 接口 前后端交互 一、安装服务器环境 nodejs ajax发起请求 渲染响应结果 get方式传递参数 post方式传递参数 封装ajax_上 封装ajax下 了解 清楚前后端交互就可以写一些后端代码了。小项目 现在写项目开发的时候都是前后端分离 之前都没有前端这个东西&a…...

Java面试黄金宝典24

1. 什么是跳表 定义 跳表&#xff08;Skip List&#xff09;是一种随机化的数据结构&#xff0c;它基于有序链表发展而来&#xff0c;通过在每个节点中维护多个指向其他节点的指针&#xff0c;以多层链表的形式组织数据。其核心思想是在链表基础上增加额外层次&#xff0c;每…...

每日c/c++题 备战蓝桥杯(全排列问题)

题目描述 按照字典序输出自然数 1 到 n 所有不重复的排列&#xff0c;即 n 的全排列&#xff0c;要求所产生的任一数字序列中不允许出现重复的数字。 输入格式 一个整数 n。 输出格式 由 1∼n 组成的所有不重复的数字序列&#xff0c;每行一个序列。 每个数字保留 5 个场…...

Layui实现table动态添加行,可删除、表格可编辑,小数校验

实现如图需求&#xff0c;layui实现的可编辑table&#xff0c;包含B、C、D、E列&#xff0c;A列不用实现出现&#xff0c;A列放在附件就是让你明白&#xff0c;不同的物料名称&#xff0c;行是不一样的。除了头部表头和E列不能编辑&#xff0c;每个表格都可编辑&#xff0c;其中…...

Spring Boot 非web应用程序

​​​​​在 Spring Boot 框架中&#xff0c;要创建一个非Web应用程序&#xff08;纯Java程序&#xff09; main方法运行&#xff0c;不启动tomcat&#xff0c;main方法执行结束&#xff0c;程序就退出了&#xff1b; 方式一 1、SpringBoot开发纯Java程序&#xff0c;应该采…...

数据分析中的基线校正算法全解析:原理、实现与应用

数据分析中的基线校正算法全解析:原理、实现与应用 在数据分析中,基线漂移是一个常见问题,会严重影响数据的解释和分析精度。本文将详细介绍12种主流基线校正方法,包括数学原理、Python实现代码和适用场景分析。 基线漂移问题概述 基线漂移主要由以下因素引起: 仪器强度…...

国外计算机证书推荐(考证)(6 Sigma、AWS、APICS、IIA、Microsoft、Oracle、PMI、Red Hat)

文章目录 证书推荐1. 六西格玛 (6 Sigma)2. 亚马逊网络服务 (AWS)3. 美国生产与库存控制学会 (APICS)4. 内部审计师协会 (IIA)5. 微软 (Microsoft)6. 甲骨文 (Oracle)7. 项目管理协会 (PMI)8. 红帽 (Red Hat) 证书推荐 1. 六西格玛 (6 Sigma) 介绍&#xff1a;六西格玛是一种…...

linux》》docker 、containerd 保存镜像、打包tar、加载tar镜像

Linux》》docker: 默认情况下&#xff0c;Docker镜像保存在/var/lib/docker/目录下。 当您使用docker pull命令从Docker Hub或私有镜像仓库中拉取镜像时&#xff0c;Docker会自动将镜像文件保存在/var/lib/docker/image/目录下。 每个镜像都由一个或多个层组成&#xff0c;这些…...

大数据(2)Hadoop架构深度拆解:HDFS与MapReduce企业级实战与高阶调优

目录 一、分布式系统的设计哲学演进1.1 从Google三驾马车到现代数据湖 二、企业级HDFS架构全景图2.1 联邦架构的深度实践2.2 生产环境容灾设计2.3 性能压测方法论 三、MapReduce引擎内核解密3.1 Shuffle机制全链路优化3.2 资源调度革命&#xff1a;从MRv1到YARN3.3 企业级编码规…...

【数学建模】动态规划算法(Dynamic Programming,简称DP)详解与应用

动态规划算法详解与应用 文章目录 动态规划算法详解与应用引言动态规划的基本概念动态规划的设计步骤经典动态规划问题1. 斐波那契数列2. 背包问题3. 最长公共子序列(LCS) 动态规划的优化技巧动态规划的应用领域总结 引言 动态规划(Dynamic Programming&#xff0c;简称DP)是一…...

UE学习记录part11

第14节 breakable actors 147 destructible meshes a geometry collection is basically a set of static meshes that we get after we fracture a mesh. 几何体集合基本上是我们在断开网格后获得的一组静态网格。 选中要破碎的网格物品&#xff0c;创建集合 可以选择不同的…...

LeetCode知识点整理

1、Scanner 输入&#xff1a; import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner new Scanner(System.in);// 读取整数int num scanner.nextInt();// 读取一行字符串String line scanner.nextLine();scanner.close();…...

浅析车规芯片软错误防护加固的重要性

随着汽车电子技术的飞速发展&#xff0c;汽车已经从传统的机械交通工具转变为高度依赖电子系统的智能移动终端。车规芯片作为汽车电子系统的核心部件&#xff0c;其可靠性和安全性直接关系到车辆的正常运行和驾乘人员的安全。然而&#xff0c;车规芯片在复杂的运行环境中面临着…...

Android Jetpack学习总结(源码级理解)

ViewModel 和 LiveData 是 Android Jetpack 组件库中的两个核心组件&#xff0c;它们能帮助开发者更有效地管理 UI 相关的数据&#xff0c;并且能够在配置变更&#xff08;如屏幕旋转&#xff09;时保存和恢复 UI 数据。 ViewModel作用 瞬态数据丢失的恢复&#xff0c;比如横竖…...