Wednesday, January 22, 2014

An insight into IBM BigInsight..

I was installing IBM BigInsight and during the install I kept getting this error addnode.sh failed


[INFO] @bivm2 - OS - Red Hat Enterprise Linux Server release 5.5 (Tikanga) Kernel \r on an \m : supported
[INFO] Progress - 3%
[INFO] Prerequisite check - Server configuration check - succeed
[ERROR] Prerequisite check - Disk space check - failed on bivm2
[ERROR] Prerequisite check - 255 -- java.io.IOException: exit code: 2 -- "/data1/opt/ibm/biginsights/hdm/bin/_ssh-remote.exp" "{xor}Lz4sLCgwLTs=" "ssh" "-o" "NumberOfPasswordPrompts=1" "root@bivm2" "/tmp/cal-diskOfDir-bivm2.sh <%= dfsDataDir %>"
root@bivm2's password:
bash: -c: line 0: syntax error near unexpected token `newline'
bash: -c: line 0: `/tmp/cal-diskOfDir-bivm2.sh <%= dfsDataDir %>'
        at com.ibm.xap.mgmt.util.ExecUtil.exec(ExecUtil.java:101)
        at com.ibm.xap.mgmt.hdm.AccountSshSetup.runAsRootRemote(AccountSshSetup.java:746)
        at com.ibm.xap.mgmt.hdm.AccountSshSetup.runAsRootRemote(AccountSshSetup.java:735)
        at com.ibm.xap.mgmt.hdm.AccountSshSetup.runAsRootRemote(AccountSshSetup.java:707)
        at com.ibm.xap.mgmt.hdm.BaseTask.runCmdRemote(BaseTask.java:134)
        at com.ibm.xap.mgmt.hdm.CheckDiskTask.getDiskWrittenTo(CheckDiskTask.java:110)
        at com.ibm.xap.mgmt.hdm.CheckDiskTask.checkOrGetFreeSpaceForDatanode(CheckDiskTask.java:195)
        at com.ibm.xap.mgmt.hdm.CheckDiskTask.doTask(CheckDiskTask.java:176)
        at com.ibm.xap.mgmt.util.Task.run(Task.java:77)
        at com.ibm.xap.mgmt.util.TaskRunner$1.run(TaskRunner.java:52)
[INFO] Progress - 4%
[ERROR] Prerequisite check - Datanode disk space check - failed on bivm2
[ERROR] Prerequisite check - 255 -- java.io.IOException: exit code: 2 -- "/data1/opt/ibm/biginsights/hdm/bin/_ssh-remote.exp" "{xor}Lz4sLCgwLTs=" "ssh" "-o" "NumberOfPasswordPrompts=1" "root@bivm2" "/tmp/cal-diskOfDir-bivm2.sh <%= dfsDataDir %>"
The authenticity of host 'bivm2 (172.20.168.233)' can't be established.
RSA key fingerprint is 7d:3e:bc:25:6e:f6:92:f8:35:87:fb:35:4d:98:bc:45.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'bivm2,172.20.168.233' (RSA) to the list of known hosts.
root@bivm2's password:
bash: -c: line 0: syntax error near unexpected token `newline'
bash: -c: line 0: `/tmp/cal-diskOfDir-bivm2.sh <%= dfsDataDir %>'
        at com.ibm.xap.mgmt.util.ExecUtil.exec(ExecUtil.java:101)
        at com.ibm.xap.mgmt.hdm.AccountSshSetup.runAsRootRemote(AccountSshSetup.java:746)
        at com.ibm.xap.mgmt.hdm.AccountSshSetup.runAsRootRemote(AccountSshSetup.java:735)
        at com.ibm.xap.mgmt.hdm.AccountSshSetup.runAsRootRemote(AccountSshSetup.java:707)
        at com.ibm.xap.mgmt.hdm.BaseTask.runCmdRemote(BaseTask.java:134)
        at com.ibm.xap.mgmt.hdm.CheckDiskTask.getDiskWrittenTo(CheckDiskTask.java:110)
        at com.ibm.xap.mgmt.hdm.CheckDiskTask.checkOrGetFreeSpaceForDatanode(CheckDiskTask.java:195)
        at com.ibm.xap.mgmt.hdm.CheckDiskTask.doTask(CheckDiskTask.java:176)
        at com.ibm.xap.mgmt.util.Task.run(Task.java:77)
        at com.ibm.xap.mgmt.util.TaskRunner$1.run(TaskRunner.java:52)

[INFO] @bivm2 - Program - scp,zip,bash,tar,ssh,unzip : installed
[INFO] Progress - 5%
[INFO] Prerequisite check - Required software/libraries Check - succeed

After some research, I found that folks at IBM have written the installation scripts keeping in mind that their might be bugs but you can work around it by just running some very simple preferences settings. So here's what I found and hope other find it useful as well.

Look for script enableOrDisablePrecheker.sh under <rooot>/biginsights-enterprise linux64_b20130821_1818/installer/bin
./enableOrDisablePrechecker.sh disable disk.space
That should take care of it. 

There are other options as well in case you run into isuses.

NAME
  enableOrDisablePrechecker.sh - enable or disable install pre-checks

SYNOPSIS
  enableOrDisablePrechecker.sh [OPTION] ITEM[,ITEM]...
  enableOrDisablePrechecker.sh [OPTION] all

OPTIONS
  enable - enable one or more prechecks
  disable - disable one or more precheck
  status - view current status

DESCRIPTION
  Each installation precheck item can be enabled or disabled, supported item names are
  * service.port - check service ports be used by biginsights services
  * selinux - check if SELINUX option is disabled on all biginsights nodes
  * disk.space - check if available disk space applies for minimal installation requirement
  * os.dist - check operation system
  * host.nameorip - check host names or ip addresses are correct and reachable
  * port.connectivity - check basic TCP connectivity on certain ports from client to server
  * software.dependencies - check software dependencies are installed, e.g ssh, scp

If you want to make any changes to Hadoop config files, you need to follow the following procedure


1) Make the required changes in the directory <biginsightroot>/opt/ibm/biginsights/hdm/hadoop-conf-staging
2) Once the changes are done on the head node, you can run /ibm/opt/ibm/biginsights/bin//syncconf.sh hadoop (Provided you want to make only changes for the haddop) if you don't provide any argument, it will sync the config changes for all services.