百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

博主好贴心,为已有的 ambari 集群修改主机名

suiw9 2025-03-23 23:37 6 浏览 0 评论

回复“资源”领取独家整理的学习资料!

每一个成功人士的背后,必定曾经做出过勇敢而又孤独的决定。

放弃不难,但坚持很酷~


版本:ambari 2.7.3 ,其他版本应该也差不多是一样的


一、背景说明

时不时就有小伙伴微信里面问我有没有做过,为已有的 ambari 集群修改主机名?之前是有修改过 ip 的,主机名还真没修改过,只能给他提供一份官方的步骤:

https://docs.cloudera.com/HDPDocuments/Ambari-2.2.2.0/bk_ambari_reference_guide/content/ch_changing_host_names.html

不过经过后面小伙伴们的反馈,都修改成功了。最近有一位小伙伴还给出了他自己的实操步骤:

根据官方文档和朋友提供的的实操步骤,我也来实战演练一番。


二、节点说明

我有两台 ambari 节点,主机名分别是 server.data,agent.data 。

其中 ambari-server 安装在 server.data 上;ambari-agent 两台均有安装。


三、实操

1、禁用 Kerberos

官方文档上有描述,需要在修改主机名之前,禁用掉 Kerberos 。如果没开启 Kerberos 的话,可以略过这一步。


2、备份 ambari 数据库

一般,我会将 ambari 元数据信息保存在 mysql 中,ambari 数据库中的 hosts 表会存储着所有的主机信息。所以我们先备份一下元数据,以便必要时候回滚。


3、停止所有服务

有的服务配置会有主机信息,比如 HDFS ,如下图所示,host 配置都是配置的主机名。如果我们要修改主机名的话,那这些配置也得修改,所以先停掉所有服务再说。


4、停止 ambari-server 和 ambari-agent

停止 ambari-server 进程,然后也要停止所有节点上的 ambari-agent 进程。


5、修改主机名和/etc/hosts文件

hostnamectl set-hostname hdp1.data
hostnamectl set-hostname hdp2.data

vim /etc/hosts

10.255.20.139 hdp1.data
10.255.20.198 hdp2.data

需要确保所有 ambari 节点的 /etc/hosts 文件中的主机名都修改成了最新的。


6、测试免密是否可用

主要测试 ambari-server 节点 与 ambari-agent 节点的免密。

虽然修改了主机名,但是免密还是可用的。只是第一次免密的话,需要向 ~/.ssh/known_hosts 注册信息,也就是需要输入 yes/no 。问题不大,直接跳过。


7、创建用于修改主机名的 json 文件

> cat hostnames.json
{"create17":{"server.data":"hdp1.data","agent.data":"hdp2.data"}}
  • create17:是 ambari 创建 hdp 的集群名。
  • key 是旧主机名;value 是新主机名。


8、修改 ambari-server 配置文件

如果你的 mysql 所在的主机名已被修改,那么就得改一下 ambari-server 的配置文件。否则,这步略过。

编辑
/etc/ambari-server/conf/ambari.properties,修改 mysql 连接的主机名信息。

要将上述图片中的 server.data 修改为 hdp1.data 。


9、执行命令

ambari-server update-host-names hostnames.json

在修改主机名的过程中,可以实时查看 ambari-server 的日志:tail -f
/var/log/ambari-server/ambari-server.log。


10、修改 yum 离线 repo 源

如果你的 yum 离线 repo 源是指定的 ip,那么,这一步也可以略过。

我是用的主机名配置的,所以,要修改成新主机名。

进入 /etc/yum.repos.d 目录,将 repo 文件中的旧主机名替换成新的。

比如:修改 ambari-hdp-1.repo 文件中的主机名。


11、修改 ambari-agent 配置

如果是修改的 ambari-server 的主机名,那么就得修改 ambari-agent 配置。否则,这步可以省略。

vi /etc/ambari-agent/conf/ambari-agent.ini

注意:每个 ambari-agent 节点的这个配置文件都要修改。


12、修改 ambari 的 hdp 下载源链接

该步骤和第九步是一个道理。都是修改 hdp 相关的 yum 离线源链接。如果你的 yum 离线 repo 源是指定的 ip,那么,这一步也可以略过。

右上角点击用户 -> 选择 Manage Ambari -> Versions -> HDP-3.1.0.0,进入如下图所示修改保存:


13、再次检查服务的配置,查看主机名是否已自动修改

经过查看,服务中涉及主机名的部分,已自动替换为新主机名,nice ~

感兴趣的朋友可以研究一下 ambari-server update-host-names这个命令。


14、验证 yum install 是否正常

上面的步骤,我们如果修改了 repo 文件的主机名,那么需要验证一下。

或者直接通过 ambari 界面向导来安装某服务测试一下,或者直接在 shell 里面执行,yum install xxx,安装个东西测试一下。

这一步就不细说了,我测试了一下,是可以正常安装的。


15、启动所有服务

如果环境中用到了 nameNode HA ,那么需要在启动 zookeeper 之后,执行如下命令:

hdfs zkfc -formatZK -force

