hadoop生態搭建(3節點)-10.spark配置

#?https://www.scala-lang.org/download/2.12.4.html
# ==================================================================安裝 scala

tar -zxvf ~/scala-2.12.4.tgz -C /usr/local
rm –r ~/scala-2.12.4.tgz

# http://archive.apache.org/dist/spark/spark-2.3.0/

# ==================================================================安裝 spark

tar -zxf ~/spark-2.3.0-bin-hadoop2.7.tgz -C /usr/local
mv /usr/local/spark-2.3.0-bin-hadoop2.7 /usr/local/spark-2.3.0
rm –r ~/spark-2.3.0-bin-hadoop2.7.tgz

# 環境變量
# ==================================================================node1 node2 node3

vi /etc/profile# 在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL下添加export JAVA_HOME=/usr/java/jdk1.8.0_111
export ZOOKEEPER_HOME=/usr/local/zookeeper-3.4.12
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.6
export MYSQL_HOME=/usr/local/mysql
export HBASE_HOME=/usr/local/hbase-1.2.4
export HIVE_HOME=/usr/local/hive-2.1.1
export SCALA_HOME=/usr/local/scala-2.12.4
export KAFKA_HOME=/usr/local/kafka_2.12-0.10.2.1
export FLUME_HOME=/usr/local/flume-1.8.0
export SPARK_HOME=/usr/local/spark-2.3.0export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ZOOKEEPER_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$MYSQL_HOME/bin:$HBASE_HOME/bin:$HIVE_HOME/bin:$SCALA_HOME/bin:$KAFKA_HOME/bin:$FLUME_HOME/bin:$SPARK_HOME/bin:$SPARK_HOME/sbin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

# ==================================================================node1

# 使環境變量生效
source /etc/profile# 查看配置結果
echo $SPARK_HOME

# ==================================================================node1

cp $SPARK_HOME/conf/docker.properties.template $SPARK_HOME/conf/docker.properties
vi $SPARK_HOME/conf/docker.propertiesspark.mesos.executor.home: /usr/local/spark-2.3.0cp $SPARK_HOME/conf/fairscheduler.xml.template $SPARK_HOME/conf/fairscheduler.xml
cp $SPARK_HOME/conf/log4j.properties.template $SPARK_HOME/conf/log4j.properties
cp $SPARK_HOME/conf/metrics.properties.template $SPARK_HOME/conf/metrics.propertiescp $SPARK_HOME/conf/slaves.template $SPARK_HOME/conf/slaves
vi $SPARK_HOME/conf/slavesnode1
node2
node3cp $SPARK_HOME/conf/spark-defaults.conf.template $SPARK_HOME/conf/spark-defaults.conf
vi $SPARK_HOME/conf/spark-defaults.confspark.eventLog.enabled           true
spark.eventLog.dir               hdfs://appcluster/spark/eventslog
# 監控頁面需要監控的目錄,需要先啟用和指定事件日志目錄,配合上面兩項使用
spark.history.fs.logDirectory    hdfs://appcluster/spark
spark.eventLog.compress          true# 如果想 YARN ResourceManager 訪問 Spark History Server ,則添加一行:
# spark.yarn.historyServer.address http://node1:19888cp $SPARK_HOME/conf/spark-env.sh.template $SPARK_HOME/conf/spark-env.sh
vi $SPARK_HOME/conf/spark-env.shexport SPARK_MASTER_PORT=7077        #提交任務的端口,默認是7077
export SPARK_MASTER_WEBUI_PORT=8070  #masster節點的webui端口 默認8080改為8070
export SPARK_WORKER_CORES=1          #每個worker從節點能夠支配的core的個數
export SPARK_WORKER_MEMORY=1g        #每個worker從節點能夠支配的內存數
export SPARK_WORKER_PORT=7078        #每個worker從節點的端口(可選配置)
export SPARK_WORKER_WEBUI_PORT=8071  #每個worker從節點的wwebui端口(可選配置)
export SPARK_WORKER_INSTANCES=1      #每個worker從節點的實例(可選配置)export JAVA_HOME=/usr/java/jdk1.8.0_111
export SCALA_HOME=/usr/local/scala-2.12.4
export HADOOP_HOME=/usr/local/hadoop-2.7.6
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/Hadoop
export SPARK_PID_DIR=/usr/local/spark-2.3.0/pids
export SPARK_LOCAL_DIR=/usr/local/spark-2.3.0/tmp
export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native
export SPARK_DAEMON_JAVA_OPTS="-Dspark.deploy.recoveryMode=ZOOKEEPER -Dspark.deploy.zookeeper.url=node1:2181,node2:2181,node3:2181 -Dspark.deploy.zookeeper.dir=/spark"vi $SPARK_HOME/sbin/start-master.shSPARK_MASTER_WEBUI_PORT=8070cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml $SPARK_HOME/conf/vi $HADOOP_HOME/etc/hadoop/log4j.propertieslog4j.logger.org.apache.hadoop.util.NativeCodeLoader=ERRORscp -r $HADOOP_HOME/etc/hadoop/log4j.properties node2:$HADOOP_HOME/etc/hadoop/
scp -r $HADOOP_HOME/etc/hadoop/log4j.properties node3:$HADOOP_HOME/etc/hadoop/

