用Saltstack部署ganglia的客户端gmond

过程:

1.安装一些依赖的包

2.编译安装libconfuse包

3.编译安装ganglia

4.配置gmond、启动gmond

准备:

1.master 1台

2.源文件:

salt://tools/Ganglia/package/ganglia-3.6.0.tar.gz

salt://tools/Ganglia/package/confuse-2.7.tar.gz

3.minion 8台

软件都装在/usr/local/

开始:

(这里我分开写sls文件,便于调节和理解)

1.安装依赖

# Check package && install
pkg:
  cmd.run:
     - name: yum install -y gcc glibc glibc-common rrdtool rrdtool-devel apr  apr-devel expat expat-devel  pcre pcr    e-devel dejavu-lgc-sans-mono-fonts dejavu-sans-mono-fonts zlib-devel

2.编译安装libconfuse

# Get confuse
confuse-2.7:
  file.managed:
    - name: /home/tools/Ganglia/package/confuse-2.7.tar.gz
    - source: salt://tools/Ganglia/package/confuse-2.7.tar.gz

# Extract it
extract-confuse:
  cmd.run:
    - cwd: /home/tools/Ganglia/package
    - name: tar xvf confuse-2.7.tar.gz
    - require:
      - file: confuse-2.7

# Configure it
configure-confuse:
  cmd.run:
    - name: ./configure CFLAGS=-fPIC --disable-nls && make && make install
    - cwd: /home/tools/Ganglia/package/confuse-2.7
    - unless: test -d /usr/local/confuse

第4行是把文件拷贝到minion端的目录

第5行则是文件的来源,拷贝整个文件夹请参考上一篇

第10行是执行命令时当前的文件夹

第11行是执行的命令

第12、13行则是最终目的,达成才会返回succeed

第20行是判断存不存在文件夹,存在就不执行name的命令,不存在则执行

3.编译安装ganlia

# Get it

ganglia-3.6.0:
  file.managed:
    - name: /home/tools/Ganglia/package/ganglia-3.6.0.tar.gz
    - source: salt://tools/Ganglia/package/ganglia-3.6.0.tar.gz
# Extract it

extract-ganglia:
  cmd.run:
    - cwd: /home/tools/Ganglia/package
    - name: tar xvf ganglia-3.6.0.tar.gz
    - require:
      - file: ganglia-3.6.0
# Configure it

configure-ganglia:
  cmd.run:
    - name: ./configure --prefix=/usr/local/ganglia && make && make install
    - cwd: /home/tools/Ganglia/package/ganglia-3.6.0
    - unless: test -d /usr/local/ganglia

这步就不细说了,和上步大同小异

4.配置gmond

/usr/local/ganglia/etc/gmond.conf:
  file.managed:
    - source: salt://ganglia/gmond.conf
    - makedirs: True
    - user: nobody
    - group: nobody
    - mode: 777

/etc/init.d/gmond:
  file.managed:
    - source: salt://ganglia/gmond
    - user: nobody
    - group: nobody
    - mode: 777

#add-chkconfig:
#  cmd.run:
#    - name: service gmond start && chkconfig --add gmond
#    - require:
#      - file: /usr/local/ganglia/etc/gmond.conf

配置文件:

/srv/salt/ganlia/gmond.conf

开机启动文件按安装位置修改放到:

/srv/salt/ganglia/gmond

sls文件也在:

/srv/salt/ganglia

执行:

salt -E "^s1-3-*" state.sls ganglia.confuse_configure.sls
salt -E "^s1-3-*" state.sls ganglia.ganglia_configure.sls
salt -E "^s1-3-*" state.sls ganglia.gmond_configuration.sls

ok

时间: 2024-08-01 15:41:24

用Saltstack部署ganglia的客户端gmond的相关文章

salt-stack部署

saltstack部署 环境准备 [[email protected] elasticsearch]# cat /etc/redhat-release CentOS release 6.6 (Final)[[email protected] elasticsearch]# uname -r2.6.32-504.el6.x86_64 配置表: 环境配置: master: [[email protected] ~]# tail -2 /etc/hosts 192.168.30.151 master.

