您现在的位置是:主页 > news > 上海市网站制作/什么是网络推广

上海市网站制作/什么是网络推广

admin2025/4/23 0:37:46news

简介上海市网站制作,什么是网络推广,网站利润分析,wordpress增加登录账户https://www.cnblogs.com/aguncn/p/9933204.html 如果学会了如何抓取app的metrics,则blackbox-exporter抓取网络性能套路是相同的。 一,在blackbox-exporter的blackbox.yml里配置好抓取模块,常见的是http_get,http_post,tcp,icmp。 二&#x…

上海市网站制作,什么是网络推广,网站利润分析,wordpress增加登录账户https://www.cnblogs.com/aguncn/p/9933204.html 如果学会了如何抓取app的metrics,则blackbox-exporter抓取网络性能套路是相同的。 一,在blackbox-exporter的blackbox.yml里配置好抓取模块,常见的是http_get,http_post,tcp,icmp。 二&#x…

https://www.cnblogs.com/aguncn/p/9933204.html

如果学会了如何抓取app的metrics,则blackbox-exporter抓取网络性能套路是相同的。

一,在blackbox-exporter的blackbox.yml里配置好抓取模块,常见的是http_get,http_post,tcp,icmp。

二,在prometheus的平台侧,配置好抓取http-probe或tcp-probe的job规则。

三,应用侧的service里加上相关annotation注释,配合prometheus的metrics抓取。

下面根据网上文档,记录相关的yaml文件。

一,blackbox-exporter的blackbox.yam的configmap配置。

复制代码
apiVersion: v1
kind: ConfigMap
metadata:labels:app: prometheus-blackbox-exportername: prometheus-blackbox-exporternamespace: kube-system
data:blackbox.yml: |-modules:http_2xx:prober: httptimeout: 10shttp:valid_http_versions: ["HTTP/1.1", "HTTP/2"]
      # 这里最好作一个返回状态码,在grafana作图时,有明示---陈刚注释。valid_status_codes: [200]method: GETpreferred_ip_protocol: "ip4"http_post_2xx: # http post 监测模块prober: httptimeout: 10shttp:valid_http_versions: ["HTTP/1.1", "HTTP/2"]method: POSTpreferred_ip_protocol: "ip4"tcp_connect:prober: tcptimeout: 10sicmp:prober: icmptimeout: 10sicmp:preferred_ip_protocol: "ip4"
复制代码

备注:

blackbox-exporter的配置文件为/etc/blackbox_exporter/blackbox.yml,可以运行时动态的重新加载配置文件,当重新加载配置文件失败时,不影响在运行的配置。重载方式:curl -XPOST http://IP:9115/-/reload
二,blackbox-exporter的yaml文件。

复制代码
apiVersion: extensions/v1beta1
kind: Deployment
metadata:name: prometheus-blackbox-exporternamespace: kube-system
spec:selector:matchLabels:app: prometheus-blackbox-exporterreplicas: 1template:metadata:labels:app: prometheus-blackbox-exporterspec:restartPolicy: Alwayscontainers:- name: prometheus-blackbox-exporterimage: prom/blackbox-exporter:v0.12.0imagePullPolicy: IfNotPresentports:- name: blackbox-portcontainerPort: 9115readinessProbe:tcpSocket:port: 9115initialDelaySeconds: 5timeoutSeconds: 5resources:requests:memory: 50Micpu: 100mlimits:memory: 60Micpu: 200mvolumeMounts:- name: configmountPath: /etc/blackbox_exporterargs:- --config.file=/etc/blackbox_exporter/blackbox.yml- --log.level=debug- --web.listen-address=:9115volumes:- name: configconfigMap:name: prometheus-blackbox-exporternodeSelector:node-role.kubernetes.io/master: "true"tolerations:- key: "node-role.kubernetes.io/master"effect: "NoSchedule"
---
apiVersion: v1
kind: Service
metadata:labels:app: prometheus-blackbox-exportername: prometheus-blackbox-exporternamespace: kube-systemannotations:prometheus.io/scrape: 'true'
spec:type: NodePortselector:app: prometheus-blackbox-exporterports:- name: blackboxport: 9115targetPort: 9115nodePort: 30009protocol: TCP
复制代码

