Puppet resource是资源抽象层的shell,通过它可以将当前系统状态转换为puppet的代码,并且还具有将当前系统状态改变为Puppet RAL状态等功能.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
[root@puppet ~]
# puppet resource -h
puppet-resource(8) -- The resource abstraction layer shell
========
SYNOPSIS
--------
Uses the Puppet RAL to directly interact with the system.
USAGE
-----
puppet resource [-h|--help] [-d|--debug] [-
v
|--verbose] [-e|--edit]
[-H|--host <host>] [-p|--param <parameter>] [-t|--types] <
type
>
[<name>] [<attribute>=<value> ...]
DESCRIPTION
-----------
This
command
provides simple facilities
for
converting current system
state into Puppet code, along with some ability to modify the current
state using Puppet's RAL.
By default, you must at least provide a
type
to list,
in
which
case
puppet resource will tell you everything it knows about all resources of
that
type
. You can optionally specify an instance name, and puppet
resource will only describe that single instance.
If given a
type
, a name, and a series of <attribute>=<value> pairs,
puppet resource will modify the state of the specified resource.
Alternately,
if
given a
type
, a name, and the
'--edit'
flag, puppet
resource will write its output to a
file
,
open
that
file
in
an editor,
and
then
apply the saved
file
as a Puppet transaction.
OPTIONS
-------
Note that any setting that's valid
in
the configuration
file
is also a valid long argument. For example,
'ssldir'
is a valid
setting, so you can specify
'--ssldir <directory>'
as an
argument.
See the configuration
file
documentation at
http:
//docs
.puppetlabs.com
/references/stable/configuration
.html
for
the
full list of acceptable parameters. A commented list of all
configuration options can also be generated by running puppet with
'--genconfig'
.
* --debug:
#打开调试开关信息
Enable full debugging.
* --edit:
#将查询结果写入文件,在编辑器中打开这一文件,并且以puppet代码的表现形式复述这一文件.
Write the results of the query to a
file
,
open
the
file
in
an editor,
and
read
the
file
back
in
as an executable Puppet manifest.
* --host:
#连接到已命名的主机资源服务器,获取指定类型资源的列表.
When specified, connect to the resource server on the named host
and retrieve the list of resouces of the
type
specified.
* --help:
Print this help message.
* --param:
#添加更多参数以进行查询输出.
Add
more
parameters to be outputted from queries.
* --types:
#列出所有可获取的类型.
List all available types.
* --verbose:
#输出扩展信息.
Print extra information.
EXAMPLE
-------
This example uses `puppet resource` to
return
a Puppet configuration
for
the user `luke`:
$ puppet resource user luke
user {
'luke'
:
home =>
'/home/luke'
,
uid =>
'100'
,
ensure =>
'present'
,
comment =>
'Luke Kanies,,,'
,
gid =>
'1000'
,
shell =>
'/bin/bash'
,
groups
=> [
'sysadmin'
,
'audio'
,
'video'
,
'puppet'
]
}
AUTHOR
------
Luke Kanies
COPYRIGHT
---------
Copyright (c) 2011 Puppet Labs, LLC Licensed under the Apache 2.0 License
|
举例:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
[root@puppet ~]
# puppet resource user root |tee 2.pp
user {
'root'
:
ensure =>
'present'
,
comment =>
'root'
,
gid =>
'0'
,
home =>
'/root'
,
password =>
'$6$yIyAnjPI1kiwQpe7$N0Lq9PrISqc5FRvWYbyS7tRSDE2lGLhdbQU/adpVAGbBpRsUSQ6GR22REoV9IJa9pPTHrKEOeShC2TZF3CUx3.'
,
password_max_age =>
'99999'
,
password_min_age =>
'0'
,
shell =>
'/bin/bash'
,
uid =>
'0'
,
}
[root@puppet ~]
# cat 2.pp
user {
'root'
:
ensure =>
'present'
,
comment =>
'root'
,
gid =>
'0'
,
home =>
'/root'
,
password =>
'$6$yIyAnjPI1kiwQpe7$N0Lq9PrISqc5FRvWYbyS7tRSDE2lGLhdbQU/adpVAGbBpRsUSQ6GR22REoV9IJa9pPTHrKEOeShC2TZF3CUx3.'
,
password_max_age =>
'99999'
,
password_min_age =>
'0'
,
shell =>
'/bin/bash'
,
uid =>
'0'
,
}
|
# puppet resource user root --edit 直接生成puppet代码,并切编辑此puppet代码.
本文转自青衫解衣 51CTO博客,原文链接:http://blog.51cto.com/215687833/1964309