Cloudera Manager无法添加主机

Cloudera Manager无法添加主机,cloud,cloudera,Cloud,Cloudera,我已经按照安装过程进行了安装,当我到达检查角色分配阶段时,我只看到一个托管主机:localhost.localdomain 任何后续添加其他主机的尝试都会产生相同的结果: 每个群集主机安装都成功 并且主机不会显示为托管 我错过了什么 更新:我不喜欢回答我自己的问题,所以我在这里写下我的答案 解决方案是如此明显,以至于我看不到它,并且让问题在相当长的一段时间内没有得到解决,直到它在进行一些检查时击中我 安装时提供的hostname是在/etc/hosts中为IP127.0.0.1和localh

我已经按照安装过程进行了安装,当我到达检查角色分配阶段时,我只看到一个托管主机:
localhost.localdomain

任何后续添加其他主机的尝试都会产生相同的结果:

  • 每个群集主机安装都成功
  • 并且主机不会显示为托管
我错过了什么

更新:我不喜欢回答我自己的问题,所以我在这里写下我的答案

解决方案是如此明显,以至于我看不到它,并且让问题在相当长的一段时间内没有得到解决,直到它在进行一些检查时击中我

安装时提供的
hostname
是在
/etc/hosts
中为IP
127.0.0.1
localhost设置的。localdomain
对Cloudera设置有误导作用,基本上使所有主机都具有相同的IP和主机名

我用
hostname.domain.local
重新进行了设置,现在
hosts
文件有一行单独的特定IP和主机名,
/etc/resolv.conf
文件有一行与
搜索domain.local
对应的内容

即使在经历了这段不愉快的经历之后,我也认为应该以这些小细节为特色,但这就像是在陈述显而易见的事情。

看起来Cloudera(可能是最近)在他们的网站上添加了一个关于这一点的宣传。我遇到这个问题已经有一段时间了,关键是获得以下命令以给出正确的结果:

$ host -v -t A `hostname`

我的想法是建立一个本地DNS服务器,但也许在每个节点上都有相同的/etc/主机就足够了。YMMV.

好吧,我在虚拟机上实现了集群,所以我想分享我所做的一切。在集群中,我创建了一个管理器节点(仅适用于cloudera管理器)、一个namenode和两个datanode。这使得向集群添加新节点变得更容易,而且没有问题。我还准备了简单的说明文件。它可能有点夏天化了,但工作正常。大多数代码都来自不同的网站,所以我尽量让它们简单。我在这里添加了这个答案,因为我的实现还包括向集群添加新主机

注意:我对linux环境非常陌生,我尽了最大的努力,希望有人能纠正我对使用方法或解释的评论

==================================================================================

这些说明在cenTOS 6.2 x64(非实时桌面版本)上实施。如果使用服务器版本,则可能需要自己配置网络配置

尽可能在所有机器上使用相同的版本。有人说机器的IP值很重要,但我使用不同的IP范围实现,比如一台机器使用192.168.12.13,另一台机器使用192.168.13.144。这并不是在制造问题

我还将Oracle VirtualBox用于windows 7 enterprise上的虚拟机环境

建议:当您创建一个常见的cenTOS安装时,如果出现任何错误配置,您应该创建一个克隆。始终保留备份克隆

首先手动下载这些文件:

cloudera管理器(您可以下载社区版)。对于主节点,我们需要这样做,但这并不意味着主节点是集群的一部分。我

在没有名称节点或作业跟踪器的机器上使用管理器,只有mamanger应用程序

Oracle JDK。您可以从oracle网站下载合适的。只需从浏览器下载或复制链接并使用wget下载即可。这是你的选择

请确保卸载“open jdk”:

手动安装“oracle jdk” 请注意,wget行可以更改。您可以从浏览器下载文件

wget http://download.oracle.com/otn-pub/java/jdk/6u27-b07/jdk-6u27-linux-x64-rpm.bin

chmod u+x jdk-6u27-linux-x64-rpm.bin

./jdk-6u27-linux-x64-rpm.bin
让我们的系统和浏览器使用我们的新java

/usr/sbin/alternatives --install /usr/bin/java java /usr/java/default/bin/java 20000 
/usr/sbin/alternatives --install /usr/lib/mozilla/plugins/libjavaplugin.so libjavaplugin.so /usr/java/default/jre/lib/i386/libnpjp2.so 20000
将用户添加为sudoers

nano /etc/sudoers
找到行“root ALL=(ALL)ALL”,并将这一行添加到下面

username  ALL=(ALL)   ALL
//这意味着用户root可以从所有终端执行, //充当所有(任何)用户,并运行所有(任何)命令

安装“ssh服务器”

检查ssh服务器状态以确保它正在运行

/sbin/service sshd status
如果未启动,则启动sshd服务

/sbin/service sshd start
或者,您可以简单地使用

ssh localhost
测试成功后,您可以退出

exit
这些说明也在cloudera网站中定义。 如果可以检查/var/log/cloudera scm agent/cloudera scm agent日志或.out文件,查看是否存在与持久性或休眠相关的

异常/错误,表示问题与postgresql数据库有关。可能数据库尚未设置。我们需要做的就是设置它

不需要:postgresql仅适用于管理器(主)节点。不需要奴隶

通过检查服务状态确保已安装postgresql实例

/etc/init.d/postgresql status
:以下说明需要回购配置!!!如果不知道如何使用,请跳到脚本文件用法

在Cloudera Manager服务器主机上安装嵌入式PostgreSQL数据库包:

sudo yum install cloudera-manager-server-db
通过运行以下命令,准备嵌入式PostgreSQL数据库,以便与Cloudera Manager服务器一起使用

sudo /sbin/service  cloudera-scm-server-db initdb
通过运行以下命令启动嵌入式PostgreSQL数据库:

sudo /sbin/service cloudera-scm-server-db start
脚本文件用法:下面的说明是使用脚本文件手动设置postgresql

/usr/share/cmf/schema/scm_prepare_database.sh database-type [options] database-name username password
所需参数和说明

数据库类型若要连接到MySQL数据库,请指定MySQL作为数据库类型,或指定PostgreSQL以连接到外部PostgreSQL数据库

数据库名称要创建的Cloudera Manager服务器数据库的名称

用户名要创建的Cloudera Manager服务器数据库的用户名

密码要创建的Cloudera Manager服务器数据库的密码。如果没有在命令行中指定密码,脚本将
sudo /sbin/service cloudera-scm-server-db start
/usr/share/cmf/schema/scm_prepare_database.sh database-type [options] database-name username password
/etc/init.d/postgresql start
nano /etc/sysconfig/iptables
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 7180 -j ACCEPT
sudo /etc/init.d/iptables stop
/etc/init.d/iptables status
sudo nano /etc/selinux/config
    (selinux=disabled)
sudo nano /etc/sysconfig/network
sudo nano /etc/hosts
sudo /sbin/service cloudera-scm-server start
sudo /sbin/service cloudera-scm-server status
sudo rm -Rf /usr/share/{cmf,hue} /var/lib/cloudera* /var/cache/yum/cloudera*
cd /var/log/cloudera-scm-agent
sudo rm *   
# Hostname of Cloudera SCM Server
   server_host=localhost
server_host=manager
export JAVA_HOME=/usr/local/java/jdk1.7xxx
export PATH=$PATH:$JAVA_HOME:bin
yum install mysql-connector-java