首页 > 系统相关 >prometheus监控k8s集群node节点/linux操作系统

prometheus监控k8s集群node节点/linux操作系统

时间:2023-12-13 12:00:25浏览次数:26  
标签:node exporter name xxx prometheus linux

prometheus监控k8s集群node节点/linux操作系统

 

一、监控linux操作系统

  1、下载二进制包

wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz

  

  2、解压,移动至/opt并做软连接

tar zxf node_exporter_linux_amd64.tar.gz -C /opt/
mv /opt/node_exporter-1.7.0.linux-amd64 /opt/node_exporter-1.7.0
ln -s /opt/node_exporter-1.7.0 /usr/local/node_exporter

 

  3、配置systemd管理脚本

  vim /usr/lib/systemd/system/node_exporter.service

[Unit]
Description=node_exporter
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/node_exporter/node_exporter

[Install]
WantedBy=multi-user.target

 

  4、启动node_exporter并设置开机启动。

systemctl start node_exporter
systemctl enable node_exporter

 

  5、防火墙方通端口

firewall-cmd --permanent --add-port=9100/tcp
firewall-cmd --reload

 

二、k8s部署node_exporter,监控node节点,该步骤需在k8s集群中执行。

  1、创建yaml文件

vim  node_exporter.yaml

apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: node-exporter
  namespace: monitor
  labels:
    name: node-exporter
spec:
  selector:
    matchLabels:
     name: node-exporter
  template:
    metadata:
      labels:
        name: node-exporter
    spec:
      hostPID: true
      hostIPC: true
      hostNetwork: true
      containers:
      - name: node-exporter
        image: quay.io/prometheus/node-exporter:v1.7.0
        ports:
        - containerPort: 9100
        resources:
          requests:
            cpu: 0.15
        securityContext:
          privileged: true      #开启特权模式
        args:
        - --path.procfs
        - /host/proc
        - --path.sysfs
        - /host/sys
        - --collector.filesystem.ignored-mount-points
        - '"^/(sys|proc|dev|host|etc)($|/)"'
        volumeMounts:
        - name: dev
          mountPath: /host/dev
        - name: proc
          mountPath: /host/proc
        - name: sys
          mountPath: /host/sys
        - name: rootfs
          mountPath: /rootfs
      tolerations:
      - key: "node-role.kubernetes.io/master"
        operator: "Exists"
        effect: "NoSchedule"
      volumes:
        - name: proc
          hostPath:
            path: /proc
        - name: dev
          hostPath:
            path: /dev
        - name: sys
          hostPath:
            path: /sys
        - name: rootfs
          hostPath:
            path: /

 

  2、使用yaml文件部署node_exporter

kubectl create namespace monitor
kubectl apply -f node_exporter.yaml

 

  3、检查node-exporter是否创建成功

  查看pod运行情况

kubectl get pod -nmonitor

  查看本地监听

 

三、配置prometheus采集

  1、修改prometheus配置文件。

  vim /usr/local/prometheus/prometheus.yml

#在scrape_configs模块下添加以下配置
- job_name: 'node_exporter'
scrape_interval: 10s static_configs: - targets: ['xxx.xxx.xxx.xxx:9100','xxx.xxx.xxx.xxx:9100']

  现配置文件信息如下:

 

  2、重启prometheus

systemctl restart prometheus

 

   3、查看node监控情况

在浏览器打开地址http://xxx.xxx.xxx.xxx:9090

 

标签:node,exporter,name,xxx,prometheus,linux
From: https://www.cnblogs.com/NanZhiHan/p/17898778.html

相关文章

  • Windows、Linux 和 Mac:操作系统之间的比较
    Windows系统、Linux系统与Mac系统:操作系统的对比与选择操作系统是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在“裸机”上的最基本的系统软件,任何其他软件都必须在操作系统的支持下才能运行。操作系统是用户和计算机的接口,同时也是计算机硬件和其他软件的接口。以下是W......
  • Docker部署Transmission | Linux 下的一款 BitTorrent 下载软件
    在【镜像管理】>【镜像仓库】输入关键词transmission进行搜索。搜索结果中,找到要搭建的容器镜像linuxserver/transmission,点击下载或双击镜像即可下载。版本默认选择latest,等待镜像拉取完成即可。​​​​​​创建容器在【镜像管理】>【本地镜像】您可以看到刚刚已下载......
  • Linux RPM包管理
    1.安装软件包
安装软件包是RPM包管理的基本功能之一。使用以下命令安装软件包:sudorpm-i包名例如,安装名为example的软件包:sudorpm-iexample2. 升级软件包
使用以下命令升级软件包:sudorpm-U包名例如,升级名为example的软件包:sudorpm-Uexample3. 卸载......
  • linux运维好用shell
    functiongetCpuStatus(){echo""echo""echo"############################CPU检查#############################"Physical_CPUs=$(grep"physicalid"/proc/cpuinfo|sort|uniq|wc-l)Virt_CPUs=$(grep"processo......
  • Prometheus 快速入门
    Prometheus&Grafana快速入门一、prometheus简介prometheus是监控多个大数据组件的监控系统。Prometheus是由SoundCloud开发的开源监控报警系统和时序列数据库(TSDB)。Prometheus使用Go语言开发,是GoogleBorgMon监控系统的开源版本。2016年由Google发起Linux基金会旗下的原生云......
  • emnapi node-api 的webassembly 实现工具
    emnapi是一个比较有意思的工具,可以帮助我们快速的实现将node-api的模块构建为webassembly模块可以帮助我们呢尽量少的修改nodeaddon代码就能转换为webassembly模块说明目前已经有一些模块就使用了此工具(sharp)目前来说还是有一些问题,但是还是值得尝试的,毕竟基于webassembly......
  • Linux的bash脚本
    Shebang在计算领域中,Shebang(也称为Hashbang)是一个由井号和叹号构成的字符序列#!,其出现在文本文件的第一行的前两个字符。在文件中存在Shebang的情况下,类Unix操作系统的程序加载器会分析Shebang后的内容,将这些内容作为解释器指令,并调用该指令,并将载有Shebang的文件路......
  • nodejs的http.request最大响应体
    nodejs的http.request躺坑记录1、http.request之response.on("data",(chunk:Buffer)=>{})的chunk大小​ 由于nodejs的response.on("data")每次从服务端读取的chunk大小最大是65535Byte,并且查很多网站都找不大这个说明点所以狠狠踩了这个坑。这个65535有什么影响呢。本来编写的......
  • Linux文件复制命令SCP
    scp命令:scp可以实现远程主机之间的文件复制,scp使用ssh协议,所以双方必须开启ssh后方能使用常用选项:-r:复制目录时使用-P:大写的P指定端口,远程主机未改端口号可省略,[email protected]:/tmp/111.jpg/Users/rkhd/Downloads/zhang *SCP获取远程主机上的文......
  • vite编译为什么会报错“__vite-browser-external:node:path、fs、url...”
    当你在使用Vite打包时,遇到类似于`__vite-browser-external`的错误消息,通常是因为在代码中尝试导入浏览器不支持的模块。`__vite-browser-external`是Vite内部的一个机制,用于替换浏览器环境中无法直接访问的Node.js核心模块。例如,浏览器不具备文件系统访问能力,因此Node.......