自定义监控指标开发(一):基于Docker搭建Prometheus+Grafana
摘自:https://juejin.cn/post/7097166804044218405 安装运行Prometheus(docker版)Grafana是一个开源的功能丰富的数据可视化平台,通常用于时序数据的可视化。它内置了多种数据源的支持 下载镜像包123docker pull prom/node-exporterdocker pull prom/prometheusdocker pull grafana/grafana 启动node-exporter12345docker run -d -p 9100:9100 \ -v "/proc:/host/proc:ro" \ -v "/sys:/host/sys:ro" \ -v "/:/rootfs:ro" \ prom/node-exporter 访问url: http://127.0.0.1:9100/metrics 效果如下: 这些都是收集到的数据,有了它就可以做数据展示了。 启动prometheus新建目录...
自定义监控指标开发(六):精简Prometheus指标减少资源占用
前言随着 Prometheus 监控的组件、数量、指标越来越多,Prometheus 对计算性能的要求会越来越高,资源占用也会越来越高。 在这种情况下,要优化 Prometheus 性能, 优化存储占用. 第一时间想到的可能是各种 Prometheus 的兼容存储方案, 如 Thanos 或 VM、Mimir 等。但是实际上虽然集中存储、长期存储、存储降采样及存储压缩可以一定程度解决相关问题,但是治标不治本。 真正的本,还是在于指标量(series)过于庞大。 治本之法,应该是减少指标量。有 2 种办法: 解决高基数问题 根据实际使用情况,只保留(keep)展示(Grafana Dashboards)和告警(prometheus rules)会用到的指标。 高基数问题什么是基数(Cardinality)?基数的 基本定义 是指一个给定集合中的元素的数量。 在Prometheus中指代series 的基数 (High Cardinality) 在 Prometheus 和可观察性的世界里,标签基数...
分布式块存储-longhorn
官方文档 记录下longhorn的使用 - rancherlab提供的开源分布式块存储方案 Longhorn 支持以下架构: AMD64 ARM64(实验性) longhotn需要open-iscsi,curl,findmnt,grep,awk,blkid,lsblk的依赖(是否需要单独安装可以使用这个脚本进行验证,centos7有可能需要单独安装下jq和open-iscsi) 利用rancher安装: 在rancher ui上选择自己的集群,然后找到对应app安装即可,v2.6.3测试没问题(尝试用kubectl安装的时候告诉我缺少NODE_NAME ENV,但是rancher就正常): https://longhorn.io/docs/1.2.3/deploy/install/install-with-rancher/查看对应几个node是否正常创建longhorn(默认数据路径)ls /var/lib/longhorn界面 创建应用进行测试应用 yaml 创建 PVC 和 pod pvc.yaml1234567891011apiVersion: v1kind:...
Quarkus结合oidc及hibernate的上手试验
Quarkus结合oidc及hibernate的上手试验quarkus官方文档 介绍123456专为OpenJDK HotSpot和GraalVM量身定制的Kubernetes本机Java堆栈,采用最佳Java库和标准精制而成。--QUARKUS 1.8.3Quarkus为GraalVM和HotSpot量身定制您的应用程序。惊人的快速启动时间,极低的RSS内存(不仅是堆大小!)在容器编排平台(如Kubernetes)中提供了近乎即时的向上扩展和高密度的内存利用率。我们使用一种称为编译时启动的技术。Quarkus是开源的。该项目的所有依赖项都可以在Apache Software License 2.0响应式编程-- jdk9之后的Publisher/Flow --...
iTerm2安装配置使用指南
转自:https://zhuanlan.zhihu.com/p/550022490 安装指南软件安装官网下载安装官方下载地址: iTerm2官网iTerm2.com/downloads.html 根据个人需求下载正式稳定版或者beta版,下载完成之后,双击打开zip包,解压至当前文件夹, 双击打开iTerm.app,根据弹窗提示点击Move to Applications Folder即可。 Homebrew安装打开电脑终端,命令行输入如下命令回车: 1brew install iTerm2 如提示未安装Homebrew,参考这篇文章进行安装 金牛肖马:Homebrew国内如何自动安装(国内地址)(Mac &...
aliyun OSS-分布式存储
结合之前学习一个开源项目的时候,重新写一下关于oss的文章(修改api使用及开通流程部分) 使用oss作为文件存储 关于oss作为文件存储的一个叙述 文件上传在系统中用的很频繁,所以我们需要将上传的文件进行存储,传统的将文件上传到本机已不适用分布式系统。自己搭建文件服务器有复杂性和维护成本。所以我们可以采用市面上成熟的文件存储服务,如阿里云的OSS对象存储服务 每个 OSS 的用户都会用到上传服务。Web 端常见的上传方法是用户在浏览器或 APP 端上传文件到应用服务器,应用服务器再把文件上传到 OSS。具体流程如下图所示。 和数据直传到 OSS...
linux各种系统更换国内软件源
alpine1234567891011set -eux \&& sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories \&& apk update# 切换时区set -eux \&& apk add --no-cache tzdata \&& cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \&& echo "Asia/Shanghai" > /etc/timezone \&& apk del tzdata ubuntu 镜像中文?乱码现象 1234# 在 Dockerfile 中添加ENV LANG C.UTF-8# ENV LANGUAGE C.UTF-8 #可不配置# ENV LC_ALL C>UTF-8 #可不配置 阿里云镜像 12345678#...
解决镜像下载失败的几种方法
前言 在学习、研究 K8S 的过程中,经常遇到镜像拉取不了的网络问题,这并不是镜像本身的问题,而是国内的“国情”导致无法正常访问墙外资源。 这些镜像有的是 K8S 团队自研的插件,也有一些是爱好者开发的第三方组件,正常来说,他们会存放于 gcr.io 或者 quay.io 中。 gcr.io 是 谷歌的镜像仓库,是禁止访问的,而 quay.io 是 RedHat 的镜像仓库,可以访问,但速度较慢。 那如何应对这种网络问题呢? 现成的镜像代理仓库k8s.gcr.io 源代理仓库ctr images tag k8s.m.daocloud.io/scheduler-plugins/kube-scheduler:v0.24.9 这是 gcr.io/google-containers 的仓库,使用阿里云镜像 123k8s.gcr.io/sig-storage/csi-node-driver-registrar:v2.3.0#...
用 Ollama 轻松玩转本地大模型
摘自:https://sspai.com/post/85193 前言Ollama 一个简明易用的本地大模型运行框架。 随着围绕着 Ollama 的生态走向前台,更多用户也可以方便地在自己电脑上玩转大模型了。 快速上手Ollama【win(preview) / mac / linux】 下载页面:https://ollama.com/download Docker也可以直接使用其官方镜像。 docker模式下,指令可直接在docker exec -it ollama下运行 当你运行 ollama --version 命令成功查询到版本时,表示 Ollama 的安装已经顺利完成,接下来便可以用 pull 命令从在线模型库下载模型来玩了。 以中文微调过的 Llama2-Chinese 7B 模型为例,下述命令会下载接近 4GB 的 4-bit 量化模型文件,需要至少 8GB 的内存进行推理,推荐配备 16GB 以流畅运行。 1% ollama pull llama2-chinese 下载完成后,使用 run...
Postman动态获取值(动态设置全局变量)
摘自:https://blog.csdn.net/ityqing/article/details/112370546 解决启动白屏的问题在环境变量窗口下,选择系统变量 -> 新建,在新建系统变量的窗口中输入变量名:POSTMAN_DISABLE_GPU变量值:true 设置Environment/GlobalsEnvironment: 环境是一组变量,它允许您切换请求的上下文。优先使用,可以切换环境Globals: 全局变量是工作空间中始终可用的一组变量。不受切换环境影响 设置环境变量 使用 动态设置变量内容获取相应内容1234567891011// 判断请求 可不写pm.test("Status code is 200", function () { pm.response.to.have.status(200);});//获取请求内容var data = JSON.parse(responseBody);//设置全局变量//...