下载安装
下载网址: http://archive.cloudera.com/cdh5/cdh/5/
首先先下载安装包:
我的版本是:hadoop-2.6.0-cdh5.15.1
下载完后解压:tar xvf hadoop-2.6.0-cdh5.15.1.tar.gz
ssh免登陆操作:
首先为了防止启动hadoop时出现ssh的登陆的操作,建议设置一个ssh面登陆操作:
没做操作之前:
通过ssh hadoop000 是要输入密码的
然后做以下操作就可以免密码登陆了:
ssh-keygen -t rsa 命令,生成密钥文件:
cd ~/.ssh 进入文件夹
cat id_rsa.pub >> authorized_keys
完成后测试:
不用密码就可以登陆了。。。
配置启动:
首先进入到hadoop的文件夹里 vi etc/hadoop/hadoop-env.sh 在最后一行添加java的环境 export JAVA_HOME=/usr/local/jdk/jdk1.8.0_161
vi etc/hadoop/core-site.xml 添加以下内容 <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop000:8020</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/root/hadoop/app/hadoop-2.6.0-cdh5.15.1/tmp</value> </property> </configuration> //设置连接hadoop000的地址 //设置hadoop存储的路径
vi etc/hadoop/hdfs-site.xml 添加以下内容 <configuration> <property> <name>dfs:replication</name> <value>1</value> </property> </configuration> #代表的意思是dfs副本为1
vi /etc/profile
export HADOOP_HOME=/root/hadoop/app/hadoop-2.6.0-cdh5.15.1 export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin
source /etc/profile
启动hdfs
./sbin/start-dfs.sh
检测
输入jps看下进程
有这三个就证明对了。。
查看hdfs根文件:hadoop fs -ls /
或者打开:
如果打开不了可能是防火墙问题(这个自己去百度)
可能遇到的问题:
可能查看防火墙:firewall-cmd --state 显示是没开的,但是还是不行可以设置以下iptables,开放50070这个端口
题外:
建议我们不要直接使用ip,因为直接使用IP,如果ip变了,则要改代码,所以给设置一个网络名
虚拟机设置:
vi /etc/hosts
不要设置到127.0.0.1 和 ::1 ,我window连过去会失败的
window设置 ,修改hosts文件
在window上测试 hadoop000:8020 能不能连上
打开控制台,输入以下命令:
telnet hadoop000 8020
如果没报错就代表成功了。
hdfs基本命令:
1、hadoop fs -ls / 查看 2、hadoop fs -put src dst 上传文件到hadoop中 如:hadoop fs -put README.txt / 3、hadoop fs -copyFromLocal src dst 上传文件到hadoop中 如:hadoop fs -copyFromLocal NOTICE.txt / 4、hadoop fs -moveFromLocal src dst 移动文件到hadoop中 如:hadoop fs -moveFromLocal README2.txt / 5、hadoop fs -cat /README.txt 查看文件 6、hadoop fs -text /README.txt 查看文件 7.hadoop fs -get /README.txt 获取hadoop上面的文件 8、hadoop fs -mkdir /mytext 创建一个目录 9.hadoop fs -mv /README.txt /mytext 移动hadoop里的文件 10、hadoop fs -getmerge /mytext readme.txt 把一个文件夹里的文件合并成一个文件返回 hadoop 11、hadoop fs -rm /mytext/README.txt 12、hadoop fs -rmdir /mytext/ hadoop fs -rm -r /mytext/ 递归删除