复制说明:
这是搜集学习他人精华后按照自己的思路归整,感谢前人的分享精神!
目录
2,在hdfs和创建输入文件夹,但不要创建输出文件夹...4
一、所用软件环境:
系统:ubuntu 12.04 i386
jdk: jdk-6u23-linux-i586
hadoop:hadoop-1.0.4
二、安装步骤:
1,安装操作系统
本电脑原来win7操作系统,专门分出一个盘来装ubuntu系统。win7下解压ubuntu -12.04-i386镜像文件,里边有个可执行文件wubi.exe,执行这个文件然后可自动安装系统,中途只要设置下密码和安装位置。
2,创建hadoop用户组和用户
这个不是必须的。
a)创建用户组:sudo addgrouphadoop
b)创建用户: sudo addusr-ingroup hadoop hadoop
c)给hadoop用户添加权限:
打开/etc/sudoers文件,在“root ALL=(ALL:ALL) ALL”这行下边再添加一行“hadoop ALL=(ALL:ALL) ALL",即给hadoop用户赋予root用户同样的权限。
附:修改密码问题
有时候su登录认证失败,或没有设置密码,先设置密码:
sudo passwd
3,安装jdk
我就在/usr/目录下建立一个“java”文件夹,将"jdk-6u23-linux-i586.bin"复制到此安装的。
a)更改文件权限:chmod 777jdk-6u23-linux-i586.bin
b)安装:./jdk-6u23-linux-i586.bin
完成后会在/etc/java目录下生成jdk1.6.0_23文件夹
c)配置环境变量:
打开/etc/profile文件夹子,在“#javaenvironment”这行下添加如下变量:
exportJAVA_HOME=/usr/java/jdk1.6.0_23
exportJRE_HOME=/usr/java/jdk1.6.0_23/jre
exportCLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
d)选择重启或执行一下命令来使c)步骤配置的环境变量生效:
source /etc/profile
e)验证:java -version
注意:配置环境变量一定要是自己jdk安装的路径
4,修改机器名
由于只是在单机上学习,所以一开始并未设置主机名,这部分只是后来设置的。
a)查看主机名:
hostname
b)打开/etc/hostname文件,将ubuntu(一般默认为此)改为想设置的名字,即可:sudo gedit /etc/hostname
c)重启验证:
hostname
5,安装配置ssh
ssh 可帮助进行远程登录和管理,在hadoop用户下完成。
a)安装openssh-server:
sudo apt-get install openssh-server
b)ssh生成密钥有rsa和dsa两种方式,默认采用rsa方式.
ssh-keygen -t rsa -P ""
执行问成后会在~/.ssh/下生成两个文件id_rsa和id_rsa.pub
c)进入~/.ssh/目录下,将id_rsa.pub追加到authorized_keys授权文件中去,开始没有authorized_keys的:
cat id_rsa.pub >> authorized_keys
d)上述完成后就可无密码登录本机了:
sshlocalhost
推出命令:
exit
注意:本部分操作是在hadoop用户下操作的,若其他用户登录的话仍然需要密码。
6,安装配置hadoop
a)将hadoop-1.0.4.tar.gz解压到安装目录,本次选择是/usr/local
在/usr/local目录下执行以下解压命令(前提/usr/local有此压缩文件压缩文件):
sudo tar -zxf hadoop-1.0.4.tar.gz
b)将解压出的文件夹改名为hadoop:
sudo mv hadoop-1.0.4.tar.gz hadoop
c)将hadoop文件夹的属主用户设置为hadoop:
sudo chown -R hadoop:hadoop hadoop
d)配置hadoop-env.sh文件:
在hadoop目录下打开:sudogedit /conf/hadoop-env.sh,是指里边的jdk路径:
#The java implementation to use. Required.
export JAVA_HOME=/usr/java/jdk1.6.0_23
e)配置core-site.xlm文件,内容如下:
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
f)配置mapred-site.xlm文件,内容如下:
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
</configuration>
g)配置hdfs-site.xlm文件,内容如下:
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/datalog1,/usr/local/hadoop/datalog2</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/data1,/usr/local/hadoop/data2</value>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
</configuration>
7运行hadoop以验证配置:
a)格式化hdfs文件系统,初次运行一定要有此操作:
/bin/hadoop namenode -format
b)启动hadoop:
/bin/start-all.sh
c) 检测是否启动成功:
jps
如果有TaskTracker,SecondaryNameNode,JobTracker,NameNode,DataNode,Jps五个进程,则表明启动成功了
d)停止hadoop:
/bin/stop-all.sh
<三>运行WordCount例子
1,创建本地测试文件:
sudo gedit test1.txt
输入字符串
2,在hdfs和创建输入文件夹,但不要创建输出文件夹
bin/hadoop fs -mkdir hdfsInput
执行这个命令时可能会提示类似安全的问题,如果提示了,则先退出安全模式:
bin/hadoop dfsadmin -safemode leave
3,上传本地文件到hdfs若输入文件夹下:
bin/hadoop fs -put test1.txt hdfsInput
4,执行程序:
bin/hadoop jar adoop-examples-1.0.4.jar wordcount hdfsInput hdfsOutput
6,查看结果:
查看输出文件夹:
bin/hadoop fs -ls hdfsOutput
查看输出执行结果:
bin/hadoop fs -cat hdfsOutput/part-r-00000
学习资料:
< 超详细单机版搭建hadoop环境图文解析>逸情公子http://weixiaolu.iteye.com/
<超详细在Ubuntu下安装JDK图文解析>逸情公子http://weixiaolu.iteye.com/