Update Servers & Workflows/Linux/Automation/Puppet/Puppet Bolt.md
This commit is contained in:
@ -13,18 +13,94 @@ sudo yum install -y puppet-bolt
|
|||||||
bolt --version
|
bolt --version
|
||||||
|
|
||||||
# Clone Puppet Bolt Repository into Bolt Directory
|
# Clone Puppet Bolt Repository into Bolt Directory
|
||||||
sudo git clone https://git.bunny-lab.io/GitOps/Puppet-Bolt.git /etc/puppetlabs/bolt
|
#sudo git clone https://git.bunny-lab.io/GitOps/Puppet-Bolt.git /etc/puppetlabs/bolt <-- Disabled for now
|
||||||
|
sudo mkdir -p /etc/puppetlabs/bolt
|
||||||
sudo chown -R $(whoami):$(whoami) /etc/puppetlabs/bolt
|
sudo chown -R $(whoami):$(whoami) /etc/puppetlabs/bolt
|
||||||
sudo chmod -R 644 /etc/puppetlabs/bolt
|
sudo chmod -R 644 /etc/puppetlabs/bolt
|
||||||
sudo chmod -R u+rwx,g+rx,o+rx /etc/puppetlabs/bolt/modules/bolt
|
#sudo chmod -R u+rwx,g+rx,o+rx /etc/puppetlabs/bolt/modules/bolt <-- Disabled for now
|
||||||
|
|
||||||
# Initialize Bolt Project
|
# Initialize A New Bolt Project
|
||||||
cd /etc/puppetlabs/bolt
|
cd /etc/puppetlabs/bolt
|
||||||
bolt project init puppet_bolt
|
bolt project init bunny_lab
|
||||||
```
|
```
|
||||||
|
|
||||||
## Validate Bolt Project is Initialized
|
## Configuring Inventory
|
||||||
If the command below is successful, you will see the custom `bolt::enroll_agent` plan listed.
|
At this point, you will want to create an inventory file that you can use for tracking devices. For now, this will have hard-coded credentials until a cleaner method is figured out.
|
||||||
``` sh
|
``` yaml title="/etc/puppetlabs/bolt/inventory.yaml"
|
||||||
bolt plan show --project /etc/puppetlabs/bolt
|
# Inventory file for Puppet Bolt
|
||||||
|
groups:
|
||||||
|
- name: linux_servers
|
||||||
|
targets:
|
||||||
|
- lab-auth-01.bunny-lab.io
|
||||||
|
- lab-auth-02.bunny-lab.io
|
||||||
|
config:
|
||||||
|
transport: ssh
|
||||||
|
ssh:
|
||||||
|
host-key-check: false
|
||||||
|
private-key: "/etc/puppetlabs/bolt/id_rsa_OpenSSH" # (1)
|
||||||
|
user: nicole
|
||||||
|
native-ssh: true
|
||||||
|
|
||||||
|
- name: windows_servers
|
||||||
|
config:
|
||||||
|
transport: winrm
|
||||||
|
winrm:
|
||||||
|
realm: BUNNY-LAB.IO
|
||||||
|
ssl: true
|
||||||
|
user: "BUNNY-LAB\\nicole.rappe"
|
||||||
|
password: DomainPassword # (2)
|
||||||
|
groups:
|
||||||
|
- name: domain_controllers
|
||||||
|
targets:
|
||||||
|
- lab-dc-01.bunny-lab.io
|
||||||
|
- lab-dc-02.bunny-lab.io
|
||||||
|
- name: dedicated_game_servers
|
||||||
|
targets:
|
||||||
|
- lab-games-01.bunny-lab.io
|
||||||
|
- lab-games-02.bunny-lab.io
|
||||||
|
- lab-games-03.bunny-lab.io
|
||||||
|
- lab-games-04.bunny-lab.io
|
||||||
|
- lab-games-05.bunny-lab.io
|
||||||
|
- name: hyperv_hosts
|
||||||
|
targets:
|
||||||
|
- virt-node-01.bunny-lab.io
|
||||||
|
- bunny-node-02.bunny-lab.io
|
||||||
```
|
```
|
||||||
|
|
||||||
|
1. Point the inventory file to the private key (if you use key-based authentication instead of password-based SSH authentication.)
|
||||||
|
2. Replace this with your actual domain admin / domain password.
|
||||||
|
|
||||||
|
### Validate Bolt Inventory Works
|
||||||
|
If the inventory file is created correctly, you will see the hosts listed when you run the command below:
|
||||||
|
``` sh
|
||||||
|
cd /etc/puppetlabs/bolt
|
||||||
|
bolt inventory show
|
||||||
|
```
|
||||||
|
|
||||||
|
??? example "Example Inventory Output"
|
||||||
|
You should expect to see output similar to the following:
|
||||||
|
```
|
||||||
|
[root@lab-puppet-01 bolt-lab]# bolt inventory show
|
||||||
|
Targets
|
||||||
|
lab-auth-01.bunny-lab.io
|
||||||
|
lab-auth-02.bunny-lab.io
|
||||||
|
lab-dc-01.bunny-lab.io
|
||||||
|
lab-dc-02.bunny-lab.io
|
||||||
|
lab-games-01.bunny-lab.io
|
||||||
|
lab-games-02.bunny-lab.io
|
||||||
|
lab-games-03.bunny-lab.io
|
||||||
|
lab-games-04.bunny-lab.io
|
||||||
|
lab-games-05.bunny-lab.io
|
||||||
|
virt-node-01.bunny-lab.io
|
||||||
|
bunny-node-02.bunny-lab.io
|
||||||
|
|
||||||
|
Inventory source
|
||||||
|
/tmp/bolt-lab/inventory.yaml
|
||||||
|
|
||||||
|
Target count
|
||||||
|
11 total, 11 from inventory, 0 adhoc
|
||||||
|
|
||||||
|
Additional information
|
||||||
|
Use the '--targets', '--query', or '--rerun' option to view specific targets
|
||||||
|
Use the '--detail' option to view target configuration and data
|
||||||
|
```
|
||||||
|
Reference in New Issue
Block a user