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

烟台工程建设信息网站自建网站平台有哪些

烟台工程建设信息网站,自建网站平台有哪些,文化厅网站建设审核报告单,苏州小程序开发企业系列文章目录 运维监控平台搭建 运维监控平台监控标签 golang_Consul代码实现Prometheus监控目标的注册以及动态发现与配置V1版本 文章目录 系列文章目录目的一、监控指标注册到consul的golang脚本开发1、修改settings.yaml文件2、修改config/ocnsul,go文件3、修改core/consul…系列文章目录 运维监控平台搭建 运维监控平台监控标签 golang_Consul代码实现Prometheus监控目标的注册以及动态发现与配置V1版本 文章目录 系列文章目录目的一、监控指标注册到consul的golang脚本开发1、修改settings.yaml文件2、修改config/ocnsul,go文件3、修改core/consul.go文件4、脚本演示4.1、准备整理好的监控指标文件xlsx格式4.2、注册上述监控指标到consul 中 二、Prometheus使用consul服务发现配置1.修改prometheus.yml文件2、telegraf配置自定义监控项2.1、示例1: 监控内核参数 三、监控接口配置示例 目的 1、在面临多个监控指标时实现快速的将指标注册到consul中Prometheus使用consul服务发现实现监控 2、编写脚本实现自定义监控指标 3、自定监控项监控配置调试 提示以下是本篇文章正文内容下面案例可供参考 一、监控指标注册到consul的golang脚本开发 在之前就已经发布过golang_Consul代码实现Prometheus监控目标的注册以及动态发现与配置脚本。如顶部第三个文章链接。 虽然之前写的脚本已经实现了注册服务器ip、微服务ip和端口、url等到consul中但是只能适用于无密码、无token的consul 但是现在的运维平台consul是开启了ACL认证的因此需要对脚本做出部分修改。修改部分如下所示因为之前在https://blog.csdn.net/weixin_50902636/article/details/139903589文章中已经对该注册脚本进行了分析讲解及使用示例因此在本篇文章中不做过多描述只对修改部分示例。同时更新后的脚本已上传至csdn资源中需要的自行下载即可 1、修改settings.yaml文件 consul:ip: 192.168.56.131port: 8500acl_status: true #新添加字段判断是否开启了acl认证token: a0de7f26-127b-cd67-f01e-477c212d7c48 #新添加字段consul开启acl后的认证token。其余字段保持不变service_name:- Host_Status- ICMP- Telegraf- Service_TCP- Service_URLxlsx:xlsxfile_path: /export/wxd/prometheus_import_consul/host_monitor_datasource.xlsxsheet_name:- hostinfo- serviceinfo- serviceurlInfojsonfile:hostjson_path: /export/wxd/prometheus_import_consul/jsonfile/host.jsonservicejson_path: /export/wxd/prometheus_import_consul/jsonfile/service.jsonserviceurljson_path: /export/wxd/prometheus_import_consul/jsonfile/serviceUrl.json2、修改config/ocnsul,go文件 package configimport fmt//连接consul的ip、端口 type Consul struct {IP string yaml:ipPort int yaml:portAcl_Status bool yaml:acl_status #将yaml文件中新增加的字段 添加到结构体中用于字段解析初始化Token string yaml:token #将yaml文件中新增加的字段 添加到结构体中用于字段解析初始化ServiceName []string yaml:service_name }func (c *Consul) URL() string {return fmt.Sprintf(%s:%d, c.IP, c.Port) }3、修改core/consul.go文件 package coreimport (logprometheus_import_consul/globalgithub.com/hashicorp/consul/api )// consul 初始化 func ConsulConnect() (*api.Client, error) {config : api.DefaultConfig()// 新添加 根据 acl_status 判断是否使用 acl_Tokenif global.Config.Consul.Acl_Status {config.Token global.Config.Consul.Tokenlog.Printf(consul ACL authentication is enabled. Using token: %s, config.Token)} else {log.Println(consul ACL authentication is disabled. Not using any token.)}config.Address global.Config.Consul.URL()if client, err : api.NewClient(config); err ! nil {return nil, err} else {return client, nil} }其余代码不变如果有需要新增其他类型的监控在修改代码即可 4、脚本演示 4.1、准备整理好的监控指标文件xlsx格式 4.2、注册上述监控指标到consul 中 代码构建为二进制程序 [rootpython2 prometheus_import_consul]# sh scripts/launch.sh build prometheus_consul [rootpython2 prometheus_import_consul]# cat scripts/nohup.out解析xlsx文件中所有sheet页为json文件 [rootpython2 prometheus_import_consul]# sh scripts/launch.sh run-execToAllJson prometheus_consul将转换为json格式的文件注册到consul中 [rootpython2 prometheus_import_consul]# sh scripts/launch.sh run-all prometheus_consul检查consul web中是否已有上述注册信息 如上图所示golang脚本已完美的实现监控指标注册功能。具体的脚本功能请自行下载查看 二、Prometheus使用consul服务发现配置 修改prometheus.yml文件使其监控已经注册到consul中的监控指标 1.修改prometheus.yml文件 文件如下示例 - job_name: consul-prometheusconsul_sd_configs:- server: 192.168.56.131:8500token: a0de7f26-127b-cd67-f01e-477c212d7c48relabel_configs:- source_labels: [__meta_consul_service]regex: .*monitor_agent.*action: keep- source_labels: [__meta_consul_service_address]target_label: ip- source_labels: [__meta_consul_service_port]target_label: port- job_name: Host_Statusmetrics_path: /probeparams:module: [icmp]scrape_interval: 60sscrape_timeout: 2sconsul_sd_configs:- server: 192.168.56.131:8500services: []token: a0de7f26-127b-cd67-f01e-477c212d7c48relabel_configs:- source_labels: [__meta_consul_tags]regex: .*Host_Status.*action: keep- source_labels: [__meta_consul_service_address]target_label: __param_target- target_label: __address__replacement: 192.168.56.131:9115- regex: __meta_consul_service_metadata_(.)action: labelmap- job_name: Service_tcpscrape_interval: 60sscrape_timeout: 5smetrics_path: /probeparams:module: [tcp_connect]consul_sd_configs:- server: 192.168.56.131:8500services: []token: a0de7f26-127b-cd67-f01e-477c212d7c48relabel_configs:- source_labels: [__meta_consul_tags]regex: .*Service_TCP.*action: keep- source_labels: [__address__]target_label: __param_target- target_label: __address__replacement: 192.168.56.131:9115- regex: __meta_consul_service_metadata_(.)action: labelmap- job_name: Service_urlscrape_interval: 60sscrape_timeout: 5smetrics_path: /probeparams:module: [http_2xx] consul_sd_configs:- server: 192.168.56.131:8500services: []token: a0de7f26-127b-cd67-f01e-477c212d7c48relabel_configs:- source_labels: [__meta_consul_tags]regex: .*Service_URL.*action: keep- source_labels: [__meta_consul_service_metadata_url]target_label: __param_target- target_label: __address__replacement: 192.168.56.131:9115- regex: __meta_consul_service_metadata_(.)action: labelmap- job_name: icmpparams:module:- icmpscrape_interval: 60sscrape_timeout: 2smetrics_path: /probeconsul_sd_configs:- server: 192.168.56.131:8500token: a0de7f26-127b-cd67-f01e-477c212d7c48relabel_configs:- source_labels: [__meta_consul_tags]regex: .*,prometheus-icmp,.* # 扫描对应的组的信息action: keep- source_labels: [__meta_consul_tags]regex: .*,ICMP:([^,]),.*replacement: ${1}target_label: __param_target- source_labels: [__param_target]target_label: instance- regex: __meta_consul_service_metadata_(.)action: labelmap- target_label: __address__replacement: localhost:91152、telegraf配置自定义监控项 2.1、示例1: 监控内核参数 代码如下示例 当在https://github.com/influxdata/telegraf/tree/release-1.30/plugins/inputs中不到对应的服务监控配置时,则可以使用自定义监控项的方式实现监控。在github中可以找到大部分开源组件的telegraf的监控配置,粘贴修改后即可使用。先看结果 实现过程 需求:需要通过监控telegraf组件实现对10.192.10.14服务器的/etc/sysctl.conf中配置的内核参数进行监控实现过程:1、联想到zabbix监控可以通过agent端编辑相关的conf文件,且conf文件中编写脚本或者其他采集发送,实现某个时刻组件的监控,因此再telegraf/scripts目录下也用同样方式测试是否能实现2、在10.192.10.14机器的/opt/monitor/telegraf/scripts/目录下,增加一个探测的脚本文件check_tcp_timesmaps.sh,并授权执行权限。脚本内容如下#!/bin/bash # 读取net.ipv4.tcp_timestamps的值value$(sysctl net.ipv4.tcp_timestamps | awk {print $3}) # 输出为InfluxDB格式的指标echo tcp_timestamps value$value #其中tcp_timestamps为监控项,也就是使用它可以在prometheus的web界面中查看对应的数据即它就是一个自定义的PromQL.3、在10.192.10.14机器的/opt/monitor/telegraf/etc/telegraf/telegraf.d/目录下新增类似zabbix中的conf文件,配置如下[[inputs.exec]] #使用telegraf的exec插件,它还有inputs.中间件名 的插件#指定脚本位置commands [/opt/monitor/telegraf/scripts/check_tcp_timestamps.sh]#探测超时时间timeout 5s#数据格式通常为influx类型data_format influx4、在10.192.10.14机器的/opt/monitor/telegraf/etc/telegraf/telegraf.conf主配置文件中,必须添加以下配置.配置Prometheus从Telegraf抓取对应的指标[[outputs.prometheus_client]]listen :92735、在监控机器中配置对应的yml告警规则增加 /opt/monitor/prometheus/rules/sysctl_tcp_timesamps.yml文件,配置文件如下groups:- name: tcp_timestamps_checkrules:- alert: TCPTimestampsDisabledexpr: tcp_timestamps ! 0for: 1mlabels:severity: warningannotations:summary: TCP Timestamps is not disabled (host {{ $labels.instance }})description: net.ipv4.tcp_timestamps is expected to be 0 but is {{ $value }} on {{ $labels.instance }}三、监控接口配置示例 将接口以静态服务发现方式添加到prometheus.yml中 - job_name: V3getActivityInfometrics_path: /probeparams:module: [v3getActivityInfo] #等价于blackbox.yml文件中定义的名称static_configs:- targets: [https://xxxx/activity/V3/getActivityInfo]labels:servicetype: 活动查询接口V3POSTmonitortype: business_monitorrelabel_configs:- source_labels: [__address__]target_label: __param_target- source_labels: [__param_target]target_label: instance- target_label: __address__replacement: localhost:9115通过黑盒监控修改balckbox_exporter.yml文件中添加该接口的请求方式、请求体及返回值 V3getActivityInfo:prober: httptimeout: 5shttp:method: POST #可以替换为对应的请求方式preferred_ip_protocol: ip4 #defaults to ip6valid_http_versions: [HTTP/1.1,HTTP/2.0]valid_status_codes: [200] #defaults to 2xx 如果返回的 HTTP 状态码不在 valid_status_codes 指定的范围内则会被认为是探测失败headers: #配置post请求的header头Content-Type: application/jsonClientId: xxxxxxxxxxbody: {data: {signData: 72KFee7x9izEYwvrmOfh/KgzzdjNjf6Ud1Wk19BJZnClY/Q79/rEt9wkspsY/uQYleg9igJ1R5xUTEPWAoRdT111A}}fail_if_body_not_matches_regexp: #如果响应体中不包含匹配该正则表达式的内容则探测被视为失败- 30001至此接口监控已完成
http://www.w-s-a.com/news/259905/

相关文章:

  • 普拓网站建设济南行业网站建设
  • 燕郊 网站开发网站里的地图定位怎么做
  • 门户网站建设招标互联网创业项目概述
  • 用什么做网站比较好市场调研公司是做什么的
  • 电商网站充值消费系统绍兴网站优化
  • 深圳网站建设公司联虚拟币交易网站开发
  • 专业网站设计建设公司抖音代运营公司排名前十强
  • 做网站架构肃北蒙古族自治县建设局网站
  • 推广网站怎么建经济研究院网站建设方案
  • 网站建设商家淘宝客自建网站做还是用微信qq做
  • django做网站效率高吗涉县移动网站建设报价
  • 做外贸网站注册什么邮箱能够做渗透的网站
  • 购物网站 怎么做织梦网站会员功能
  • 北京市网站开发公司郑州联通网站备案
  • 温岭专业营销型网站建设地址wordpress小程序怎么不用认证审核
  • 网站建设主体设计要求微信公众号缴费
  • 网站建设的税率WordPress多用户建站
  • 专业门户网站的规划与建设网络培训
  • 东莞汽车总站停止营业crm管理系统在线使用
  • 深圳网站建设公司哪个网络优化是做什么的
  • 大连地区做网站自己怎么做电影网站
  • 成都APP,微网站开发手机要访问国外网站如何做
  • 网站app建设用discuz做的手机网站
  • vs 2008网站做安装包公众号登录超时
  • 银川做网站推广wordpress dux会员中心
  • 双辽做网站wordpress怎么写html代码
  • 建站公司哪家好 知道万维科技西安都有哪些公司
  • 设计网站官网入口佛山 品牌设计
  • 专用网站建设wordpress mega
  • 网站建设与优化推广方案内容网站整站下载带数据库后台的方法