二、hadoop-2.5.0-cdh5.3.6集群搭建

①什么是CDH

CDH就是cloudera hadoop的简称,是对开源hadoop的bug进行了修复的并且解决了大部分的依赖冲突。和开源的apache的hadoop的区别是:开源的会有一些bug和依赖(jar包)冲突。

②安装hadoop包

利用WinSCP软件上传hadoop-2.5.0-cdh5.3.6.tar.gz文件到虚拟机的/usr/local目录下

这个文件下载地址是:http://archive.cloudera.com/cdh5/cdh/5

再然后解压缩hadoop-2.5.0-cdh5.3.6.tar.gz

再SecurCRT输入:cd /usr/local/

然后输入:ll

再输入:tar -zxvf hadoop-2.5.0-cdh5.3.6.tar.gz

 然后再:ll

可以看到一个文件夹: hadoop-2.5.0-cdh5.3.6

然后删除tar包:rm -rf hadoop-2.5.0-cdh5.3.6.tar.gz

然后重命名这个文件夹hadoop-2.5.0-cdh5.3.6

输入:mv hadoop-2.5.0-cdh5.3.6 hadoop

再输入:ll查看

 

进入hadoop目录检查是否有bin和sbin目录

然后输入:cd ..(注意:cd有一个空格再两个连续的点)

需要回到/usr/local目录,再输入:vi ~/.bashrc

然后加上:


export JAVA_HOME=/usr/java/latest
export HADOOP_HOME=/usr/local/hadoop

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

再然后:source ~/.bashrc

最后测试一下,分别输入:hadoop

                                            hadoop version

                                            yarn

                                            yarn version

再创建/usr/local/data目录,输入:mkdir data

③修改hadoop的配置文件,修改core-site.xml文件

 

首先即进入:cd ~(cd有一个空格再~)

再输入:cd /usr/local

再输入:cd hadoop/etc/hadoop

然后输入:ll可以查看到此配置文件

然后输入:vi core-site.xml

更改为:


<configuration>

<property>
        <name>fs.default.name</name>
        <value>hdfs://sparkproject1:9000</value>
</property>
</configuration>
 

④修改hadoop的配置文件,修改hdfs-site.xml

<configuration>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/data/namenode</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/data/datanode</value>
</property>
<property>
<name>dfs.tmp.dir</name>
<value>/usr/local/data/tmp</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>(表示三个节点,两个副本,所以为2)
</property>
</configuration>

⑤修改hadoop的配置文件,修改mapred-site.xml

输入:vi mapred-site.xml,发现只有mapred-site.xml.template文件,则重命名一下

输入:mv mapred-site.xml.template mapred-site.xml

 

然后再输入:vi mapred-site.xml

内容更改为:

<configuration>
<property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
</property>
</configuration>

表示不用mapreduc,用yarn。

⑥修改hadoop的配置文件,修改yarn-site.xml

输入: vi yarn-site.xml

更改内容为:

<configuration>

<!-- Site specific YARN configuration properties -->
<property>
        <name>yarn.resourcemanager.hostname</name>
        <value>sparkproject1</value>
</property>
<property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
</property>

</configuration>

 

⑦修改slaves文件

输入:vi slaves

更改内容为:

即:master是sparkproject1,从节点是sparkproject2和3

 

⑧在另外两台机器上配置hadoop,首先在sparkproject2这台虚拟机上操作。

输入:cd ~

再输入:cd /usr/local

再输入:ll

输入:cd data/

输入:ll

这个目录是空的就是对的

输入:cd ..

回到/usr/local目录下,ll

再输入:scp -r hadoop root@sparkproject2:/usr/local (把当前目录下的hadoop文件夹用递归的形式即-r表示文件夹及所有文件夹下的子文件夹和子文件夹下的所有孙子文件夹......全部拷贝到sparkproject2的/usr/local目录下,而且是用root连接sparkproject2)

(scp表示不同节点进行文件传输命令)

然后再sparkproject2中检查是否有此文件

同样在/usr/local目录下,再输入:scp ~/.bashrc root@sparkproject2:~/

然后在sparkproject2上验证,在usr/local目录下输入:cat ~/.bashrc

在sparkproject2的/usr/local目录下,输入:source ~/.bashrc

在sparkproject2检查,分别输入:hadoop、hadoop version、yarn、yarn version

再在local目录下面创建data文件夹:输入:mkdir data

⑨在另外两台机器上配置hadoop,然后在sparkproject3这台虚拟机上操作。

同上,只不过参数改一下。

scp -r hadoop root@sparkproject3:/usr/local

scp ~/.bashrc root@sparkproject3:~/

然后步骤同上

⑩启动hdfs集群

格式化namenode,在sparkproject1上的/usr/local目录下执行:hdfs namenode -format(注意:可以在SecureCRT下输入,也可以下原始命令窗口输入)

 

然后,启动hdfs集群:start-dfs.sh(在sparkproject1的local目录下SecureCRT软件中输入),再输入:yes

然后输入:jps可以查看本节点下的java进程(主要看:SecondaryNameNode和NameNode启动了)

有这三个进程就是对的

sparkproject2和sparkproject3有两个进程就是对的(主要看:DataNode启动了)

在主机浏览器输入:sparkproject1:50070用50070端口访问CDH即cloudera 提供的hpfs管理工具,可以看到集群的概况。

 

 

可以简单测试一下,在sparkproject1的local目录下,输入:vi hello.txt

在里面随意输入内容:如:hello world

再在sparkproject1的local目录下输入:hdfs dfs -put hello.txt /hello.txt

然后在浏览器输入:sparkproject1:50070

点击:Browse the file system

在360浏览器会出错:点击hello.txt会出错。

需要在Google浏览器输入:sparkproject1:50070

然后:Browse the file system

然后点击hello.txt,会出现以下界面:

⑪启动yarn集群

在sparkproject1的local目录输入:start-yarn.sh

这时会报错,估计是前面的yarn-site.xml文件没有配置好。

但可以用另外一个办法:先输入:cd ~回到主目录

再输入:cd /usr/local来到local目录

输入:cd hadoop

输入:cd sbin

输入:ll发现里面有start-yarn.sh文件

在sbin目录下输入:./start-yarn.sh(注意:前面有一个点和一个斜杠)

注意:一定要在sbin目录下输入,在local目录下输入无效。

然后在sparkproject1输入:jps

发现ResourceManager启动了

 再在重节点sparkproject2和3输入:jps

发现NodeManager启动了

 

检查一下:在主机浏览器输入:sparkproject1:8088,出现了yarn运行的管理界面

 

如果此时出现连接不同,可能是无线网卡连接到了别的网络,造成主机和虚拟机的网段不一致,主机ping不通虚拟机造成的。这时,重新连接原来名字的无线网络即和虚拟机网段一致的网络即可。

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值