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

深圳制作网站开发费用网站内容页怎么做的

深圳制作网站开发费用,网站内容页怎么做的,东莞网站建设营销平台的,网站制作的方法环境,软件准备 本次演示环境#xff0c;我是在虚拟机上安装 Linux 系统来执行操作#xff0c;以下是安装的软件及版本#xff1a; System: CentOS Linux release 7.6Docker: 24.0.5Prometheus: v2.37.6Consul: 1.6.1 注意#xff1a;这里为了方便启动 Prometheus、Consul服…环境,软件准备 本次演示环境我是在虚拟机上安装 Linux 系统来执行操作以下是安装的软件及版本 System: CentOS Linux release 7.6Docker: 24.0.5Prometheus: v2.37.6Consul: 1.6.1 注意这里为了方便启动 Prometheus、Consul服务我使用 Docker 方式启动所以本机需要安装好 Docker 环境这里忽略 Docker 的安装过程。其中 Prometheus 安装配置可以参照之前文章 Prometheus 监控报警系统 AlertManager 之邮件告警这里着重介绍一下如何启动并配置 Consul 并配置 Prometheus 基于 Consul 实现自动服务发现。 Consul 安装配置 Docker 安装 使用 Docker 启动 Consul 单节点服务直接获取最新版官方镜像 consul:latest 命令如下 $ docker run --name consul -d -p 8500:8500 consul启动完毕后同上方法验证是否启动成功这里为了方便演示我采用 Docker 方式启动 Consul这里的访问地址为:http://192.168.75.42:8500 API 注册服务到 Consul 接下来我们要注册服务到 Consul 中可以通过其提供的 API 标准接口来添加。那么先注册一个测试服务该测试数据为本机 node-exporter 服务信息服务地址及端口为 node-exporter 默认提供指标数据的地址执行如下命令 $curl -X PUT -d {id: node-exporter,name: node-exporter-192.168.75.42,address: 192.168.75.42,port: 9100,tags: [test],checks: [{http: http://192.168.75.42:9100/metrics, interval: 5s}]} http://192.168.75.41:8500/v1/agent/service/register 提一下如果要注销掉某个服务可以通过如下 API 命令操作例如注销上边添加的 node-exporter 服务.这里的node-exporter事这个注册服务的ID $curl -X PUT http://192.168.75.41:8500/v1/agent/service/deregister/node-exporter 配置 Prometheus 实现自动服务发现 现在 Consul 服务已经启动完毕并成功注册了一个服务接下来我们需要配置 Prometheus 来使用 Consul 自动服务发现目的就是能够将上边添加的服务自动发现到 Prometheus 的 Targets 中增加 prometheus.yml 配置如下 - job_name: consul_exporterconsul_sd_configs:- server: 192.168.75.41:8500services: []#重新加载prometheus服务 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus]$curl -X POST http://localhost:9090/-/reload说明一下这里需要使用 consul_sd_configs 来配置使用 Consul 服务发现类型server 为 Consul 的服务地址这里跟上边要对应上。 配置完毕后重启 Prometheus 服务此时可以通过 Prometheus UI 页面的 Targets 下查看是否配置成功。 这里说明下,在进行服务注册的时候ID是不可以重复出现的,如果重复出现的话那么这个ID要么会被替换成新的,要么会注册不成功. 可以看到在 Targets 中能够成功的自动发现 Consul 中的 Services 信息后期需要添加新的 Targets 时只需要通过 API 往 Consul 中注册服务即可Prometheus 就能自动发现该服务是不是很方便。 不过我们会发现有如下几个问题 会发现 Prometheus 同时加载出来了默认服务 consul这个是不需要的。默认只显示 job 及 instance 两个标签其他标签都默认属于 before relabeling 下有些必要的服务信息也想要在标签中展示该如何操作呢如果需要自定义一些标签例如 team、group、project 等关键分组信息方便后边 alertmanager 进行告警规则匹配该如何处理呢所有 Consul 中注册的 Service 都会默认加载到 Prometheus 下配置的 consul_prometheus 组如果有多种类型的 exporter如何在 Prometheus 中配置分配给指定类型的组方便直观的区别它们 以上问题我们可以通过 Prometheus 配置中的 relabel_configs 参数来解决。 配置 relabel_configs 实现自定义标签及分类 我们先来普及一下 relabel_configs 的功能 Prometheus 允许用户在采集任务设置中通过 relabel_configs 来添加自定义的 Relabeling 的额过程来对标签进行指定规则的重写。 Prometheus 加载 Targets 后这些 Targets 会自动包含一些默认的标签Target 以 __ 作为前置的标签是在系统内部使用的这些标签不会被写入到样本数据中。眼尖的会发现每次增加 Target 时会自动增加一个 instance 标签而 instance 标签的内容刚好对应 Target 实例的 __address__ 值这是因为实际上 Prometheus 内部做了一次标签重写处理默认 __address__ 标签设置为 host:port 地址经过标签重写后默认会自动将该值设置为 instance 标签所以我们能够在页面看到该标签。 详细 relabel_configs 配置及说明可以参考 relabel_config 官网说明这里我简单列举一下里面每个 relabel_action 的作用方便下边演示。 replace: 根据 regex 的配置匹配 source_labels 标签的值注意多个 source_label 的值会按照 separator 进行拼接并且将匹配到的值写入到 target_label 当中如果有多个匹配组则可以使用 1,1,{2} 确定写入的内容。如果没匹配到任何内容则不对 target_label 进行重新 默认为 replace。keep: 丢弃 source_labels 的值中没有匹配到 regex 正则表达式内容的 Target 实例drop: 丢弃 source_labels 的值中匹配到 regex 正则表达式内容的 Target 实例hashmod: 将 target_label 设置为关联的 source_label 的哈希模块labelmap: 根据 regex 去匹配 Target 实例所有标签的名称注意是名称并且将捕获到的内容作为为新的标签名称regex 匹配到标签的的值作为新标签的值labeldrop: 对 Target 标签进行过滤会移除匹配过滤条件的所有标签labelkeep: 对 Target 标签进行过滤会移除不匹配过滤条件的所有标签 接下来我们来挨个处理上述问题。 问题一我们可以配置 relabel_configs 来实现标签过滤只加载符合规则的服务。 以上边为例可以通过过滤 __meta_consul_tags 标签为 test 的服务relabel_config 向 Consul 注册服务的时候只加载匹配 regex 表达式的标签的服务到自己的配置文件。修改 prometheus.yml 配置如下 - job_name: consul_exporterconsul_sd_configs:- server: 192.168.75.41:8500services: []relabel_configs:- source_labels: [__meta_consul_tags]regex: .*test.*action: keep解释下这里的 relabel_configs 配置作用为丢弃源标签中 __meta_consul_tags 不包含 test 标签的服务__meta_consul_tags 对应到 Consul 服务中的值为 tags: [test]默认 consul 服务是不带该标签的从而实现过滤。重启 Prometheus 可以看到现在只获取了 node-exporter-75.42 这个服务了, 问题二和问题三 可以归为一类就是将系统默认标签或者用户自定义标签转换成可视化标签 方便查看及后续 Alertmanager 进行告警规则匹配分组。不过要实现给服务添加自定义标签我们还得做一下修改就是在注册服务时将自定义标签信息添加到 Meta Data 数据中具体可以参考 [这里](Consul Service - Agent HTTP API) 官网说明下边来演示一下如何操作。 新建 consul-0.json 如下 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus/test]$cat consul-0.json {ID: node-exporter,Name: node-exporter-192.168.75.41,Tags: [test],Address: 192.168.75.41,Port: 9100,Meta: {app: spring-boot,team: appgroup,project: bigdata},EnableTagOverride: false,Check: {HTTP: http://192.168.75.41:9100/metrics,Interval: 10s},Weights: {Passing: 10,Warning: 1} } 说明一下该 Json 文件为要注册的服务信息同时往 Meta 信息中添加了 appspring-bootteamappgroupprojectbigdata 三组标签目的就是为了方便告警分组使用。执行如下命令进行注册 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus/test]$curl --request PUT --data consul-0.json http://192.168.75.41:8500/v1/agent/service/register?replace-existing-checks1 注册完毕通过 Consul Web 管理页面可以查看到已注册成功并且包含了 Meta 信息。 然后修改 prometheus.yml 配置如下 - job_name: consul_exporterconsul_sd_configs:- server: 192.168.75.41:8500services: []relabel_configs:- source_labels: [__meta_consul_tags]regex: .*test.*action: keep- regex: __meta_consul_service_metadata_(.)action: labelmap#重新加载prometheus配置 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus]$curl -X POST http://localhost:9090/-/reload解释一下增加的配置作用为匹配 __meta_consul_service_metadata_ 开头的标签将捕获到的内容作为新的标签名称匹配到标签的的值作为新标签的值而我们刚添加的三个自定义标签系统会自动添加 __meta_consul_service_metadata_appspring-boot、__meta_consul_service_metadata_teamappgroup、__meta_consul_service_metadata_projectbigdata 三个标签经过 relabel 后Prometheus 将会新增 appspring-boot、teamappgroup、projectbigdata 三个标签。重启 Prometheus 服务可以看到新增了对应了三个自定义标签。 问题四将自动发现的服务进行分类 本质上跟上边的处理方式一致可以添加自定义的标签方式通过标签来区分二可以通过服务 Tag 来进行匹配来创建不同的类型 exporter 分组。这里我以第二种为例通过给每个服务标记不同的 Tag然后通过 relabel_configs 来进行匹配区分。我们来更新一下原 node-exporter-192.168.75.42 服务标签同时注册一个其他类型 exporter 的服务如下 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus/test]$cat consul-0.json {ID: node-exporter,Name: node-exporter-192.168.75.41,Tags: [node-exporter],Address: 192.168.75.41,Port: 9100,Meta: {app: spring-boot,team: appgroup,project: bigdata},EnableTagOverride: false,Check: {HTTP: http://192.168.75.41:9100/metrics,Interval: 10s},Weights: {Passing: 10,Warning: 1} } #更新注册服务 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus/test]$curl --request PUT --data consul-0.json http://192.168.75.41:8500/v1/agent/service/register?replace-existing-checks1 这里说明下,最后的checks参数表示如果重复那么就覆盖更新 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus/test]$cat consul2.json {ID: cadvisor-exporter-test,Name: cadvisor-exporter-192.168.75.42,Tags: [cadvisor-exporter],Address: 192.168.75.42,Port: 8080,Meta: {app: docker,team: cloudgroup,project: docker-service},EnableTagOverride: false,Check: {HTTP: http://192.168.75.42:8080/metrics,Interval: 10s},Weights: {Passing: 10,Warning: 1} }[rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus/test]$curl --request PUT --data consul2.json http://192.168.75.41:8500/v1/agent/service/register?replace-existing-checks1查看注册情况 最后我们修改 prometheus.yml 配置如下 - job_name: consul_exporterconsul_sd_configs:- server: 192.168.75.41:8500services: []relabel_configs:- source_labels: [__meta_consul_tags]regex: .*node-exporter.*action: keep- regex: __meta_consul_service_metadata_(.)action: labelmap- job_name: cadvisor-exporter-testconsul_sd_configs:- server: 192.168.75.41:8500services: []relabel_configs:- source_labels: [__meta_consul_tags]regex: .*cadvisor-exporter.*action: keep- regex: __meta_consul_service_metadata_(.)action: labelmap #重新加载prometheus配置 [rootnode1-prome /zpf/k8s/prometheus/docker-prometheus/prometheus]$curl -X POST http://localhost:9090/-/reload这里需要根据每种类型的 exporter 新增一个关联 job同时 relabel_configs 中配置以 Tag 来做匹配区分。重启 Prometheus 服务可以看到服务已经按照类型分类了方便查看。
http://www.w-s-a.com/news/546633/