# ==================================================================node1

scp -r $SPARK_HOME node2:/usr/local/
scp -r $SPARK_HOME node3:/usr/local/

# ==================================================================node2 node3

# 使環境變量生效
source /etc/profile# 查看配置結果
echo $FLUME_HOME

?

# 啟動

# ==================================================================node1 node2 node3
# 先啟動zookeeper 和 hdfs zkServer.sh start zkServer.sh status# ==================================================================node1 zkCli.sh create /spark ''$HADOOP_HOME/sbin/start-all.sh$HADOOP_HOME/sbin/hadoop-daemon.sh start zkfc# ==================================================================node2 $HADOOP_HOME/sbin/hadoop-daemon.sh start zkfc $HADOOP_HOME/sbin/yarn-daemon.sh start resourcemanager

# 啟動spark

# ==================================================================node1
$SPARK_HOME/sbin/start-master.sh$SPARK_HOME/sbin/start-slaves.sh# ==================================================================node2
$SPARK_HOME/sbin/start-master.sh# ==================================================================node1
# 獲取安全模式的狀態:
hdfs dfsadmin -safemode get# 安全模式打開
# hdfs dfsadmin -safemode enter# 安全模式關閉
# hdfs dfsadmin -safemode leavehdfs dfs -mkdir -p /spark/eventslog$SPARK_HOME/bin/spark-shell# http://node1:4040
# http://node1:8070> :quit

# test

# 需保證hdfs上該目錄不存在
# hdfs dfs -mkdir -p /spark/output
# hdfs dfs -rmr /spark/outputvi ~/sparkdata.txthello man
what are you doing now
my running
hello
kevin
hi manhdfs dfs -mkdir -p /usr/file/inputhdfs dfs -put ~/sparkdata.txt /usr/file/input
hdfs dfs -ls /usr/file/inputval file1 = sc.textFile("file:///root/sparkdata.txt")
val count1=file1.flatMap(line => line.split(" ")).map(word => (word,1)).reduceByKey(_+_)
count1.saveAsTextFile("hdfs://node1:8020/spark/output1")val file=sc.textFile("hdfs://appcluster/usr/file/input/sparkdata.txt")
val count=file.flatMap(line => line.split(" ")).map(word => (word,1)).reduceByKey(_+_)
count.saveAsTextFile("hdfs://node1:8020/spark/output")hdfs dfs -ls /spark/outputhdfs dfs -cat /spark/output/part-00000

# stop已經啟動的進程

