You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Sandeep Nemuri (JIRA)" <ji...@apache.org> on 2016/06/02 13:55:59 UTC

[jira] [Updated] (AMBARI-17006) Ambari should be able to use beeline command to check hive metastore health status

     [ https://issues.apache.org/jira/browse/AMBARI-17006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Sandeep Nemuri updated AMBARI-17006:
------------------------------------
    Description: 
BACKGROUND:

Hive cli is disabled by adding below lines to hive-env-template in hive configuration. 

{code}
if [ "$SERVICE" = "cli" ]; then 
echo "Sorry! hive cli has been disabled for security purpose, please use beeline instead." 
exit 1 
fi
{code}

PROBLEM : 

After disabling the hive shell , Ambari is reporting that the hive metastore is in critical state.

Below is the error: 

{code}
Metastore on metastorehost.com failed (Traceback (most recent call last): 
File "/var/lib/ambari-agent/cache/common-services/HIVE/0.12.0.2.0/package/alerts/alert_hive_metastore.py", line 183, in execute 
timeout=int(check_command_timeout) ) 
File "/usr/lib/python2.6/site-packages/resource_management/core/base.py", line 154, in __init__ 
self.env.run() 
File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 158, in run 
self.run_action(resource, action) 
File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 121, in run_action 
provider_action() 
File "/usr/lib/python2.6/site-packages/resource_management/core/providers/system.py", line 238, in action_run 
tries=self.resource.tries, try_sleep=self.resource.try_sleep) 
File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 70, in inner 
result = function(command, **kwargs) 
File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 92, in checked_call 
tries=tries, try_sleep=try_sleep) 
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) 
Fail: Execution of 'export HIVE_CONF_DIR='/usr/hdp/current/hive-metastore/conf/conf.server' ; hive --hiveconf hive.metastore.uris=thrift://xxxxxxxxxxxxx:9083 --hiveconf hive.metastore.client.connect.retry.delay=1 --hiveconf hive.metastore.failure.retries=1 --hiveconf hive.metastore.connect.retries=1 --hiveconf hive.metastore.client.socket.timeout=14 --hiveconf hive.execution.engine=mr -e 'show databases;'' returned 1. stty: standard input: Inappropriate ioctl for device 
tset: standard error: Invalid argument 

stty: standard input: Inappropriate ioctl for device 
stty: standard input: Inappropriate ioctl for device 

Value of TERM has been set to "dumb". 
stty: standard input: Inappropriate ioctl for device 
Sorry! hive cli has been disabled for security purpose, please use beeline instead. 
logout root 
) 
{code}

Since ambari scripts are using hive command to get the metastore health status the health check is failing.

{code}
hive --hiveconf hive.metastore.uris=thrift://hostname:9083 --hiveconf hive.metastore.client.connect.retry.delay=1 --hiveconf hive.metastore.failure.retries=1 --hiveconf hive.metastore.connect.retries=1 --hiveconf hive.metastore.client.socket.timeout=14 --hiveconf hive.execution.engine=mr -e 'show databases;''
{code}


This is a feature enhancement request to use the beeline command to check hive meta store health status.

  was:
BACKGROUND:

Hive cli is disabled by adding below lines to hive-env-template in hive configuration. 

{code}
if [ "$SERVICE" = "cli" ]; then 
echo "Sorry! hive cli has been disabled for security purpose, please use beeline instead." 
exit 1 
fi
{code}

PROBLEM : 

After disabling the hive shell , Ambari is reporting that the hive metastore is in critical state.

Below is the error: 

{code}
Metastore on usawshdpdv401.us.kellogg.com failed (Traceback (most recent call last): 
File "/var/lib/ambari-agent/cache/common-services/HIVE/0.12.0.2.0/package/alerts/alert_hive_metastore.py", line 183, in execute 
timeout=int(check_command_timeout) ) 
File "/usr/lib/python2.6/site-packages/resource_management/core/base.py", line 154, in __init__ 
self.env.run() 
File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 158, in run 
self.run_action(resource, action) 
File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 121, in run_action 
provider_action() 
File "/usr/lib/python2.6/site-packages/resource_management/core/providers/system.py", line 238, in action_run 
tries=self.resource.tries, try_sleep=self.resource.try_sleep) 
File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 70, in inner 
result = function(command, **kwargs) 
File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 92, in checked_call 
tries=tries, try_sleep=try_sleep) 
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) 
Fail: Execution of 'export HIVE_CONF_DIR='/usr/hdp/current/hive-metastore/conf/conf.server' ; hive --hiveconf hive.metastore.uris=thrift://xxxxxxxxxxxxx:9083 --hiveconf hive.metastore.client.connect.retry.delay=1 --hiveconf hive.metastore.failure.retries=1 --hiveconf hive.metastore.connect.retries=1 --hiveconf hive.metastore.client.socket.timeout=14 --hiveconf hive.execution.engine=mr -e 'show databases;'' returned 1. stty: standard input: Inappropriate ioctl for device 
tset: standard error: Invalid argument 

