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)