在启动所有服务的时候,发现 hbase 启动的时候报了错,报与 hdfs 交互时,无法访问 server.data 主机名,就很奇怪。通过ambari 界面,去 hdfs 服务的配置里面搜了一下,发现配置又被更改了,如下图所示:

难道和刚才安装部署 knox 或者新服务有关?不知道了,需要大家去尝试了。

最后修改了 HDFS 的配置,将旧主机名替换为新主机名,已安装的所有的服务就都启动正常了。


16、启动 Kerberos

启用 Kerberos 后,确保已生成了包含新主机名的新 keytab 。


四、总结

以上,就是基于官方文档和朋友提供的步骤,我自己的实战演练了。如果还有哪里修改的不充分,可以私聊我修正补充。这篇文章也算是给支持和使用 ambari 朋友的一份小心意吧。mua ~

欢迎大家留言讨论

Ambari2.7安装配置

Ambari 2.7.3.0 安装部署 hadoop 3.1.0.0 集群视频完整版

ambari自定义服务干货

ambari的服务启动顺序如何设置

(内部资料)Ambari 自定义服务第八讲:添加自定义告警

继续更新两讲 | Ambari自定义服务集成视频系列

ambari-server api,多表数据关联

Ambari2.7.1整体编译+安装使用

扫一扫,我们的故事就开始了。

另外公众号改变了推送规则,大家看文章不要忘记点击最下方的在看,点赞按钮,这样微信自动识别为常看公众号,否则很可能推送的文章可能淹没在别的文章找不到,谢谢大家

让我知道你在看

相关推荐

nginx的反向代理(Nginx的反向代理和负载均衡)

nginxProxy代理1、代理原理反向代理服务的实现:需要有一个负载均衡设备(即反向代理服务器)来分发用户请求,将用户请求分发到后端正真提供服务的服务器上。服务器返回自己的服务到负载均衡设备。负...

Nginx UI: 更好用更现代化的Nginx 管理面板

各位铲屎官大家好,我是喵~...

性能测试之tomcat+nginx负载均衡(nginxtcp负载均衡)

nginxtomcat配置准备工作:两个tomcat执行命令cp-rapache-tomcat-8.5.56apache-tomcat-8.5.56_2修改被复制的tomcat2下con...

nginx upstream节点健康检查(nginx tcp 健康检查)

1、前提条件编译nginx时增加nginx_upstream_check_module模板git地址:https://github.com/yaoweibin/nginx_upstream_check...

Nginx 的高并发处理能力(nginx支持高并发原理)

为了实现Nginx的高并发处理能力,需要从**硬件资源**、**操作系统**、**Nginx配置**等多个方面进行优化。以下是详细的配置和示例:---...

Nginx最全详解(万字图文总结)(nginxs)

大家好,我是mikechen。Nginx是非常重要的负载均衡中间件,被广泛应用于大型网站架构,下面我就全面来详解Nginx@mikechen本篇已收于mikechen原创超30万字《阿里架构师进阶专题...

如何用 Nginx 实现前端灰度发布(nginx 灰度测试规则)

前言在前端开发中,灰度发布是一种重要的策略,它允许我们在不影响所有用户的情况下,逐步推出新功能或更新。通过灰度发布,我们可以测试新版本的稳定性和性能,同时收集用户反馈。今天,我们将探讨如何使用Ngi...

nginx配置优化场景-直接套用so happy!

前言(叠甲在先)Nginx是一款高性能的Web服务器,广泛应用于互联网领域。...

Nginx配置前后端服务(nginx前后端分离部署)

nginx安装完成后,可以通过命令查看配置文件nginx-t配置文件nginx.conf,是总的配置,有的人会把配置全部配置到这个文件中,如果服务很多,这个文件变得非常庞大,我见过一个配置很大的,在...

使用Nginx配置TCP负载均衡(nginx如何配置负载均衡)

假设Kubernetes集群已经配置好,我们将基于CentOS为Nginx创建一个虚拟机。...

Nginx服务器深度指南:安装、配置、优化指令超详解

在当今数字化时代,Web服务器是支撑互联网应用的关键基础设施。Nginx作为一款高性能的开源Web服务器,凭借卓越的性能、丰富的功能和出色的稳定性,在Web服务器领域占据了重要地位。无论是大型互联网公...

Nginx的配置详解(附代码)(nginx基本配置)

本篇文章给大家带来的内容是关于Nginx的配置详解(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。常用配置项在工作中,我们与Nginx打交道更多的是通过其配置文件来进行。...

Nginx配置文件详解(nginx配置文件详解带实例)

Nginx配置文件详解Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。...

从 0 到 1:构建高可用 Linux 负载均衡集群(基于 Nginx + Keepalived)

在高并发业务场景下,单台服务器往往无法支撑大量请求,因此需要使用**负载均衡(LoadBalancing)**技术来提升系统的稳定性和可用性。Nginx+Keepalived是常见的开源负载均...

配置Nginx TCP转发(nginx 接口转发)

Nginx一般用在HTTP的转发,TCP的转发大都会使用HAProxy。工作中遇到一个需求,用到了Nginx服务作为TCP转发。场景是这样,数据采集设备通过公网将数据推送到后端应用服务,服务部署在业主...

取消回复欢迎 发表评论: