hostname cannot resolved during installation of IBM private cloud ce - ibm-cloud-private

I installed IBM-Cloud-private-ce by following the guide https://www.ibm.com/support/knowledgecenter/SSBS6K_1.2.0/installing/install_containers_CE.html
But after I ran docker run -e LICENSE=accept --net=host -t -v "$(pwd)":/installer/cluster ibmcom/cfc-installer:1.2.0 install, I got the following error messages
task path: /installer/playbook/roles/check/tasks/main.yaml:78
fatal: [a.b.c.d] => Hostname should be resolved to a valid IP address
fatal: [a.b.c.e] => Hostname should be resolved to a valid IP address
I put the ip address as [a.b.c.d] just for confidential. Actually they are numbers here. These IP address are reachable.
By checking the ansible file, I noticed the following code
- name: Checking Hostname is resolvable
shell: ping -c 1 $(hostname) | awk -F'[()]' '{print $2;exit}'
args:
executable: /bin/bash
register: ip_out
- name: Validating Hostname is resolvable
fail: msg="Hostname should be resolved to a valid IP address"
when: ip_out.stdout in ['', '127.0.0.1', '127.0.1.1']
I found I cannot ping in the container as the image hasn't ping in it.
Is this the reason why I got the message? I appreciate if anyone could help on it.
Updated the question. Thanks #SBERENS
I tried on the 2.1.0 version and met the same issue: (for confidential reason, I used a.b.c.d as the IP address, actually the IP address are reachable)
My /etc/hosts is like the following:
127.0.0.1 localhost
127.0.1.1 e1.xx.yy.com e1
# The following lines are desirable for IPv6 capable hosts
::1 localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
#puppet:
a.b.c.a puppet.xx.yy.com puppet
a.b.c.d e1.xx.yy.com e1
a.b.c.e e2.xx.yy.com e2
The cluster/hosts is like:
[master]
a.b.c.d
[worker]
a.b.c.e
[proxy]
a.b.c.e
#[management]
#4.4.4.4

The link you posted seems to be for older 1.2 level.
Please check that you are following the correct most updated installation instructions.
Latest version ICP 2.1 - CE are here:
https://www.ibm.com/support/knowledgecenter/SSBS6K_2.1.0/installing/install_ce.html
Can you please post your /etc/hosts file and the cluster/hosts file contents?

Your issue will occur in either 1.2 or 2.1.
The error is that the hostname e1.xx.yy.com resolves to a.b.c.d and 127.0.1.1. When this happens, the installer is enforcing the resolved IP to be something which is externally routable.
Is there a reason why you have the machine hostname defined on the local address in addition to a separate network IP?

Suggest removal of the line:
127.0.1.1 e1.xx.yy.com e1
from /etc/hosts. This can cause DNS confusion esp on Ubuntu.

Related

ICP 2.1.0.3 Enterprise Installation fails to resolve IP names/Hostnames

I am having the same/similar problem with ICP EE.
ICP Master Install script - last part
I have checked everything I can think of:
The master can ping proxy and both workers (by IP address and IP name)
my hosts file contains:
127.0.0.0 localhost
10.10.11.247 icp-master
10.10.11.248 icp-proxy
10.10.11.249 icp-worker1
10.10.11.250 icp-worker2
And my ICP Hosts contains:
[master]
10.10.11.247
[worker]
10.10.11.249
10.10.11.250
[proxy]
10.10.11.248
I run the installer and still get the attached error. I have rerun the installer with -vvv and I still cannot see where the error is.
What really confuses me is that:
TASK [check : Checking Hostname is resolvable] - Works
TASK [check : Validating Hostname is resolvable] - Fails!
Whats the difference?
Any help would be much appreciated. Paul B
Please ensure the hostname are correct on all ICP nodes. You can scp your /etc/hosts file from master node to all other ICP nodes, thanks.
Pls change servers' hostname to validate if it matches with your case.

Installing cloudera manager in ubuntu 14.04/64b

