puppet配置

2023-10-29

  作为重量级批量自动化运维利器,puppet可以方便大批量停止或启动服务,比如我们经常需在一下停止几十台
mysql服务器,使用puppet配置分分钟搞定,而不需要一台台去手动停止,非常方便

       确认服务器端和客户端正常工作,开始编写module文件


[root@localhost etc]# cd /etc/puppet/modules/

新建puppet module目录结构

[root@localhost modules]# mkdir -p mysqld/{manifests,files,templates}

[root@localhost modules]# touch mysqld/manifests/init.pp

 

编写init.pp文件,启动mysqld服务,这里的linux服务需要支持以标准的service stop/start等格式
[root@localhost modules]# vi  mysqld/manifests/init.pp


class mysqld::service
   {
      service { "mysqld":
        ensure=>running,
              }

    }

class mysqld
    {

        include mysqld::service
   }

编辑站点文件

[root@localhost manifests]# vi /etc/puppet/manifests/site.pp   --表示c12,c13,c14节点都应用mysqld class

node 'c12', 'c13','c14'
   {
      include mysqld
   }

保存退出,不需要重新启动puppet master


在客户端查看服务启动情况
[root@c12 modules]# ps -eaf | grep mysqld
root     12613  7125  0 12:36 pts/1    00:00:00 grep mysqld

稍过一段时间,具体取决于配置,发现mysqld服务已经启动了

[root@c12 modules]# ps -eaf | grep mysqld
root     14786     1  0 12:43 ?        00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/c12.pid
mysql    15009 14786  4 12:43 ?        00:00:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/mysql/plugin --user=mysql --log-error=/usr/local/mysql/data/localhost.localdomain.err --pid-file=/usr/local/mysql/data/c12.pid
root     15046  7125  0 12:43 pts/1    00:00:00 grep mysqld
[root@c12 modules]#


如果我们需要关闭大量服务器上的mysql服务, 只要把ensure改为stopped就可以了

[root@localhost manifests]# vi init.pp

class mysqld::service
   {
      service { "mysqld":
        ensure=>stopped,
              }

    }

class mysqld
    {

        include mysqld::service
   }

