Bug 1315866

Summary: Re-running fusor-installer with different IP address leads to traceback
Product: Red Hat Quickstart Cloud Installer Reporter: Tasos Papaioannou <tpapaioa>
Component: fusor-installerAssignee: Jesus M. Rodriguez <jesusr>
Status: CLOSED DEFERRED QA Contact: Tasos Papaioannou <tpapaioa>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 1.0CC: jesusr, jmatthew, jmontleo, tcarlin, tsanders
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: No Doc Update
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-02-25 17:28:56 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1321046    

Description Tasos Papaioannou 2016-03-08 20:09:00 UTC
Description of problem:

Re-running fusor-installer with all fields the same except for a new IP address will lead to a traceback:

****
# fusor-installer

The installer can configure the networking and firewall rules on this machine with the configuration shown below. Default values are populated from this machine's existing networking configuration.

If you DO NOT want to configure networking, select the option 'Do not configure networking' from the list below.

Modify settings as needed, and then proceed with the installation:
1.      Proceed with the values shown
2.           Network interface | eth1
3.                    Hostname | fusor.example.com
4.                  IP address | 192.168.0.1
5.                Network mask | 255.255.255.0
6.                Host gateway | 10.0.0.254
7.        DHCP Network address | 192.168.0.0
8.            DHCP range start | 192.168.0.100
9.              DHCP range end | 192.168.0.199
10.               DHCP gateway | 10.0.0.1
11.              DNS forwarder | 10.0.0.2
12.                     Domain | example.com
13.                Foreman URL | https://fusor.example.com
14.              NTP sync host | 10.0.0.3
15.                  Time zone | America/New_York
16.        BMC feature enabled | false
17.       BMC default provider | ipmitool
18. Do not configure networking
19. Do not configure firewall
20. Cancel installation
4
new value for IP address
192.168.0.2
Hostname configuration updated!

The installer can configure the networking and firewall rules on this machine with the configuration shown below. Default values are populated from this machine's existing networking configuration.

If you DO NOT want to configure networking, select the option 'Do not configure networking' from the list below.

Modify settings as needed, and then proceed with the installation:
1.      Proceed with the values shown
2.           Network interface | eth1
3.                    Hostname | fusor.example.com
4.                  IP address | 192.168.0.2
5.                Network mask | 255.255.255.0
6.                Host gateway | 10.0.0.254
7.        DHCP Network address | 192.168.0.0
8.            DHCP range start | 192.168.0.100
9.              DHCP range end | 192.168.0.199
10.               DHCP gateway | 10.0.0.1
11.              DNS forwarder | 10.0.0.2
12.                     Domain | example.com
13.                Foreman URL | https://fusor.example.com
14.              NTP sync host | 10.0.0.3
15.                  Time zone | America/New_York
16.        BMC feature enabled | false
17.       BMC default provider | ipmitool
18. Do not configure networking
19. Do not configure firewall
20. Cancel installation
1
Starting networking setup
Networking setup has finished
NTP sync host is ok
Installing             Done                                               [100%] [...............................................................................................................................]
  Success!
  * Katello is running at https://fusor.example.com
      Initial credentials are admin / XXXXXXXXXXX
  * Capsule is running at https://fusor.example.com:9090
  * To install additional capsule on separate machine continue by running:

      capsule-certs-generate --capsule-fqdn "$CAPSULE" --certs-tar "~/$CAPSULE-certs.tar"

  The full log is at /var/log/katello-installer/katello-installer.log
Starting configuration...
Starting host creation
Redirecting to /bin/systemctl stop  puppet.service
Redirecting to /bin/systemctl start  puppet.service
Starting to seed provisioning data
/usr/share/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:184:in `rescue in transmit': Request Timeout (RestClient::RequestTimeout)
	from /usr/share/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:140:in `transmit'
	from /usr/share/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:64:in `execute'
	from /usr/share/gems/gems/rest-client-1.6.7/lib/restclient/request.rb:33:in `execute'
	from /usr/share/gems/gems/rest-client-1.6.7/lib/restclient/resource.rb:67:in `post'
	from /usr/share/gems/gems/apipie-bindings-0.0.11/lib/apipie_bindings/api.rb:279:in `call_client'
	from /usr/share/gems/gems/apipie-bindings-0.0.11/lib/apipie_bindings/api.rb:210:in `http_call'
	from /usr/share/gems/gems/apipie-bindings-0.0.11/lib/apipie_bindings/api.rb:160:in `call'
	from /usr/share/gems/gems/apipie-bindings-0.0.11/lib/apipie_bindings/action.rb:16:in `call'
	from /usr/share/katello-installer/hooks/lib/provisioning_seeder.rb:322:in `upload_puppet_modules'
	from /usr/share/katello-installer/hooks/lib/provisioning_seeder.rb:48:in `seed'
	from /usr/share/katello-installer/hooks/post/10-setup_provisioning.rb:84:in `block (4 levels) in load'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hooking.rb:32:in `instance_eval'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hooking.rb:32:in `block (4 levels) in load'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hook_context.rb:13:in `instance_exec'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hook_context.rb:13:in `execute'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hooking.rb:49:in `block in execute'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hooking.rb:47:in `each'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/hooking.rb:47:in `execute'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/kafo_configure.rb:339:in `block in run_installation'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/exit_handler.rb:24:in `call'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/exit_handler.rb:24:in `exit'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/kafo_configure.rb:122:in `exit'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/kafo_configure.rb:338:in `run_installation'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/kafo_configure.rb:109:in `execute'
	from /usr/share/gems/gems/clamp-0.6.2/lib/clamp/command.rb:67:in `run'
	from /usr/share/gems/gems/clamp-0.6.2/lib/clamp/command.rb:125:in `run'
	from /usr/share/gems/gems/kafo-0.6.5.9/lib/kafo/kafo_configure.rb:116:in `run'
	from /usr/sbin/fusor-installer:63:in `<main>'
****

Version-Release number of selected component (if applicable):


How reproducible:

100%

Steps to Reproduce:
1.) Run fusor-installer once.
2.) Re-run, changing the IP address field.
3.) See traceback.

Actual results:

Traceback.

Expected results:

No traceback.

Additional info:

The issue might to be due to the fact that named is not updated to resolve the server's hostname to the new IP address:

****
# nslookup fusor.example.com
Server:		192.168.0.2
Address:	192.168.0.2#53

Name:	fusor.example.com
Address: 192.168.0.1
****

/etc/hosts and /etc/resolv.conf are updated correctly, however:

# grep 192 /etc/hosts /etc/resolv.conf
/etc/hosts:192.168.0.2 fusor.example.com fusor
/etc/resolv.conf:nameserver 192.168.0.2

Comment 1 Jason Montleon 2016-04-25 13:58:33 UTC
Name resolution needs to be fixed BEFORE rerunning the installer.
https://access.redhat.com/solutions/1358443

Comment 2 Jesus M. Rodriguez 2016-08-01 19:56:06 UTC
Added a doc comment.

Comment 3 Jesus M. Rodriguez 2016-08-01 19:57:35 UTC
Please follow instructions in Comment #1 then re-run installer.

Comment 4 Tasos Papaioannou 2016-08-11 19:46:15 UTC
I don't think this is resolved.

1.) The KCS link says to edit /etc/katello-installer/answers.katello-installer.yaml, which does not exist in Satellite 6.2.

2.) It also says to "ensure the new IP address is resolved from FQDN and also hostname". Fusor-installer sets up the hostname, provisioning network IP address to which the hostname resolves, and DNS. Why do I now need to do this manually, and if I do, what are the exact steps required?

3.) If I run launch-fusor-installer without making any changes, then enter a new IP address, the new IP address immediately gets entered in /etc/hosts, before selecting to proceed with the change.

Comment 6 Jesus M. Rodriguez 2016-08-16 20:48:00 UTC
I verified that re-running the installer with a new ip address works.

QCI-1.0-RHEL-7-20160815.t.0-QCI-x86_64-dvd1.iso

fusor-installer-1.0.2-1.el7_2.noarch

Comment 7 Tasos Papaioannou 2016-08-25 13:53:33 UTC
No more traceback when re-running fusor-installer w/ different IP address. There are a couple other issues that I'll file as separate BZ's.

Verified on QCI-1.0-RHEL-7-20160824.t.1.

Comment 8 Sudhir Mallamprabhakara 2019-02-25 17:28:56 UTC
QCI has sunset. Closing the BZ's