使用组策略部署Configuration Manager客户端

为了减少IT运维成本,管理员通常不希望手动安装Configuration Manager客户端,这时可以利用强大的组策略自动部署Configuration Manager客户端,不需要人为干预. 1. 登陆DC服务器,点击工具,点击组策略管理 2. 创建"部署Configuration Manager客户端"GPO 3. 右键GPO,点击编辑 4. 点击计算机配置,扩展策略,右键管理模板,选择添加/删除模板 5. 点击添加Configuration Manager客户端部署模板 Con

saltstack部署returner [三]

saltstack部署returner感悟:大家有没有遇到过当salt的minion太多时候,每次查看执行结果都要看很久,而且屏幕都占满了.也不方便查看是否执行成功.这个时候saltsack的returner功能上场了.我们可以把执行的命令结果存入数据库,通过数据库查看就很方便了.不过在安装测试中遇到很多问题.这里要感谢成都运维群的运维@安,他帮我查到为什么不能写入数据库的原因,在这里感谢他.saltstack执行结果写入到mysql数据库配置  1.建数据库及表  #假设我们的数据库服务器为1

saltstack部署nginx进阶

上一篇其实对通过saltstack部署nginx做了演示,但是可能与我目前的环境还是有点出入,然后sls的结构也不太清晰,所以就又做了改变和优化,叫做进阶可能有点噱头了,不过还是记录如下: nginx安装目标: 1)安装必要依赖 2)准备pcre安装包 2)源码安装pcre 3)准备nginx安装包 4)源码安装nginx nginx配置: 1)拷贝nginx.conf配置文件 2)拷贝启停脚本 3)添加系统服务并设置开机启动 4)拷贝日志切割脚本 5)添加定时任务 salt master上的目

zabbix学习-如何部署一个agent客户端

1. 部署一个agent客户端很简单,比如监控服务器本身 yum install zabbix-agent -y 2.配置文件位置: vim /etc/zabbix/zabbix-agendt.conf 修改里面的server配置即可,其中serveractive为主动发现配置.有需要也可以配置 3.启动agent服务并设置为开机启动 systemctl start zabbix-agent systemctl enable zabbix-agent zabbix-server本身在安装的时候已

SaltStack部署

一.基础介绍 1.简介 SaltStack是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet和加强版的func.SaltStack基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq.PyCrypto.Pyjinjia2.python-msgpack和PyYAML等)构建. 通过部署SaltStack环境,我们可以在成千上万台服务器上做到批量执行命令,根据不同业务特性进行配置集中化管理.分发文件.

CentOS 6.5下SaltStack部署记录

1. 安装第三方yum源 wget -c http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm 2. 服务端安装  yum install salt-master -y 3. 客户端安装  yum install salt-minion -y 4. master设置 salt-master默认配置文件/etc/salt/maste

使用容器方式部署Ganglia

背景:最近根据公司要求,需要一个能够监控主机CPU.内存.网络等资源情况的工具,由此想到了Ganglia.然后看了下部署方式,实在看得头大,安装过程非常繁琐,并且依赖问题也是比较烦人,于是有了这文章.废话不多说,直接开干! 第一步:搜索可用镜像 docker search ganglia 这里我们就选这个star最多的 第二步:部署容器 将镜像直接pull下来(亲测可用),直接运行 docker run -d --name ganglia -p 2080:80 wookietreiber/gan

使用SaltStack部署Nginx

规划: 1.编译安装nginx 2.实现配置文件.服务.用户.日志切割.虚拟主机的自动部署 3.针对不同客户端资源配置的不同,利用grains实现可变配置 4.利用pillar实现客户端功能区别配置 环境: master: 192.168.111.129(Hostname: Server2) client: 192.168.111.128(Hostname: Server1) (这里是ID标识,为了实现配置不同的需要) 配置仓库根目录: [[email protected] ~]# vim /e