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

成都市建设相关网站网站建设中申请备案

成都市建设相关网站,网站建设中申请备案,没有网站域名是否需要备案,制作作品的软件根据产品需求在自己的系统中添加一个系统监控的页面#xff0c;其中有主机信息的显示#xff0c;也有一些业务信息的显示。调研后的方案是 主机信息通过Prometheus采集和存储#xff0c;业务信息通过自己系统的调度任务统计后存储在Mysql中#xff0c;使用Grafana对接Prome…根据产品需求在自己的系统中添加一个系统监控的页面其中有主机信息的显示也有一些业务信息的显示。调研后的方案是 主机信息通过Prometheus采集和存储业务信息通过自己系统的调度任务统计后存储在Mysql中使用Grafana对接Prometheus和Mysql数据源来制作图表然后嵌入到自己系统的页面中进行展示。 重点解决问题 1Prometheus和NodeExporter的安全认证问题 2Grafana的安全认证问题 1. 部署Prometheus Prometheus分为服务端和客户端xxxExporterPrometheus采用服务端主动去客户端拉取数据的方式。本次需求为采集linux服务器主机信息因此客户端使用NodeExporter。 1.1 部署NodeExporter 根据我们服务器的情况部署NodeExporter采用Docker和二进制包两种方式。 1.1.1 Docker部署 考虑到nodeExporter访问的安全使用基础的安全认证方式。 1.1.1.1 配置安全认证 创建文件/opt/node_exporter/web-config.yml内容 # Usernames and passwords required to connect. # Passwords are hashed with bcrypt: https://github.com/prometheus/exporter-toolkit/blob/master/docs/web-configuration.md#about-bcrypt. basic_auth_users:{Username}: {Hashed password}说明 {Username}: {Hashed password}可以有多组其中 {Username}是用户名 {Hashed password}经过hash加密后的密码linux下可以使用以下命令对密码加密 htpasswd -nBC 10 | tr -d :\n 示例 basic_auth_users:exporter-user: $2y$10$7dZ80a5HdLu2cpxjQehXdewVOPqygLlwMbbZUtGpKVxFDz7d8je3o1.1.1.2 启动容器 docker run -d \--name node-exporter \--restartalways \--nethost \--pidhost \-v /:/host:ro,rslave \-v /opt/node_exporter/web-config.yml:/web-config.yml \quay.io/prometheus/node-exporter:latest \--path.rootfs/host --web.config.file/web-config.yml --web.listen-address:9100说明 --web.listen-address参数可以指定Exporter的端口号默认为9100。 容器启动后可以通过docker ps或者访问http://主机IP:端口号 检查服务是否启动成功。 1.1.2 二进制包部署 1.1.2.1 下载文件 下载地址Download | PrometheusAn open-source monitoring system with a dimensional data model, flexible query language, efficient time series database and modern alerting approach.https://prometheus.io/download/#node_exporter 将下载后文件解压到/opt目录下并改名为node_exporter tar -xzvf node_exporter-1.7.0.linux-amd64.tar.gz -C /opt cd /opt mv node_exporter-1.7.0.linux-amd64 node_exporter1.1.2.2 配置安全认证 同1.1.1.1 1.1.2.3 启动服务 nohup /opt/node_exporter/node_exporter --web.listen-address:9100 --web.config.file/opt/node_exporter/web-config.yml /dev/null 21 说明 --web.listen-address参数可以指定Exporter的端口号默认为9100。 访问http://主机IP:端口号 检查服务是否启动成功。 1.1.2.4 配置开机自启 编辑/etc/rc.local文件新起一行添加启动服务的命令同1.1.2.3 1.2 部署Prometheus Server 本文使用docker-compose方式部署其他方式类似。 1.2.1 配置安全认证 创建配置目录mkdir -p /opt/prometheus/config 创建文件/opt/prometheus/config/web-config.yml 文件格式同1.1.1.1但用户和密码用途是不一样的这个是访问Prometheus数据源是需要的。 示例 basic_auth_users:prometheus-user: $2y$10$A.vlBjkqhhI6BTrW2ubXK.rsoSW/gcHhCXNJJlmuRX.LC0k7dj48s1.2.2 配置服务参数 创建文件/opt/prometheus/config/prometheus.yml 参考文档Configuration | PrometheusAn open-source monitoring system with a dimensional data model, flexible query language, efficient time series database and modern alerting approach.https://prometheus.io/docs/prometheus/latest/configuration/configuration/ 示例 global:scrape_interval: 15s # By default, scrape targets every 15 seconds.# Attach these labels to any time series or alerts when communicating with# external systems (federation, remote storage, Alertmanager).external_labels:monitor: codelab# A scrape configuration containing exactly one endpoint to scrape: # Here its Prometheus itself. scrape_configs:- job_name: node-monitorbasic_auth:username: exporter-userpassword: password# Override the global default and scrape targets from this job every 5 seconds.scrape_interval: 5sstatic_configs:- targets: [x.x.x.1:9100,x.x.x.2:9100]labels:group: test说明 password为nodeExporter端配置的明文密码。 targets 字段为监控的服务器列表其内容为安装了node exporter的主机ip及端口号多个主机逗号分隔。 1.2.3 启动服务 创建数据目录mkdir -p /opt/prometheus/data 编写docker-compose.yml文件内容 version: 3 services:prometheus:image: prom/prometheuscontainer_name: prometheusrestart: alwaysuser: 0ports:- 9090:9090volumes:- /opt/prometheus/config:/etc/prometheus- /opt/prometheus/data:/prometheuscommand: --config.file/etc/prometheus/prometheus.yml --storage.tsdb.path/prometheus --web.console.libraries/usr/share/prometheus/console_libraries --web.console.templates/usr/share/prometheus/consoles --web.config.file/etc/prometheus/web-config.yml说明 如果端口冲突可以通过ports端口映射修改端口 启动容器 docker-compose up -d 2. 部署Grafana 本文使用docker-compose方式部署其他方式类似。 2.1 启动服务 创建数据目录mkdir -p /opt/grafana/data 编写docker-compose.yml文件如果与Prometheus在同一台机器部署可以共用一个docker-compose文件内容 version: 3 services:grafana:image: grafana/grafana:8.5.27container_name: grafanarestart: alwaysuser: 0ports:- 3000:3000volumes:- /data/grafana/data:/var/lib/grafanaenvironment:- GF_SECURITY_ALLOW_EMBEDDINGtrue- GF_SECURITY_ADMIN_USERadmin- GF_SECURITY_ADMIN_PASSWORD123test- GF_AUTH_PROXY_ENABLEDtrue- GF_SERVER_ROOT_URLhttp://localhost:8080/grafana/- GF_USERS_DEFAULT_THEMElight # - GF_SERVER_ROUTER_LOGGINGtrue 说明 可以通过环境变量覆盖grafana.ini中的配置详细配置参考Configuration | Grafana documentationConfiguration documentationhttps://grafana.com/docs/grafana/v8.3/administration/configuration/ GF_SECURITY_ALLOW_EMBEDDING 开启允许嵌入页面 GF_SECURITY_ADMIN_USER 设置默认管理员账号 GF_SECURITY_ADMIN_PASSWORD 设置默认管理员密码 GF_AUTH_PROXY_ENABLED 开启代理认证即在反向代理中进行用户认证 GF_SERVER_ROOT_URL 通过反向代理的访问地址 GF_USERS_DEFAULT_THEME 用户默认主题配置为亮色 GF_SERVER_ROUTER_LOGGING 是否开启路由日志调试时使用默认不开启 2.2 初始配置 使用默认管理员账号和密码登录Grafana http://主机IP:3000 根据需要添加Prometheus数据源和Mysql数据源注意Prometheus数据源要启用basic auth 导入或者新建Dashboard编辑好图表。 3. 系统集成Grafana 3.1 配置Grafana的反向代理和代理认证 本系统使用了SpringCloudGateway做微服务网关在Gateway中添加路由配置示例 {id: grafana,order: 11,predicates: [{name: Path,args: {_genkey_0: /grafana/**}}],filters: [{name: StripPrefix,args: {_genkey_0: 1}},{name: RemoveRequestHeader,args: {_genkey_0: Origin}},{name: AddRequestHeader,args: {_genkey_0: X-WEBAUTH-USER,_genkey_1: system-user}}],uri: http://x.x.x.x:3000 } 说明 predicates 通过路径判断是否需要代理的请求。 filters StripPrefix 请求转发给后端时去掉第一段路径即请求转发给后端时路径没有/grafana该参数可与Grafana的配置项server.serve_from_sub_path配合使用。 filters RemoveRequestHeader 删除请求头中的Origin属性解决因源请求中Origin值和后端服务器不匹配问题也可将其改写成后端服务器地址。 filters RemoveRequestHeader 请求头中添加一个属性X-WEBAUTH-USER该名称要与Grafana中的配置匹配其默认为X-WEBAUTH-USER其值system-user为通过该代理访问Grafana所使用的用户默认不存在Grafana会自动注册详细可参考Grafana文档。 uri 为反向代理的后端服务地址即Grafana服务的地址。 3.2 用户认证 原系统a.com登录后会将token写在cookie中并且在Gateway网关中做了用户登录认证现在Grafana使用反向代理所有通过访问http://a.com/grafana/**的请求都会带上a.com域名所属的cookie可以直接利用原来网关的认证逻辑进行用户认证。 如果原系统没有在网关中做用户登录认证可以在后端服务中写一个代理程序并做用户认证可以参考https://www.cnblogs.com/xiaoqi/p/grafana.html 3.3 前端嵌入Grafana组件 如果想将Dashboard中的某个图表嵌入到自己系统的页面中可以在某Panel上的Share-Embed中获取到图表的url注意使用代理的地址。 其他问题 1. 在Grafana中自己创建或编辑后保存的Dashboard保存为json文件在其他环境中再导入使用时会报数据源无法找到的问题。 解决办法编辑导出的json文件在其文件的头部加上数据源的变量定义具体可参考Grafana导入 json 文件的 dashboard 错误 Templating Failed to upgrade legacy queries Datasource xxx not found_failed to upgrade legacy queries datasource promet-CSDN博客文章浏览阅读6.3k次点赞5次收藏11次。从一套环境导出 dashboard 为 json 文件在另一套环境中导入如果出现了标题中报错, 怎么解决这个问题文章给出了三种解决方案按各自实际需要选择_failed to upgrade legacy queries datasource prometheus was not foundhttps://blog.csdn.net/shaochenshuo/article/details/128735528
http://www.dnsts.com.cn/news/150789.html

