Puppet 3 Cookbook
上QQ阅读APP看书,第一时间看更新

Creating a manifest

If you already have some Puppet code (known as a Puppet manifest), you can skip this section and go on to the next. If not, we'll see how to create and apply a simple manifest.

How to do it...

Follow these steps:

  1. First, let's create a suitable directory structure to keep the manifest code in:
    ubuntu@cookbook:~$ mkdir puppet
    ubuntu@cookbook:~$ cd puppet
    ubuntu@cookbook:~/puppet$ mkdir manifests
    
  2. Within your puppet directory, create the file manifests/site.pp with the following contents:
    import 'nodes.pp'
  3. Create the file manifests/nodes.pp with the following contents (use your machine's hostname in place of cookbook):
    node 'cookbook' {
      file { '/tmp/hello':
        content => "Hello, world\n",
      } 
    }
  4. Test your manifest with the puppet apply command. This will tell Puppet to read the manifest, compare it to the state of the machine, and make any necessary changes to that state:
    ubuntu@cookbook:~/puppet$ sudo puppet apply manifests/site.pp
    Notice: /Stage[main]//Node[cookbook]/File[/tmp/hello]/ensure:
     defined content as '{md5}a7966bf58e23583c9a5a4059383ff850'
    Notice: Finished catalog run in 0.06 seconds
    
  5. To see if Puppet did what we expected (create the file /tmp/hello with the contents Hello, world), run the following command:
    ubuntu@cookbook:~/puppet$ cat /tmp/hello
    Hello, world