相关文章:

  • 做php网站教程wordpress去水印
  • 深圳微网站建设公司哪家好潍坊专业做网站的公司
  • 网站的弹窗广告怎么做软件开发包括
  • 网站开发人员保密做最优秀的自己演讲视频网站
  • 一般做网站要多少钱怎样选择高性价比的建站公司
  • 免费私人网站建设软件高端网站设计平台高端网站设计企业
  • 响应式网站建设的应用场景怎么申请电商平台
  • 怎么做垂直自营网站游戏咨询网站建设目标是什么
  • 建设网站需要给钱吗建立网站三大基础
  • 金融公司网站 htmlwordpress 防火墙
  • 重庆智能建站模板网站投票系统 js
  • 网站维护的内容和步骤网站做什么内容
  • 万网虚拟主机建网站wordpress协调世界时
  • 微网站建设方式应用大全网站
  • 网站速度测速织梦模板下载
  • 环保网站建设公司排名汉阴网站建设
  • 自己做网站的二维码wordpress用户权限在哪改
  • 网站使用说明书网站建设公司的介绍
  • 推广型网站免费建设网站防盗链设置
  • 建设银行网站查开户行网站反链暴增怎么回事
  • centos7做网站软件实施工程师工资一般多少
  • 专业房产网站建设深圳建设交易集团
  • 政务网站建设标准项目经理接到网站开发怎么开展
  • 网站框架设计好后怎么做网站广告销售怎们做
  • asp技校网站保定八大平台公司
  • wordpress网站前端优化网站备案批量查询
  • 北京企业做网站杭州seo中心
  • 护肤品网站建设前的行业分析wordpress电子书模板
  • 做网站怎么销售.net开发网站怎么样
  • 蚌埠网站优化网站换空间wordpress