Alejandro Fernandez created AMBARI-14779:
--------------------------------------------

             Summary: Hive service check failed after EU from HDP 2.1 to 2.3 
since ATS is missing in Kerberized cluster and configs are wrong
                 Key: AMBARI-14779
                 URL: https://issues.apache.org/jira/browse/AMBARI-14779
             Project: Ambari
          Issue Type: Bug
          Components: ambari-server
    Affects Versions: 2.2.0
            Reporter: Alejandro Fernandez
            Assignee: Alejandro Fernandez
             Fix For: 2.2.1


*Steps*
# Install HDP 2.1 cluster with ambari 2.2.1 (HFDS, YARN, ZK, Hive)
# Kerberize the cluster, this will remove ATS
# Bootstrap the cluster with versions
# Install HDP 2.3 and perform EU
# Run Hive service check after EU is complete

*Result:*
Failed with below error
{code}
 File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", 
line 140, in _call_wrapper
    result = _call(command, **kwargs_copy)
  File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", 
line 291, in _call
    raise Fail(err_msg)
resource_management.core.exceptions.Fail: Execution of '/usr/bin/kinit -kt 
/etc/security/keytabs/smokeuser.headless.keytab [email protected]; env 
JAVA_HOME=/usr/jdk64/jdk1.7.0_67 /var/lib/ambari-agent/tmp/hcatSmoke.sh 
hcatsmokeid16acce51_date582116 prepare true' returned 12. WARNING: Use "yarn 
jar" to launch YARN applications.
16/01/21 16:59:51 WARN conf.HiveConf: HiveConf of name 
hive.optimize.mapjoin.mapreduce does not exist
16/01/21 16:59:51 WARN conf.HiveConf: HiveConf of name hive.heapsize does not 
exist
16/01/21 16:59:51 WARN conf.HiveConf: HiveConf of name 
hive.server2.enable.impersonation does not exist
16/01/21 16:59:51 WARN conf.HiveConf: HiveConf of name 
hive.auto.convert.sortmerge.join.noconditionaltask does not exist
ivysettings.xml file not found in HIVE_HOME or 
HIVE_CONF_DIR,file:/grid/0/hdp/2.3.4.0-3485/hadoop/lib/hadoop-lzo-0.6.0.2.3.4.0-3485-sources.jar!/ivysettings.xml
 will be used
FAILED: Hive Internal Error: 
org.apache.hadoop.service.ServiceStateException(java.io.IOException: 
/ats/active does not exist)
org.apache.hadoop.service.ServiceStateException: java.io.IOException: 
/ats/active does not exist
        at 
org.apache.hadoop.service.ServiceStateException.convert(ServiceStateException.java:59)
        at 
org.apache.hadoop.service.AbstractService.start(AbstractService.java:204)
        at org.apache.hadoop.hive.ql.hooks.ATSHook.<init>(ATSHook.java:74)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
        at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
        at java.lang.Class.newInstance(Class.java:374)
        at org.apache.hadoop.hive.ql.hooks.HookUtils.getHooks(HookUtils.java:60)
        at org.apache.hadoop.hive.ql.Driver.getHooks(Driver.java:1351)
        at org.apache.hadoop.hive.ql.Driver.getHooks(Driver.java:1335)
        at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1395)
        at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1237)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1101)
        at org.apache.hadoop.hive.ql.Driver.run(Driver.java:1091)
        at org.apache.hive.hcatalog.cli.HCatDriver.run(HCatDriver.java:43)
        at org.apache.hive.hcatalog.cli.HCatCli.processCmd(HCatCli.java:291)
        at org.apache.hive.hcatalog.cli.HCatCli.processLine(HCatCli.java:245)
        at org.apache.hive.hcatalog.cli.HCatCli.main(HCatCli.java:183)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
        at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
Caused by: java.io.IOException: /ats/active does not exist
        at 
org.apache.hadoop.yarn.client.api.impl.TimelineClientImpl.serviceStart(TimelineClientImpl.java:371)
        at 
org.apache.hadoop.service.AbstractService.start(AbstractService.java:193)
        ... 23 more
{code}

In HDP 2.1, YARN ATS v1.0 did not support kerberos, so kerberizing the cluster 
removed that component. This means that EU from HDP 2.1 to 2.3 cannot persist 
the ATS v1.0 configs and instead adds the ATS v1.5 configs that default to 
stack HDP 2.3. For that reason, Hive Service Check fails.

The fix is to persist the ATS v1.0 configs even if ATS is not present. The 
service checks will still fail, but the user can then add ATS after EU is done.



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

Reply via email to