puppet 配置 3. 资源

概念

资源是 puppet 配置的独立单元
资源包含有  (package, service, file, user, mount, exec ...)
常见资源包含有 title, arguments 两部分组成
arguments 可包含 0 ~ 多个

资源例子:

type { 'title':
  argument  => value,
  other_arg => value,
}

资源语法:

file { 'motd':
  path    => '/etc/motd',
  content => 'Tomorrow is another day',
}

查询资源

可以通过下面命令获取 puppet 版本的资源

puppet describe --list

了解资源

利用下面命令可以获得对应的资源的相关默认配置及帮助

puppet describe user
puppet resource user
puppet resource user root
puppet resource service

例如, 默认状态下, puppet 对 httpd server 资源的配置如下

[root@terry-test-uq2pu util]# puppet resource service httpd
service { 'httpd':
  ensure => 'stopped',
  enable => 'false',
}

假如系统修改 puppet 默认资源配置, 参考

puppet resource service httpd ensure='running' enable='true'

资源代码

可以通过下面位置查询资源对应的代码

ls $(facter rubysitedir)/puppet/type

常见资源管理参见后面的资源管理配置文档

时间: 2024-09-24 21:00:20

puppet 配置 3. 资源的相关文章

puppet中file资源详细介绍及案例分析

一.系统环境 1.puppet服务端 Release:RHEL6.4 HOSTNAME: puppetserver.rsyslog.org TCP/IP: 172.16.200.100/24 Packages: puppet-server-2.7.21-1.el6.noarch mcollective-client-2.2.4 activemq-5.5.0 2.puppet节点 Release: RHEL5.8 HOSTNAME: agent1.rsyslog.org TCP/IP: 172.1

puppet 配置 3.1 管理 sysct.conf

辅助模块 https://github.com/duritong/puppet-sysctl 下载方法 利用上面网站, 通过连接 clone or download 利用 download zip 按钮进行下载 把下载的 zip 文件直接解压到服务器端 /etc/puppet/modules/sysctl/ 目录下 文件结构 如下 [root@terry-test-uq2pu ~]# ls /etc/puppet/modules/sysctl/ Gemfile lib manifests Mod

puppet 配置 3.2 管理 hosts

作用 利用 puppet 对客户端 /etc/hosts 文件进行管理 辅助模块 https://forge.puppet.com/chrekh/hosts 下载方法 点击网页中 download latest tar.gz 直接下载 把下载的文件 解压至 puppet server 中 /etc/puppet/modules/hosts 目录中 文件结构 参考 [root@terry-test-uq2pu hosts]# pwd /etc/puppet/modules/hosts [root@

puppet 配置 3.4 文件管理与自定义模块

作用 利用 puppet 对文件, 配置文件等进行管理 常见管理办法 1. 新增文件并定义文件中内容 2. 修改已经存在的文件中的配置 3. 通过模板管理方式进行配置文件定义 模块 这里介绍 puppet 自带的 file 模块及第三方模块 stdlib stdlib 模块下载地址 使用方法 下载 stdlib.tar.gz 软件包并解压至 /etc/puppet/modules/stdlib 文件结构 [root@terry-test-uq2pu ~]# ls /etc/puppet/modu

puppet中Exec资源详细介绍及案例分析

一.系统环境 1.puppet服务端 Release:RHEL6.4 HOSTNAME: puppetserver.rsyslog.org TCP/IP: 172.16.200.100/24 Packages: puppet-server-2.7.21-1.el6.noarch mcollective-client-2.2.4 activemq-5.5.0 2.puppet节点 Release: RHEL5.8 HOSTNAME: agent1.rsyslog.org TCP/IP: 172.1

puppet中Service资源详细介绍及案例分析

一.系统环境 1.puppet服务端 Release:RHEL6.4 HOSTNAME: puppetserver.rsyslog.org TCP/IP: 172.16.200.100/24 Packages: puppet-server-2.7.21-1.el6.noarch mcollective-client-2.2.4 activemq-5.5.0 2.puppet节点 Release: RHEL5.8 HOSTNAME: agent1.rsyslog.org TCP/IP: 172.1

puppet中Package资源详细介绍及案例分析

一.系统环境 1.puppet服务端 Release:RHEL6.4 HOSTNAME: puppetserver.rsyslog.org TCP/IP: 172.16.200.100/24 Packages: puppet-server-2.7.21-1.el6.noarch mcollective-client-2.2.4 activemq-5.5.0 2.puppet节点 Release: RHEL5.8 HOSTNAME: agent1.rsyslog.org TCP/IP: 172.1

puppet 配置 3.5 参数

作用 介绍 puppet 中 facter 用法, 介绍自参数定义, 参数传递, 参数使用的常见例子 facter facter 是 puppet 的一个依赖软件, 当安装了 puppet 软件, 都可以通过 facter 命令查询 puppet 内建变量 查询内建函数 直接调用命令 facter 查询所有内建变量 通过命令 facter + 需要查询的变量名称, 可以返回变量值 facter 返回的变量可以直接在 puppet 模板中调用, 不需要重新进行定义 facter 变量主要依赖当前

puppet 配置 4 条件语法

作用 puppet 与其他语言一样, 可以通过正则匹配, 通过判断, 循环, case 等语法进行管理 本文会对 puppet 一些条件语法进行介绍 比较 在 puppet 中, 有下面几种常见的比较方法, 参考下面表格 表达式 作用 例子 ! 非 if ( ! $myvar ) and 与 if ( $myvar > 10 and $osfamily == 'RedHat' ) or 或 if ( $myvar > 10 or $osfamily == 'RedHat' ) in 包含 if