# ==================================================================node1
$SPARK_HOME/sbin/stop-slaves.sh$SPARK_HOME/sbin/stop-master.sh$HADOOP_HOME/sbin/stop-all.sh# ==================================================================node1 node2 node3
# 停止 zookeeper
zkServer.sh stop# ==================================================================node2
$HADOOP_HOME/sbin/yarn-daemon.sh stop resourcemanager
$HADOOP_HOME/sbin/hadoop-daemon.sh stop zkfc# ==================================================================node1
$HADOOP_HOME/sbin/hadoop-daemon.sh stop zkfcshutdown -h now
# 快照 spark

?

轉載于:https://www.cnblogs.com/zcf5522/p/9775651.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/450480.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/450480.shtml
英文地址,請注明出處:http://en.pswp.cn/news/450480.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

持續集成coding

1、安裝docker yum -y install docker yum -y install composer yum -y install docker-compose 2、啟動docker服務 service docker start 3、測試安裝結果 docker-compose --version 4、創建目錄 mkdir /data/continus-deploy 5、寫入docker-compose.yml version: …

JSON字符串轉換為Map

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 本文是利用阿里巴巴封裝的FastJSON來轉換json字符串的。例子如下: [java] view plain copy package com.zkn.newlearn.json;…

排序與查找 詳細分析

C語言五種基本排序算法 程序員可以使用的基本排序算法有5種: 插入排序(insertionsort.)交換排序(exchangesOrt)選擇排序(selectionsort)歸并排序(mergesort)分布排序(distributionsort) 為了形象地解釋每種排序算法是怎樣工作的,讓我們來看…

《Netkiller Spring Cloud 手札》Spring boot 2.0 mongoTemplate 操作范例

2019獨角獸企業重金招聘Python工程師標準>>> 本文節選自 《Netkiller Spring Cloud 手札》 Netkiller Spring Cloud 手札 Spring Cloud Cookbook Mr. Neo Chan, 陳景峯(BG7NYT) 中國廣東省深圳市望海路半島城邦三期 518067 86 13113668890<netkillermsn.com> …

ZooKeeper原理及使用

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 ZooKeeper是Hadoop Ecosystem中非常重要的組件&#xff0c;它的主要功能是為分布式系統提供一致性協調(Coordination)服務&#xff0c;與…

自律只需要這篇文章

1. 鉆研&#xff0c;只要你有一個方面特別優秀&#xff0c;則在這個社會就足夠了,能夠吃一輩子 2. 領悟&#xff0c;需要的時候&#xff0c;別人給你只是一個具體的方向&#xff0c;具體的路還是要自己去設計 3. 執行力&#xff0c;晚上喜歡想想沒有小本本記錄&#xff0c;那么…

數據和文件操作

怎樣用C語言對某個目錄下的文件名進行排序? 在4&#xff0e;8的例子中&#xff0c;用_dos_findfirst()和_dos_findnext()函數遍歷目錄結構&#xff0c;每找到一個文件名&#xff0c;就把它打印在屏幕上&#xff0c;因此&#xff0c;文件名是逐個被找到并列出來的。當你對某個目…

這些年來什么才是最好的投資?

這些年&#xff0c;就是從我畢業&#xff08;2006&#xff09;以后... 聊投資&#xff0c;不免說股市&#xff1b;股市平時沒什么人談&#xff0c;一般暴漲暴跌時大家的談興就起來了。而最近這一周&#xff0c;全球股市都開啟了暴跌模式&#xff0c;讓投資者虧損慘重&#xff0…

electron安裝比較慢的方法

ELECTRON_MIRROR"https://cdn.npm.taobao.org/dist/electron/" npm install electron

vim 正則非貪婪模式

比如多匹配使用 .* 效果自然是貪婪模式&#xff0c;JS 的非貪婪很簡單&#xff0c;是 .*? 即可&#xff0c;而 vim 不同&#xff0c;語法是 .\{-}&#xff0c;注意 \ 轉義。 轉載于:https://www.cnblogs.com/ZweiZhao/p/10062543.html

