mac10.13下安裝hadoop2.7、Scala1.12、spark2.4

版本

# 安裝的軟件版本 
macOS 10.13.4
java 1.8.0_241
hadoop 2.7.3
scala 2.12.11
spark2.4.0

安裝java

# 測試版本
java -version
# 確保是java8

免密登錄SSH

# 一路enter鍵就行,如果之前進行過,則會提示是否覆蓋之前的key,輸入y即可,會進行覆蓋。
ssh-keygen -t rsa
# 用於授權你的公鑰到本地可以無需密碼實現登錄
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 此時就可以免密登錄了,但是本人在執行ssh localhost後,出現瞭如下報錯:
# ssh : connect to host localhost port 22: Connection refused.
# 解決方法:
# 選擇系統偏好設置->選擇共享->勾選遠程登錄

安裝hadoop

hadoop2,7,3

wget http://archive.apache.org/dist/hadoop/common/hadoop-2.7.3/hadoop-2.7.3.tar.gz

將其解壓到指定路徑下

tar zxvf hadoop-2.7.3.tar.gz /usr/local/Cellar
mv hadoop-2.7.3 hadoop2.7.3

配置

環境配置

vi ~/.bash_profile
# 在末尾添加
# Java的配置環境
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home
export JRE_HOME=$JAVA_HOME/jre
# hadoop的配置環境
export HADOOP_HOME=/usr/local/Cellar/hadoop2.7.3
export HADOOP_HOME_WARN_SUPPRESS=1
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$PATH

# 激活
source ~/.bash_profile
vi /usr/local/Cellar/hadoop2.7.3/etc/hadoop/hadoop-env.sh
# 在末尾添加如下
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home

測試Hadoop是否安裝成功

# 終端中輸入
hadoop version

Hadoop 2.7.3

配置core-site.xml

# 打開core-site.xml
vi /usr/local/Cellar/hadoop2.7.3/etc/hadoop/core-site.xml
# 在文末添加如下
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/Cellar/hadoop2.7.3/tmp</value>
    </property>
</configuration>

配置hdfs-site.xml

# 打開core-site.xml
vi /usr/local/Cellar/hadoop2.7.3/etc/hadoop/hdfs-site.xml
# 在文末添加如下
<configuration>
<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
       <value>file:/usr/local/Cellar/hadoop2.7.3/tmp/hdfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
          <value>file:/usr/local/Cellar/hadoop2.7.3/tmp/hdfs/data</value>
    </property>
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>localhost:9001</value>
    </property>
    <property>
      <name>dfs.webhdfs.enabled</name>
      <value>true</value>
    </property>
</configuration>

配置mapred-site.xml

# 打開core-site.xml
vi /usr/local/Cellar/hadoop2.7.3/etc/hadoop/mapred-site.xml
# 在文末添加如下
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.admin.user.env</name>
        <value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>
    </property>
    <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME</value>
    </property>
</configuration>

配置yarn-site-xml

# 打開core-site.xml
vi /usr/local/Cellar/hadoop2.7.3/etc/hadoop/yarn-site-xml
# 在文末添加如下
<configuration>

<!-- Site specific YARN configuration properties -->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

hadoop僞分佈式啓動

格式化 HDFS

# 在啓動 Hadoop 之前要先格式化 HDFS,通過創建存儲目錄和初始化元數據來格式化和創建新的文件系統:
hadoop namenode -format 

啓動hadoop

start-dfs.sh

查看是否安裝成功

# 輸入
jps
# 得到如下結果

出現沒有NameNode的情況,參見
jps命令沒有namenode或datanode, 怎麼解決?

查看namenode

在瀏覽器中輸入http://localhost:50070/
在這裏插入圖片描述

啓動yarn

輸入網址:http://localhost:8088/cluster
在這裏插入圖片描述

安裝Scala

下載Scala-2.12.X

scala2.12.11

解壓

tar zxvf scala-2.12.11.tgz -C ./scala-2.12

添加環境變量

# 在 ~/.bash_profile 添加 scala 的系統環境變量
export SCALA_HOME="/Users/xxx/scala2.12.11"
export PATH=${PATH}:${SCALA_HOME}/bin
# 激活
source ~/.bash_profile

檢查

scala -version

安裝spark

spark2.4.0

wget https://archive.apache.org/dist/spark/spark-2.4.0/spark-2.4.0-bin-hadoop2.7.tgz

# 解壓到指定文件
tar xzvf spark-2.4.0-bin-hadoop2.7.tgz /usr/local/Cellar/
# 更改文件名
mv spark-2.4.0xxx spark2.4.0

配置環境變量

# 做如下操作
cd /usr/local/Cellar/spark2.4.0/conf
cp spark-env.sh.template spark-env.sh
vi spark-env.sh
export SCALA_HOME=/usr/local/Cellar/scala2.12.11
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_241.jdk/Contents/Home
export SPARK_MASTER_IP=localhost
export SPARK_WORKER_MEMORY=1g
export HADOOP_CONF_DIR=/usr/local/Cellar/hadoop2.7.3/etc/hadoop
# 打開bash_profile
vi ~/.bash_profile
在文末添加
# spark
export SPARK_HOME=/usr/local/Cellar/spark2.4.0
export PATH=$PATH:$SPARK_HOME/bin

# 激活
source ~/.bash_profile

測試

# 在終端輸入
spark-shell
# 在scala下輸入
val textFile = sc.textFile("file:///usr/local/Cellar/spark3.0.0/README.md")
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章