暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

阿里云上快速扩展HDP节点之二:基于自定义镜像的HDP节点服务恢复

数据的砖格外烫手 2016-02-23
1012


本号的文章会不定期更新和勘误,要查看最新版本,现在就滑到文章结尾,点击阅读原文 , 立即可读到最新版本!

阿里云上快速扩展HDP节点之二:基于自定义镜像的HDP节点服务恢复

本来想用一篇文章介绍整个kylin平台在阿里云上试跑的案例。但是微信帖子对字数有要求,所以干脆做成系列,分成几个主题来说了。以下是第二篇:阿里云上快速扩展HDP节点之二:基于自定义镜像的HDP节点服务恢复

[TOC]

复制
  • 通过自定义镜像创建的节点会有什么问题?

    • 我遇到的情况

      • 通过tail -f 命令查看:

      • 异常分析

      • 异常解决

        • 修改/etc/hosts

        • 修改 /etc/sysconfig/network

        • 重启

      • 重启服务

  • 注意事项

通过自定义镜像创建的节点会有什么问题?

  1. 节点IP是由阿里云服务器所在区域指定的,不能自由选择。这样将导致每次从自定义镜像得到的节点IP配置都不一样。

  2. /etc/hosts 因为IP变化了,IP~域名的对应关系也会发生变化。

  3. 如果不改IP,将导致域名无法解析。

  4. HDP很多服务都基于域名访问。如果域名无法解析,服务就无法启动。

我遇到的情况

当我从自定义镜像恢复得到一个节点后,发现ambari上的服务全部是红色的,然后我尝试挨个重启,发现启动不成功,刚发出重启指令,进度条就变成了黄色状态。查看日志:

通过tail -f 命令查看:

tail -f /var/log/ambari-agent/ambari-agent.log
复制

异常:

ERROR 2016-02-19 21:20:16,535 script_alert.py:112 - [Alert][yarn_nodemanager_health] Failed with result CRITICAL: ['Connection failed to http://n01.kylin.hdp:8042/ws/v1/node/info (Traceback (most recent call last):\n  File "/var/lib/ambari-agent/cache/common-services/YARN/2.1.0.2.0/package/alerts/alert_nodemanager_health.py", line 165, in execute\n    url_response = urllib2.urlopen(query, timeout=connection_timeout)\n  File "/usr/lib64/python2.6/urllib2.py", line 126, in urlopen\n    return _opener.open(url, data, timeout)\n  File "/usr/lib64/python2.6/urllib2.py", line 391, in open\n    response = self._open(req, data)\n  File "/usr/lib64/python2.6/urllib2.py", line 409, in _open\n    \'_open\', req)\n  File "/usr/lib64/python2.6/urllib2.py", line 369, in _call_chain\n    result = func(*args)\n  File "/usr/lib64/python2.6/urllib2.py", line 1190, in http_open\n    return self.do_open(httplib.HTTPConnection, req)\n  File "/usr/lib64/python2.6/urllib2.py", line 1165, in do_open\n    raise URLError(err)\nURLError: <urlopen error [Errno 111] Connection refused>\n)']
复制

还有:

ERROR 2016-02-19 21:20:16,537 script_alert.py:112 - [Alert][hive_webhcat_server_status] Failed with result CRITICAL: ['Connection failed to http://n01.kylin.hdp:50111/templeton/v1/status?user.name=ambari-qa + \nTraceback (most recent call last):\n  File "/var/lib/ambari-agent/cache/common-services/HIVE/0.12.0.2.0/package/alerts/alert_webhcat_server.py", line 190, in execute\n    url_response = urllib2.urlopen(query_url, timeout=connection_timeout)\n  File "/usr/lib64/python2.6/urllib2.py", line 126, in urlopen\n    return _opener.open(url, data, timeout)\n  File "/usr/lib64/python2.6/urllib2.py", line 391, in open\n    response = self._open(req, data)\n  File "/usr/lib64/python2.6/urllib2.py", line 409, in _open\n    \'_open\', req)\n  File "/usr/lib64/python2.6/urllib2.py", line 369, in _call_chain\n    result = func(*args)\n  File "/usr/lib64/python2.6/urllib2.py", line 1190, in http_open\n    return self.do_open(httplib.HTTPConnection, req)\n  File "/usr/lib64/python2.6/urllib2.py", line 1165, in do_open\n    raise URLError(err)\nURLError: <urlopen error [Errno 111] Connection refused>\n']
复制

还有:

ERROR 2016-02-19 21:20:16,542 script_alert.py:112 - [Alert][ams_metrics_monitor_process] Failed with result CRITICAL: ['Ambari Monitor is NOT running on n01.kylin.hdp']
复制

异常分析

所有的异常,都是connection refused .

这说明服务没有启动起来,或者根据该域名根本找不到这个服务。

正如我们要吃饭,你首先要找对“地方”(主机ip),然后再吃你“想吃的”(服务)。在吃到你想吃的东西之前,你要先找到地方,让域名正确解析。
这是让你“先找到地方”的意思。等域名指向了特定主机(ip),才去考察域名所指示的服务器上有没有相应的“服务”---才是解决”是否有你想吃的“。
所以,首先,得让域名正确解析:

异常解决

修改/etc/hosts

xxx.xxx.xxx.xxx n01.kylin.hdp
复制

以此建立ip和域名的映射关系。如果之前已经有了映射关系,那很可能ip已经变了,需要更新。使用:

ip a
复制

命令查看最新ip。

修改 /etc/sysconfig/network

/etc/hosts 里指示定义映射关系,而n01.kylin.hdp 本身是需要为主机专门指定的。

需要在:

/etc/sysconfig/network
复制

中指定。

配置如下:

NETWORKING=yes
HOSTNAME=n01.kylin.hdp
复制

重启

通过reboot重启主机。

重启服务

待主机重启后,ambari 也随主机自动重启。
登录ambari,对 hdp 各个组件挨个重启即可。重启后,大量的服务和告警都消失了。

注意事项

  1. 单独修改 /etc/hosts 重启,是不管用的。

  2. 修改 /etc/sysconfig/network , restart , 悲剧了!因为公网ip无法再访问了!

  3. 而事实证明,修改 /etc/sysconfig/network  是有效的,修改hostanme 之后,不要重启网卡,只要重启主机即可!

  4. 阿里云上的网卡重启会出现外网无法访问的情况!不知道是不是个案?所以请不要轻易重启网卡。


文章转载自数据的砖格外烫手,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论