1.下载地址
2.Hadoop的安装分为单机方式、伪分布式方式 和 完全分布式方式。
单机模式是Hadoop的默认模式。解压即可使用单机模式。
单机模式不启动任何守护进程
无法使用hdfs和yarn,只能用来进行mr的本地测试
不能用作生产环境
伪分布模式
单机环境下启动所有的守护进程
具有hadoop的完整功能
可以使用hdfs,mapreudce和yarn
但是这些守护进程都运行在同一台机器上,并不能真正的提供性能上的提升
只能用来开发测试,不可以用在生产环境下。
完全分布模式
启动所有的守护进程
具有hadoop完整的功能
可以使用hdfs、mapreduce和yarn
并且这些守护进程运行在集群中,可以真正的利用集群提供高性能
在生产环境下使用
伪分布式安装:
0.关闭防火墙
service iptables status;#查看防火墙状态
service iptables start;#立即开启防火墙,但是重启后失效。
service iptables stop;#立即关闭防火墙,但是重启后失效。
重启后生效
chkconfig iptables on;#开启防火墙,重启后生效
chkconfig iptables off;#关闭防火墙,重启后生效
1.配置主机名
!!!!!注意安装hadoop的集群主机名不能有下划线!!不然会找不到主机!无法启动!
配置主机名
$vi /etc/sysconfig/network
$source /etc/sysconfig/network
例如:
NETWORKING=yes
HOSTNAME=hadoop01
或
$hostname xxxx
2.配置Hosts
vi /etc/hosts
填入以下内容
127.0.0.1 hadoop01
其他主机和ip对应信息。。。
3.配置免密码互通
生成自己的公钥和私钥,生成的公私钥将自动存放在/root/.ssh目录下。
$ ssh-keygen
把生成的公钥copy到远程机器上
$ ssh-copy-id [user]@[host]
此时在远程主机的/root/.ssh/authorized_keys文件中保存了公钥,在known_hosts中保存了已知主机信息,当再次访问的时候就不需要输入密码了。
$ ssh [host]
通过此命令远程连接,检验是否可以不需密码连接
4.安装JDK
通过fz将jdk安装包上传
解压安装包
tar -zxvf [jdk安装包位置]
配置环境变量
修改profile -- 这个文件是每个用户登录时都会运行的环境变量设置,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。
vim /etc/profile
在文件行尾加入配置后保存退出
export JAVA_HOME=/home/app/jdk1.7.0_45/
export PATH=$PATH:$JAVA_HOME/bin
重新加载profile使配置生效
source /etc/profile
环境变量配置完成,测试环境变量是否生效
echo $JAVA_HOME
java -version
5.安装hadoop
通过fz将hadoop安装包上传到linux
解压安装包
tar -zxvf [hadoop安装包位置]
6.配置hadoop
(1)修改 hadoop-env.sh
通过vim打开
vim [hadoop]/etc/hadoop/hadoop-env.sh
主要是修改java_home的路径
在hadoop-env.sh的第27行,把export JAVA_HOME=${JAVA_HOME}修改成具体的路径
(2)修改 core-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/core-site.xml
增加namenode配置、文件存储位置配置
-
<configuration>
-
<property>
-
<!--用来指定namenode的地址-->
-
<name>fs.defaultFS</name>
-
<value>hdfs://hadoop01:9000</value>
-
</property>
-
<property>
-
<!--用来指定hadoop运行时产生文件的存放目录-->
-
<name>hadoop.tmp.dir</name>
-
<value>/home/park/work/hadoop-2.5.2/tmp</value>
-
</property>
-
</configuration>
(3)修改 hdfs-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/hdfs-site.xml
配置包括自身在内的备份副本数量。
-
<configuration>
-
<property>
-
<!--指定hdfs保存数据副本的数量,包括自己,默认为3-->
-
<!--伪分布式模式,此值必须为1-->
-
<name>dfs.replication</name>
-
<value>3</value>
-
</property>
-
</configuration>
(4)修改 mapred-site.xml
说明:在/etc/hadoop的目录下,只有一个mapred-site.xml.template文件,复制一个
cp mapred-site.xml.template mapred-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/mapred-site.xml
配置mapreduce运行在yarn上
-
<configuration>
-
<property>
-
<!--指定mapreduce运行在yarn上-->
-
<name>mapreduce.framework.name</name>
-
<value>yarn</value>
-
</property>
-
</configuration>
(5)修改 yarn-site.xml
通过vim打开
vim [hadoop]/etc/hadoop/yarn-site.xml
配置
-
<configuration>
-
<property>
-
<!--指定resourcemanager的地址-->
-
<name>yarn.resourcemanager.hostname</name>
-
<value>hadoop01</value>
-
</property>
-
<property>
-
<!--NodeManager获取数据的方式-->
-
<name>yarn.nodemanager.aux-services</name>
-
<value>mapreduce_shuffle</value>
-
</property>
-
</configuration>
(6)修改 slaves
(7)配置hadoop的环境变量
vim /etc/profile
export HADOOP_HOME=/home/park/work/hadoop-2.5.2/
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
重新加载profile使配置生效
source /etc/profile
环境变量配置完成,测试环境变量是否生效
echo $HADOOP_HOME
(8)重启linux
一般不需要,如果发现hadoop有问题 则重启一下
$reboot
(8)格式化namenode
进入 hadoop/bin 输入命令格式化namenode
hadoop namenode -format(hdfs namenode -format 以前的方式)
在格式化的时候,会有这样的输出:
Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted
7.启动hadoop
在/home/app/hadoop-2.6.0/sbin目录下
$start-all.sh
命令行操作:
hadoop fs -mkdir /user/trunk
hadoop fs -ls /user
hadoop fs -lsr /user (递归的)
hadoop fs -put test.txt /user/trunk
hadoop fs -put test.txt . (复制到hdfs当前目录下,首先要创建当前目录)
hadoop fs -get /user/trunk/test.txt . (复制到本地当前目录下)
hadoop fs -cat /user/trunk/test.txt
hadoop fs -tail /user/trunk/test.txt (查看最后1000字节)
hadoop fs -rm /user/trunk/test.txt
hadoop fs -rmdir /user/trunk
hadoop fs -help ls (查看ls命令的帮助文档)
阅读(6491) | 评论(0) | 转发(0) |