相关文章:

  • 自己做培训网站福州市晋安区建设局网站
  • 织梦网站图片不显示有经验的大连网站建设
  • 网站优化公司效果郑州的网络科技有限公司
  • 设计一个自己公司网站开发兼职做彩平网站
  • 南岗哈尔滨网站建设定制网络零信任
  • 丰都集团网站建设茂名网站制作网页
  • 做网站前台用什么竞价网络推广外包
  • 南京高端网站建设工作室asp网站空间
  • 营口门户网站建设襄阳市做网站的公司
  • 网站 空间 租用网站后台搭建图文
  • 律师网站建设 优帮云常州有哪些好的网站建设案例
  • dephi 网站开发PS做网站报价
  • 中石油工程建设公司网站公司名称大全20000个
  • 广东省农业农村厅官方网站网站是先备案 还是先做网站
  • 陕西天和建设有限公司网站广元企业网站建设
  • 长沙seo建站新闻营销的优势
  • 福田做网站福田网站建设福田建网站500电商网站商品页的优化目标是什么
  • 买了域名如何做网站网站推广页面 英语
  • 网站是广西住房和城乡建设厅网页设计学校模板
  • 网站导航栏怎么做简单专业网站推广公司
  • 巨野菏泽网站建设做静态网站
  • 什么是网站反链营口旅游网站建设
  • 自己做的网站怎么放视频教程网站建设多少钱个人
  • 免费可以绑定域名网站空间丹灶做网站
  • 瑞昌网站建设网站建设昆明
  • wordpress图片分页插件google seo 营销网站
  • 微网站建设公司哪家好东莞微信网站建设怎样
  • 视频网站的制作教程wordpress 没有外观
  • 盐城经济技术开发区建设局网站python基础教程第二版
  • 商务网站设计特色网站关闭多久排名会下降