首页 > 其他分享 >Prometheus Server一键部署脚本

Prometheus Server一键部署脚本

时间:2025-01-15 22:13:13浏览次数:1  
标签:一键 prometheus server Prometheus install DOWNLOAD Server INSTALLDIR

一.Prometheus Server一键部署脚本

  1. 脚本内容展示
[root@prometheus-server31 ~]# cat install-prometheus-server.sh 
#!/bin/bash
# auther: almco
# blog: https://www.cnblogs.com/yinzhengjie


VERSION=2.53.2
ARCH=amd64
SOFTWARE=prometheus-${VERSION}.linux-${ARCH}.tar.gz
URL=https://github.com/prometheus/prometheus/releases/download/v${VERSION}/${SOFTWARE}
DOWNLOAD=./download
INSTALLDIR=/yinzhengjie/softwares
BASEDIR=${INSTALLDIR}/prometheus-${VERSION}.linux-amd64
DATADIR=/yinzhengjie/data/prometheus
LOGDIR=/yinzhengjie/logs/prometheus
HOSTIP=0.0.0.0
PORT=9090
HOSTNAME=`hostname`


function prepare() {
  # 判断目录是否存在,若不存在则创建
  [ -d $INSTALLDIR ] || install -d  ${INSTALLDIR}
  [ -d $DOWNLOAD ] || install -d ${DOWNLOAD}
  [ -d $DATADIR ] || install -d ${DATADIR}
  [ -d $LOGDIR ] || install -d ${LOGDIR}

  . /etc/os-release

  if [ "$ID" == "centos" ];then
    # 判断系统是否安装wget
    [ -f /usr/bin/wget ] || yum -y install wget
  fi

  # 判断文件是否存在,若不存在则下载
  [ -s ${DOWNLOAD}/${SOFTWARE} ] || wget $URL -O ${DOWNLOAD}/${SOFTWARE}

}


function deploy() {
  # 检查环境
  prepare

  # 解压文件软件包
  tar xf ${DOWNLOAD}/${SOFTWARE} -C ${INSTALLDIR}

  # 生成启动脚本
cat > /etc/systemd/system/prometheus-server.service <<EOF
[Unit]
Description=yinzhengjie Linux  Prometheus Server
Documentation=https://www.cnblogs.com/yinzhengjie
After=network.target

[Service]
Restart=on-failure
ExecStart=/bin/bash -c "${BASEDIR}/prometheus \
     --config.file=${BASEDIR}/prometheus.yml \
	 --web.enable-lifecycle \
	 --storage.tsdb.path=${DATADIR} \
	 --storage.tsdb.retention.time=60d  \
	 --web.listen-address=${HOSTIP}:${PORT}  \
	 --web.max-connections=65535  \
	 --storage.tsdb.retention.size=512MB \
	 --query.timeout=10s \
	 --query.max-concurrency=20 \
	 --log.level=info \
	 --log.format=json \
	 --web.read-timeout=5m &>> ${LOGDIR}/prometheus-server.log"
ExecReload=/bin/kill -HUP \$MAINPID
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

  # 将服务设置为开机自启动
  systemctl daemon-reload
  systemctl enable --now prometheus-server
  systemctl status prometheus-server
  sleep 0.3
  ss -ntl | grep ${PORT}
}


function delete(){
  systemctl disable --now prometheus-server.service
  rm -rf /etc/systemd/system/node-exporter.service $BASEDIR $DATADIR $LOGDIR
}


function main() {
  case $1 in 
    deploy|i)
      deploy
      echo "almco脚本: ${HOSTNAME} 的prometheus-server 已经部署成功![successfully]"
      ;;
    delete|r)
      delete
      echo "almco脚本: ${HOSTNAME} 的prometheus-server 已经卸载成功,期待下次使用~"
      ;;
    *)
      echo "Usage: $0 deploy[i]|delete[r]"
      ;;
  esac
}


main $1
[root@prometheus-server31 ~]# 
  1. 访问Prometheus的WebUI
    image
如上图所示,输入Prometheus的地址即可访问哟~

二.测试验证

  1. 安装Prometheus server
    image
如上图所示,可以进行安装Prometheus server。
  1. 卸载Prometheus server
    image
如上图所示,可以实现Prometheus server的卸载。

