Introduction
Foreman is a powerful open-source infrastructure management tool that simplifies the provisioning and management of physical and virtual servers. It provides a web-based interface to manage your servers, along with integration capabilities with various configuration management tools like Puppet and Ansible. In this guide, we will walk you through the steps to install Foreman 3.7 on RHEL 8 and CentOS 8.
System Requirements
- x86_64 architecture
- 4 CPU cores
- A minimum of 4 GB RAM. Foreman running with less RAM than the minimum value might not operate correctly.
- Administrative user (root) access
- A system umask of 0022
- Full forward and reverse DNS resolution using a fully-qualified domain name
- A server running RHEL 8 or CentOS 8.
- A stable internet connection.
Storage Requirements for Foreman Server Installation
- /var/log – 10GB or more
- /var/lib/pgsql – 20GB or more
- /opt/puppetlabs – 5 GB or more
Firewall Rules
For Foreman to work normally, ensure that the required network ports are open and free on the RHEL operating system. We can achieve this through firewall-cmd
 configure the Linux firewall.
We can open the ports for client to Foreman communication through the command below:
firewall-cmd \ --add-port="53/udp" --add-port="53/tcp" \ --add-port="67/udp" \ --add-port="69/udp" \ --add-port="80/tcp" --add-port="443/tcp" \ --add-port="8443/tcp" \ --add-port="8140/tcp"
Make the above changes permanent through the following command:
firewall-cmd --runtime-to-permanent
Verify Firewall Rules
You can verify the firewall rules using the command below:
# firewall-cmd --list-all public (active) target: default icmp-block-inversion: no interfaces: ens192 sources: services: cockpit dhcpv6-client ssh ports: 3306/tcp 53/udp 53/tcp 67/udp 69/udp 80/tcp 443/tcp 8443/tcp 8140/tcp protocols: forward: no masquerade: no forward-ports: source-ports: icmp-blocks: rich rules:
DNS Verification
We need the full forward and reverse DNS resolution for our RHEL 8 instance hostname to prevent any issues durong the Foreman installation. This can be achieved by adding the required A records and the corresponding PTR records on your DNS.
For my case, my DNS name is foreman01.technnix.net and the corresponding IP is 10.22.7.5.
Verification can be achieved through running the ping
commands below:
# ping -c1 localhost
PING localhost(localhost (::1)) 56 data bytes
64 bytes from localhost (::1): icmp_seq=1 ttl=64 time=0.052 ms
--- localhost ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.052/0.052/0.052/0.000 ms
[root@foreman01 ~]# ping -c1 hostname -f
PING foreman01.technnix.net(foreman01.technnix.net (fe80::250:56ff:febd:9027%ens192)) 56 data bytes
64 bytes from foreman01.technnix.net (10.22.7.5): icmp_seq=1 ttl=64 time=0.035 ms
--- foreman01.technnix.net ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.048/0.048/0.048/0.000 ms
3. Installing Foreman server
Configure repositories
You are supposed to use the steps here to configure the repositories required to install Foreman on RHEL 8 server.
Disable all repositories and then enable baseos
and appstream
repos only through the following commands:
# subscription-manager repos --disable "*" # subscription-manager repos --enable=rhel-8-for-x86_64-baseos-rpms --enable=rhel-8-for-x86_64-appstream-rpms
Install foreman-release.rpm
package
In /tmp
directory, download the rpm and then install it using the dnf localinstall
command.
# cd /tmp [root@foreman01 tmp]# wget https://yum.theforeman.org/releases/latest/el8/x86_64/foreman-release.rpm --no-check-certificate --2023-09-01 13:44:35-- https://yum.theforeman.org/releases/latest/el8/x86_64/foreman-release.rpm Length: 13164 (13K) [application/x-rpm] Saving to: 'foreman-release.rpm' foreman-release.rpm 100%[=======================================================================================================================>] 12.86K --.-KB/s in 0.004s 2023-09-01 13:44:36 (3.12 MB/s) - 'foreman-release.rpm' saved [13164/13164]
Install the package:
[root@foreman01 tmp]# ls foreman-release.rpm [root@foreman01 tmp]# dnf localinstall foreman-release.rpm Updating Subscription Management repositories. Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) 93 kB/s | 4.5 kB 00:00 EPEL8 x86_64 67 kB/s | 2.3 kB 00:00 gitlab-ce 55 kB/s | 2.0 kB 00:00 Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) 816 B/s | 4.1 kB 00:05 Red Hat Satellite Tools 6.7 for RHEL 8 x86_64 (RPMs) 73 kB/s | 3.8 kB 00:00 Dependencies resolved. ====================================================================================================================================================================================================================== Package Architecture Version Repository Size ====================================================================================================================================================================================================================== Installing: foreman-release noarch 3.7.0-1.el8 @commandline 13 k Transaction Summary ====================================================================================================================================================================================================================== Install 1 Package Total size: 13 k Installed size: 2.3 k Is this ok [y/N]: y Downloading Packages: Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : foreman-release-3.7.0-1.el8.noarch 1/1 Verifying : foreman-release-3.7.0-1.el8.noarch 1/1 Installed products updated. Uploading Tracer Profile Installed: foreman-release-3.7.0-1.el8.noarch Complete!
After the installation is done, a repository file is created in the /etc/yum.repos.d
directory.
cat /etc/yum.repos.d/foreman.repo [foreman] name=Foreman 3.7 baseurl=https://yum.theforeman.org/releases/3.7/el8/$basearch enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-foreman [foreman-source] name=Foreman 3.7 - source baseurl=https://yum.theforeman.org/releases/3.7/el8/source enabled=0 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-foreman
Install the puppet7-release-el-8.noarch.rpm
package
In /tmp
directory, download the rpm and then install it using the dnf localinstall
command.
# wget https://yum.puppet.com/puppet7-release-el-8.noarch.rpm --2023-09-01 16:52:12-- https://yum.puppet.com/puppet7-release-el-8.noarch.rpm Length: 9452 (9.2K) [application/x-redhat-package-manager] Saving to: 'puppet7-release-el-8.noarch.rpm' puppet7-release-el-8.noarch.rpm 100%[=======================================================================================================================>] 9.23K --.-KB/s in 0s 2023-09-01 16:52:13 (217 MB/s) - 'puppet7-release-el-8.noarch.rpm' saved [9452/9452]
Install the puppet7-release-el-8.noarch.rpm
package.
# dnf localinstall puppet7-release-el-8.noarch.rpm Updating Subscription Management repositories. Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) 94 kB/s | 4.5 kB 00:00 Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) 83 kB/s | 4.1 kB 00:00 Red Hat Satellite Tools 6.7 for RHEL 8 x86_64 (RPMs) 81 kB/s | 3.8 kB 00:00 Dependencies resolved. ====================================================================================================================================================================================================================== Package Architecture Version Repository Size ====================================================================================================================================================================================================================== Installing: puppet7-release noarch 7.0.0-14.el8 @commandline 9.2 k Transaction Summary ====================================================================================================================================================================================================================== Install 1 Package Total size: 9.2 k Installed size: 3.6 k Is this ok [y/N]: y Downloading Packages: Running transaction check Transaction check succeeded. Running transaction test Transaction test succeeded. Running transaction Preparing : 1/1 Installing : puppet7-release-7.0.0-14.el8.noarch 1/1 Verifying : puppet7-release-7.0.0-14.el8.noarch 1/1 Installed products updated. .... Installed: puppet7-release-7.0.0-14.el8.noarch Complete!
Enable foreman:el8
Module
# dnf module enable foreman:el8 Updating Subscription Management repositories. Puppet 6 Repository el 8 - x86_64 152 kB/s | 824 kB 00:05 Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) 82 kB/s | 4.5 kB 00:00 EPEL8 x86_64 70 kB/s | 2.3 kB 00:00 gitlab-ce 58 kB/s | 2.0 kB 00:00 Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) 84 kB/s | 4.1 kB 00:00 Red Hat Satellite Tools 6.7 for RHEL 8 x86_64 (RPMs) 78 kB/s | 3.8 kB 00:00 Problems in request: Modular dependency problems with Defaults: Dependencies resolved. ====================================================================================================================================================================================================================== Package Architecture Version Repository Size ====================================================================================================================================================================================================================== Enabling module streams: foreman el8 postgresql 12 ruby 2.7 Transaction Summary ====================================================================================================================================================================================================================== Is this ok [y/N]: y Uploading Tracer Profile Complete!
Installing Foreman server Packages
Update all packages though dnf
.
# dnf update Updating Subscription Management repositories. Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) 88 kB/s | 4.5 kB 00:00 Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) 89 kB/s | 4.1 kB 00:00 Dependencies resolved. Nothing to do. Complete!
Install the foreman-installer
.
# dnf install foreman-installer Updating Subscription Management repositories. Puppet 7 Repository el 8 - x86_64 4.0 MB/s | 18 MB 00:04 Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) 907 B/s | 4.5 kB 00:05 Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) 85 kB/s | 4.1 kB 00:00 Red Hat Satellite Tools 6.7 for RHEL 8 x86_64 (RPMs) 79 kB/s | 3.8 kB 00:00 Dependencies resolved. ====================================================================================================================================================================================================================== Package Architecture Version Repository Size ====================================================================================================================================================================================================================== Installing: foreman-installer noarch 1:3.7.0-1.el8 foreman 1.5 M Installing dependencies: puppet-agent x86_64 7.26.0-1.el8 puppet7 22 M ruby x86_64 2.7.6-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 89 k ruby-default-gems noarch 2.7.6-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 74 k ruby-libs x86_64 2.7.6-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 3.2 M rubygem-ansi noarch 1.5.0-3.el8 foreman 32 k rubygem-clamp noarch 1.3.2-1.el8 foreman 22 k rubygem-hashie noarch 5.0.0-1.el8 foreman 41 k rubygem-highline noarch 2.1.0-1.el8 foreman 53 k rubygem-io-console x86_64 0.5.6-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 72 k rubygem-irb noarch 1.2.6-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 117 k rubygem-json x86_64 2.3.0-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 93 k rubygem-kafo noarch 7.0.0-1.el8 foreman 88 k rubygem-kafo_parsers noarch 1.2.1-1.el8 foreman 16 k rubygem-kafo_wizards noarch 0.0.2-2.el8 foreman 16 k rubygem-little-plugger noarch 1.1.4-3.el8 foreman 16 k rubygem-logging noarch 2.3.1-1.el8 foreman 63 k rubygem-multi_json noarch 1.15.0-1.el8 foreman 23 k rubygem-openssl x86_64 2.1.3-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 198 k rubygem-powerbar noarch 2.0.1-3.el8 foreman 14 k rubygem-psych x86_64 3.1.0-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 97 k rubygem-rdoc noarch 6.2.1.1-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 455 k rubygems noarch 3.1.6-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 309 k Installing weak dependencies: rubygem-bigdecimal x86_64 2.0.0-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 101 k rubygem-bundler noarch 2.2.24-138.module+el8.6.0+16148+54b2ba8f rhel-8-for-x86_64-appstream-rpms 445 k Transaction Summary ====================================================================================================================================================================================================================== Install 25 Packages Total download size: 29 M Installed size: 121 M Is this ok [y/N]: y ... Installed: foreman-installer-1:3.7.0-1.el8.noarch puppet-agent-7.26.0-1.el8.x86_64 ruby-2.7.6-138.module+el8.6.0+16148+54b2ba8f.x86_64 ruby-default-gems-2.7.6-138.module+el8.6.0+16148+54b2ba8f.noarch ruby-libs-2.7.6-138.module+el8.6.0+16148+54b2ba8f.x86_64 rubygem-ansi-1.5.0-3.el8.noarch rubygem-bigdecimal-2.0.0-138.module+el8.6.0+16148+54b2ba8f.x86_64 rubygem-bundler-2.2.24-138.module+el8.6.0+16148+54b2ba8f.noarch rubygem-clamp-1.3.2-1.el8.noarch rubygem-hashie-5.0.0-1.el8.noarch rubygem-highline-2.1.0-1.el8.noarch rubygem-io-console-0.5.6-138.module+el8.6.0+16148+54b2ba8f.x86_64 rubygem-irb-1.2.6-138.module+el8.6.0+16148+54b2ba8f.noarch rubygem-json-2.3.0-138.module+el8.6.0+16148+54b2ba8f.x86_64 rubygem-kafo-7.0.0-1.el8.noarch rubygem-kafo_parsers-1.2.1-1.el8.noarch rubygem-kafo_wizards-0.0.2-2.el8.noarch rubygem-little-plugger-1.1.4-3.el8.noarch rubygem-logging-2.3.1-1.el8.noarch rubygem-multi_json-1.15.0-1.el8.noarch rubygem-openssl-2.1.3-138.module+el8.6.0+16148+54b2ba8f.x86_64 rubygem-powerbar-2.0.1-3.el8.noarch rubygem-psych-3.1.0-138.module+el8.6.0+16148+54b2ba8f.x86_64 rubygem-rdoc-6.2.1.1-138.module+el8.6.0+16148+54b2ba8f.noarch rubygems-3.1.6-138.module+el8.6.0+16148+54b2ba8f.noarch Complete!
 Synchronize the System Clock With chronyd