循環結構 案例分析

怎樣才能知道循環是否提前結束了 循環通常依賴于一個或多個變量&#xff0c;你可以在循環外檢查這些變量&#xff0c;以確保循環被正確執行。請看下例&#xff1a;int xchar * cp[REQUESTED_BLOCKS]/ * Attempt (in vain, I must add... )toallocate 512 10KB blocks in memory…

工作中常用的但是又容易忽略的問題

個人平時總結 Document 對象 每個載入瀏覽器的 HTML 文檔都會成為 Document 對象。 Document 對象使我們可以從腳本中對 HTML 頁面中的所有元素進行訪問。 提$(document)是一個選擇器&#xff0c;選中的是整個html所有元素的集合示&#xff1a;Document 對象是 Window 對象的一…

JAVA經典面試題匯總(保存這篇就夠了)

一. java基礎篇 1.final 關鍵字的作用? 被 final 修飾的類不可以被繼承。被 final 修飾的方法不可以被重寫。被 final 修飾的變量不可以被改變&#xff0c;如果修飾引用&#xff0c;那么表示引用不可變&#xff0c;引用指向的內容可變。被 final 修飾的方法&#xff0c;JVM …

Angular5 *ngIf 和 hidden 的區別

問題 項目中遇到一個問題&#xff0c;有一個過濾查詢的面板&#xff0c;需要通過一個展開折疊的button&#xff0c;來控制它的show 和 hide。這個面板中&#xff0c;有一個Select 組件&#xff0c;一個 input 查詢輸入框。 原來代碼是&#xff1a; <div class"accordio…

ZooKeeper學習-- Zookeeper簡單介紹

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 一、分布式協調技術 在給大家介紹ZooKeeper之前先來給大家介紹一種技術——分布式協調技術。那么什么是分布式協調技術&#xff1f;那么…

選擇結構 案例分析

C語言goto&#xff0c;longjmp()和setjmp()之間有什么區別 goto語句實現程序執行中的近程跳轉(local jump)&#xff0c;longjmp()和setjmp()函數實現程序執行中的遠程跳轉(nonlocaljump&#xff0c;也叫farjump)。通常你應該避免任何形式的執行中跳轉&#xff0c;因為在程序中…

Python基礎班---第一部分(基礎)---Python基礎知識---第一個Python程序

01. 第一個 HelloPython 程序 1.1 Python 源程序的基本概念 Python 源程序就是一個特殊格式的文本文件&#xff0c;可以使用任意文本編輯軟件做 Python 的開發Python 程序的 文件擴展名 通常都是 .py1.2 演練步驟 在桌面下&#xff0c;新建 Python基礎1 目錄在 Python基礎1 目錄…

面試題-集合

1.JAVA 中數組和集合的區別 &#xff1f; &#xff08;1&#xff09;數組的長度是固定的&#xff0c;而集合長度是可以改變的。 &#xff08;2&#xff09;數組可以儲存基本數據類型和引用數據類型&#xff0c;而集合只能儲存引用數據類型&#xff08;也就是對象&#xff09;…

七牛云上傳視頻如何有效做到節省空間

在上傳視頻的時候&#xff0c;我們通常會保存到第三方【七牛云】平臺。不過大多數程序員在系統后臺上傳視頻后&#xff0c;一般都是保存到了本地&#xff0c;如果視頻非常多或者視頻容量特別大的情況下&#xff0c;那么我們的服務器遲早有一天會滿&#xff0c;為了節省空間&…

運算符的優先級總能起作用嗎?

有關運算符優先級的規則稍微有點復雜。在大多數情況下&#xff0c;這些規則確實是你所需要的&#xff0c;然而&#xff0c;有人也指出其中的一些規則本來是可以設計得更好的。讓我們快速地回顧一些有關內容&#xff1a;“運算符優先級”是這樣一些規則的集合——這些規則規定了…