stty: standard input: Inappropriate ioctl for device 
stty: standard input: Inappropriate ioctl for device 

Value of TERM has been set to "dumb". 
stty: standard input: Inappropriate ioctl for device 
Sorry! hive cli has been disabled for security purpose, please use beeline instead. 
logout root 
) 
{code}

Since ambari scripts are using hive command to get the metastore health status the health check is failing.

{code}
hive --hiveconf hive.metastore.uris=thrift://hostname:9083 --hiveconf hive.metastore.client.connect.retry.delay=1 --hiveconf hive.metastore.failure.retries=1 --hiveconf hive.metastore.connect.retries=1 --hiveconf hive.metastore.client.socket.timeout=14 --hiveconf hive.execution.engine=mr -e 'show databases;''
{code}


This is a feature enhancement request to use the beeline command to check hive meta store health status.


> Ambari should be able to use beeline command to check hive metastore health status
> ----------------------------------------------------------------------------------
>
>                 Key: AMBARI-17006
>                 URL: https://issues.apache.org/jira/browse/AMBARI-17006
>             Project: Ambari
>          Issue Type: Improvement
>          Components: alerts
>    Affects Versions: 2.2.1.1
>         Environment: Ambari 2.2.2.1
>            Reporter: Sandeep Nemuri
>            Priority: Minor
>
> BACKGROUND:
> Hive cli is disabled by adding below lines to hive-env-template in hive configuration. 
> {code}
> if [ "$SERVICE" = "cli" ]; then 
> echo "Sorry! hive cli has been disabled for security purpose, please use beeline instead." 
> exit 1 
> fi
> {code}
> PROBLEM : 
> After disabling the hive shell , Ambari is reporting that the hive metastore is in critical state.
> Below is the error: 
> {code}
> Metastore on metastorehost.com failed (Traceback (most recent call last): 
> File "/var/lib/ambari-agent/cache/common-services/HIVE/0.12.0.2.0/package/alerts/alert_hive_metastore.py", line 183, in execute 
> timeout=int(check_command_timeout) ) 
> File "/usr/lib/python2.6/site-packages/resource_management/core/base.py", line 154, in __init__ 
> self.env.run() 
> File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 158, in run 
> self.run_action(resource, action) 
> File "/usr/lib/python2.6/site-packages/resource_management/core/environment.py", line 121, in run_action 
> provider_action() 
> File "/usr/lib/python2.6/site-packages/resource_management/core/providers/system.py", line 238, in action_run 
> tries=self.resource.tries, try_sleep=self.resource.try_sleep) 
> File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 70, in inner 
> result = function(command, **kwargs) 
> File "/usr/lib/python2.6/site-packages/resource_management/core/shell.py", line 92, in checked_call 
> tries=tries, try_sleep=try_sleep) 
> 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) 
> Fail: Execution of 'export HIVE_CONF_DIR='/usr/hdp/current/hive-metastore/conf/conf.server' ; hive --hiveconf hive.metastore.uris=thrift://xxxxxxxxxxxxx:9083 --hiveconf hive.metastore.client.connect.retry.delay=1 --hiveconf hive.metastore.failure.retries=1 --hiveconf hive.metastore.connect.retries=1 --hiveconf hive.metastore.client.socket.timeout=14 --hiveconf hive.execution.engine=mr -e 'show databases;'' returned 1. stty: standard input: Inappropriate ioctl for device 
> tset: standard error: Invalid argument 
> stty: standard input: Inappropriate ioctl for device 
> stty: standard input: Inappropriate ioctl for device 
> Value of TERM has been set to "dumb". 
> stty: standard input: Inappropriate ioctl for device 
> Sorry! hive cli has been disabled for security purpose, please use beeline instead. 
> logout root 
> ) 
> {code}
> Since ambari scripts are using hive command to get the metastore health status the health check is failing.
> {code}
> hive --hiveconf hive.metastore.uris=thrift://hostname:9083 --hiveconf hive.metastore.client.connect.retry.delay=1 --hiveconf hive.metastore.failure.retries=1 --hiveconf hive.metastore.connect.retries=1 --hiveconf hive.metastore.client.socket.timeout=14 --hiveconf hive.execution.engine=mr -e 'show databases;''
> {code}
> This is a feature enhancement request to use the beeline command to check hive meta store health status.



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