You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-dev@hadoop.apache.org by "Doroszlai, Attila (JIRA)" <ji...@apache.org> on 2019/08/07 10:17:00 UTC
[jira] [Created] (HDDS-1925) ozonesecure acceptance test broken by
HTTP auth requirement
Doroszlai, Attila created HDDS-1925:
---------------------------------------
Summary: ozonesecure acceptance test broken by HTTP auth requirement
Key: HDDS-1925
URL: https://issues.apache.org/jira/browse/HDDS-1925
Project: Hadoop Distributed Data Store
Issue Type: Bug
Components: docker, test
Affects Versions: 0.4.1
Reporter: Doroszlai, Attila
Acceptance test is failing at {{ozonesecure}} with the following error from {{jq}}:
{noformat:title=https://github.com/elek/ozone-ci/blob/325779d34623061e27b80ade3b749210648086d1/byscane/byscane-nightly-ds7lx/acceptance/output.log#L2779}
parse error: Invalid numeric literal at line 2, column 0
{noformat}
Example compose environments wait for datanodes to be up:
{code:title=https://github.com/apache/hadoop/blob/9cd211ac86bb1124bdee572fddb6f86655b19b73/hadoop-ozone/dist/src/main/compose/testlib.sh#L71-L72}
docker-compose -f "$COMPOSE_FILE" up -d --scale datanode="${datanode_count}"
wait_for_datanodes "$COMPOSE_FILE" "${datanode_count}"
{code}
The number of datanodes up is determined via HTTP query of JMX endpoint:
{code:title=https://github.com/apache/hadoop/blob/9cd211ac86bb1124bdee572fddb6f86655b19b73/hadoop-ozone/dist/src/main/compose/testlib.sh#L44-L46}
#This line checks the number of HEALTHY datanodes registered in scm over the
# jmx HTTP servlet
datanodes=$(docker-compose -f "${compose_file}" exec -T scm curl -s 'http://localhost:9876/jmx?qry=Hadoop:service=SCMNodeManager,name=SCMNodeManagerInfo' | jq -r '.beans[0].NodeCount[] | select(.key=="HEALTHY") | .value')
{code}
The problem is that no authentication is performed before or during the request, which is no longer allowed since HDDS-1901:
{code}
$ docker-compose exec -T scm curl -s 'http://localhost:9876/jmx?qry=Hadoop:service=SCMNodeManager,name=SCMNodeManagerInfo'
<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 401 Authentication required</title>
</head>
<body><h2>HTTP ERROR 401</h2>
<p>Problem accessing /jmx. Reason:
<pre> Authentication required</pre></p>
</body>
</html>
{code}
{code}
$ docker-compose exec -T scm curl -s 'http://localhost:9876/jmx?qry=Hadoop:service=SCMNodeManager,name=SCMNodeManagerInfo' | jq -r '.beans[0].NodeCount[] | select(.key=="HEALTHY") | .value'
parse error: Invalid numeric literal at line 2, column 0
{code}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-dev-help@hadoop.apache.org