今天继续给大家介绍Linux运维相关知识,本文主要内容是puppet的理论基础。

一、puppet简介

在前面,我们详细讲解了Ansible的工作原理及配置案例。今天,我们来详细讲解另一个常用的自动化运维配置工具——puppet。puppet也是目前互联网企业的自动化运维工具之一,其使用一种描述性的语言给客户端声明了一些状态配置,比如,一个服务应该被安装等。
puppet基于传统的C/S架构,架构中通常有一台服务器,负责对下游客户端的控制。每个被控制的设备都要安装puppet客户端,每个puppet客户端通过ssl证书链接服务器,得到本机的配置列表,然后更新列表来完成配置工作。
puppet既可以工作在主动模式下,也可以工作在被动模式下,在主动模式下,puppet客户端主动拉取服务器配置文件;在被动模式下,puppet服务器主动通知puppet客户端,使puppet客户端开启同步工作。
对于puppet而言,如果硬件设备性能比较高,在被管理客户端配置一致的情况下,管理成千上百台设备是非常简单的。但是在一些大型的企业中,如果只有一台puppet服务器,则puppet服务器的压力则会非常大,这时可以考虑把puppet扩展成一个服务器集群组。
puppet使用ruby语言编写,而ruby语言是解析型语言,所谓解析型语言,就是ruby语言的每次执行,都需要借助翻译器将ruby语言翻译成可以被CPU直接执行的机器码。由于多了这么一个“翻译”的过程,因此,ruby语言编写的程序执行速度较慢。
puppet官网为https://puppet.com/,如下所示:

二、puppet工作原理

puppet工作原理如下图所示:

主要有以下4个步骤:
1、puppet客户端调用本地facter,本地facter会探测出主机的常用变量(如主机名、IP地址等),并将这些变量信息发送给puppet服务器。
2、puppet服务器检测到客户端发送的这些信息,会检测本地配置,根据本地配置内容和客户端发送来的信息进行解析,进行语法检查后生成一个中间的伪代码,然后把伪代码发送给puppet客户端。
3、puppet客户端在收到伪代码后就会执行,然后把执行结果反馈给puppet服务器。
4、puppet服务器在收到puppet客户端执行的结果后,会把客户端的执行结果写入日志文件中。

三、puppet常见资源与模块

puppet主要基于各种资源模块管理客户端,目前主流企业的puppet资源模块如下:
1、file
主要负责管理文件。
2、package
主要负责软件包的安装管理。
3、service
主要负责系统服务的管理。
4、cron
主要负责配置定时任务。
5、exec
可以远程执行命令。
在puppet安装完成(puppet安装的相关过程详情请参见文章puppet详解(二)——puppet安装)后,我们可以查看puppet支持的模块。
执行命令:

puppet describe -l

可以查看puppet支持的资源,结果如下所示:

执行命令:

puppet describe -s 【资源名】

可以查看puppet具体的资源用法,结果如下所示:

原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

