在MacOs上配置hadoop和spark环境

Setting up Hadoop with Spark on MacOs

Instructions

  1. 准备环境
    如果没有brew,先google怎样安装brew
    先uninstall老版本的Hadoop

    brew cleanup hadoop

    然后更新homebrew formulae

    brew update
    brew upgrade
    brew cleanup

    检查版本信息

    brew info hadoop
    brew info apache-spark
    brew info sbt
    brew info scala

    如果以上程序没有安装,需要使用brew install app 进行安装。

  2. 安装环境
    安装hadoop

    brew install hadoop

    安装spark

    brew install apache-spark scala sbt

  3. 设置环境变量
    使用vim编辑~/.bash_profile,将以下内容贴到最后

     # set environment variables
    export JAVA_HOME=$(/usr/libexec/java_home)
    export HADOOP_HOME=/usr/local/Cellar/hadoop/2.5.1
    export HADOOP_CONF_DIR=$HADOOP_HOME/libexec/etc/hadoop
    export SCALA_HOME=/usr/local/Cellar/apache-spark/1.1.0 # set path variables
    export PATH=$PATH:$HADOOP_HOME/bin:$SCALA_HOME/bin # set alias start & stop scripts
    alias hstart=$HADOOP_HOME/sbin/start-dfs.sh;$HADOOP_HOME/sbin/start-yarn.sh
    alias hstop=$HADOOP_HOME/sbin/stop-dfs.sh;$HADOOP_HOME/sbin/stop-yarn.sh
  4. Hadoop必须要使ssh生效,设置ssh

    • 配置文件路径:

      /etc/sshd_config

    • 生成秘钥:

      sh-3.2# sudo ssh-keygen -t rsa

        Generating public/private rsa key pair.
      Enter file in which to save the key (/var/root/.ssh/id_rsa): 输入/var/root/.ssh/id_rsa
      Enter passphrase (empty for no passphrase): [直接回车]
      Enter same passphrase again: [直接回车]
      Your identification has been saved in /var/root/.ssh/id_rsa.
      Your public key has been saved in /var/root/.ssh/id_rsa.pub.
      key fingerprint is:
      97:e9:5a:5e:91:52:30:63:9e:34:1a:6f:24:64:75:af root@cuican.local
      The key's randomart image is:
      +--[ RSA 2048]----+
      | .=.X . |
      | . X B . |
      | . = . . |
      | . + o |
      | S = E |
      | o . . |
      | o . |
      | + . |
      | . . |
      +-----------------+
    • 修改配置文

      sudo vim /etc/ssh/sshd_config

        Port 22
      #AddressFamily any
      #ListenAddress 0.0.0.0
      #ListenAddress ::
      # The default requires explicit activation of protocol 1
      Protocol 2
      # HostKey for protocol version 1
      #HostKey /etc/ssh/ssh_host_key
      # HostKeys for protocol version 2
      #HostKey /etc/ssh/ssh_host_rsa_key
      #HostKey /etc/ssh/ssh_host_dsa_key
      #HostKey /etc/ssh/ssh_host_ecdsa_key
      HostKey /var/root/.ssh/id_rsa # Lifetime and size of ephemeral version 1 server key
      KeyRegenerationInterval 1h
      ServerKeyBits 1024 # Logging
      # obsoletes QuietMode and FascistLogging
      SyslogFacility AUTHPRIV
      #LogLevel INFO # Authentication:
      LoginGraceTime 2m
      PermitRootLogin yes
      StrictModes yes
      #MaxAuthTries 6
      #MaxSessions 10 RSAAuthentication yes PubkeyAuthentication yes
    • 启动ssh服务

      which sshd //查找sshd的位置。

      Mac 上sshd的位置在 /usr/sbin/sshd

      在终端输入sudo /usr/sbin/sshd即可启动sshd服务。

      ssh-keygen -t rsa
      cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

  5. 配置Hadoop
    到hadoop的安装路径

    cd usr/local/Cellar/hadoop/2.5.1/libexec/

    编辑etc/hadoop/hadoop-env.sh

     # this fixes the "scdynamicstore" warning
    export HADOOP_OPTS="$HADOOP_OPTS -Djava.security.krb5.realm= -Djava.security.krb5.kdc="

    编辑etc/hadoop/core-site.xml

     <configuration>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://localhost:9000</value>
    </property>
    </configuration>

    编辑etc/hadoop/hdfs-site.xml

     <configuration>
    <property>
    <name>dfs.replication</name>
    <value>1</value>
    </property>
    </configuration>

    编辑etc/hadoop/mapred-site.xml

     <configuration>
    <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    </property>
    </configuration>

    编辑etc/hadoop/yarn-site.xml

     <configuration>
    <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
    </property>
    </configuration>
  6. 开始启用Hadoop
    移动到Hadoop的root directory

    cd /usr/local/Cellar/hadoop/2.5.1

    格式化Hadoop HDFS

    ./bin/hdfs namenode -format

    启动NameNode和DataNode daemon

    ./sbin/start-dfs.sh

    从网页中查看

    http://localhost:50070/

    启动ResourceManager和NodeManager daemon

    ./sbin/start-yarn.sh

    检查所有的守护线程是不是已经在运行

    jps

    从网页中查看ResourceManager

    http://localhost:8088/

    创建HDFS目录

    ./bin/hdfs dfs -mkdir -p /user/{username}

    启动一个MapReduce的例子

     \#calculate pi
    ./bin/hadoop jar libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.5.1.jar pi 10 100
  7. 启动spark

    到Spark的安装目录

    cd /usr/local/Cellar/apache-spark/1.1.0

    启动Spark的例子

    ./bin/run-example SparkPi

    在网页中查看Spark任务

    http://localhost:4040/

    也可以使用Spark-submit来提交任务

     # pattern to launch an application in yarn-cluster mode
    ./bin/spark-submit --class <path.to.class> --master yarn-cluster [options] <app.jar> [options] # run example application (calculate pi)
    ./bin/spark-submit --class org.apache.spark.examples.SparkPi --master yarn-cluster libexec/lib/spark-examples-*.jar
  8. 结束

