一、配置集群ssh免密
1、在每台服务器或虚拟机上配置hosts,命令行输入:
vim /etc/hosts
在其中添加所有服务器或虚拟机节点ip和对应的域名
10.30.52.28 master
10.30.192.31 slave1
10.30.120.31 slave2
10.30.164.27 slave3
然后输入:wq保存退出。
2、ping 一下IP地址看看各个主机时是否互通
ping 10.30.52.28
ping 10.30.192.31
ping 10.30.120.31
ping 10.30.164.27
3、配置免密登录(四个都要做)
在命令窗口中输入:
ssh-keygen
然后连续回车即可
4、复制公钥到其他节点
ssh-copy-id -i .ssh/id_rsa.pub root@10.30.52.28
ssh-copy-id -i .ssh/id_rsa.pub root@10.30.192.31
ssh-copy-id -i .ssh/id_rsa.pub root@10.30.120.31
ssh-copy-id -i .ssh/id_rsa.pub root@10.30.164.27
复制完成即可实现免密登录,测试一下:
ssh 10.30.52.28
ssh 10.30.192.31
ssh 10.30.120.31
ssh 10.30.164.27
二、修改HDFS配置
1、设置JDK安装目录
进入/usr/cstor/hadoop/etc/hadoop目录下:
cd /usr/cstor/hadoop/etc/hadoop
查看详细信息:
ll
打开hadoop-env.sh:
vim hadoop-env.sh
找到如下一行:
export JAVA_HOME=${JAVA_HOME}
将这行内容修改为:
export JAVA_HOME=/usr/local/jdk1.7.0_79/
这里的“/usr/local/jdk1.7.0_79/” 就是JDK安装位置
2、指定HDFS主节点
编辑文件“/usr/cstor/hadoop/etc/hadoop/core-site.xml”:
vim core-site.xml
将如下内容嵌入此文件里最后两行的<configuration></configuration>
标签之间:
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/cstor/hadoop/cloud</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:8020</value>
</property>
3、拷贝集群配置至其它服务器
在master机上执行下列命令,将配置好的hadoop拷贝至slaveX、client。
[root@master ~]# cat ~/data/2/machines
slave1
salve2
slave3
client
[root@master ~]# for x in `cat ~/data/2/machines` ; do echo $x ; scp -r /usr/cstor/hadoop/etc $x:/usr/cstor/hadoop ; done;
三、启动HDFS
在master服务器上格式化主节点:
[root@master ~]# hdfs namenode -format
配置slaves文件,将localhost修改为slave1~3:
[root@master ~]# vi /usr/cstor/hadoop/etc/hadoop/slaves
slave1
slave2
slave3
统一启动HDFS:
[root@master ~]#cd /usr/cstor/hadoop
[root@master hadoop]# sbin/start-dfs.sh
查看数据节点
四、上传文件至HDFS
1、使从client服务器向HDFS上传文件。
[root@client ~]# hadoop fs -put ~/data/2/machines /
执行命令:hadoop fs -ls /
,查看文件是否上传成功。用client上传文件
2、浏览器查看上传文件
http://10.30.192.36(你自己对应的ip):50070/
点击Browse the file system
查看上传文件