赞
踩
公司项目计划用Hadoop,现在需要用Eclipse在Windows下开发,在网上找文章,终于在单机安装成功。
台式机i5-2400 3.1G,2G内存,操作系统Win7,JDK1.6.31,推荐学习这篇文章。
1.下载Cygwin,运行Setup.exe,记得安装Sed、Openssh、Openssl,安装目录为d:\cygwin。
2.安装JDK,设置Windows环境变量,添加JAVA_HOME,值为java安装目录,添加CLASSPATH,值为.
;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\dt.jar
,在Path变量中添加%JAVA_HOME%\bin
java.io.IOException: Failed to set permissions of path: file:XXX to 0700
5.运行cygwin
chmod +r /etc/group
chmod +r /etc/passwd
chmod +rwx /var
7.运行ssh-host-config
cygrunsrv -S sshd
启动sshd服务。
10.在本地生成空密码的公钥和私钥,运行
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
11.配置本地访问不需要密码,运行
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
12.测试本地访问
ssh localhost
没有使用过ssh连接localhost, 那么会有提示添加localhost到knowhosts中去,然后要求输入密码,记得运行exit,退出ssh。
tar xvzf hadoop-0.20.2.tar.gz
解压将产生hadoop软件目录。
rm hadoop-0.20.2.tar.gz
15.在hadoop安装目录下,建日志目录
mkdir logs
chmod 777 logs
16.建立jdk link,比如jdk在d:\program files\Java\jdk1.6.31目录下
ln -s "cygdrive/d/Program Files/Java/jdk1.6.31" "/usr/local/jdk"
17.打开hadoop安装目录下的conf目录,编辑hadoop-env.sh,添加
export JAVA_HOME=/usr/local/jdk
18.修改hadoop目录下conf目录下的core-site.xml
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
-
- <configuration>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>/hadoop/tmp</value>
- </property>
- <property>
- <name>fs.default.name</name>
- <value>hdfs://localhost:9000</value>
- </property>
- </configuration>
19.修改hadoop目录下conf目录下的hdfs-site.xml
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
-
- <configuration>
- <property>
- <name>dfs.name.dir</name>
- <value>/hadoop/name</value>
- </property>
- <property>
- <name>dfs.data.dir</name>
- <value>/hadoop/data</value>
- </property>
- <property>
- <name>dfs.replication</name>
- <value>1</value>
- </property>
- </configuration>
20.修改hadoop目录下conf目录下的mapred-site.xml
- <?xml version="1.0"?>
- <?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
-
- <configuration>
- <property>
- <name>mapred.job.tracker</name>
- <value>localhost:9001</value>
- </property>
- <property>
- <name>mapred.local.dir</name>
- <value>/hadoop/mpredtemp</value>
- </property>
- </configuration>
21.在hadoop安装目录下,格式化命名空间
bin/hadoop namenode -format
22.在hadoop安装目录下,运行hadoop
bin/start-all.sh
23.在hadoop安装目录下,运行测试程序
bin/hadoop jar hadoop-0.20.2-examples.jar pi 2 10
24.在hadoop安装目录下,运行运行命令
bin/hadoop fs -put /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg /user/sw-its-hhe-hp/sw-its-hhe/timecount/input
报错,提示
put: File /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg does not exist.
由于 Cygwin 的路径并无法正常被 Hadoop 解析,亦即 Hadoop 经过 Windows OS 告知路径为 C:\hadoop4win\opt\hadoop\ 但在 Cygwin 中却为 \opt\hadoop。因此倘若您看到 File XXXX does not exist 的问题,可用 cygpath -w 指令把路径转变成 Windows 绝对路径,就可以解决,运行
cygpath -w /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg
显示为E:\Source\java\TestHadoopUploadFile\test\fg,运行
bin/hadoop fs -put $(cygpath -w /cygdrive/e/Source/java/TestHadoopUploadFile/test/fg) timecount/input
拷贝成功。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。