在MacOs上配置Hadoop和Spark环境的更多相关文章

  1. macOS 上配置 Lua

    [最新版]从零开始在 macOS 上配置 Lua 开发环境   脚本语言,你可能更需要的是 Lua 不同的脚本语言有不同的特性,第一接触的脚本语言,可能会影响自己对整个脚本语言的理解和认知.我以前接触 ...

  2. 在VS2017(VC15)上配置opencv4.0.1环境

    在VS2017(VC15)上配置opencv4.0.1环境   转 https://blog.csdn.net/GoldenBullet/article/details/86016921 作为萌新最初 ...

  3. Delphi for iOS开发指南(1):在Mac上配置你的开发环境

    http://cache.baiducontent.com/c?m=9d78d513d99516f11ab7cf690d678c3b584380122ba7a0020fd18438e4732b4050 ...

  4. 从零开始在ubuntu上配置深度学习开发环境

    从零开始在ubuntu上配置深度学习开发环境 昨天一不小心把原来配置好的台式机的开发环境破坏了,调了半天没有调回来,索性就重装一次ubuntu系统.这篇文章主要记录一个简单的.‘傻瓜式’教程. 一.U ...

  5. 手工命令行 搭建 hadoop 和 spark 环境

    环境准备:3台CentOS7,64位,Hadoop2.7需要64位Linux 192.168.20.161  192.168.20.162  192.168.20.163 三台机器分别叫host01. ...

  6. centos 7 配置hadoop与spark

    cd /home mkdir shixi_enzhaocd shixi_enzhaomkdir suaneccd suanecmkdir installsmkdir libsmkdir scripts ...

  7. Linux下配置Hadoop伪分布式环境

    1. 准备Linux环境 提示:我用的系统是CentOS 6.4. 1.0点击VMware快捷方式,右键打开文件所在位置 -> 双击vmnetcfg.exe -> VMnet1 host- ...

  8. Linux下配置Hadoop全分布式环境

    1. 前提 部署全分布式环境,我们肯定不能在一台服务器上了,这里我用了7台服务器,在VMware上开了7个虚拟机,如下图所示: 我基本配置了一晚上才搞定,第一次配置一般都有错,这时候不妨去到hadoo ...

  9. (转)单机上配置hadoop

    哈哈,几天连续收到百度两次电话,均是利好消息,于是乎不知不觉的自己的工作效率也提高了,几天折腾了好久终于在单机上配置好了hadoop,然后也成功的运行了一个用例,耶耶耶耶耶耶. 转自:http://w ...

随机推荐

  1. C++拾遗(三)关于复合类型

    数组相关 初始化只能在定义的时候使用,不能把数组赋给另一个数组. 初始化可以提供比元素数目少的初值,其它元素将被置为0. 字符char数组只有在以\0结尾时才是一个字符串.sizeof()返回数组的长 ...

  2. 人民币符号¥在css和html正确显示

    商城项目需要涉及到人民币的页面现实问题.但是¥(指的是通常输入法中文全角模式下按shift+4的那个)在宋体(v3.03, v5.0)的情况下是显示一杠.常见的其他字体微软雅黑(Microsoft Y ...

  3. jQuery toggle() 方法与实例以及代替方法。

    看<jQeury 权威指南>时看到这个toggle()方法.因为之前在慕课网学习接触过.发现两者讲的有细微的不同 以隐藏/显示目标元素效果为例,慕课网是这样讲解的 $("#cli ...

  4. (转载)让ie6也支持max-width,和max-height实现图片等比例缩放

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  5. js学习笔记之:数组(二)

    今天来学习一下数组的遍历.删除等知识点:    1 数组的遍历 数组元素的遍历可以使用for循环,采用关键字for...in var aCity =  new Array("北京" ...

  6. kill tomcat process in window

    1.通过命令netstat -ano | findstr 8080找到tomcat所占用的process,如下图   2.执行ntsd -c q -p 7944 kill刚刚找到的process,然后 ...

  7. Java高精度学习第一弹

    为了快速解决高精度问题,总算是要来接触java了,算上这学期要开java的课了,好好学习吧! 拿来练手的是hdu的1002,高精度加法. import java.util.*; import java ...

  8. UVA 11389(贪心问题)

    UVA 11389 Time Limit:1000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Description II  ...

  9. function的粗浅理解

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. Hadoop 学习笔记(二) HDFS API

    4.删除HDFS上的文件 package proj; import java.io.IOException; import org.apache.hadoop.conf.Configuration; ...