本文来自博客园,作者:almco,转载请注明原文链接:https://www.cnblogs.com/almco/p/18673794,个人微信: ""(添加时请备注来源及意图备注,有偿付费

标签:一键,prometheus,server,Prometheus,install,DOWNLOAD,Server,INSTALLDIR
From: https://www.cnblogs.com/almco/p/18673794

相关文章

  • 2025 年宣布一件大事,Oracle 一键安装脚本开源了!
    大家好,这里是公众号DBA学习之路,致力于分享数据库领域相关知识。目录前言Oracle一键安装脚本脚本下载环境信息安装前准备Centos7.9Redhat8.10脚本参数一键安装11GR219C写在最后前言你没看错,就是Oracle数据库一键安装脚本部分开源了!之前很多朋友咨询我脚本......
  • 如何解决使用 SQL Server 管理器远程操作数据库时出现“索引超出了数组界限 (Microsof
    问题描述当您使用SQLServerManagementStudio(SSMS)远程连接并操作数据库时,可能会遇到以下错误提示:“索引超出了数组界限(Microsoft.SqlServer.Smo)”。这个错误通常发生在尝试执行某些特定操作(如查询、修改表结构等)时。该问题不仅影响工作效率,还可能导致数据操作失败。错......
  • JS MutationObserver监听DOM元素改变
    JSMutationObserver监听DOM元素改变://目标容器constchatSection=document.querySelector('section.chat');if(!chatSection){console.error('未找到容器');}else{//解析详细数据的函数functionparseChatData(){console.log('解析到的......
  • 批量删除SQL Server数据库指定ID范围的数据
    在SQLServer中,可以通过编写SQL语句来删除指定ID范围内的数据。以下是具体的SQL语句示例:删除ID大于1000的数据:sql DELETEFROM[数据库名].[数据库表]WHEREID>1000;删除ID小于1000的数据:sql DELETEFROM[数据库名].[数据库表]WHEREID<1000;解释......
  • 2、Grafana-Prometheus学习笔记
    一、时序数据库:时序数据库(TimeSeriesDatabase,TSDB)是专门为处理和存储时序数据而设计的数据库。时序数据是带有时间戳的数据,通常用于表示随时间变化的测量值。时序数据库在许多应用领域中具有关键作用,包括物联网(IoT)、应用性能监控(APM)、金融市场分析、环境监测、工业自动化等。......
  • DOMjudge8.2.3配置DOMserver(基于Docker一键配置,全网最详细,看完包会配)
    文章目录前言配置方式1:手动配置nginx+php-fpm配置方式2:Docker一键安装1.部署MariaDB数据库2.部署DOMserver3.获取初始admin密码以及judgehost密码4.修改grub5.测试6.修改配置文件6.0前言(修改配置必看)6.1[configchecker]-MySQLsettings修改常见问题及对应解决......
  • windows server2016搭建AD域服务器
    @目录一、背景二、搭建AD域服务器步骤三、生成可供java程序使用的keystore文件四、导出某用户的keytab文件五、主机配置hosts文件六、主机确认是否能ping通本人其他相关文章链接一、背景亲测可用,之前搜索了很多博客,啥样的都有,就是不介绍报错以及配置用处,根本不懂照抄那些配置......
  • 电脑隐私橡皮擦 Privacy Eraser Pro v6.5 一键激活 永久授权
    PrivacyEraser是一款集多种清理功能于一体的电脑优化工具。它不仅能够清除上网痕迹,还能彻底清理电脑中各类文件、注册表信息等。该版本已授权,可以使用全部功能。使用说明:1、将压缩文件解压到固定位置,不要随意移动。2、解压后,双击start_PEP.bat来运行软件下载地址(链接如......
  • 【花雕学编程】Arduino动手做(246)---ESP8266 NodeMCU V3 Web Server
    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来——小小的......
  • 更灵活的对象之间的联动 - 观察者模式(Observer Pattern)
    观察者模式(ObserverPattern)观察者模式(ObserverPattern)观察者模式(ObserverPattern)概述观察者模式(ObserverPattern)结构图观察者模式(ObserverPattern)涉及的角色talkischeap,showyoumycode总结观察者模式(ObserverPattern)观察者模式(ObserverPattern)是一种......