單機部署Spark-1.4.0總結(Hadoop-2.6.0采用偽分布式)【已測】

    $ tar -zxf scala-2.10.5.tgz
    $ sudo mv scala-2.10.5 /usr/local
配置環(huán)境變量:

export SCALA_HOME=/usr/local/scala-2.11.4
export PATH=$SCALA_HOME/bin:$PATH
更新啟動環(huán)境變量
source /etc/profile
測試scala安裝是否成功
$ scala -version

  • 【親測】安裝Hadoop(需要修改Hadoop的情況下,手動編譯)
    【安裝Hadoop的參考網址】http://qindongliang.iteye.com/blog/2222145

    • 安裝依賴
      sudo yum install -y autoconf automake libtool git gcc gcc-c++ make cmake openssl-devel,ncurses-devel bzip2-devel
    • 安裝Maven3.0+
      【下載網址】
      http://archive.apache.org/dist/maven/maven-3/3.0.5/binaries/
      • 解壓
        tar -xvf apache-maven-3.0.5-bin.tar.gz
      • 移動文件
        mv -rf apache-maven-3.0.5 /usr/local/
      • 配置環(huán)境變量
      MAVEN_HOME=/usr/local/apache-maven-3.0.5
      export MAVEN_HOME
      export PATH=${PATH}:${MAVEN_HOME}/bin
      
      • 使生效
        source /etc/profile
      • 檢查是否安裝成功 mvn -v
    • 安裝ant1.8+
      【下載網址】http://archive.apache.org/dist/ant/binaries/
      • 環(huán)境變量
      export ANT_HOME=/usr/local/apache-ant-1.8.4
      export PATH=$ANT_HOME/bin:$PATH
      
      • 測試
        ant -version
    • 安裝 protobuf-2.5.0.tar.gz
      • 解壓
        tar xvf protobuf-2.5.0.tar.gz
      • 安裝
        cd protobuf-2.5.0
        ./configure --prefix=/usr/local/protobuf
        make
        nake install
      • 環(huán)境變量
      export PATH=$PATH:/usr/local/protobuf/bin
      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/protobuf/lib
      
      • 測試
        protoc --version
        如果輸出libprotoc 2.5.0表示安裝成功。
    • 安裝snappy1.1.0.tar.gz(可選選項,如果需要編譯完的Hadoop支持Snappy壓縮,需要此步驟)
      • 安裝
        ./configure --prefix=/usr/local/snappy #指定的一個安裝目錄
        make
        make install
    • 安裝hadoop-snappy
      • git下載地址
        git clone https://github.com/electrum/hadoop-snappy.git
      • 打包
        下載完成后
        cd hadoop-snappy
        執(zhí)行maven打包命令
        mvn package -Dsnappy.prefix=/home/search/snappy
      • 驗證

        ?這個目錄就是編譯后的snappy的本地庫,在
        hadoop-snappy/target/hadoop-snappy-0.0.1-SNAPSHOT-tar/hadoop-snappy-0.0.1-SNAPSHOT/lib目錄下,有個hadoop-snappy-0.0.1-SNAPSHOT.jar,在hadoop編譯后,需要拷貝到$HADOOP_HOME/lib目錄下。
        ?【備注】整個過程中使用到的包都放在/root/下面。
    • 安裝Hadoop
      • 安裝(下載hadoop-2.6.0-src.tar.gz是hadoop的源碼)
        【下載網址】
        http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.6.0/
        【也可以直接獲取】wget http://archive-primary.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.4.1-src.tar.gz
      • 解壓
        tar -zxvf hadoop-2.6.0-cdh5.4.1-src.tar.gz
      • 解壓后進入根目錄,執(zhí)行下面這個編譯命令,就能把snappy庫綁定到hadoop的本地庫里面,這樣就可以在所有的機器上跑了
        mvn clean package -DskipTests -Pdist,native -Dtar -Dsnappy.lib=(hadoop-snappy里面編譯后的庫地址) -Dbundle.snappy
        ?中間會報一些異常,無須關心,如果報異常退出了,就繼續(xù)執(zhí)行上面這個命令,直到成功為止,一般速度會跟你的網速有關系,大概40分鐘左右,最后會編譯成功。
  • 【最終選擇】安裝Hadoop(無需修改Hadoop時直接下載編譯好的Hadoop文件)

單機部署Hadoop(偽分布式)

  • Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中(很多的xml文件),偽分布式需要修改2個配置文件 core-site.xml 和 hdfs-site.xml。
  • 修改配置文件 core-site.xml (vim /usr/local/hadoop/etc/hadoop/core-site.xml)
    將當中的
<configuration>
</configuration>

修改為下面配置:

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>
  • 修改配置文件 hdfs-site.xml(同理)
<configuration>
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>
<property>
    <name>dfs.namenode.name.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
    <name>dfs.datanode.data.dir</name>
    <value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>

【注意】不說明的話都是目錄的起始位置都是:hadoop/

  • 配置完成后,執(zhí)行 namenode 的格式化:
    bin/hdfs namenode -format
    成功的話,會看到successfully formatted的提示,且輸出信息的倒數(shù)第5行的提示如下,Exitting with status 0 表示成功,若為 Exitting with status 1 則是出錯。若出錯,可試著加上 sudo, 既 sudo bin/hdfs namenode -format 再試試看。
  • 開啟NameNode、DataNode守護進程
    sbin/start-dfs.sh
    【注意】若你使用的是 Hadoop 2.4.1 64位,則此時可能會出現(xiàn)一連串的warn提示,如 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 這個提示,這些warn提示可以忽略,不會影響正常使用。
  • 查看進程
    輸入jps即可
    成功啟動則會列出如下進程: NameNode、DataNode和SecondaryNameNode
  • Hadoop-webUI
    在瀏覽器中輸入http://localhost:50070(localhost或者是服務器ip)
    【注意】如無法訪問,先檢查防火墻是否是關閉狀態(tài)(應當是關閉狀態(tài))。
  • 注意(配置過程中遇到)
    在這一步以及后面啟動 Hadoop 時若提示 Error: JAVA_HOME is not set and could not be found. 的錯誤,則需要在文件 hadoop/etc/hadoop/hadoop-env.sh 中設置 JAVA_HOME 變量,即找到 export JAVA_HOME=${JAVA_HOME} 這一行,改為 export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64 (就是之前設置的JAVA_HOME位置),再重新嘗試即可。
  • 關閉NameNode、DataNode守護進程
    sbin/stop-dfs.sh

單機部署Spark

  • 下載
    wget http://archive.apache.org/dist/spark/spark-1.4.0/spark-1.4.0-bin-hadoop2.6.tgz
  • 解壓并修改名字為spark
  • 環(huán)境變量
export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin
  • 配置Spark環(huán)境變量
    cd $SPARK_HOME/conf
    cp spark-env.sh.template spark-env.sh
    vim spark-env.sh
    添加如下代碼:
export JAVA_HOME=/usr/java/latest
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SCALA_HOME=/usr/local/scala-2.10.5
export SPARK_HOME=/usr/local/spark
export SPARK_MASTER_IP=127.0.0.1
export SPARK_MASTER_PORT=7077
export SPARK_MASTER_WEBUI_PORT=8099
export SPARK_WORKER_CORES=3
export SPARK_WORKER_INSTANCES=1
export SPARK_WORKER_MEMORY=10G
export SPARK_WORKER_WEBUI_PORT=8081
export SPARK_EXECUTOR_CORES=1
export SPARK_EXECUTOR_MEMORY=1G
#export SPARK_CLASSPATH=/opt/hadoop-lzo/current/hadoop-lzo.jar
#export SPARK_CLASSPATH=$SPARK_CLASSPATH:$CLASSPATH
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$HADOOP_HOME/lib/native
  • 配置Slave
    cp slaves.template slaves
    vim slaves
    添加以下代碼(默認就是localhost):
localhost
  • 因為是單機ssh免登陸不再贅述
  • 啟動Spark Master
    目錄:cd $SPARK_HOME/sbin/
    ./start-master.sh
  • 啟動Spark Slave
    目錄:cd $SPARK_HOME/sbin/
    ./start-slaves.sh(注意是slaves)
  • 啟動Spark-shell(application)
    ./spark-shell --master spark://127.0.0.1:7077
  • Spark-webUI
    http://localhost:8099(localhost或者是服務器ip)
    如下所示:
  • 關閉master和slave
    目錄:cd $SPARK_HOME/sbin/
    ./stop-master.sh
    ./stop-slaves.sh
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容