目前hadoop如日中天,只要是涉及到云计算就一定会有hadoop的身影,这是为什么呢?我个人觉得主要是因为hadoop在海量信息的存储和海量信息的分析做得非常出色!目前也有很多人已经在研究hadoop了,为此我觉得我也应该跟随前者的脚步,我也相信你也是!
多余的话不说了,进入主题:
第一:
由于安装hadoop是要在linux环境下的,但是我们的操作系统是windows的,为此我们需要先安装好虚拟机。
我这安装的是:VMware Player(到官网下,这是免费的,地址:http://www.vmware.com/cn),同时我安装的linux操作系统是ubuntu(也是免费的,地址:http://www.ubuntu.org.cn)。安装虚拟机的过程,我就不细讲了。
第二:
安装好ubuntu操作系统后,建议马上安装ssh。很简单,进入ubuntu的操作终端,输入命令:
sudo apt-get install openssh-server(如果你的linux操作系统不同,该命令有可会不一样)
安装好ssh后,你就可以远程访问ubuntu操作系统了,比如你可以下载putty这样的软件来访问,这是由于直接在VMware Player下操作不是很方便,所以一般会通过远程来访问。
第三:
配置samba实现文件夹共享
配置samba的目的是你能够很方便的将你windows操作系统上的东西放到虚拟机里面,其实这时只需要ctrl + c,然后ctrl + v。
(1)首先安装samba:
sudo apt-get install samba
(2)创建共享目录:
mkdir /home/cloud/share
sodu chmod 777 /home/cloud/share
(3)修改配置文件
sudo vim /etc/samba/smb.conf(如果你的ubuntu操作系统中没有vim编辑器,可以通过sudo apt-get install vim 下载安装vim)
在smb.conf最后添加如下内容:
[share]
path = /home/cloud/share
available = yes
browseable = yes
public = yes
writable = yes
(4)创建samba帐户
sudo touch /etc/samba/smbpasswd
sudo smbpasswd -a cloud
然后会要求你输入samba帐户的密码
(5)重启samba服务器
service smbd restart
(6)使用
你在windows操作系统中,按windows键+R即打开运行命令,然后你输入:\\ubuntu机器的ip或主机名\share,即可进入共享目录。
第四:
由于hadoop是用java编写的,所以我们应该为虚拟机安装jdk。
到官网上下载版本相对较高的linux版本的jdk。
安装好jdk后,就要配置环境变量了,用文本编辑器打开/etc/profile,即sudo vim /etc/profile
然后在最后写入:
export JAVA_HOME=/usr/java/jdk1.6.0_13
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
编辑好后,输入source /etc/profile命令。然后输入java,即看到如图所示就配置成功了:
第六:
安装配置hadoop
我使用的hadoop的版本是1.2.1的。
(1)首先通过共享目录将hadoop-1.2.1.tar.gz文件复制到虚拟机当中。
(2)通过命令:tar zxvf hadoop-1.2.1.tar.gz将该文件解开,会在当前目录下生成一个文件夹名为hadoop-1.2.1。
(3)修改conf/Hadoop-env.sh,添加jdk配置
export JAVA_HOME=/usr/java/jdk1.6.0_13
(4)修改conf/core-site.xml,在<configuration></configuration>中添加如下内容:
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
(5).修改conf/hdfs-site.xml,在<configuration></configuration>中添加如下内容:
<property>
<name>dfs.name.dir</name>
<value>/home/share/hadoop-1.2.1/name</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/share/hadoop-1.2.1/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>注意:此时你应该在hadoop-1.2.1目录下建好name和data两个文件夹,建好文件后,建议分别输入如下命令:
sudo chmod 777 name
sudo chmod 755 data
(6)修改conf/mapred-site.xml,在<configuration></configuration>中添加如下内容:
<property>
<name>mapred.job.tracker</name>
<value>localhost:9001</value>
</property>
(7)修改conf/masters,这个决定那个是secondarynamenode,添加如下内容:
localhost
(8)修改conf/slaves,这个是所有datanode的机器,添加如下内容:
localhost
(9)为hadoop添加环境变量,即在/etc/profile中添加:
export HADOOP_HOME=/home/share/hadoop-1.2.1
对于PATH,只要将其修改成如下即可:
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
编辑好后,同样要输入source /etc/profile命令。
(10)格式化hdfs文件系统的namenode,输入如下命令:
hadoop namenode -format
(11)启动Hadoop集群,输入如下命令:
start-all.sh
(12)启动完成后,输入jps命令后,可以看到如图所示的java进程,说明hadoop的环境配置成功了!