java - ambari + 无法通过端口 8088 访问资源管理器 WebUI
问题描述
我们有带版本的 HDP 集群2.6.5
集群包括 2 个资源管理器服务,它们是 YARN 的一部分
集群在过去 2 年运行良好,但今天我们注意到我们无法8088
从 ambari访问端口
在 Ambari 中,我们可以看到一个资源管理器处于活动状态,第二个处于备用状态,此时第一个资源管理器在 master01 机器上,第二个在 master02 机器上。
从资源管理器日志中我们可以看到以下日志
2021-07-16 09:12:14,974 ERROR mortbay.log (Slf4jLog.java:warn(87)) - /ws/v1/cluster/apps
javax.ws.rs.WebApplicationException: javax.xml.bind.MarshalException
- with linked exception:
[javax.xml.stream.XMLStreamException: org.mortbay.jetty.EofException]
at com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo(AbstractRootElementProvider.java:159)
at com.sun.jersey.spi.container.ContainerResponse.write(ContainerResponse.java:306)
at com.sun.jersey.server.impl.application.WebApplicationImpl._handleRequest(WebApplicationImpl.java:1437)
Caused by: javax.xml.bind.MarshalException
- with linked exception:
[javax.xml.stream.XMLStreamException: org.mortbay.jetty.EofException]
at com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:327)
at com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:177)
at com.sun.jersey.json.impl.BaseJSONMarshaller.marshallToJSON(BaseJSONMarshaller.java:103)
at com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider.writeTo(JSONRootElementProvider.java:136)
at com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo(AbstractRootElementProvider.java:157)
... 45 more
2021-07-16 09:12:15,077 ERROR mortbay.log (Slf4jLog.java:warn(87)) - /ws/v1/cluster/apps
javax.ws.rs.WebApplicationException: javax.xml.bind.MarshalException
- with linked exception:
[javax.xml.stream.XMLStreamException: org.mortbay.jetty.EofException].
.
.
Caused by: javax.xml.bind.MarshalException
- with linked exception:
[javax.xml.stream.XMLStreamException: org.mortbay.jetty.EofException]
at com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:327)
at com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal(MarshallerImpl.java:177)
at com.sun.jersey.json.impl.BaseJSONMarshaller.marshallToJSON(BaseJSONMarshaller.java:103)
at com.sun.jersey.json.impl.provider.entity.JSONRootElementProvider.writeTo(JSONRootElementProvider.java:136)
at com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo(AbstractRootElementProvider.java:157)
... 45 more
据我所知,我对“管道损坏”的最常见原因是一台机器(通过套接字通信的一对机器)在通信完成之前关闭了它的套接字末端。
但是我们不明白为什么(YARN)资源管理器因“Broken pipe”而失败</p>
从 Ambari 访问 yarn --> config 可以看到与 8088 端口相关的参数
yarn.resourcemanager.webapp.address master01.BD101.com:8088
yarn.resourcemanager.webapp.address.rm1 master01.BD101.com:8088
yarn.resourcemanager.webapp.address.rm2 master02.BD101.com:8088
所以我们不确定我们的问题是否相关,但是使用 IP 作为0.0.0.0
机器的主机名可能更好?
目前的情况是我们停止了 master01 机器上的资源管理器,
然后重启master02机器上的资源管理器,现在我们可以通过VIA端口访问网页了8088
但是当两个资源管理器都处于活动状态而第二个处于待机状态时,问题再次出现,我们无法访问端口8088
以获取 ambari 网页
关于如何找到解决这个问题的任何想法?
其他有用的帖子 - https://blog.bishwapoudel.com.np/fix-broken-pipe-exception-wildfly?x-host=blog.bishwapoudel.com.np
解决方案
推荐阅读
- c++ - 包括
在 GCC 4.8 中是必需的吗? - c# - 使用条件将嵌套的 for 循环转换为 linq
- java - 在 JSF 应用程序中保存来自 JMeter 的表单输入
- javascript - 当包含 div 的任何部分在视口中时自动播放视频;IE中的问题
- webpack - Babel 7.0 和 webpack 失败
- html - 在 Angular 中加载页面后自动滚动页面
- sql - SQL QUERY - 从头开始过滤日期
- encryption - Big Query 中的字段级加密
- python - 在 Windows 中从 cmd 执行 jupyter notebook 脚本的问题
- istio - Istio 如何实现 SPIFFE 的这个规范点?