Difference between revisions of "Puppet"

From wikieduonline
Jump to navigation Jump to search
Tags: Mobile web edit, Mobile edit
 
(33 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
[[wikipedia:Puppet (company)|Puppet]] (2005) is an open-core software [[configuration management]] tool available since 2005. It runs on many Unix-like systems as well as on Microsoft Windows, and includes its own declarative language to describe system configuration.
 
[[wikipedia:Puppet (company)|Puppet]] (2005) is an open-core software [[configuration management]] tool available since 2005. It runs on many Unix-like systems as well as on Microsoft Windows, and includes its own declarative language to describe system configuration.
 +
 +
== Installation ==
 +
* MacOs: <code>[[brew install --cask puppetry]]</code>
 +
* [[Ubuntu]]: <code>apt install puppet</code>
  
 
== Commands ==
 
== Commands ==
 
* <code>[[facter]]</code>
 
* <code>[[facter]]</code>
 +
* <code>[[puppet apply]]</code>
 
* <code>[[puppet agent]] --test</code>
 
* <code>[[puppet agent]] --test</code>
* <code>[[puppet agent]] -t</code>
+
* <code>[[puppet agent -t]]</code>
* <code>puppet apply file.pp</code>
+
* <code>[[puppet agent -tv]]</code>
puppet cert list
+
* <code>puppet apply file[[.pp]]</code>
Puppet cert sign mycertname
+
* <code>puppet apply --test</code>
 +
* <code>[[puppet module]] install puppetlabs-apache</code>
 +
* <code>[[puppet cert list]]</code>
 +
* <code>[[puppet cert sign mycertname]]</code>
  
 
== Example puppet file==
 
== Example puppet file==
 +
 +
my_first_puppet_example.pp
 +
<pre>
 +
file {'/tmp/my-example-ip':                                         
 +
  content => "hello world!", 
 +
}
 +
</pre>
 +
 +
[[puppet apply my_first_puppet_example.pp]]
 +
 +
 +
my_second_example.pp
 
<pre>
 
<pre>
 
file {'/tmp/my-example-ip':                                            # resource type file and filename
 
file {'/tmp/my-example-ip':                                            # resource type file and filename
Line 17: Line 37:
 
}
 
}
 
</pre>
 
</pre>
See also [[Ansible]] [[lineinfile]] [[module]]
+
See also [[Ansible]] <code>[[lineinfile]]</code> [[module]]
  
 
== Activities ==
 
== Activities ==
Line 23: Line 43:
 
# Read Puppet source code: https://github.com/puppetlabs/puppet
 
# Read Puppet source code: https://github.com/puppetlabs/puppet
 
# Read https://blog.csanchez.org/2012/03/22/introduction-to-puppet/
 
# Read https://blog.csanchez.org/2012/03/22/introduction-to-puppet/
 +
 +
 +
== Related terms ==
 +
* [[Puppet manifests]]: <code>/etc/puppet/manifests/site.pp</code>
 +
* [[Puppet modules]]: Puppet Forge, <code>[[puppet module install]]</code>
 +
* <code>[[bolt plan]] run</code>
 +
* [[bolt]] (2018?) open source [[orchestration]] tool and [[agentless]] task runner.
 +
* [[Matt Waxman]]
 +
* [[ARA]]
 +
* [[Puppet Enterprise]]
 +
* [[Puppetfile]]
 +
* [[Ruby]], [[Clojure]]
  
 
== See also ==
 
== See also ==
* [[Ruby]], [[Clojure]]
+
* {{Bolt}}
 +
* {{Puppet}}
 
* {{Configuration management}}
 
* {{Configuration management}}
 
* {{IaC}}
 
* {{IaC}}
  
 
[[Category:Server administration]]
 
[[Category:Server administration]]

Latest revision as of 13:16, 19 July 2021

Puppet (2005) is an open-core software configuration management tool available since 2005. It runs on many Unix-like systems as well as on Microsoft Windows, and includes its own declarative language to describe system configuration.

Installation[edit]

Commands[edit]

Example puppet file[edit]

my_first_puppet_example.pp
file {'/tmp/my-example-ip':                                           
  content => "hello world!",  
}
puppet apply my_first_puppet_example.pp


my_second_example.pp
file {'/tmp/my-example-ip':                                            # resource type file and filename
  ensure  => present,                                               # make sure it exists
  mode    => '0644',                                                # file permissions
  content => "My Public IP Address is: ${ipaddress_eth0}.\n",  # note the ipaddress_eth0 fact
}

See also Ansible lineinfile module

Activities[edit]

  1. Read Puppet release notes: https://puppet.com/docs/puppet/latest/release_notes_puppet.html
  2. Read Puppet source code: https://github.com/puppetlabs/puppet
  3. Read https://blog.csanchez.org/2012/03/22/introduction-to-puppet/


Related terms[edit]

See also[edit]

Advertising: