Help out a newbie setup foreman --scenario katello

Problem:
Hey guys. So I have couple of servers that I manage with Chef. I need central patch management so I’ve decided to use Foreman/Katello for that purpose. I’m having issues with installation. It keeps failing on me. All my servers are CentOS7.6, including this one that I’m trying to setup Foreman/Katello on.
I’m following instructions from this page Foreman :: Plugin Manuals
On foreman-installer I’m using following the following attributes

foreman-installer --scenario katello   --enable-foreman-plugin-chef   --enable-foreman-plugin-tasks   --enable-foreman-proxy-plugin-chef   --no-enable-puppet

Expected outcome:

Installation to go smoothly and receive output of admin/password.
I’m most likely missing something here, or do not have full tutorial.

Foreman and Proxy versions:

Katello 3.13 installs latest versions

Foreman and Proxy plugin versions:
Katello 3.13 installs latest versions

Distribution and version:
Clean CentOS 7.6 system

Other relevant data:

[ERROR 2019-10-26T09:54:22 verbose]  Proxy foreman-1.server.local has failed to load one or more features (Puppet, Puppet CA, Chef), check /var/log/foreman-proxy/proxy.log for configuration errors
[ERROR 2019-10-26T09:54:22 verbose] /usr/share/foreman-installer/modules/foreman/lib/puppet/provider/foreman_smartproxy/rest_v3.rb:70:in `validate_features!'
[ERROR 2019-10-26T09:54:22 verbose] /usr/share/foreman-installer/modules/foreman/lib/puppet/provider/foreman_smartproxy/rest_v3.rb:59:in `refresh_features!'
[ERROR 2019-10-26T09:54:22 verbose] /usr/share/foreman-installer/modules/foreman/lib/puppet/provider/foreman_smartproxy/rest_v3.rb:48:in `features='
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/property.rb:193:in `call_provider'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/property.rb:507:in `set'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/property.rb:570:in `sync'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:241:in `sync'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:136:in `sync_if_needed'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:90:in `block in perform_changes'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:89:in `each'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:89:in `perform_changes'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:21:in `evaluate'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:263:in `apply'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:283:in `eval_resource'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:187:in `call'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:187:in `block (2 levels) in evaluate'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:521:in `block in thinmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:520:in `thinmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:187:in `block in evaluate'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/graph/relationship_graph.rb:122:in `traverse'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:174:in `evaluate'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:240:in `block (2 levels) in apply'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:521:in `block in thinmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:520:in `thinmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:239:in `block in apply'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util/log.rb:161:in `with_destination'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/report.rb:146:in `as_logging_destination'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:238:in `apply'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:194:in `block (2 levels) in apply_catalog'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:521:in `block in thinmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:520:in `thinmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:193:in `block in apply_catalog'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:233:in `block in benchmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:232:in `benchmark'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:192:in `apply_catalog'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:381:in `run_internal'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:242:in `block in run'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/context.rb:62:in `override'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet.rb:274:in `override'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:219:in `run'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:343:in `apply_catalog'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:260:in `block (2 levels) in main'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/context.rb:62:in `override'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet.rb:274:in `override'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:243:in `block in main'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/context.rb:62:in `override'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet.rb:274:in `override'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:207:in `main'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:177:in `run_command'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application.rb:382:in `block in run'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:687:in `exit_on_fail'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application.rb:382:in `run'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util/command_line.rb:143:in `run'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util/command_line.rb:77:in `execute'
[ERROR 2019-10-26T09:54:22 verbose] /opt/puppetlabs/puppet/bin/puppet:5:in `<main>'
[ERROR 2019-10-26T09:54:22 verbose]  /Stage[main]/Foreman_proxy::Register/Foreman_smartproxy[foreman-1.server.local]/features: change from ["HTTPBoot", "Logs", "Pulp", "TFTP", "Templates"] to ["Chef", "HTTPBoot", "Logs", "Puppet", "Puppet CA", "TFTP", "Templates"] failed: Proxy foreman-1.server.local has failed to load one or more features (Puppet, Puppet CA, Chef), check /var/log/foreman-proxy/proxy.log for configuration errors

# cat /var/log/foreman-proxy/proxy.log

2019-10-26T07:15:49 4f6583fd [I] Started GET /pulp/status/disk_usage 
2019-10-26T07:15:49 4f6583fd [W] File at /var/lib/pulp/content defined in pulp_content_dir parameter doesn't exist or is unreadable
2019-10-26T07:15:49 4f6583fd [W] File at /var/lib/mongodb defined in mongodb_dir parameter doesn't exist or is unreadable
2019-10-26T07:15:49 4f6583fd [I] Finished GET /pulp/status/disk_usage with 200 (5.2 ms)
2019-10-26T09:54:22 17aaf819 [I] Started GET /v2/features 
2019-10-26T09:54:22 17aaf819 [I] Finished GET /v2/features with 200 (1.14 ms)
2019-10-26T09:54:22 17aaf819 [I] Started GET /pulp/status/puppet 
2019-10-26T09:54:22 17aaf819 [I] Finished GET /pulp/status/puppet with 200 (0.48 ms)
2019-10-26T09:54:22 17aaf819 [I] Started GET /v2/features 
2019-10-26T09:54:22 17aaf819 [I] Finished GET /v2/features with 200 (0.62 ms)
2019-10-26T09:54:22 17aaf819 [I] Started GET /v2/features 
2019-10-26T09:54:22 17aaf819 [I] Finished GET /v2/features with 200 (0.59 ms)
2019-10-26T10:35:16 03ed2fe5 [I] Started GET /v2/features 
2019-10-26T10:35:16 03ed2fe5 [I] Finished GET /v2/features with 200 (1.02 ms)
2019-10-26T10:35:16 03ed2fe5 [I] Started GET /pulp/status/puppet 
2019-10-26T10:35:16 03ed2fe5 [I] Finished GET /pulp/status/puppet with 200 (0.54 ms)
2019-10-26T10:35:16 03ed2fe5 [I] Started GET /v2/features 
2019-10-26T10:35:16 03ed2fe5 [I] Finished GET /v2/features with 200 (0.7 ms)
2019-10-26T10:35:16 03ed2fe5 [I] Started GET /v2/features 
2019-10-26T10:35:16 03ed2fe5 [I] Finished GET /v2/features with 200 (0.65 ms)

Looks like you attempted to disable puppet but you only disabled the setup of Puppet not any of the defaults that Foreman or Foreman Proxy has. You’ll need to specify a few more options to truly disable Puppet. I think @ekohl knows the combo.

tnx @ehelms for a direction.
I’ve added additionally --katello-enable-puppet false but that made me hit another wall.
Can somebody help out which flags are needed to disable Puppet fully?

/usr/share/foreman-installer/modules/foreman/lib/puppet/provider/foreman_smartproxy/rest_v3.rb:48:in `features='
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/property.rb:193:in `call_provider'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/property.rb:507:in `set'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/property.rb:570:in `sync'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:241:in `sync'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:136:in `sync_if_needed'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:89:in `each'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:89:in `perform_changes'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:21:in `evaluate'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:263:in `apply'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:283:in `eval_resource'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:187:in `call'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:187:in `block (2 levels) in evaluate'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:521:in `block in thinmark'
/opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:520:in `thinmark'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:187:in `block in evaluate'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/graph/relationship_graph.rb:122:in `traverse'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction.rb:174:in `evaluate'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:240:in `block (2 levels) in apply'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:521:in `block in thinmark'
/opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:520:in `thinmark'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:239:in `block in apply'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util/log.rb:161:in `with_destination'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/transaction/report.rb:146:in `as_logging_destination'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:238:in `apply'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:194:in `block (2 levels) in apply_catalog'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:521:in `block in thinmark'
/opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:520:in `thinmark'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:193:in `block in apply_catalog'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:233:in `block in benchmark'
/opt/puppetlabs/puppet/lib/ruby/2.5.0/benchmark.rb:308:in `realtime'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:232:in `benchmark'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:192:in `apply_catalog'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:381:in `run_internal'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:242:in `block in run'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/context.rb:62:in `override'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet.rb:274:in `override'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/configurer.rb:219:in `run'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:343:in `apply_catalog'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:260:in `block (2 levels) in main'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/context.rb:62:in `override'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet.rb:274:in `override'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:243:in `block in main'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/context.rb:62:in `override'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet.rb:274:in `override'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:207:in `main'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application/apply.rb:177:in `run_command'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application.rb:382:in `block in run'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util.rb:687:in `exit_on_fail'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/application.rb:382:in `run'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util/command_line.rb:143:in `run'
/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/puppet/util/command_line.rb:77:in `execute'
/opt/puppetlabs/puppet/bin/puppet:5:in `<main>'

There’s a few (it’s on my agenda to improve this):

--no-enable-puppet --foreman-proxy-puppet false --foreman-proxy-puppetca false --foreman-proxy-content-puppet false

Copied from my RFC:

@ekohl that is the solution.
Thank you both very much for your help.

1 Like