I am installing Cloudera Manager in my system(14.04/64b).
While installing at the final step, before finish installation I got some ERRORs in validation as shown below,
errors in above page are,
ERROR 1
Individual hosts resolved their own hostnames correctly.
Host localhost expected to have name localhost but resolved (InetAddress.getLocalHost().getHostName()) itself to arul-pc.
ERROR 2
The following errors were found while checking /etc/hosts...
The hostname localhost is not the first match for address 127.0.0.1
in /etc/hosts on localhost. Instead, arul-pc is the first match. The
FQDN must be the first entry in /etc/hosts for the corresponding IP.
In /etc/hosts on localhost, the IP 127.0.0.1 is present multiple times. A given IP should only be listed once.
How to solve these 2 errors ?
Note(info)::
In my /etc/hosts,
127.0.0.1 localhost
127.0.0.1 arul-pc
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
Note 2(my try)::
I tried to avoid arul-pc from /etc/hosts/ as,
127.0.0.1 localhost
#127.0.0.1 arul-pc
after saved and Run again, Error 2 cleared, but Error 1 become as,
Individual hosts resolved their own hostnames correctly.
Host localhost failed to execute InetAddress.getLocalHost() with error: arul-pc: arul-pc. This typically means that the hostname could not be resolved.
It picks value from hostname -f command. You need to update /etc/sysconfig/network with appropriate hostname.

Unable to access api endpoint. Cloud foundry installed from cf_nise

I have installed a local cloud foundry instance following cf_nise_installer
Environment:
Host: Windows 10
Vagrant: 1.7.4
Virtualbox: 5.0.2
cf: 6.13.0-e68ce0f-2015-10-15T15:53:50+00:00
Installation went fine but when I try to access the endpoint using the command:
cf login -a https://api.10.0.2.15.xip.io -u admin -p c1oudc0w --skip-ssl-validation
I get following error
API endpoint: https://api.10.0.2.15.xip.io
FAILED
Error performing request: Get https://api.10.0.2.15.xip.io/v2/info: dial tcp
10.0.2.15:443: ConnectEx tcp: i/o timeout
I googled and found it be some DNS and /etc/hosts entries issue so I changed the DNS of my wifi adapter to 8.8.8.8 / 8.8.4.4 and added following entries to the /etc/hosts file
10.0.2.15 api.10.0.2.15.xip.io
10.0.2.15 uaa.10.0.2.15.xip.io
10.0.2.15 10.0.2.15.xip.io
10.0.2.15 hello.10.0.2.15.xip.io
I flushed the DNS, restarted but still I am getting same error.
Below is the output of nslookup api.10.0.2.15.xip.io
Server: google-public-dns-a.google.com
Address: 8.8.8.8
Non-authoritative answer:
Name: api.10.0.2.15.xip.io
Address: 10.0.2.15
Now I am out of options. Please guide me what I am missing.
Thanks
I am able to resolve this by adding route to the 10.0.2.15
In my routing table, there was no entry for the above IP so I added an entry as
route add 10.0.2.15 10.39.39.1 where 10.39.39.1 is the IP of virtual box host only adapter.
This resolved the issue.

Cloudera Manager installation failed to receive heartbeat from agent - to add new hosts to cluster

