1、业务需求说明:由于公司网络进行了整改,随之而来的就是对应的ip网段发生了变化,其中我的hadoop的集群各主机的ip也相应的发生了改变,因此需要对各主机进行修改ip。

2、具体操作:

  首先停止cdh各组件的服务,修改各主机的ip。修改完后,本以为完事儿了,启动Cloudera Management Service时,发现启动失败,无法启动。那么问题就来了,如何通过cloudera-manager来修改主机的ip呢?郁闷的是Cloudera-Manager并没有提供修改集群ip的方法,因此,需要修改主机的ip只能另辟蹊径了。

3、柳暗花明又一村。

  通过在网上搜索,发现很多网友也遇到了我同样的问题,其中有些人说只能重装,个人感觉这肯定不会这样子,因此这个方法抛弃。于是功夫不负有心人,在网上看到了有人通过命令行的方式来修改主机的ip。这个可以。下面将该方法步骤详细介绍一下:方法的主要思想是:由于cloudera-manager在安装的时候,会配置相应的数据库,该数据库是用来存储集群的所有的配置信息。cloudera-mamanger每次启动的时候,都会从数据库中读取这些配置信息,因此想修改主机的ip,只需要修改存在数据库中的主机的ip即可。

4、具体方法

(1)首先在安装cloudera-manager的主机上,停止所有的cloudera管理进程

  service cloudera-scm-agent stop

  service cloudera-scm-server stop

(2)查看postgresql 的scm用户的密码

  grep password /etc/cloudera-scm-server/db.properties

(3)登陆postgresql 数据库

  输入命令:psql -h localhost -p 7432 -U scm

  提示你输入密码,密码就是上面步骤(2)的密码。

(4)修改postgresql数据库中的数据(即主机的ip)

    1) 查看pg中存储情况

      select host_id, host_identifier, name, ip_address from hosts;

      查询的结果如下:

        host_id |   host_identifier   |             name           |   ip_address
         ----------------------------------------------------------------------------
                3         |   hadoop.slave1   |           hadoop1         |  192.10.1.217

    2)修改各主机的ip(分别修改各主机的ip)

      update hosts set (ip_address) = ('192.10.2.217') where name='hadoop1';

    3)退出postgresql数据库

      输入命令: \q 即可

(5)修改所有机器的cloudera-scm-agent的配置文件

    1)打开cloudera-scm-agent的配置文件

      vi /ect/cloudera-scm-agent-/config.ini

    2)修改server_host的值(这个是指定cloudera-scm-server的ip)

      将该值设置为cloudera-scm-server的ip即可。

(6)修改各主机的 /etc/hosts文件,将现在的hostname与IP地址对应上

(7)重启服务

    service cloudera-scm-agent start
    service cloudera-scm-server start

  注:如果agent启动失败,查看是否9000或9001端口被占用

    netstat -nap | grep 9000

    netstat -nap | grep 9001

  如果被占用,kill –9 相关进程,再重新启动agent服务即可.

(8)重启cloudera-manager上的服务即可。

