Skip to content

Commit ee78279

Browse files
committed
Added information on installing Foreman w/ OpenVox
The big trick is that you have to start by installing OpenVox and then installing the oauth gem. Then the installer just works. This page is getting a little unwieldy again. We'll need another cleanup pass on it soon.
1 parent 3cbcbd8 commit ee78279

1 file changed

Lines changed: 70 additions & 16 deletions

File tree

openvox/install.md

Lines changed: 70 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,21 @@ title: Installing OpenVox
44
subsection: openvox
55
---
66

7-
OpenVox package downloads are currently sponsored by [Overlook InfraTech](https://overlookinfratech.com).
87
As of release 8.11, OpenVox is functionally equivalent to Puppet; the command names are the same, the configuration file paths are the same, etc.
98
The major differences are in help text output, man pages, and so on.
109
This means that you can continue to use all the commands, modules, tooling, etc that you're used to, but at this time *you cannot install both Puppet and OpenVox on the same system*.
1110

1211
> 🔔 Tip: If you want to use Puppet code to manage your systems, if you have strange dependencies, if you're migrating from Puppet Enterprise, or if you have Puppet modules installed as system packages then see the [advanced options](#advanced-options) sections below.
1312
>
14-
> * [Alternative Puppet uninstallation options](#alternative-puppet-uninstallation-options)
13+
> * [Installing Foreman with OpenVox](#installing-foreman-with-openvox)
14+
> * [Using the foreman-installer](#using-the-foreman-installer)
15+
> * [Using the foreman-foreman module](#using-the-foreman-foreman-module)
16+
> * [Porting a Foreman infra to OpenVox](#porting-a-foreman-infra-to-openvox)
1517
> * [Managing OpenVox with OpenVox](#managing-openvox-with-openvox)
1618
> * [Managing Repositories](#managing-repositories)
1719
> * [Managing the Server/Client](#managing-the-serverclient)
1820
> * [Foreman Integration](#foreman-integration)
21+
> * [Alternative Puppet uninstallation options](#alternative-puppet-uninstallation-options)
1922
{: class="alert alert-primary callout" }
2023

2124
We encourage you to try out OpenVox on a fresh test system, the way you would for any major system package.
@@ -50,28 +53,62 @@ Then install the packages you want.
5053
If you have backed up config files, then restore them now.
5154

5255
### 🎉 That's it! You're done!
53-
Feel free to read the rest of the page for more options.
56+
Feel free to read the rest of the page for more options, especially if you're
57+
also intending to use Foreman.
5458

5559
-----
5660

5761
## Advanced Options
5862

59-
### Alternative Puppet uninstallation options
63+
### Installing Foreman with OpenVox
6064

61-
There are some cases in which you might have to take more steps to safely remove legacy Puppet from your system.
65+
> 🚨 Tip: When using Foreman and OpenVox together, you must install OpenVox first.
66+
> See [Porting a Foreman infra to OpenVox](#porting-a-foreman-infra-to-openvox) for instructions on how to recover if you started with Foreman.
67+
{: class="alert alert-warning callout" }
6268

63-
* If you're migrating from Puppet Enterprise you can use the `puppet-enterprise-uninstaller` script on each node as described in [their docs](https://www.puppet.com/docs/pe/latest/uninstalling.html).
64-
* If you're using distro provided packages, then you might have a bigger job.
65-
For example, if you're using Debian packages, you may have several Puppet modules packaged as `.deb` packages that you'll have to move to your `Puppetfile`.
66-
You might consider waiting until your distro packages OpenVox.
67-
* If you do want to migrate now, then remove any puppet packages and dependencies you have installed using your distro tools.
68-
* Debian family
69-
* `apt autoremove <packagename>`
70-
* RedHat family
71-
* `yum autoremove <packagename>`
72-
* You might also consider (carefully) cleaning up unused dependencies afterwards by running `apt` or `yum` autoremove without a package name.
69+
There are two ways to install Foreman: via the `foreman-installer` or via the `theforeman-foreman` module. ***In both cases, you must install OpenVox first***.
7370

74-
You do not need to remove the `[apt|yum].puppet.com` repositories although the only thing you'll be able to use them for going forward is installing historical Puppet releases.
71+
#### Using the `foreman-installer`
72+
73+
Edit `/etc/foreman-installer/custom-hiera.yaml` to include these Hiera settings.
74+
If you intend to continue managing your Foreman installation with puppet code, then follow the instructions in the [Managing OpenVox with OpenVox](#managing-openvox-with-openvox) sections to persist these settings into your standard Hiera data files.
75+
76+
``` yaml
77+
---
78+
puppet::client_package: openvox-agent
79+
puppet::server_package: openvox-server
80+
puppetdb::puppetdb_package: openvoxdb
81+
puppetdb::master::config::terminus_package: openvoxdb-termini
82+
foreman::providers::oauth: false
83+
```
84+
Then manually install the `oauth` gem into OpenVox's gempath.
85+
86+
```
87+
# /opt/puppetlabs/puppet/bin/gem install oauth
88+
```
89+
90+
And finally, use [Foreman's Quickstart Guide](https://theforeman.org/manuals/3.15/quickstart_guide.html) to install Foreman.
91+
92+
#### Using the `foreman-foreman` module
93+
94+
1. Ensure that OpenVox is installed, then follow the instructions in the [Managing OpenVox with OpenVox](#managing-openvox-with-openvox) sections to configure Hiera properly.
95+
1. Add `theforeman-foreman` to your `Puppetfile` and deploy it.
96+
1. Use the [documentation](https://github.com/theforeman/puppet-foreman) to classify your server node to your requirements and then run the OpenVox agent to configure everything.
97+
98+
### Porting a Foreman infra to OpenVox
99+
100+
If you're already running Foreman and you want to switch it to be backed by OpenVox then you have a little bit of housekeeping to do first.
101+
First, use your system package manager to remove the `puppet-agent-oauth` package.
102+
If you use the `foreman-installer` to manage and upgrade your setup, then ensure that you remove the cached scenario file, or it will continue to use old package names.
103+
104+
```
105+
# rm /etc/foreman-installer/scenarios.d/last_scenario.yaml
106+
```
107+
108+
If you're porting from system installed Puppet, then you may have to purge package configuration or remove legacy directory structures.
109+
Ensure that the `aio_agent_version` fact returns the appropriate version before continuing.
110+
111+
Then follow the [installation instructions](#installing-foreman-with-openvox) above to update your infrastructure.
75112
76113
77114
### Managing OpenVox with OpenVox
@@ -157,6 +194,23 @@ package { 'oauth':
157194
}
158195
```
159196

197+
### Alternative Puppet uninstallation options
198+
199+
There are some cases in which you might have to take more steps to safely remove legacy Puppet from your system.
200+
201+
* If you're migrating from Puppet Enterprise you can use the `puppet-enterprise-uninstaller` script on each node as described in [their docs](https://www.puppet.com/docs/pe/latest/uninstalling.html).
202+
* If you're using distro provided packages, then you might have a bigger job.
203+
For example, if you're using Debian packages, you may have several Puppet modules packaged as `.deb` packages that you'll have to move to your `Puppetfile`.
204+
You might consider waiting until your distro packages OpenVox.
205+
* If you do want to migrate now, then remove any puppet packages and dependencies you have installed using your distro tools.
206+
* Debian family
207+
* `apt autoremove <packagename>`
208+
* RedHat family
209+
* `yum autoremove <packagename>`
210+
* You might also consider (carefully) cleaning up unused dependencies afterwards by running `apt` or `yum` autoremove without a package name.
211+
212+
You do not need to remove the `[apt|yum].puppet.com` repositories although the only thing you'll be able to use them for going forward is installing historical Puppet releases.
213+
160214
-----
161215

162216
## Sponsorship

0 commit comments

Comments
 (0)