hadoop和spark集成环境搭建

本人使用的是Ubuntu系统:ubuntu-12.04-desktop-i386.iso
和虚拟机VMwareworkstation-v9.0.1。
搭建的hadoop和spark所需要准备的资料分别有:
jdk-7u51-linux-i586.tar.gz
hadoop-2.2.0.tar.gz
scala-2.11.2.tgz
spark-1.0.2-bin-hadoop2.tgz
都可以在官网上下载到。
上面是需要准备好的软件资源。
现在开始我们先安装好虚拟机VMware,再建立好三台虚拟机,分别为hadoop1、hadoop2、hadoop3,
这里写图片描述
hadoop1作为主节点master,hadoop2和hadoop3作为从节点slave。
这里简单说明/etc/hostname和/etc/hosts文件的区别,
/etc/hostname储存的是用户名的,而/etc/hosts储存的是IP和用户名,更改/etc/hostname文件后, 需要重启电脑,才能生效。

hadoop集群部署
先把上面文件进行解压,在主目录下建立文件夹,hadoop_file,把jdk、hadoop文件解压到该文件夹内。
更改/etc/profile文件,添加路径

export JAVA_HOME=/home/hadoop/hadoop_file/java/jdk1.7.0_51/
export PATH=$JAVA_HOME/bin:$PATH

export HADOOP_HOME=/home/hadoop/hadoop_file/hadoop-0.20.2/
export PATH=$HADOOP_HOME/bin:$PATH

在其他节点分别需要对/etc/profile文件进行设置
现在我们需要的是对hadoop集成环境的配置,
1、你可以建立分组,之后的操作仅在所建立的组内。不过也无所谓,分组的好处是你能够更加清晰的分清文件目录,不容易混淆。
2、进行ssh的连接。
~~在测试进行本地循环测试,是否正常可以连接,ssh localhost
~~ 如果不能连接,可能是没有安装ssh。安装ssh,命令为:sudo apt-get install ssh
~~安装vi操作,命令为:sudo apt-get install vim
~~更改文件 /etc/hosts文件,把建立的每台虚拟机对应的IP和用户名添加进该文件:

192.168.232.128 hadoop1
192.168.232.129 hadoop2
192.168.232.130 hadoop3

~~在hadoop1主机上进行命令,ssh-keygen –t dsa -P '' –f ~/.ssh/id_dsa,会生成ssh秘钥,出现id_dsa(私钥) id_dsa.pub(公钥),把公钥复制为authorized_keys,命令为cp id_dsa.pub authorized_keys,
~~把authorized_keys分别复制给hadoop2、hadoop3两台虚拟机。
命令为:ssh authorized_keys hadoop2:/home/hadoop/.ssh,
ssh authorized_keys hadoop2:/home/hadoop/.ssh

~~现在尝试进行ssh连接,命令ssh hadoop2,ssh hadoop3.
~~首次连接需要输入密码,如果连接成功,则ssh单向的ssh连接操作成功了。
3、进行更改hadoop里面的文件,
~~更改conf/hadoop-env.sh文件,添加

export JAVA_HOME=/home/hadoop/hadoop_file/java/jdk1.7.0_51

~~更改conf/mapred-site.xml文件,添加

<property>
    <name>mapred.job.tracker</name>
    <value>hadoop1:9001</value>
</property>

<property>
    <name>mapred.local.dir</name>
    <value>/home/hadoop/hadoop_file/dfs/tmp</value>
</property>

~~更改conf/core-site.xml文件,添加

<property>
  <name>hadoop.tmp.dir</name>
  <value>/home/hadoop/hadoop_file/dfs/tmp</value>
</property>
<property>
  <name>fs.default.name</name>
  <value>hdfs://hadoop1:9000</value>
</property>

~~更改conf/hdfs-site.xml文件,添加

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>
<property>
    <name>dfs.data.dir</name>
    <value>/home/hadoop/hadoop_file/dfs/data1,/home/hadoop/hadoop_file/dfs/data2</value>
</property>
  <property>
        <name>dfs.name.dir</name>
        <value>/home/hadoop/hadoop_file/dfs/name1,/home/hadoop/hadoop_file/dfs/name2</value>
        <description>Name directories</description>
   </property>

~~在相应的文件内建立dfs文件,在启动hadoop后会自动建立相应的name、data、tmp文件。如果在linux无权限建立该文件夹时,你需要赋予相应的权限,否则会出错。

配置好上面的各个文件后, 最后我们需要把hadoop、jdk文件复制到其他的节点上,命令为:

scp -r java/ hadoop2:/home/hadoop/hadoop_file
scp -r java/ hadoop3:/home/hadoop/hadoop_file
scp -r hadoop-0.20.2/ hadoop2:/home/hadoop/hadoop_file
scp -r hadoop-0.20.2/ hadoop3:/home/hadoop/hadoop_file

完成后,我们就可以启动hadoop操作了,先格式化

格式化:hadoop namenode -format
启动:start-all.sh
查看:jps

下面是安装集群spark
在主目录下建立spark文件夹,把scala、spark文件解压到spark文件内。
在/etc/profile文件添加

export SCALA_HOME=/home/hadoop/spark/scala-2.11.2
export PATH=$SCALA_HOME/bin:$PATH

export SPARK_HOME=/home/hadoop/spark/spark-1.0.2-bin-hadoop2
export PATH=$SPARK_HOME/bin:$PATH

再修改spark内的文件,
~~conf/slaves 添加虚拟机节点,

hadoop2
hadoop3

~~复制conf/spark-env.sh.template 为conf/spark-env.sh,在添加

export JAVA_HOME=/home/hadoop/hadoop_file/java/jdk1.7.0_51/

export HADOOP_HOME=/home/hadoop/hadoop_file/hadoop-0.20.2/

export SCALA_HOME=/home/hadoop/spark/scala-2.11.2

export SPARK_HOME=/home/hadoop/spark/spark-1.0.2-bin-hadoop2

完成后,就可以启动spark集群了。
命令和hadoop相类似。在sbin命令执行start-all.sh文件就可以了。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值