1. 创建用户一枚, sudo addgroup hadoop sudo adduser -ingroup hadoop hadoop_lcc 2. 为新创建的用户添加sudo权限 sudo gedit /etc/sudoers--> hadoop_lcc ALL=(ALL:ALL) ALL 3. 安装ssh 在 hadoop_lcc 用户下sudo apt-get install openssh-server 重启ssh服务 sudo /etc/init.d/ssh restart 4. 生成ssh公钥与私钥 ssh-keygen -t rsa -P "" cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys 自动登陆不用输入密码了 详见[网址](http://www.cnblogs.com/kinglau/p/3794433.html) 5. 安装java jdk。 下载jdk 1.8 在/usr/lib/jvm copy jdk1.8的内容 设置 vim /etc/profile 中四个export 变量 : export JAVA_HOME=/usr/lib/jvm/jdk1.8 export JAVA_JRE=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JAVA_JRE}/lib export PATH=${JAVA_HOME}/bin:$PATH source /etc/profile 接着替换原有的java 版本: sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8/bin/java 300 sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.8/bin/javac 300 6. 安装hadoop 这一步其实还是比较简单的,安装官网所说的,下载hadoop 安装包,然后解压。建立input目录,配置,执行命令。 这里要说的有: * {JAVA_HOME} 的问题 这个我是source 了/etc/profile之后才生效的 * 我将hadoop粘贴到了/usr/local/hadoop下,所有有一个写权限的问题 sudo chmod 777 hadoop 其实这样做有风险的,先这么做吧,待会查一下给文件夹加权限的问题。 7. 无法加载本地lib的解决之道,环境变量如下: export JAVA_HOME=/usr/lib/jvm/jdk1.8 export JAVA_JRE=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JAVA_JRE}/lib export PATH=${JAVA_HOME}/bin:$PATH export HADOOP_HOME=/usr/local/hadoop export PATH=$PATH:$HADOOP_HOME/bin export PATH=$PATH:$HADOOP_HOME/sbin export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native" 还有可能就是 libhadoop.so 这个软连过期了,重新连一下。 感谢这篇[博客](http://blog.csdn.net/xichenguan/article/details/38797331) 如果上述做法都不行,或者你的操作系统是32位,现在的hadoop的包是64位,那么恭喜你你得自己重新编译hadoop的源码。我忘了具体编译源码的指导网址了,这个[网址](http://blog.csdn.net/ggz631047367/article/details/42460589)貌似也差不多。 安装完成后,就可以按照官网所说的那些步骤运行简单一个例子看看结果了。有一个,命令是jps,来查看hadoop的节点运行状态,我的查看结果如下: ![Alt text](1462193654216.png) 运行自己的第一个MapReduce程序,参考[网址](http://blog.csdn.net/segen_jaa/article/details/47817219)。 基本的命令顺序如下: * javac -classpath /usr/local/hadoop/share/hadoop/common/hadoop-common-2.7.2.jar:/usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-client-core-2.7.2.jar -d . WordCount.java * jar -cvf wc.jar . * bin/hdfs dfs -mkdir /user * bin/hdfs dfs -mkdir /user/hadoop_lcc * bin/hdfs dfs -mkdir /user/hadoop_lcc/input * bin/hdfs dfs -put wctest/wcfile.txt /user/hadoop_lcc/input
时间: 2024-10-10 22:20:04