To ensure that there is no time drift, we need to ensure that our Foreman server’s time is synchronized with the NTP server. Check this tutorial on how to do the configuration
Chrony Validation
Run the following command to verify that chrony is well configured to synchronize the time:
# chronyc sources MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^+ 172.28.210.250 2 6 377 29 -1053us[ -648us] +/- 27ms ^* 172.29.210.251 2 6 377 29 +1626us[+2032us] +/- 26ms
 Configuring Foreman server
If /tmp
partition is mounted with the option noexec
, puppetserver assumes that it is running on a Windows server, because it cannot determine the basic system flavour.
Please ensure that /tmp
has no noexec option before running the installer below. You can customize the option to match your scenario i.e foreman-initial-organization, foreman-initial-location, foreman-initial-location, foreman-initial-admin-password
.
foreman-installer --scenario foreman \ --foreman-initial-organization "Technnix" \ --foreman-initial-location "HQ" \ --foreman-initial-admin-username foreman \ --foreman-initial-admin-password OYRZt|u8xKq$b_&
Output
The following output is expected once you run the command above.
... 2023-09-01 17:32:47 [WARN ] [boot]["Unsetting environment variable 'http_proxy' for the duration of the install."] 2023-09-01 17:32:47 [WARN ] [boot]["Unsetting environment variable 'https_proxy' for the duration of the install."] 2023-09-01 17:32:47 [NOTICE] [root] Loading installer configuration. This will take some time. 2023-09-01 17:32:50 [NOTICE] [root] Running installer with log based terminal output at level NOTICE. 2023-09-01 17:32:50 [NOTICE] [root] Use -l to set the terminal output log level to ERROR, WARN, NOTICE, INFO, or DEBUG. See --full-help for definitions. 2023-09-01 17:32:55 [NOTICE] [configure] Starting system configuration. 2023-09-01 17:33:05 [NOTICE] [configure] 250 configuration steps out of 1235 steps complete. 2023-09-01 17:33:06 [NOTICE] [configure] 500 configuration steps out of 1238 steps complete. 2023-09-01 17:33:06 [NOTICE] [configure] 750 configuration steps out of 1244 steps complete. 2023-09-01 17:33:06 [NOTICE] [configure] 1000 configuration steps out of 1244 steps complete. 2023-09-01 17:33:22 [NOTICE] [configure] System configuration has finished. Executing: foreman-rake upgrade:run Success! * Foreman is running at https://foreman01.technnix.net Initial credentials are foreman / OYRZt|u8xKq$b_& * Foreman Proxy is running at https://foreman01.technnix.net:8443 The full log is at /var/log/foreman-installer/foreman.log
You can tail the /var/log/foreman-installer/foreman.log
log file during the installtion, just to monitor the progress.
# tail -f /var/log/foreman-installer/foreman.log .... 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs/ca.pem]/seluser: Found seluser default 'system_u' for /etc/puppetlabs/puppet/ssl/certs/ca.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs/ca.pem]/selrole: Found selrole default 'object_r' for /etc/puppetlabs/puppet/ssl/certs/ca.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs/ca.pem]/seltype: Found seltype default 'puppet_etc_t' for /etc/puppetlabs/puppet/ssl/certs/ca.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs/ca.pem]/selrange: Found selrange default 's0' for /etc/puppetlabs/puppet/ssl/certs/ca.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/crl.pem]/seluser: Found seluser default 'system_u' for /etc/puppetlabs/puppet/ssl/crl.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/crl.pem]/selrole: Found selrole default 'object_r' for /etc/puppetlabs/puppet/ssl/crl.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/crl.pem]/seltype: Found seltype default 'puppet_etc_t' for /etc/puppetlabs/puppet/ssl/crl.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/crl.pem]/selrange: Found selrange default 's0' for /etc/puppetlabs/puppet/ssl/crl.pem 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/facts.d]/seluser: Found seluser default 'system_u' for /opt/puppetlabs/puppet/cache/facts.d 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/facts.d]/selrole: Found selrole default 'object_r' for /opt/puppetlabs/puppet/cache/facts.d 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/facts.d]/seltype: Found seltype default 'usr_t' for /opt/puppetlabs/puppet/cache/facts.d 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/facts.d]/selrange: Found selrange default 's0' for /opt/puppetlabs/puppet/cache/facts.d 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/locales]/seluser: Found seluser default 'system_u' for /opt/puppetlabs/puppet/cache/locales 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/locales]/selrole: Found selrole default 'object_r' for /opt/puppetlabs/puppet/cache/locales 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/locales]/seltype: Found seltype default 'usr_t' for /opt/puppetlabs/puppet/cache/locales 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/locales]/selrange: Found selrange default 's0' for /opt/puppetlabs/puppet/cache/locales 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/state]: Adding autorequire relationship with File[/opt/puppetlabs/puppet/cache] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/lib]: Adding autorequire relationship with File[/opt/puppetlabs/puppet/cache] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/preview]: Adding autorequire relationship with File[/opt/puppetlabs/puppet/cache] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl]: Adding autorequire relationship with File[/etc/puppetlabs/puppet] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/public_keys]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certificate_requests]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/private_keys]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/private]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs/foreman01.technnix.net.pem]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl/certs] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/private_keys/foreman01.technnix.net.pem]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl/private_keys] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/public_keys/foreman01.technnix.net.pem]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl/public_keys] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/certs/ca.pem]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl/certs] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/etc/puppetlabs/puppet/ssl/crl.pem]: Adding autorequire relationship with File[/etc/puppetlabs/puppet/ssl] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/facts.d]: Adding autorequire relationship with File[/opt/puppetlabs/puppet/cache] 2023-09-01 17:33:21 [DEBUG ] [configure] /File[/opt/puppetlabs/puppet/cache/locales]: Adding autorequire relationship with File[/opt/puppetlabs/puppet/cache] 2023-09-01 17:33:21 [DEBUG ] [configure] Finishing transaction 156140 2023-09-01 17:33:21 [DEBUG ] [configure] Received report to process from foreman01.technnix.net 2023-09-01 17:33:22 [NOTICE] [configure] System configuration has finished. 2023-09-01 17:33:22 [INFO ] [post] Executing hooks in group post 2023-09-01 17:33:22 [DEBUG ] [root] Executing: foreman-rake upgrade:run 2023-09-01 17:33:28 [DEBUG ] [post] Hook /usr/share/foreman-installer/hooks/post/30-upgrade.rb returned nil 2023-09-01 17:33:28 [DEBUG ] [post] Hook /usr/share/foreman-installer/hooks/post/34-pulpcore_directory_layout.rb returned nil 2023-09-01 17:33:28 [DEBUG ] [post] Hook /usr/share/foreman-installer/hooks/post/99-post_install_message.rb returned nil 2023-09-01 17:33:28 [DEBUG ] [post] Hook /usr/share/foreman-installer/hooks/post/99-version_locking.rb returned nil 2023-09-01 17:33:28 [INFO ] [post] All hooks in group post finished 2023-09-01 17:33:28 [DEBUG ] [pre_exit] Hook /usr/share/foreman-installer/hooks/pre_exit/20-certs_regenerate.rb returned nil 2023-09-01 17:33:28 [DEBUG ] [root] Exit with status code: 2 (signal was 2) 2023-09-01 17:33:28 [DEBUG ] [root] Cleaning /tmp/kafo_installation20230901-80496-cb2k26 2023-09-01 17:33:28 [DEBUG ] [root] Cleaning /tmp/kafo_installation20230901-80496-1ti2oyx 2023-09-01 17:33:28 [DEBUG ] [root] Cleaning /tmp/default_values.yaml 2023-09-01 17:33:28 [DEBUG ] [root] Installer finished in 38.707904793 seconds
After the configuration is done, the login url is displayed(From the snipped above):
... 2023-09-01 17:33:22 [NOTICE] [configure] System configuration has finished. Executing: foreman-rake upgrade:run Success! * Foreman is running at https://foreman01.technnix.net Initial credentials are foreman / OYRZt|u8xKq$b_& * Foreman Proxy is running at https://foreman01.technnix.net:8443 The full log is at /var/log/foreman-installer/foreman.log
If you need to reset the admin password, use the following command:
# foreman-rake permissions:reset Reset to user: admin, password: wpw3MwTncvjdfjd&80Bg WARNING: You need to change the password for hammer in ~/.hammer/cli.modules.d/foreman.yml manually!
Log in to the Foreman Dashboard
After the successful configuration, you now log into the dashboad at https://foreman01.technnix.net
using the credentials that you supplied above.


Conclusion
Congratulations! You have successfully installed Foreman on your RHEL 8 or CentOS 8 server. With Foreman, you can now streamline server provisioning and management, making it easier to maintain your infrastructure efficiently. Explore Foreman’s features and customize it to suit your specific needs.