美文网首页
搭建hadoop环境

搭建hadoop环境

作者: Gerald_123 | 来源:发表于2017-10-21 17:17 被阅读0次

1、 下载所需要的软件:VMware

(这里分享下我的安装软件,当然大家也可以去官网下载其他版本的软件:http://pan.baidu.com/s/1dFEl46t

2、安装VMware

1、在安装之前要先进BIOS设置下虚拟化的操作,不同的电脑进入BIOS的操作可能有点区别,可以自行百度下,也比较简单:

http://jingyan.baidu.com/article/375c8e19bcd24525f3a22943.html

这里分享下破解的序列号:

(1)5A02H-AU243-TZJ49-GTC7K-3C61N

(2)5F29M-48312-8ZDF9-A8A5K-2AM0Z

(如果两个都不行的话,可以去百度上搜一下)

2、安装完虚拟机后需要设置下密码,可以随便设置个简单点的密码,方便记住,

3、配置IP地址、网关等一些信息:vi /etc/sysconfig/network-scripts/ifcfg-ens32

这里截图的时候最上面有两行没截到:

BOOTPROTO=static

NAME=ens32

把其他一些没用的信息可以删掉,这里的网关按照虚拟机上网关的来配置,然后设置下IP地址,我设置的是192.168.187.110,编辑完之后按Esc键:wq保存并退出

4、修改主机名hostnamectl set-hostname master (主机名千万不能有下划线!)

5、重启网络service network restart

6、虚拟机和本地地址相互ping一下网络

(如果没ping通可能是防火墙没关

关掉防火墙:systemctl stop firewalld

永久废掉防火墙:systemctl disable firewalld)

3、安装JDK

1、先通过xshell连接到虚拟机,将jdk的安装包上传到虚拟机

2、/usr/local目录下创建一个java目录

mkdir -p /usr/local/java   (这里-p表示判断文件夹是否存在)

3、解压jdk到/usr/local/java目录下

tar zxvf jdk1.7.0_51  -C  /usr/local/java   (这里-C表示指定的目录)

rpm -ivh ./xxxxx.jdk,验证rpm -qa | grep jdk,在命令行中敲java命令,确认jdk已经安装完成

4、配置环境变量,进入java目录,vi /etc/profile

JAVA_HOME=/usr/java/jdk1.7.0_51

JRE_HOME=/usr/java/jdk1.7.0_51/jre

PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME

export JAVA_HOME JRE_HOME PATH CLASSPATH

5、使环境变量立马生效:source /etc/profile

6、java -version查看下jdk是否安装好

7、这里有个tomcat,就顺便也说说tomcat的安装以及在防火墙规则里添加8080规则,tomcat的安装和安装jdk的步骤差不多,

1>新建一个tomcat目录:mkdir -p /usr/local/tomcat 将tomcat安装包解压到这个目录,然后进入tomcat的bin目录下启动tomcat

2>查看防火墙规则 iptablees -L -n  (这里-L表示查看规则,-n表示以数字的形式查看),

iptables -I INPUT -p tcp --dport 8080 -j ACCEPT (编辑方式看的不太明显,这里是大写的i,-I表示在第一行插入,INPUT表示让当前的数据包进入系统-p表示作用于,让当前规则作用于某种协议,--dport指目的端口,-j表示采取的动作是什么),

查看防火墙规则,可以发现8080规则已经添加

再查看这个端口是否被监听 netstart -nlp |grep 8080

4、免秘钥操作

1、使用"ssh-keygen -t rsa"命令来创建公钥。

(会问你存放的目录,如果不需要修改,直接回车两次即可,默认保存路径为"~/.ssh/")

2、创建authorized_keys文件并修改权限为600

(这里解释下,这里是根据rsa算法生成的私钥id_rsa和公钥id_rsa.pub,登录集群的master,可以根据私钥对应的公钥免密登录,在后面集群把私钥复制一份到其他机器的配置里,这样方便后面再master上免密登录其他机器)

这里可以参考下网上的操作:

http://blog.csdn.net/daidaineteasy/article/details/50948034

5、安装hadoop

可以去官网下载:https://archive.apache.org/dist/hadoop/common/hadoop-2.7.3/

1、先设置下系统时间

2、 使用useradd hadoop添加用户,使用passwd hadoop设置用户密码,

3.、给用户赋予使用sudo命令的权限 chmod u+w /etc/sudoers

4、编辑sudoers文件  vim /etc/sudoers 在root ALL=(ALL)    ALL下面加上一行hadoop ALL=(ALL) ALL。

5、chmod u-w /etc/sudoers

.6.、使用sudo hostname hh修改主机名,当前生效,重启后失效。

 7.、使用vim /etc/sysconfig/network修改主机名,重启生效。

(修改主机名这一块可以参照网上的方法:https://jingyan.baidu.com/album/851fbc37a6b70f3e1f15ab8e.html?picindex=1)

这里我参考网上修改主机名的方式修改的:

把这两行删了重新配置下:

8、cd /usr/local通过Xshell把hadoop安装包上传到虚拟机

9、解压hadoop安装包hadoop mv hadoop-2.7.3 hadoop

10、把安装包名字改一下mv hadoop-2.7.3 hadoop

11、修改hadoop-env.sh文件,我这里可以用Xshell打开方便看下该文件的位置,

进入该文件修改下配置vi /usr/local/hadoop/etc/hadoop/hadoop-env.sh

修改成 export JAVA_HOME=/usr/java/default

12、把hadoop执行命令的路径加入PATH环境变量里vim etc/profile

在文件底部添加:export PATH=$PATH:/usr/local/hadoop/bin:usr/local/hadoop/sbin

退出并保存。

13、执行source  /etc/profile命令立即生效,然后敲hadoop出现帮助信息表示hadoop已经安装好

14、关掉虚拟机:shutdown -h now ,然后完全克隆出三台虚拟机

6、分布式集群配置

1、修改第一台虚拟机名字为slave1,并修改IP

2、重启下网络服务service network restart 然后ping一下网关

3、重复上述操作,配置slave2、slave3

4、配置名字解析,确保所有机器之间能ping通,之前已经废掉了防火墙,这里就不重复操作了,

并在其他几台机器上也配置上名字解析。

5、配置core-site.xml(需要修改tmp目录,temp目录是linux的临时目录,重启后会自动删除内容,所以这里需要修改下)

<property>

  <name>fs.defaultFS</name>

<value>hdfs://hh:9000</value>

</property>

<property>

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

<value>/usr/local/hadoop/current/tmp</value>

</property>

这里是master上的配置信息,core-site.xml这个配置在其他几台slave 上必须保持跟master一致!

6、格式化namenode:hadoop namenode -format

7、启动namenode:hadoop-daemon.sh start namnode以及其他datanode:hadoop-daemon.sh start datanode

8、在namenode和datanode下输入命令jps,以及登录网页http://192.168.187.110:50070/查看集群的启动情况

也可以输入命令观察整个集群的情况:hdfs dfsadmin -report | more

9、集中管理集群,修改slaves文件,这个操作需要master远程登录其他slave机器

10、列出根目录内容并查看大小hadoop fs -ls /  ,删除根目录下的内容用hadoop fs -rm  /(文件夹名)

11、上传文件到hdfs,这里用上面hadoop安装包的文件上传:hadoop fs -put ./hadoop-2.7.3.tar.gz

12、丢进根目录后用命令查看:hadoop fs -/ls

中途遇到了点问题

1、把core-site.xml文件里面namenode的名字配错了,结果集群没跑起来

 2、还有个问题就是hadoop执行命令里面的环境变量配置错了

vi /usr/local/hadoop/etc/hadoop/hadoop-env.sh

修改成 export JAVA_HOME=/usr/java/default不起作用,然后把后面的default改成了jdk1.7.0_51就能用了

 3、上传文件的时候碰到连接不上去的情况

相关文章

网友评论

      本文标题:搭建hadoop环境

      本文链接:https://www.haomeiwen.com/subject/oxqruxtx.html