Cloudera-Manager修改集群的IP的更多相关文章

  1. Cloudera Manager 安装集群遇到的坑

    Cloudera Manager 安装集群遇到的坑 多次安装集群,但每次都不能顺利,都会遇到很多很多的坑,今天就过去踩过的坑简单的总结一下,希望已经踩了的和正在踩的童鞋能够借鉴一下,希望对你们能有所帮 ...

  2. RAC 集群更换IP

    RAC 集群更换 IP 主要分三步:停集群服务.配置服务器网络.修改集群配置.下面是同网段内更换 IP 示例.(r7.r8为服务器名称,orcl为ORACLE_SID,scanip为 scan 名称) ...

  3. KingbaseES R3 集群一键修改集群用户密码案例

    案例说明: 在KingbaseES R3集群的最新版本中增加了kingbase_monitor.sh一键修改集群用户密码的功能,本案例是对此功能的测试. kingbaseES R3集群一键修改密码说明 ...

  4. KingbaseES R6 集群sys_monitor.sh change_password一键修改集群用户密码

    案例说明: kingbaseES R6集群用户密码修改,需要修改两处: 1)修改数据库用户密码(alter user): 2)修改.encpwd文件中用户密码: 可以通过sys_monitor.sh ...

  5. KingbaseES R6 集群一键修改集群和数据库参数测试案例

    ​ 案例说明: 集群环境修改集群或数据库参数,需要在每个node上都要修改,在每个节点而执行修改操作,容易出现漏改或节点上参数不一致等错误:在KingbaseES V8R6的集群中增加了,一键修改参数 ...

  6. cloudera learning4:Hadoop集群规划

    涉及到一些关于硬件的东西,我也不是很懂,记录下来有待以后学习. Hadoop集群一般都是由小到大,刚开始可能只有4到6个节点,随着存储数据的增加,计算量的增大,内存需求的增加,集群慢慢变大. 比如按照 ...

  7. 如何修改集群的公网信息(包括 VIP) (文档 ID 1674442.1)

    适用于: Oracle Database - Enterprise Edition - 版本 11.2.0.3 到 12.1.0.2 [发行版 11.2 到 12.1]本文档所含信息适用于所有平台 用 ...

  8. KingbaseES R6 集群禁用 root ssh 后需要修改集群为es_server 案例

    案例说明: 在生产环境下,由于安全需要,主机间不允许建立root用户的ssh信任连接,这样导致KingbaseES R6 repmgr集群,通过sys_monitor.sh脚本启动集群时,节点之间不能 ...

  9. Cloudera CDH 5集群搭建(yum 方式)

    1      集群环境 主节点 master001 ~~ master006 从节点 slave001 ~~ slave064 2      安装CDH5的YUM源 rpm -Uvhhttp://ar ...

随机推荐

  1. UBI系统原理-中【转】

    转自:http://blog.chinaunix.net/uid-28236237-id-4217118.html UBI 文件头位置 EC头都放置在擦除块的开始偏移位置,占用64字节空间.之后防止V ...

  2. [windows][C++][库]遍历删除文件夹

    #include"windows.h"#include"string.h" BOOL IsDirectory(const char *pDir) { ]; Ze ...

  3. 复习练习(03)jquery Css方法一步步升级

    jquery Css方法一步步升级 <script src="jquery-1.8.3.js"></script> <script type=&quo ...

  4. 【小白入门向】tarjan算法+codevs1332上白泽慧音 题解报告

    一.[前言]关于tarjan tarjan算法是由Robert Tarjan提出的求解有向图强连通分量的算法. 那么问题来了找蓝翔!(划掉)什么是强连通分量? 我们定义:如果两个顶点互相连通(即存在A ...

  5. [bzoj1103][POI2007]大都市meg(树状数组+dfs序)

    1103: [POI2007]大都市meg Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2031  Solved: 1069[Submit][Sta ...

  6. Knockout 新版应用开发教程之创建view models与监控属性

    最近抽出点时间研究MVVM,包括司徒正美的avalon,google的angular,以及Knockout,博客园Tom的Knockout指南 时隔2年了,ko更新了不少,所以文档也相应的变化了,所以 ...

  7. jQuery核心之 $

    参考jQuery官网API文档 $ 和 $() 的区别很重要: 1.$(document).ready() 和 $(document).load() 的 区别:     前者等到DOM准备好了之后就会 ...

  8. Monkey 使用aapt查看apk包名

    使用aapt    //aapt是sdk自带的一个工具,在sdk\builds-tools\目录下1.以ES文件浏览器为例,命令行中切换到aapt.exe目录执行:aapt dump badging ...

  9. Go文件操作

    UNIX 的一个基础设计就是"万物皆文件"(everything is a file).我们不必知道一个文件到底映射成什么,操作系统的设备驱动抽象成文件.操作系统为设备提供了文件格 ...

  10. Mac下安装Node.js

    今天介绍一下Mac下Node.js的下载安装方法,后面我们安装Bootstrap.Angurlar和jQuery等都是通过Node.js的npm方式的. 1.在必应中搜索“node.js mac”,第 ...