Skip to content

Commit d9d24bf

Browse files
committed
Update documentation for inventory/hostname note
Include some notes on how to use an inventory file to specify a target certname that is different from the uri used to access the target.
1 parent e4b02a4 commit d9d24bf

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

documentation/provision.md

+31
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,37 @@ The content needed is the PE installation tarball for the target version. The in
102102

103103
Installation content can be downloaded from [https://puppet.com/try-puppet/puppet-enterprise/download/](https://puppet.com/try-puppet/puppet-enterprise/download/).
104104

105+
## Hostnames and Certificate Names
106+
107+
The various host parameters given to the peadm::provision or peadm::action::install plans will be set as Puppet certificate names. You must use the names here that you want the servers to be identified as by Puppet.
108+
109+
While it is not required that target names match hostnames, it _is_ required that target names be resolvable.
110+
111+
In the event that Bolt will reach servers by IP address or external DNS name rather than internal DNS name or desired certname, a Bolt inventory file should be used to specify URIs for each name. For example:
112+
113+
```yaml
114+
---
115+
targets:
116+
- name: pe-xl-core-0.lab1.puppet.vm
117+
uri: 10.234.6.45
118+
- name: pe-xl-core-1.lab1.puppet.vm
119+
uri: 10.234.14.131
120+
```
121+
122+
A parameters JSON file can then reference the target names, which will become the Puppet certificate names, and Bolt will still be able to reach the systems by using the IP addresses or other DNS name specified as the URIs in the inventory.yaml file.
123+
124+
```json
125+
{
126+
"master_host": "pe-xl-core-0.lab1.puppet.vm",
127+
"master_replica_host": "pe-xl-core-1.lab1.puppet.vm",
128+
129+
"console_password": "puppetlabs",
130+
"dns_alt_names": [ "puppet", "puppet.lab1.puppet.vm" ],
131+
"compiler_pool_address": "puppet.lab1.puppet.vm",
132+
"version": "2019.2.2"
133+
}
134+
```
135+
105136
## Implementation Reference
106137

107138
Provisioning can be broken down into two actions: [install](../plans/action/install.pp), and [configure](../plans/action/configure.pp). Installation currently requires ssh access to the un-provisioned nodes, but configure can be performed using the Orchestrator transport if installation has already been completed.

0 commit comments

Comments
 (0)