hadoop环境配置(ubunbu伪分布式)

 1  安装虚拟机和操做系统 node

VMware-workstation-full-10.0.0  下载vmware linux

ubuntu-13.04-server-amd64.iso 下载ubuntu apache

二、  设置root用户密码 ubuntu

sudo passwd root    windows

注意 初始安装linux  问题: 初始安装ubuntu server后发现没法进入root,查了一下,若是想进入root账户,可使用安装时设置的非root账号的密码进入,使用空密码是进不去root账户的,进入root账户后就能够给root账户另设置一个密码了  执行:sudo passwd -u root  # 来启用咱们的root帐户,若是你后悔了能够执行 sudo passwd -l root 来从新lock root用户。 网络

注意:sudo执行时输入的密码都是你当前用户的密码,不是root的密码。并且要保证你的用户具有了这种权限  配置文件在/etc/sudoers中。 app

而后给root建立一个密码:sudo passwd root   #看准提示进行输入,root的密码最好和其余用户的密码不一样,否则会遇到一些麻烦。 ssh

如今root用户也不被禁用了,也有密码了,那么如何使用root进行登陆呢? 编辑器

3  上传文件 分布式

利用WinSCP上传JDKHADOOP文件,利用 putty链接虚拟机中的ubuntu下载WinSCP下载putty  下载jdk,(必定要注意版本号 32bit 仍是 64 bit)下载hadoop(我用的1.2.1)

问题: putty连不上linux,提示:Network errorConnection refused

注意:

执行  

$sudo apt-get install openssh-server  

安装ssh协议 

执行ifconfig显示Ubuntuip地址 

xp中用putty输入Ubuntuipssh协议远程登陆

 

4  配置JDKHADOOP

tar -xzvf jdk-7u40-linux-x64.tar.gz

tar -xzvf hadoop-1.2.1.tar.gz

sudo vi /etc/profile

增长:

export JAVA_HOME=/home/szy/jdk1.7.0_40

export PATH=$PATH:$JAVA_HOME/bin: /home/sun/hadoop-1.2.1/bin

source /etc/profile

5、配置HADOOP

配置主机名称及网络

vi /etc/hostname

指定名称为host001

vi /etc/hosts

替换内容为:192.168.137.128(这个是你的虚拟机分配给你的网段 ifconfig 能够看你的ip相关信息) host001

同时加入C:\Windows\System32\drivers\etc\hosts文件

查看是否启用IPV6:

cat /proc/sys/net/ipv6/conf/all/disable_ipv6

显示0说明ipv6开启,1说明关闭

关闭ipv6的方法:

sudo vi /etc/sysctl.conf

增长下面几行,并重启

#disable IPv6

net.ipv6.conf.all.disable_ipv6 = 1

net.ipv6.conf.default.disable_ipv6 = 1

net.ipv6.conf.lo.disable_ipv6 = 1

配置SSH

cd /home/ysc

sudo apt-get install openssh-server

ssh-keygen -t rsa(密码为空,路径默认)

cp .ssh/id_rsa.pub .ssh/authorized_keys

ssh host001

yes

cd hadoop-1.2.1

配置HADOOP环境变量

vi conf/hadoop-env.sh

增长:

export JAVA_HOME=/home/szy/jdk1.7.0_40

配置HADOOP运行参数

vi conf/masters

改localhost为host001

 

vi conf/slaves

改localhost为host001

 

vi conf/core-site.xml

 

<property>

<name>fs.default.name</name>

<value>hdfs://host001:9000</value>

</property>

<property>

<name>hadoop.tmp.dir</name>

<value>/home/szy/tmp</value>

</property>

 

vi conf/hdfs-site.xml

<property>

  <name>dfs.name.dir</name>

  <value>/home/szy/dfs/filesystem/name</value>

</property>

<property>

  <name>dfs.data.dir</name>

  <value>/home/szy/dfs/filesystem/data</value>

</property>

<property>

  <name>dfs.replication</name>

  <value>1</value>

</property>

 

vi conf/mapred-site.xml

                   

<property>

  <name>mapred.job.tracker</name>

  <value>host001:9001</value>

</property>

<property>

  <name>mapred.tasktracker.map.tasks.maximum</name>

  <value>4</value>

</property>

<property>

  <name>mapred.tasktracker.reduce.tasks.maximum</name>

  <value>4</value>

</property>

<property>

  <name>mapred.system.dir</name>

  <value>/home/szy/mapreduce/system</value>

</property>

<property>

  <name>mapred.local.dir</name>

  <value>/home/szy/mapreduce/local</value>

</property>

 以上相关信息的定义你能够去网上查到  若是你们不是很喜欢用vi 编辑器  你们能够用上面的winscp 编辑相关属性 只是我的建议

格式化名称节点并启动集群

[plain] view plaincopy

1.     $ cd hadoop-1.2.1

2.     $ mkdir logs  

3.     $ bin/hadoop namenode -format  

[plain] view plaincopy

1.     $ cd hadoop-1.2.1  

2.     $ mkdir logs  

3.     $ bin/hadoop namenode -format

Bin/hadoop  namenode  -format

启动集群并查看WEB管理界面

Bin/start-all.sh

访问http://host001:50030能够查看 JobTracker 的运行状态

访问http://host001:50060能够查看 TaskTracker 的运行状态

访问http://host001:50070能够查看 NameNode 以及整个分布式文件系统的状态,浏览分布式文件系统中的文件以及 log 

hadoop jar hadoop-1.2.1/contrib/streaming/hadoop-streaming-1.2.1.jar -inputinput -output output-streaming  -mapper/bin/cat -reducer /usr/bin/wc

hadoop  jar  hadoop-1.2.1/hadoop-examples-1.2.1.jar  wordcount  input  output

中止集群

stop-all.sh

Permission denied: user=Administrator, access=WRITE, inode="root":root:supergroup:rwxr-xr-x
此类错误说明本地用户administrator(本机windows用户)想要远程操做hadoop系统,没有权限引发的。

解决方法给相应没权限的目录设置下777权限。如给root目录设置权限

./hadoop fs -chmod 777 /user/root

 

若是出现:Unknown protocol to job tracker: org.apache.hadoop.hdfs.protocol.ClientProtocol 能够尝试下面解决方法

一、防火墙是否关掉
二、9001 9000的端口是否配置错误Host是Master的IP地址、9001是mapred.job.tracker端口、9000是fs.default.name的端口
三、重启EclipseIDE

相关文章
相关标签/搜索