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

[jira] [Commented] (AMBARI-16852) Update metrics collector pom.xml to use httpclient-4.2.5.jar

    [ https://issues.apache.org/jira/browse/AMBARI-16852?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15316241#comment-15316241 ] 

Qin Liu commented on AMBARI-16852:
----------------------------------

Thanks Aravindan! I just created the review board and add you, Sid, and Dmytro as the reviewers.

> Update metrics collector pom.xml to use httpclient-4.2.5.jar
> ------------------------------------------------------------
>
>                 Key: AMBARI-16852
>                 URL: https://issues.apache.org/jira/browse/AMBARI-16852
>             Project: Ambari
>          Issue Type: Bug
>          Components: ambari-metrics
>    Affects Versions: 2.1.0, 2.2.0
>            Reporter: Qin Liu
>            Assignee: Qin Liu
>             Fix For: trunk
>
>         Attachments: AMBARI-16852.patch
>
>
> httpclient-4.0.1.jar used by AMS collector does not have method URLEncodedUtils.parse (final URI uri, final String encoding). This will cause the metrics not to be populated and the collector log to be flooded with the following exception when when the Ambari-Metrics service is in distributed mode and the user configures http authentication filter without enabling Kerberos:
>  
> 21:54:08,215 ERROR [1831490216@qtp-1883237069-7582] log:87 - Error for /ws/v1/timeline/metrics
> java.lang.NoSuchMethodError: org.apache.http.client.utils.URLEncodedUtils.parse(Ljava/lang/String;Ljava/nio/charset/Charset;)Ljava/util/List;
>         at org.apache.hadoop.security.authentication.server.PseudoAuthenticationHandler.getUserName(PseudoAuthenticationHandler.java:143)
>         at org.apache.hadoop.security.authentication.server.PseudoAuthenticationHandler.authenticate(PseudoAuthenticationHandler.java:179)
>         at org.apache.hadoop.security.authentication.server.AuthenticationFilter.doFilter(AuthenticationFilter.java:507)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
>         at org.apache.hadoop.http.HttpServer2$QuotingInputFilter.doFilter(HttpServer2.java:1224)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
>         at org.apache.hadoop.http.NoCacheFilter.doFilter(NoCacheFilter.java:45)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
>         at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
> Steps to reproduce:
> 1. install a cluster with default from Ambari Web UI
> 2. configure Ambari Metrics service in distributed mode
> 3. Add the following properties in Custom core-site from Ambari Web UI:
>    1). hadoop.http.authentication.signature.secret.file=/etc/security/http_secret
>    2). hadoop.http.filter.initializers=org.apache.hadoop.security.AuthenticationFilterInitialize
> 4. create /etc/security/http_secret text file on each node
> 5. restart HDFS, YARN, Mapreduce2, HBase, Kafka, and Ambari Metrics service
> 6. Metrics on dashboard and HDFS, YARN, HBase, Kafka, and Amabari Metrics will show No Data Available.



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