You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ambari.apache.org by "Nathan Falk (JIRA)" <ji...@apache.org> on 2015/08/13 18:01:46 UTC

[jira] [Created] (AMBARI-12765) Hooks scripts should not depend on HDFS

Nathan Falk created AMBARI-12765:
------------------------------------

             Summary: Hooks scripts should not depend on HDFS
                 Key: AMBARI-12765
                 URL: https://issues.apache.org/jira/browse/AMBARI-12765
             Project: Ambari
          Issue Type: Improvement
          Components: ambari-server
    Affects Versions: 2.1.0
         Environment: IBM Open Platform 4.1 with Spectrum Scale
            Reporter: Nathan Falk
            Priority: Minor


With IBM Open Platform version 4.1, it is possible to replace HDFS with Spectrum Scale (f.k.a. GPFS) using a new stack definition.

There is some initialization which takes place in the hooks/before-ANY, hooks/after-INSTALL and hooks/before-START which should be performed independent of the underlying filesystem implementation, but is currently only being performed if "params.has_namenode" tests True.

has_namenode is defined as "not len(namenode_host) == 0" where namenode_host comes from "/clusterHostInfo/namenode_host".

With the Spectrum Scale stack, the HDFS service is not installed, and so there is no namenode_host, and so has_namenode tests false and some of the initialization in these hooks scripts is not getting done, which leads to failures later on during installation or when attempting to start services.

We are currently working around this problem by recursively copying the hooks directory from the base stack (in practice, this ends up being BigInsights 4.0) to the Specrum Scale stack, and then replacing the definition of has_namenode in each of the params.py files with "has_namenode=True".

This solution isn't ideal, as it's possible that some of the code may actually be specific to or dependent on HDFS. But in looking over the code as it is today, I can't see any harm in executing that code regardless of whether namenode_host is set or not.

I'm sure there is some reason why these checks for has_namenode were
included in the first place, so if somebody can recall that history, maybe we can better understand how to change the code to support installations without the HDFS service.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)