整个过程十分方便,只需要在puppet服务器上配置即可.
同步文件 :
1.site.pip
node 'datacross3.l.loc', 'datacross4.l.loc'{
        include httpd
        file {
                "/home/winson/test.txt":
                source => "puppet://datacross2.l.loc/files/test.txt",
                backup => ".bak_$uptime_seconds",
        }
}
2. fileserver.conf
[files]
path /etc/puppet/files
allow *
同步文件:
1. cat site.pp
node 'datacross3.l.loc', 'datacross4.l.loc'{
        include httpd
        file {
                "/home/winson/":
                source => "puppet://datacross2.l.loc/files/",
                #backup => ".bak_$uptime_seconds",
                recurse => true,
                purge   => true,
                force   => true,
        }
}
httpd模块 :
1.目录结构
[root@datacross2 puppet]# tree
.
├── auth.conf
├── environments
│   └── example_env
│       ├── manifests
│       ├── modules
│       └── README.environment
├── files
│   ├── test.log
│   └── test.txt
├── fileserver.conf
├── manifests
│   └── site.pp
├── modules
│   └── httpd
│       ├── files
│       │   ├── httpd.conf
│       │   └── index.html
│       ├── manifests
│       │   ├── config.pp
│       │   ├── init.pp
│       │   └── service.pp
│       └── templates
└── puppet.conf
2.config.pp
class httpd::config {
            file { "/etc/httpd/conf/httpd.conf":
            ensure => present,
            source => "puppet:///modules/httpd/httpd.conf",
            #实际路径在/etc/puppet/modules/httpd/files/httpd.conf
            notify => Class["httpd::service"]
            }
}
3.service.pp
class httpd::service {
            service { "httpd":
            ensure => running,
            require => Class["httpd::config"]
            }
            file { "/var/www/html/index.html":  #添加web主页
            source => "puppet:///modules/httpd/index.html"
            }
}
4. init.pp
 class httpd {
            include httpd::config,httpd::service
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

puppet配置 的相关文章

  • 百度坐标(BD-09)、国测局坐标(火星坐标,GCJ-02)、和 WGS-84 坐标系之间的转换

    百度坐标 BD 09 国测局坐标 火星坐标 GCJ 02 和 WGS 84 坐标系之间的转换 Created by Wandergis on 2015 7 8 提供了百度坐标 BD 09 国测局坐标 火星坐标 GCJ 02 和 WGS 84
  • CentOS 7安装Zabbix 4.4

    我们当前部署Zabbix是在Centos7的基础上部署Zabbix4 4版本 我的服务器配置是双路四核CPU 8GBRAM 以下安装步骤仅供参考 大家也可以参考官方资料 https www zabbix com documentation
  • 142 环形链表

    142 环形链表 给定一个链表的头节点 head 返回链表开始入环的第一个节点 如果链表无环 则返回 null 重点在于如何判断是否有环 采用快慢指针的做法 快指针每次走2步 慢指针每次走1步 快指针相对慢指针每次多走一步 这样确保如果有环
  • Map Reduce和流处理

    欢迎大家前往腾讯云 社区 获取更多腾讯海量技术实践干货哦 本文由 从流域到海域翻译 发表于腾讯云 社区 map 和reduce 是在集群式设备上用来做大规模数据处理的方法 用户定义一个特定的映射 函数将使用该映射对一系列键值对进行处理 直接
  • C++日期累加

    日期累加 题目描述 设计一个程序能计算一个日期加上若干天后是什么日期 输入描述 输入第一行表示样例个数m 接下来m行每行四个整数分别表示年月日和累加的天数 输出描述 输出m行 每行按yyyy mm dd的个数输出 include
  • 深度学习(二):张量和基本运算

    张量是一个类型化的n维数组 tf Tensor 是tensorflow基本数据格式 张量的阶就是数组的维度 张量的属性 图 形状 名字 op print a graph 输出程序所在的内存地址 print a shape 输出张量a的维度
  • QtIFW学习

    1 构建Qt安装程序 1 1 Qt应用程序结构 1 2 不同操作系统常用的打包工具 1 2 1 多平台 GUI 安装程序 跨平台安装工具 1 2 2 windows 1 2 3 Linux 1 3 静态库与动态库的区别 2 程序打包过程 3
  • 一个注解就能下载任意对象?SpringBoot如此强大?

    下载功能应该是比较常见的功能了 虽然一个项目里面可能出现的不多 但是基本上每个项目都会有 而且有些下载功能其实还是比较繁杂的 倒不是难 而是麻烦 如果我说现在只需要一个注解就能帮你下载任意的对象 是不是觉得非常的方便 Download so
  • github一些有趣的使用场景和基本使用方法

    文章目录 github的使用入门 安装 Git 创建 GitHub 帐户 在本地设置 Git 克隆仓库 进行修改和提交 推送更改 拉取更新 删除Github上废弃的仓库 注意 github更多有趣的使用场景 协作和社交编程 文档和知识库 学
  • Spring Data JPA 使用Specification 实现动态查询

    实体对象 package com zzg entity import java util Date import javax persistence Column import javax persistence Entity import
  • 游戏开发UE4杂项系列:更换默认c++编辑器

    更换项目中使用的c 编辑器 编辑器 Edit gt 编辑器偏好设置 Edit Preference gt 通用 General gt 源代码 source code gt 源代码编辑器 source code edit 附加一个UE4使用交
  • 【死磕NIO】— 跨进程文件锁:FileLock

    大家好 我是大明哥 一个专注于 死磕 Java 系列创作的程序员 死磕 Java 系列为作者 chenssy 倾情打造的 Java 系列文章 深入分析 Java 相关技术核心原理及源码 死磕 Java https www cmsblogs
  • cin.get()处理输入的问题

    在C primer 中经常遇见while cin cin get n 的语句 此循环就是处理掉多余的流 实验代码如下 1 string b char a 10 cin get a 10 while cin get n continue ci
  • # 逆向神器:Ghidra简介及使用方法

    逆向神器 Ghidra简介及使用方法 https github com NationalSecurityAgency ghidra jdk https adoptium net zh CN temurin releases binwalk
  • mysql获取按日期排序获取最新的记录

    今天让一个数据查询难了 主要是对group by 理解的不够深入 才出现这样的情况 这种需求 我想很多人都遇到过 下面是我模拟我的内容表 我现在需要取出每个分类中最新的内容 select from test group by categor
  • Stable Diffusion 原理介绍与源码分析(二、DDPM、DDIM、PLMS算法分析)

    Stable Diffusion 原理介绍与源码分析 二 DDPM DDIM PLMS 文章目录 Stable Diffusion 原理介绍与源码分析 二 DDPM DDIM PLMS 系列文章 前言 与正文无关 可忽略 总览 DDPM 对
  • Maven学习笔记十七:Maven坐标和依赖(最佳实践之优化依赖)

    Maven坐标和依赖 最佳实践之优化依赖 在软件开发过程中 程序员会通过重构等方式不断地优化自己的代码 使其变得更简洁 更灵活 同理 程序员也应该能够对maven项目的依赖了然于胸 并对其进行优化 如去除多余的依赖 显式地声明某些必要的依赖
  • Objective-C中堆和栈的区别是什么?

    堆空间的内存是动态分配的 一般用于存放Objective C对象 并且需要手动释放内存 ARC环境下Objective C对象由编译器管理 不需要手动释放 栈空间的内存由系统自动分配 一般存放非Objective C对象的基本数据类型 例如
  • 【Linux】之 命令大全

    目录 一 帮助指令 二 目录操作指令 三 日期时间类 四 用户权限管理 root 五 文件属性 六 文件搜索类 七 压缩解压命令 八 磁盘查看和分区类 九 进程管理 十 系统定时任务 crontab 服务管理 十一 软件包管理 下载软件 十
  • 神经网络学习小记录51——Keras搭建孪生神经网络(Siamese network)比较图片相似性

    神经网络学习小记录51 Keras搭建孪生神经网络 Siamese network 比较图片相似性 学习前言 什么是孪生神经网络 代码下载 孪生神经网络的实现思路 一 预测部分 1 主干网络介绍 2 比较网络 二 训练部分 1 数据集的格式

随机推荐

  • ubuntu 16.04 修改MAC地址何IP地址

    永久修改MAC地址 方法一 1 编辑 etc init d rc local 文件 sudo gedit etc init d rc local 2 在此配置文件的最后面加上如 Ubuntu 修改网卡的MAC地址 的修改命令 注 16 04
  • 实验:基本的系统安全控制 实验环境 某公司新增了一台企业级服务器,已安装运行RHEL 6操作系统,由系统运维部、软件开发部、技术服务部共同使用。由于用户数量众多,且使用时间不固定,要求针对账号和

    实验 基本的系统安全控制 实验环境 某公司新增了一台企业级服务器 已安装运行RHEL 6操作系统 由系统运维部 软件开发部 技术服务部共同使用 由于用户数量众多 且使用时间不固定 要求针对账号和登录过程采取基本的安全措施 需求描述 允许用户
  • Android解决EditeText内容右对齐时光标位于hint之前的问题

    当EditText的gravity设置为end或者right时 在某些手机上输入框的光标位置会显示在hint文字之前 如下图 如果我们想光标的位置在hint文字后面 即最右边 解决的方法有 方法一 比较省事的做法 设置EditText的te
  • thinkphp5 访问不了多模块

    thinkphp5 访问不了多模块 只能访问默认模块 可能是nginx文件配置问题 更改nginx conf文件 在server段内添加如下代码段 location try files uri uri args if e request f
  • python火灾检测

    火灾检测是一项用于实时火灾探测和自定义图像的人工智能项目 这是火检测的第一个版本 它包含42幅测试图像的数据集 用于训练100幅图像 安装 如果您有一个NVIDIA GPU 那么您可以安装tensorflow gpu包裹 它会让事情发展得更
  • C# EF Newtonsoft.Json.JsonSerializationException 序列化出现异常

    在对EF EntityFramework 查询的数据序列化出现的问题 问题记录 Newtonsoft Json JsonSerializationException 序列化出现异常 Self referencing loop detecte
  • 二叉树面试题总结(Java)

    本文参考博客 http www jianshu com p 0190985635eb 先上二叉树的数据结构 class TreeNode int val 左孩子 TreeNode left 右孩子 TreeNode right 二叉树的题目
  • java自定义button类控件

    上面是做完后的效果 第一次用java来做自定义继承button类控件 如图看到的其实就只有一个经改写的button控件 style 1 2 3 4 是button内部的几个小label而已 不过中间的滑动效果做得不太好 滑动时有闪烁 还请高
  • 哲理故事300篇 下

    哲理故事300篇 上 http blog csdn net andylin02 archive 2006 08 23 1109314 aspx 哲理故事300篇 中 http blog csdn net andylin02 archive
  • 浅谈类和对象

    一 定义 类 类是一个模板 是抽象的 类可以用于创建对象 类是对具有相同特征和作用的对象的抽象 eg 学生是一个抽象的类 具体实现有小学生 中学生 大学生 对象 任何一个具体的事物或者物体就是一个对象 对象是对类的具体实现 eg 我的电脑
  • lr中需要注意的点--安装后打不开ie需要设置的地方

    前提 Loadrunner11仅支持ie9向下版本 若安装了ie10则需要在查看一安装的更新中卸载 1 设置ie浏览器为默认浏览器 2 计算机 gt 属性 gt 高级系统管理 gt 性能 gt 设置 过程中会提示重启 3 tools gt
  • spring 和springboot 整合rabbitmq

    文章目录 spring springboot整合 rabbitmq 4 1 spring 整合rabbitmq 4 2 springboot 整合rabbitmq spring springboot整合 rabbitmq rabbitmq
  • Java文档注释

    Java文档注释 Doc umentation Comments 注意不要将注解 Annotation 与注释 Comments 混淆 Java的有三种注释 1 单行注释 注释内容 2 多行注释 注释内容 3 文档注释 注释内容 Java文
  • vue z-index层级显示问题

    一个单页面 顶部有fixed的nav 当向上滑动页面时 发现nav里有的组件被下放的组件遮盖 第一时间明白这时需要修改层级设置 将下方的组件z index设为 1 nav的组件z index调高 发现还是有各种遮盖的问题 然后花了点时间找资
  • linux查看某个应用占用多少线程

    以tomcat为例 获取tomcat进程pid ps ef grep tomcat 10090 统计该tomcat进程内的线程个数 ps Lf 10090 wc l 数量就是该tomcat启动了多少线程
  • java异常(机制和捕捉(常见异常类))详解 +练习题

    Java 中的异常处理机制 1 什么是异常 异常 程序在运行过程中产生的不正常情况 程序在运行的时候 发生了一些不被预期的事件 从而没有按照我们编写的代码执行 这就是异常 异常是Java中的错误 但是并不是所有的错误都是异常 比如说 你在定
  • zookeeper的动态扩容

    附属意义的扩容 扩容的新增节点为观察者observer 1 观察者概念 a 在zookeeper引入此新的zookeeper节点类型为observer 是为了帮助处理投票成本随着追随者增加而增加的问题并且进一步完善了zookeeper的可扩
  • 研一寒假C++复习笔记--运算符重载实例

    目录 1 运算符重载 2 加号运算符重载 3 左移运算符重载 lt lt 4 递增运算符重载 5 赋值运算符重载 6 关系运算符重载 7 函数调用运算符重载 1 运算符重载 对已有运算符重新进行定义 赋予其另一种功能 以适应不同的数据类型
  • 数组扁平化flat方法的多种实现

    let arr 1 2 3 4 5 6 7 8 9 10 11 12 1 flat console log arr flat Infinity 2 toString console log arr toString split map it
  • puppet配置

    作为重量级批量自动化运维利器 puppet可以方便大批量停止或启动服务 比如我们经常需在一下停止几十台 mysql服务器 使用puppet配置分分钟搞定 而不需要一台台去手动停止 非常方便 确认服务器端和客户端正常工作 开始编写module