Mac下spark环境的搭建

作者: cana_win | 来源:发表于2018-05-07 20:19 被阅读2796次

    安装前必备的环境:

    mac操作系统:本人是10.12.6

    JDK:1.8.0

    软件包管理工具:brew

    1、配置ssh

    配置ssh就是为了能够实现免密登录,这样方便远程管理Hadoop并无需登录密码在Hadoop集群上共享文件资源 。

    如果你的机子没有配置ssh的话,输入ssh localhost提示需要输入你的电脑登录密码,配置好ssh之后,就不需要输入密码了。

    配置ssh的步骤如下:

    (1)在终端输入:ssh-keygen -t rsa,之后一路enter键就行,如果之前进行过,则会提示是否覆盖之前的key,输入y即可,会进行覆盖。

    (2)终端执行:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys,用于授权你的公钥到本地可以无需密码实现登录。

    此时就可以免密登录了,但是本人在执行ssh localhost后,出现了如下报错:

    ssh : connect to host localhost port 22: Connection refused.

    连接被拒绝。

    解决方法:

    选择系统偏好设置->选择共享->勾选远程登录。

    之后再执行ssh localhost就可以登录成功了。如图:

    2、安装hadoop

    命令行执行:brew install hadoop

    正常情况下就等待安装就可以成功了,不过安装可能需要一段时间,但是本人在安装过程中遇到了一点问题,在执行了上述命令之后,错误提示如下:

    通过错误提示可以看到是因为java JDK安装的不符合要求。

    说明下,我之前安装JDK也是通过brew install 安装的,然后安装完之后,检查java版本是10.0.1,估计是安装的java版本不符合要求。

    于是重新进行了java JDK的安装,附JDK下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    选择对应的版本就可以了,下载之后解压双击安装,安装完成后检查是否安装成功,查看java 安装的版本:

    此时安装成功,对应的的是1.8.0版本的。

    这样之后重新执行brew install hadoop ,这次安装成功了。安装成功之后,在/usr/local/Cellar 目录下,会看到有个hadoop目录。

    3、配置hadoop

    3.1配置hadoop-env.sh

    进入安装目录/usr/local/Cellar/hadoop/3.0.0/libexec/etc/hadoop,找到hadoop-env.sh文件,将export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true"

    改为:

    exportHADOOP_OPTS="$HADOOP_OPTS-Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc="exportJAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.0_172.jdk/Contents/Home"

    (JDK的路径,按照自己的实际情况进行配置即可)

    3.2配置hdfs地址和端口

    进入hadoop安装目录:/usr/local/Cellar/hadoop/3.0.0/libexec/etc/hadoop,编辑core-site.xml,将<configuration></configuration>改为:

    <configuration>

       <property>

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

           <value>/usr/local/Cellar/hadoop/hdfs/tmp</value>

           <description>A base for other temporary directories.</description>

       </property>

       <property>

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

          <value>hdfs://localhost:8020</value>

      </property>

    </configuration>

    3.3  mapreduce中jobtracker的地址和端口

    仍然在hadoop的安装目录下,编辑mapred-site.xml,将<configuration></configuration>改为:

    <configuration>

          <property>

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

                  <value>localhost:8021</value>

         </property>

    </configuration>

    3.4  修改hdfs备份数

    仍然在hadoop的安装目录下,编辑hdfs-site.xml,将<configuration></configuration>改为:

    <configuration>

           <property>

                    <name>dfs.replication</name>

                   <value>1</value>

           </property>

    </configuration>

    3.5  格式化hdfs

    这个操作相当于一个文件系统的初始化,执行命令:hdfs namenode -format

    在终端最终会显示成功

    3.6  配置Hadoop环境变量

    终端执行:vim ~/.bash_profile,添加hadoop的环境变量:

    export HADOOP_HOME=/usr/local/Cellar/hadoop/3.0.0/libexec

    export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin

    备注:此处说明下,因为我使用brew install hadoop安装之后,发现安装目录下显示的有点问题,发现在/usr/local/Cellar/hadoop/3.0.0下面有bin  sbin  libexec,然后进入libexec目录,发现下面才是真正的hadoop安装的文件:

    而/usr/local/Cellar/hadoop/3.0.0目录下的其实是缺失的,因此配置hadoop环境变量的时候,要写到libexec这一级别:

    export HADOOP_HOME=/usr/local/Cellar/hadoop/3.0.0/libexec

    否则执行启动 hadoop的时候就会报错。

    3.7 启动关闭hadoop服务

    进入目录:/usr/local/Cellar/hadoop/3.0.0/libexec/sbin下,执行如下命令:

    ./start-all.sh    启动hadoop命令

    ./stop-all.sh   关闭hadoop命令

    启动成功后,在浏览器中输入http://localhost:8088,可以看到如下页面:

    4、安装scala

    命令行执行:brew install scala

    执行完成后,终端输入:scala -version进行查看,如下表明安装成功:

    然后在环境变量中增加scala相关的变量,命令行输入:vim ~/.bash_profile进行编辑,增加环境变量:

    export SCALA_HOME=/usr/local/Cellar/scala/2.12.6

    export PATH=$PATH:$SCALA_HOME/bin

    5、安装spark

    5.1  安装spark 

    进入Apache Spark官网进行Spark的下载,附Spark官网下载地址:http://spark.apache.org/downloads.html

    下载完之后解压,并将解压后的文件夹移动到/usr/local/目录下,然后cd /usr/local进入到/usr/local目录下,使用命令更改该目录下的spark文件夹名称:sudo mv ./spark-2.0.2-bin-hadoop2.7   ./spark  将文件夹名称改为 spark 。

    5.2  配置环境变量

    命令行输入:vim ~/.bash_profile进行编辑,增加环境变量:

    export SPARK_HOME=/usr/local/spark

    export PATH=$PATH:$SPARK_HOME/bin

    然后保存退出,执行source  ~/.bash_profile,使之生效。

    5.3  配置spark-env.sh

    进入到Spark目录的conf配置文件中:cd /usr/local/spark/conf,执行命令:cp spark-env.sh.template spark-env.sh将spark-env.sh.template拷贝一份,然后打开拷贝后的spark-env.sh文件:vim spark-env.sh,在里面加入如下内容:

    export SCALA_HOME=/usr/local/Cellar/scala/2.12.6

    export SPARK_MASTER_IP=localhost

    export SPARK_WORKER_MEMORY=4G

    配置好之后,命令行执行:spark-shell,如果出现如下所示的画面,就表明spark安装成功了:

    至此mac下spark单机环境就搭建完成了,以后就可以在spark shell中进行练习了。

    相关文章

      网友评论

        本文标题:Mac下spark环境的搭建

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