I try to install on Ubuntu 12.04.1 LTS the cloudera manager using standard version and when I want to add new host I get the next error:
Installation failed.Failed to receive heartbeat from agent.
Ensure that the host's hostname is configured properly.
Ensure that port 7182 is accesible on the Cloudera Manager server (check firewall rules).
Ensure that ports 9000 an 9001 are free on the host being added.
Check agent logs in /var/log/cloudera-scm-agent/ on the host being added (some of the logs can be found in the installation details).
In the /etc/hosts file I have it configured as:
127.0.0.1 localhost
127.0.0.1 hadoop-ubuntu
192.168.5.xyz hadoop-ubuntu.dana.local hadoop-ubuntu
192.168.3.xyz ro-m81.dana.local ro-m81
192.168.3.abc ro-m41.dana.local ro-m41
The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
The **/var/log/cloudera-scm-agent/cloudera-scm-agent.log** shows the next error::
[09/Oct/2013 16:04:23 +0000] 4532 MainThread agent ERROR Heartbeating to 192.168.5.xyz:7182 failed.
Traceback (most recent call last):
File "/usr/lib64/cmf/agent/src/cmf/agent.py", line 747, in send_heartbeat
response = self.requestor.request('heartbeat', dict(request=heartbeat))
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 145, in request
return self.issue_request(call_request, message_name, request_datum)
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 256, in issue_request
call_response = self.transceiver.transceive(call_request)
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 485, in transceive
result = self.read_framed_message()
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 489, in read_framed_message
response = self.conn.getresponse()
File "/usr/lib64/python2.6/httplib.py", line 990, in getresponse
response.begin()
File "/usr/lib64/python2.6/httplib.py", line 391, in begin
version, status, reason = self._read_status()
File "/usr/lib64/python2.6/httplib.py", line 349, in _read_status
line = self.fp.readline()
File "/usr/lib64/python2.6/socket.py", line 433, in readline
data = recv(1)
error: [Errno 104] Connection reset by peer
Please help me to find why I get this error or what I am missing.
I had the same issue. This is what did the trick for me.
type ifconfig and find your ip address. not 127.0.0.1.
type $hostname and find your hostname
edit /etc/hosts file
add an entry for your ipaddress over there. something like
192.168.8.xxx hostname.test.com hostname
restart cloudera service. Go to sonic.test.com:7180 and try again.
It should work. Even if didn't work, go to http://hostname.test.com:7180/cmf/home check the status of the hosts.
It turned out that, even though I was getting heartbeat error, the host was actually up and running.
I Faced the same problem, then I found a solution.
I used two machines one for master and another one for slave
the master machine having the cloudera-scm-server.
I configured the /etc/hosts in both machines, finally the error gone.
Master Machine Ip is: 192.168.1.10
In Master Machine /etc/hosts
127.0.0.1 localhost
192.168.1.10 <hostname>
Slave Machine Ip is: 192.168.1.8
In Slave Machine /etc/hosts
127.0.0.1 localhost
192.168.1.8 <hostname>
After checking your host files on all the nodes in the cluster, make sure that you open ports 7180 and 7182 on the installer and port 9000 on the cluster nodes (other than the installer).
I was getting the "inspector failed. IO Exception thrown" error from the Cloudera install until I looked in the installer (server) logs and saw that the clients could not communicate on port 9000.
I had the same problem with you, and I fixed it finally.
The problem of me was the version of the agent's cloudera-scm-agentis different with the server's cloudera-scm-server, you could use dpkg or yum to check yourself.
First Check the Cloudera scm agent status whether it is running or not by using "sudo service cloudera-scm-agent status"
2.check the agent log files in this directory in /var/log/cloudera-scm-agent/
Resolution Resource: http://commandstech.com/what-is-heartbeat-in-hadoop-how-to-resolve-heartbeat-lost-in-cloudera-and-hortonworks/

Installing Glassfish 3 on Mac OS X 10.8.2 fails in Domain Info setup

I am a Glassfish newbie, though a Java and Unix veteran. I am running the shell script to install Java EE 6 SDK, including Glassfish 3 on my Mac.
bash-3.2# sh java_ee_sdk-6u4-unix.sh
Everything goes along fine until I get to the Domain Info screen. I am sticking with the default info (except for passwords):
Domain Name: domain1
Admin Port: 4848 <- I have verified with netstat that both ports are free
Http Port: 8080 <-
Username: admin
Password: xxxxxxxxxxxx
Service Name: domain1Service
+ Start domain after creation
When I click Next, I get 2 error dialogs that tell me the following:
Admin Port: Host name not found
Http Port: Host name not found
Does anyone know how to get past this?
I confirm, I correct the same problem by changing my hostname to localhost using the command line hostname localhost in linux.
Looks like something is wrong with your network config. Maybe your hosts file is missing the entry for localhost.
Check the file /private/etc/hosts for
127.0.0.1 localhost
You can also try to set your hostname with
sudo hostname localhost
The answer was relatively simple. I had to add the hostname configured with MacOS Settings as an alias for localhost into my /etc/hosts file. I'm not sure where MacOS keeps the host name. But the hostname command (i.e. gethostname) was returning 'airguitar', which is what Glassfish was trying to connect to. Since it wasn't in /etc/hosts, the hostname couldn't be found.
This is a problem that happens on many systems, It's happening on my linux as well. The solution is quite simple, as chuck almost got it.
Check your hosts file, on linux is under /etc/hosts. You'll probably have a file like this:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
Check your hostname with the command hostname
[root#glassfish1 opt]# hostname
glassfish1
And add this host name to your hosts file like this:
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 glassfish1
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
this did the trick for me.

Resources