puppet详解(一)——puppet基础知识相关推荐

  1. 高通平台8953 Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇)

    本系列导航: 高通平台8953  Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇) 高通平台8953 Linux DTS(Device Tree Source ...

  2. 从0到1详解推荐系统的基础知识与整体框架

    猜你喜欢 0.淘宝首页猜你喜欢推荐建模实践 1.[免费下载]2022年6月份热门报告 2.[实践]小红书推荐中台实践 3.微信视频号实时推荐技术架构分享 4.对比学习在宽狩推荐系统中的应用实践 5.微 ...

  3. java类与接口思维导图_详解java接口基础知识附思维导图

    接口: 官方的含义是---->java接口是一系列方法的声明,是一些方法特征的集合 疑问: 那为什么不用抽象类呢?把他们共有的方法集合起来放在一个抽象类里面,同样可以调用哇,但是反过来想一想如果 ...

  4. 详解FC交换机基础知识

    谈起FC交换机,大家就会想到它是数据中心贵族的象征,也是保证核心业务性能和可靠性的技术基石,但近年来,随着数据中心软件定义,IP化潮流的推进,FC交换机的市场份额有所收缩,但截至目前为止,FC技术仍然 ...

  5. 计算机基础知识及其详解,计算机基础知识详解:计算机入门基础知识

    能力训练网权威发布计算机基础知识详解,更多计算机基础知识详解相关信息请访问少儿综合素质训练网. [导语]以下是大范文网整理的计算机基础知识详解,欢迎阅读! 1.第一台计算机-ENIAC 大家只要知道第 ...

  6. 安装python步骤-从0到1,Python安装步骤详解(附基础知识简介)!

    Python下载安装步骤 python解释器,在Linux中可以内置安装,而在windows中则需要去下载.具体步骤如下: 第一步:通过Web浏览器,访问http://www.python.org官网 ...

  7. python安装步骤-从0到1,Python安装步骤详解(附基础知识简介)!

    Python下载安装步骤 python解释器,在Linux中可以内置安装,而在windows中则需要去下载.具体步骤如下: 第一步:通过Web浏览器,访问http://www.python.org官网 ...

  8. 详解异构计算FPGA基础知识

    戳蓝字"CSDN云计算"关注我们哦! 作者 | 浩仔 责编 | 阿秃 随着云计算,大数据和人工智能技术应用,单靠CPU已经无法满足各行各业的算力需求.海量数据分析.机器学习和边缘计 ...

  9. 电池pack结构_详解锂电池pack基础知识,18650锂电池pack工艺技巧总结分析

    电池pack工艺 导线锡焊工艺 连接工艺 电芯.保护板通过导线锡焊连接,然后装配胶壳 使用设备.工具:锡焊台 缺点:以产生锡珠.脱焊,有安全隐患 三.电池pack工艺 镍片锡焊工艺 连接工艺 电芯.保 ...

  10. 自动化运维工具——puppet详解(二)

    自动化运维工具--puppet详解(二) 目录 一.class 类 1)什么是类? 2)带有参数的类 3)类的继承 1.新增属性 2.新增原有值 3.修改原有值 4.整体调用父类,并重写部分值 二.模 ...

最新文章

  1. flask静态html
  2. Ivan and Powers of Two CodeForces - 305C(set)
  3. SQLServerAgent 当前未运行,因此无法将此操作通知它。
  4. JNDI学习总结(一)——JNDI数据源的配置(转)
  5. HDU 1861 游船出租(模拟)
  6. Atitit.软件控件and仪表盘(23)--多媒体子系统--视频输出切换控制cvbs av s-video Ypbpr pal ntsc
  7. 【Java核心技术卷】I/O详析
  8. 2022年低压电工考试题库及模拟考试
  9. 黑客Windows攻防初级知识点整合
  10. mysql 易语言 邮件_易语言实现163邮箱登录获取邮件列表等操作的代码
  11. CENTOS7开机自启动脚本
  12. SEO优化基础知识大全 SEO新手入门必备知识
  13. MLY翻译 -- 1.Why Machine Learning Strategy?
  14. php编写当前日期距高考天数,距离2021年高考天数 2021高考倒计时
  15. Cocos Creator发布微信小游戏包内体积过大问题
  16. capex与opex的区别
  17. 西门子PLC中的高地址,低字节如何理解?
  18. 千寻位置服务器端口设置错误,南方GPS千寻网络设置
  19. 探秘SLAM之RANSAC算法
  20. Jmeter参数化实现永久递增

热门文章

  1. 机器学习—LightGBM的原理、优化以及优缺点
  2. python基础5-序列思维脑图
  3. pytorch---nn模块(3)自定义nn 模块
  4. 云原生:云计算时代命题之终极解决方案
  5. 让DB2跑得更快——DB2内部解析与性能优化
  6. Linux多线程服务端编程:使用muduo C++网络库
  7. 为什么要使用 JavaScript
  8. It’s Android Time
  9. Scala常用List列表操作方法
  10. php 顺序排序,PHP顺序排序