三,prometheus的job配置。

复制代码
- job_name: 'kubernetes-service-http-probe'tls_config:ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crtbearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/tokenkubernetes_sd_configs:- role: service# 将metrics_path由默认的/metrics改为/probemetrics_path: /probe# Optional HTTP URL parameters.# 生成__param_module="http_2xx"的labelparams:module: [http_2xx]relabel_configs:# 只保留含有label为prometheus/io=scrape的service- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape, __meta_kubernetes_service_annotation_prometheus_io_http_probe]regex: true;trueaction: keep- source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_namespace, __meta_kubernetes_service_annotation_prometheus_io_http_probe_port, __meta_kubernetes_service_annotation_prometheus_io_http_probe_path]action: replacetarget_label: __param_targetregex: (.+);(.+);(.+);(.+)replacement: $1.$2:$3$4# 用__address__这个label的值创建一个名为__param_target的label为blackbox-exporter,值为内部service的访问地址,作为blackbox-exporter采集用#- source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_http_probe_path]#  action: replace#  target_label: __param_target#  regex: (.+);(.+)#  replacement: $1$2# 用blackbox-exporter的service地址值”prometheus-blackbox-exporter:9115"替换原__address__的值- target_label: __address__replacement: prometheus-blackbox-exporter:9115- source_labels: [__param_target]target_label: instance# 去掉label name中的前缀__meta_kubernetes_service_annotation_prometheus_io_app_info_- action: labelmapregex: __meta_kubernetes_service_annotation_prometheus_io_app_info_(.+)#- source_labels: [__meta_kubernetes_namespace]#  target_label: kubernetes_namespace#- source_labels: [__meta_kubernetes_service_name]#  target_label: kubernetes_name## kubernetes-services and kubernetes-ingresses are blackbox_exporter related# Example scrape config for probing services via the Blackbox Exporter.# # The relabeling allows the actual service scrape endpoint to be configured# for all or only some services.- job_name: 'kubernetes-service-tcp-probe'tls_config:ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crtbearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/tokenkubernetes_sd_configs:- role: service# 将metrics_path由默认的/metrics改为/probemetrics_path: /probe# Optional HTTP URL parameters.# 生成__param_module="tcp_connect"的labelparams:module: [tcp_connect]relabel_configs:# 只保留含有label为prometheus/io=scrape的service- source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape, __meta_kubernetes_service_annotation_prometheus_io_tcp_probe]regex: true;trueaction: keep- source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_namespace, __meta_kubernetes_service_annotation_prometheus_io_tcp_probe_port]action: replacetarget_label: __param_targetregex: (.+);(.+);(.+)replacement: $1.$2:$3# 用__address__这个label的值创建一个名为__param_target的label为blackbox-exporter,值为内部service的访问地址,作为blackbox-exporter采集用#- source_labels: [__address__]#  target_label: __param_target# 用blackbox-exporter的service地址值”prometheus-blackbox-exporter:9115"替换原__address__的值- target_label: __address__replacement: prometheus-blackbox-exporter:9115- source_labels: [__param_target]target_label: instance# 去掉label name中的前缀__meta_kubernetes_service_annotation_prometheus_io_app_info_- action: labelmapregex: __meta_kubernetes_service_annotation_prometheus_io_app_info_(.+)
复制代码

四,应用侧的service的annotation段配合的配置。

复制代码
# http_probe
prometheus.io/scrape: 'true'
prometheus.io/http-probe: 'true'
prometheus.io/http-probe-port: '8080'
prometheus.io/http-probe-path: '/healthz'
# tcp_probe
prometheus.io/scrape: 'true'
prometheus.io/tcp-probe: 'true'
prometheus.io/tcp-probe-port: '80'
复制代码

 

有了这些操作,以后要增加http或tcp的探测时,直接操作应用service即可接入。

转载于:https://www.cnblogs.com/liuhongru/p/11215559.html