本文主要是介绍hadoop 安装配置启动,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1. Ubuntu12.04基本设置
1) 设置与Windows共享(通过hgfs)
2) 设置root密码
sudo passwd root
3) 设置root登录
vim /etc/lightdm/lightdm.conf
在最后添加一行:greeter-show-manual-login=true
3) #adduser test
#passwd test
#mkdir -p /home/test
4) 查看我是谁
whoami
2. 安装组件
$ sudo apt-get install ssh$ sudo apt-get install rsync
3. 下载解压JDK (1.7)至/opt目录下
4. 下载解压Hadoop (2.6.4)/opt目录下
5. 增加JDK和Hadoop Path到/root/.bashrc和当用户的~/.bashrc中
如果把HADOOP_OPTS配置为:
则会出现如下错误:
6. hadoop_env.sh (JAVA_HOME, HADOOP_PREFIX)
注:以上安装都以root用户执行
7. 实例测试
7.1 单机模式
(不需要做任何配置,但不启动任何dfs和mapreduce daemon进程)计算在这些.xml文件中总共有多少个configuration
~$ mkdir input
~$ cp /opt/hadoop-2.6.4/etc/hadoop/*.xml input
~$ hadoop jar /opt/hadoop-2.6.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output 'configuration'
~$ cat output/*
查看debug信息(即代码中LOG.debug打印的信息):
test@ubuntu:~/hadoop$ export HADOOP_ROOT_LOGGER=DEBUG,console
test@ubuntu:~/hadoop$ hadoop fs -text /test/data/origz/access.log.gz
7.2 伪分布式模式
7.2.1 配置环境
1)etc/hadoop/core-site.xml:2)etc/hadoop/hdfs-site.xml:
3)ssh免密码登录
~$ssh-keygen (一直默认回车)
~$cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
~$ssh localhost (应该无密码)
7.2.2 在本地运行MapReduce Job
1)格式化文件系统$ hdfs namenode -format
生成的dfs文件夹位于:/home/test/hadoop/tmp
2)启动NameNode daemon和DataNode daemon
$ start-dfs.sh
hadoop daemon log输出目录为$HADOOP_LOG_DIR, 默认为$HADOOP_HOME/logs
给test用户授与/opt/hadoop-2.6.4权限
sudo chown -hR test /opt/hadoop-2.6.4
可通过jps查看到以下JVM进程:
11340 SecondaryNameNode
9927 NameNode
10142 DataNode
3) 通过Web界面来查看NameNode运行状况,默认为:
http://localhost:50070
http://192.168.4.91:50070
4)创建执行MapReduce Job需要的HDFS目录
$hdfs dfs -mkdir /user
$hdfs dfs -mkdir /user/<username>
error:mkdir: Cannot create directory /user. Name node is in safe mode.
solution:hdfs dfsadmin -safemode leave
5)把输入文件copy到分布式文件系统
$hdfs dfs -put /opt/hadoop-2.6.4/etc/hadoop input
6)运行例子程序
$hadoop jar /opt/hadoop-2.6.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output 'dfs[a-z.]+'
7)检查输出文件
把输出文件从分布式文件系统copy到本地文件系统,然后查看
$hdfs dfs -get output output
$cat output/*
或者
$hdfs dfs -cat output/*
8) 停止NameNode daemon和DataNode daemon
$stop-dfs.sh
7.2.3 在YARN上运行MapReduce Job
1) 配置环境在【7.2.1 配置环境】的基础上增加如下配置
(1)etc/hadoop/mapred-site.xml:
(2)etc/hadoop/yarn-site.xml:
2)格式化文件系统
$ hdfs namenode -format
生成的dfs文件夹位于:/home/test/hadoop/tmp
3)启动NameNode daemon和DataNode daemon
$ start-dfs.sh
hadoop daemon log输出目录为$HADOOP_LOG_DIR, 默认为$HADOOP_HOME/logs
给test用户授与/opt/hadoop-2.6.4权限
sudo chown -hR test /opt/hadoop-2.6.4
可通过jps查看到以下JVM进程:
11340 SecondaryNameNode
9927 NameNode
10142 DataNode
4) 通过Web界面来查看NameNode运行状况,默认为:
http://localhost:50070
http://192.168.4.91:50070
5)创建执行MapReduce Job需要的HDFS目录
$hdfs dfs -mkdir /user
$hdfs dfs -mkdir /user/<username>
6)启动ResourceManager daemon和NodeManager daemon
$start-yarn.sh
7) 通过Web界面来查看ResourceManager运行状况,默认为:
http://localhost:8088
http://192.168.4.91:8088
8)把输入文件copy到分布式文件系统
$hdfs dfs -put /opt/hadoop-2.6.4/etc/hadoop input
9)运行例子程序
$hadoop jar /opt/hadoop-2.6.4/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.4.jar grep input output 'dfs[a-z.]+'
10)检查输出文件
把输出文件从分布式文件系统copy到本地文件系统,然后查看
$hdfs dfs -get output output
$cat output/*
或者
$hdfs dfs -cat output/*
11)$stop-yarn.sh
12)$stop-dfs.sh
这篇关于hadoop 安装配置启动的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!