centos6環境下大數據組件單獨安裝配置

一、安裝虛擬機並配置靜態IP

一、配置網絡IPjava

vim /etc/sysconfig/network-scripts/ifcfg-eth0node

IPADDR=192.168.1.101—網絡ipmysql

GATEWAY=192.168.1.2—網關linux

DNS1=192.168.1.2—網關nginx

ONBOOT=yesc++

BOOTPROTO=staticweb

 

二、修改主機名正則表達式

vim /etc/sysconfig/network算法

 

三、配置IP映射sql

vim /etc/hosts

192.168.1.101 hadoop101

四、重啓,並ping通外網

 

二、配置網絡yum源

(1)      備份原鏡像文件,以避免出錯後能夠恢復

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

(2)      下載新的CentOS-Base.repo到/etc/yum.repos.d

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo

(3)運行yum makecache 生成緩存(必定要執行,否則等於沒有配)

yum clean all

yum makecache

 

三、安裝vim/scp/rsync/libaio/unzip/telnet/ntp/psmisc

yum -y install vim    

yum -y install openssh(scp基於ssh)

yum -y install openssh-clients

yum -y install rsync

yum -y install libaio

yum -y install unzip

yum -y install telnet

yum -y install ntp

yum -y install gcc-c++

 

 

四、關閉防火牆、建立一個非root用戶

一、關閉防火牆

$ chkconfig iptables off       --永久關閉

$ service iptables stop  --本次關閉

 

二、建立一個非root用戶

$ adduser hth

$ passwd hth        --修改密碼

$ vi /etc/sudoers   --給hth用戶賦予全部權限

root    ALL=(ALL)     ALL

hth   ALL=(ALL)     ALL

 

三、切換到hth用戶,在/opt下建立兩個文件夾

$ mkdir module

$ mkdir software

 

五、SSH免密登陸、克隆問題的解決

1、SSH免密登陸

ssh-keygen                        --在本機生成密鑰對

ssh-copy-id hadoop102     --把公鑰拷貝並添加到目標服務器的authorized-keys文件中

su -        :切換成root用戶,而且將環境一同轉換

2、克隆問題的處理

(1)直接修改  /etc/sysconfig/network-script/ifcfg-eth0

刪掉UUID  HWADDR(會自動生成)

修改靜態地址,不要衝突便可

(2)刪除或者修改文件均可以

rm -rf  /etc/udev/rules.d/70-persistent-net.rules

而後 reboot

(3)ping通外網

 

 

 

 

 

 

 

 

 

 

 

 

 

六、安裝JDK並分發

一、查看本機系統是否安裝了JDK並卸載

$ rpm -qa| grep -i java

若是有安裝JDK,卸載

$ rpm -e –nodeps 已安裝rpm包

 

二、安裝jdk

(1)將jdk安裝包上傳到/opt/software

(2)解壓到/opt/module $ tar -zxvf jdk-8u144-linux-x64.tar.gz -C /opt/module/

 

三、配置jdk環境變量

       $ vim /etc/profile

              ##JAVA_HOME

export JAVA_HOME=/opt/module/jdk1.8.0_144

export PATH=$PATH:$JAVA_HOME/bin

$ source /etc/profile    --讓修改後的文件生效

$ java -version     --測試安裝成功與否

 

 

七、安裝hadoop並分發

一、將hadoop安裝包上傳到/opt/software

二、解壓到/opt/module  $ tar -zxvf hadoop-2.7.2.tar.gz -C /opt/module/

三、配置hadoop環境變量

       $ vim /etc/profile

              ##HADOOP_HOME

export HADOOP_HOME=/opt/module/hadoop-2.7.2

export PATH=$PATH:$HADOOP_HOME/bin

export PATH=$PATH:$HADOOP_HOME/sbin

       $ source /etc/profile  --讓修改後的文件生效

       $ hadoop version         --測試

 

四、修改配置文件 /opt/module/hadoop-2.7.2/etc/hadoop/路徑下

hadoop-env.sh

mapred-env.sh                   export JAVA_HOME=/opt/module/jdk1.8.0_144

yarn-env.sh

core-site.xml

hdfs-site.xml

mapred-site.xml

yarn-site.xml

slaves

 

 

 

core-site.xml

<!-- 指定HDFS中NameNode的地址 -->

<property>

<name>fs.defaultFS</name>

<value>hdfs://hadoop102:9000</value>

</property>

slaves

hadoop101

hadoop102

hadoop103

hadoop104

hadoop105

<!-- 指定hadoop運行時產生文件的存儲目錄 -->

<property>

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

<value>/opt/module/hadoop-2.7.2/data/tmp</value>

</property>

 

 

hdfs-site.xml                                            

<!—副本數量 -->                                                                                                                          

<property>

<name>dfs.replication</name>

<value>3</value>

</property>

<!-- 指定HDFS中secondNameNode的地址 -->

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>hadoop104:50090</value>

</property>

 

 

mapred-site.xml

<!-- 指定mr運行在yarn上 -->

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

<!—配置歷史服務器->

<property>

<name>mapreduce.jobhistory.address</name>

<value>hadoop104:10020</value>

</property>

<property>

    <name>mapreduce.jobhistory.webapp.address</name>

    <value>hadoop104:19888</value>

<!-- 日誌彙集功能使能 -->

<property>

<name>yarn.log-aggregation-enable</name>

<value>true</value>

</property>

<!-- 日誌保留時間設置7天 -->

<property>

<name>yarn.log-aggregation.retain-seconds</name>

<value>604800</value>

</property>

</property>

 

 

yarn-site.xml

<!-- reducer獲取數據的方式 -->

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

<!-- 指定YARN的ResourceManager的地址 -->

<property>

<name>yarn.resourcemanager.hostname</name>

<value>hadoop103</value>

</property>

                                  

八、hadoop的停啓命令

bin/hdfs namenode -format      --格式化namenode

 

單節點:

sbin/hadoop-daemon.sh start/stop namenode

sbin/hadoop-daemon.sh start/stop datanode

sbin/yarn-daemon.sh start/stop resourcemanager

sbin/yarn-daemon.sh start/stop nodemanager

sbin/mr-jobhistory-daemon.sh start/stop historyserver     --歷史服務器

 

羣起:

sbin/start-dfs.sh

sbin/stop-dfs.sh

sbin/start-yarn.sh   

sbin/stop-yarn.sh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

九、配置時間同步(主從服務器切換到root進行操做)

一、檢查ntp服務是否正確安裝

$ rpm -qa | grep ntp

顯示以下:(代表正確安裝,不然安裝一下$ yum -y install ntp)

ntp-4.2.6p5-10.el6.centos.x86_64

fontpackages-filesystem-1.41-1.1.el6.noarch

ntpdate-4.2.6p5-10.el6.centos.x86_64

二、修改ntp配置文件

       $ vi /etc/ntp.conf

修改內容以下

a)修改1 (受權192.168.216.0網段上的全部機器能夠從這臺機器上查詢和同步時間)

#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap爲

restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

              b)修改2 (集羣在局域網中,不使用其餘的網絡時間)

 

server 0.centos.pool.ntp.org iburst

server 1.centos.pool.ntp.org iburst

server 2.centos.pool.ntp.org iburst

server 3.centos.pool.ntp.org iburst爲

#server 0.centos.pool.ntp.org iburst

#server 1.centos.pool.ntp.org iburst

#server 2.centos.pool.ntp.org iburst

#server 3.centos.pool.ntp.org iburst

 

              c)添加3 (當該節點丟失網絡鏈接,依然能夠做爲時間服務器爲集羣中的其餘節點提供時間同步)

server 127.127.1.0

fudge 127.127.1.0 stratum 10

三、修改/etc/sysconfig/ntpd 文件

$ vim /etc/sysconfig/ntpd

增長內容以下 SYNC_HWCLOCK=yes

四、從新啓動並設置開機自啓ntp服務

$ service ntpd status    systemctl status ntpd.service

$ service ntpd start/restart  systemctl start ntpd.service

$ chkconfig ntpd on     systemctl enable ntpd.service

五、在其餘機器配置10分鐘與時間服務器同步一次

$ crontab -e

              編寫腳本

              */10 * * * * /usr/sbin/ntpdate hadoop101

六、其它機器先手動同步一次時間

       $ ntpdate -u hadoop101

 

 

 

 

十、安裝zookeeper並分發

一、上傳安裝包到/opt/software

二、解壓到/opt/module

       $ tar -zxvf zookeeper-3.4.5.tar.gz -C /opt/module

三、進入安裝目錄/opt/module/zookeeper-3.4.5

       $ mkdir zkData

四、進入/opt/module/zookeeper-3.4.5/zkData

       $ touch myid(編輯myid給定id標識)

五、修改配置文件

       $ vim zoo.cfg

dataDir=/opt/module/zookeeper-3.4.5/zkData

server.2=hadoop102:2888:3888

server.3=hadoop103:2888:3888

server.4=hadoop104:2888:3888

六、zookeeper的啓停命令

       bin/zkServer.sh start    --啓動服務端

bin/zkServer.sh stop     --中止服務端

bin/zkServer.sh status --查看服務端啓動狀態

bin/zkCli.sh  --啓動客戶端

quit  --退出客戶端

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

十一、安裝mysql(切換到root)

一、查看本機系統是否安裝mysql並卸載

$ rpm -qa| grep -i mysql

二、卸載已經安裝的mysql rpm

       $ rpm -e --nodeps mysql-libs-5.1.73-7.el6.x86_64

三、上傳到/opt/software

       在當前路徑中解壓 $ unzip mysql-libs.zip

四、進入mysql-libs,修改解壓後文件的操做權限

       $ chmod u+x ./*

五、安裝服務端和客戶端(順序不能亂) (libaio包)

       $ rpm -ivh MySQL-server-5.6.24-1.el6.x86_64.rpm

       $ rpm -ivh MySQL-client-5.6.24-1.el6.x86_64.rpm

六、查看並啓動mysql

       $ service mysql status

       $ service mysql start

       $ cat /root/.mysql_secret    --查看隨機生成的登陸密碼

七、登陸並修改密碼

       $ mysql -uroot -pOEXaQuS8IWkG19Xs

       $ SET PASSWORD=PASSWORD('123456');

       $ exit;

八、從新登陸並修改user表

       $ mysql -uroot -p123456

       $ use mysql;

       $ update user set host='%' where host='localhost';

       $ delete from user where host in ('hadoop101', '127.0.0.1', '::1');

       $ flush privileges;

       $ exit;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

十二、安裝配置hive

(1)上傳安裝包到 /opt/software

(2)解壓     $ tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /opt/module/

(4)修改配置文件:$ cd /opt/module/hive/conf

hive-env.sh   hive-site.xml      hive-log4j.properties

(5)編輯hive-env.sh文件

       $ mv hive-env.sh.template hive-env.sh                                                

       $ vim hive-env.sh

export HADOOP_HOME=/opt/module/hadoop-2.7.2

export HIVE_CONF_DIR=/opt/module/hive/conf

(6)編輯hive-site.xml文件(新建或參考hive-default.xml.template)

       $ touch hive-site.xml

(注意,hive-site.xml手動建立,而且裏面的內容最好在Linux上編輯

現成的hive-site.xml配置文件在安裝配置文件裏面有)

     

<--把metastore元數據放到mysql上,配置鏈接mysql 的信息-->

    <property>

      <name>javax.jdo.option.connectionurl</name>

      <value>jdbc:mysql://hadoop102:3306/metastore?Createdatabaseifnotexist=true</value>

    </property>

    <property>

      <name>javax.jdo.option.connectiondrivername</name>

      <value>com.mysql.jdbc.driver</value>

    </property>

    <property>

      <name>javax.jdo.option.connectionusername</name>

      <value>root</value>

bin/hadoop fs -mkdir /tmp

bin/hadoop fs -mkdir -p /user/hive/warehouse

bin/hadoop fs -chmod g+w /tmp

bin/hadoop fs -chmod g+w /user/hive/warehouse

    </property>

    <property>

      <name>javax.jdo.option.connectionpassword</name>

      <value>123456</value>

    </property>

    <--配置hive在hdfs上的數據倉庫位置-->

<property>

<name>hive.metastore.warehouse.dir</name>

<value>/user/hive/warehouse</value> 注意這個目錄須要提早在hdfs上建立

</property>

<--配置 顯示當前數據庫,以及查詢表的頭信息配置-->

<property>

             <name>hive.cli.print.header</name>

             <value>true</value>

</property>

<property>

             <name>hive.cli.print.current.db</name>

             <value>true</value>

</property>

(7)修改log4j. properties

       (1)$ mv hive-log4j.properties.template hive-log4j.properties

       (2)$ vim hive-log4j.properties

cp mysql-connector-java-5.1.27-bin.jar /opt/module/hive/lib/    --記得要把mysql驅動導入到hive/lib

 

hive.log.dir=/opt/module/hive/logs

 

 

 

 

1三、安裝sqoop

一、上傳安裝包到/opt/software

二、解壓到/opt/module

$ tar -zxf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz -C /opt/modules/

三、修改配置文件

       $ mv sqoop-env-template.sh sqoop-env.sh

$ mv sqoop-site-template.xml sqoop-site.xml

四、$ vim sqoop-env.sh

       export HADOOP_COMMON_HOME=/opt/modules/hadoop-2.7.2

export HADOOP_MAPRED_HOME=/opt/modules/hadoop-2.7.2

export HIVE_HOME=/opt/modules/apache-hive-1.2.2-bin

export ZOOKEEPER_HOME=/opt/modules/zookeeper-3.4.5

export ZOOCFGDIR=/opt/modules/zookeeper-3.4.5

五、拷貝mysql驅動到sqoop/lib中

       $ cp -a mysql-connector-java-5.1.27-bin.jar /opt/modules/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/lib/

 

 

 

1四、Flume的安裝配置和實操

上傳並解壓便可,而後修改一個配置文件,安裝成功

flume-env.sh涉及修改項:

export JAVA_HOME=/home/admin/modules/jdk1.8.0_121

 

Flume實操:

(1)      進入flume/bin手動建立一個配置文件,如:flume-kafka.conf

(2)      在本身建立的配置文件中,書寫有關flume的各類配置,sources, channels, sink

(3)      執行flume(記住這個命令)

$ bin/flume-ng agent --conf conf/ --name a1 --conf-file job/flume-kafka.conf

 

 

 

 

 

 

 

 

1五、kafka的安裝配置

一、先安裝好zookeeper集羣並啓動

 

二、上傳安裝包到/opt/sodtware,並解壓到/opt/module

 

三、進入kafka根目錄,建立logs文件夾

       $ mkdir logs

 

四、修改配置文件 server.properties

       #broker的全局惟一編號,不能重複

broker.id=0

#是否容許刪除topic

delete.topic.enable=true

#kafka運行日誌存放的路徑

log.dirs=/opt/module/kafka/logs

#topic在當前broker上的分區個數

num.partitions=1

#配置鏈接Zookeeper集羣地址

zookeeper.connect=hadoop105:2181,hadoop106:2181,hadoop107:2181

 

五、分發到其它機器並修改broker.id

 

六、命令行操做kafka的命令

bin/kafka-server-start.sh config/server.properties &

bin/kafka-server-stop.sh stop

bin/kafka-topics.sh --zookeeper hadoop106:2181 --list

bin/kafka-topics.sh --zookeeper hadoop102:2181 --create --replication-factor 3 --partitions 1 --topic first

bin/kafka-topics.sh --zookeeper hadoop102:2181 --delete --topic first

bin/kafka-console-producer.sh --broker-list hadoop102:9092 --topic first

bin/kafka-console-consumer.sh --zookeeper hadoop102:2181 --from-beginning --topic first

bin/kafka-console-consumer.sh --zookeeper hadoop102:2181 --topic first --consumer.config config/consumer.properties

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1六、hbase的安裝和配置

一、首先確保JDK、hadoop、zookeeper正常安裝並啓動

 

二、上傳到/opt/sodtware,解壓到/opt/module

 

三、修改3個配置文件

       hbase-env.sh

       hbase-site.xml

若是使用的是JDK8以上版本,

則應在hbase-evn.sh中

移除「HBASE_MASTER_OPTS」和「HBASE_REGIONSERVER_OPTS」配置。

       regionservers

 

hbase-env.sh

export JAVA_HOME=/opt/module/jdk1.8.0_144

export HBASE_MANAGES_ZK=false

 

hbase-site.xml

<configuration>

    <property>    

        <name>hbase.rootdir</name>    

        <value>hdfs://hadoop105:9000/hbase</value>  

    </property>

 

    <property>  

        <name>hbase.cluster.distributed</name>

        <value>true</value>

    </property>

 

   <!-- 0.98後的新變更,以前版本沒有.port,默認端口爲60000 -->

    <property>

        <name>hbase.master.port</name>

        <value>16000</value>

    </property>

 

    <property>  

        <name>hbase.zookeeper.quorum</name>

        <value>hadoop105:2181,hadoop106:2181,hadoop107:2181</value>

    </property>

 

    <property>  

regionservers

hadoop105

hadoop106

hadoop107

 

        <name>hbase.zookeeper.property.dataDir</name>

     <value>/opt/module/zookeeper-3.4.10/zkData</value>

    </property>

</configuration>

 

 

四、替換hbase/lib目錄下的依賴jar, 因爲HBase須要依賴Hadoop,因此替換HBase的lib目錄下的jar包,以解決兼容問題,把hbase/lib目錄下的jar包替換當前安裝的hadoop相關的jar

(1)刪除原有的jar

$ rm -rf /opt/modules/hbase-1.3.1/lib/hadoop-*

$ rm -rf /opt/modules/hbase-1.3.1/lib/zookeeper-3.4.6.jar

(2)引入當前hadoop的依賴jar,zookeeper的依賴jar,涉及到的jar有:

 

hadoop-auth-2.7.2.jar

hadoop-client-2.7.2.jar(當心處理它)

hadoop-common-2.7.2.jar

hadoop-hdfs-2.7.2.jar

hadoop-mapreduce-client-app-2.7.2.jar

hadoop-mapreduce-client-common-2.7.2.jar

hadoop-mapreduce-client-core-2.7.2.jar

hadoop-mapreduce-client-jobclient-2.7.2.jar

hadoop-mapreduce-client-shuffle-2.7.2.jar

hadoop-yarn-api-2.7.2.jar

hadoop-yarn-client-2.7.2.jar

hadoop-yarn-common-2.7.2.jar

hadoop-yarn-server-common-2.7.2.jar

zookeeper-3.4.5.jar

 

 

五、將hadoop相關的配置文件core-site.xml和hdfs-site.xml軟鏈接或者直接拷貝到hbase/conf下

$ ln -s /opt/modules/hadoop-2.7.2/etc/hadoop/core-site.xml /opt/modules/hbase-1.3.1/conf/core-site.xml

$ ln -s /opt/modules/hadoop-2.7.2/etc/hadoop/hdfs-site.xml /opt/modules/hbase-1.3.1/conf/hdfs-site.xml

 

六、將整個配置好的hbase分發到其它服務器

 

七、hbase啓停命令

$ bin/hbase-daemon.sh start master

$ bin/hbase-daemon.sh start regionserver

$ bin/start-hbase.sh

$ bin/stop-hbase.sh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1四、oozie的安裝配置

一、機器安裝並配置好JDK、cdh5.3.6版本的hadoop、以及mysql

二、上傳oozie安裝包到/opt/software

三、解壓到/opt/module/cdh

       $ tar -zxf oozie-4.0.0-cdh5.3.6.tar.gz -C /opt/module/cdh

四、修改hadoop配置文件並分發到其它機器

core-site.xml

<!-- Oozie Server的Hostname -->

<property>

       <name>hadoop.proxyuser.atguigu.hosts</name>

       <value>*</value>

</property>

 

<!-- 容許被Oozie代理的用戶組 -->

<property>

       <name>hadoop.proxyuser. atguigu.groups</name>

      <value>*</value>

</property>

mapred-site.xml

<!-- 配置 MapReduce JobHistory Server 地址 ,默認端口10020 -->

<property>

    <name>mapreduce.jobhistory.address</name>

    <value>hadoop102:10020</value>

</property>

 

<!-- 配置 MapReduce JobHistory Server web ui 地址, 默認端口19888 -->

<property>

    <name>mapreduce.jobhistory.webapp.address</name>

    <value>hadoop102:19888</value>

</property>

yarn-site.xml

<!-- 任務歷史服務 -->

<property>

       <name>yarn.log.server.url</name>

       <value>http://hadoop102:19888/jobhistory/logs/</value>

</property>

五、在oozie根目錄下解壓hadooplibs(完成後Oozie目錄下會出現hadooplibs目錄)

$ tar -zxf oozie-hadooplibs-4.0.0-cdh5.3.6.tar.gz -C ../

六、在根目錄下建立文件夾libext,並把hadooplibs各類jar,mysql驅動,ext.zip放入其中

       $ mkdir libext

       $ cp -ra hadooplibs/hadooplib-2.5.0-cdh5.3.6.oozie-4.0.0-cdh5.3.6/* libext/

       $ cp -a /opt/module/hive/lib/mysql-connector-java-5.1.27-bin.jar libext/

       $ cp /opt/software/ext-2.2.zip libext/       --ext.zip要從本地上傳

七、修改oozie-site.xml配置文件

屬性:oozie.service.JPAService.jdbc.driver

屬性值:com.mysql.jdbc.Driver

解釋:JDBC的驅動

 

屬性:oozie.service.JPAService.jdbc.url

屬性值:jdbc:mysql://hadoop102:3306/oozie

解釋:oozie所需的數據庫地址

 

屬性:oozie.service.JPAService.jdbc.username

屬性值:root

解釋:數據庫用戶名

 

屬性:oozie.service.JPAService.jdbc.password

屬性值:123456

解釋:數據庫密碼

 

屬性:oozie.service.HadoopAccessorService.hadoop.configurations

屬性值:*=/opt/modules/cdh/hadoop-2.5.0-cdh5.3.6/etc/hadoop

解釋:讓Oozie引用Hadoop的配置文件

八、進入Mysql並建立oozie數據庫

       $ mysql -uroot -p123456

mysql> create database oozie;

九、初始化oozie三步曲

       (1)上傳Oozie目錄下的yarn.tar.gz文件到HDFS

$ bin/oozie-setup.sh sharelib create -fs hdfs://hadoop102:8020 -locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz

(2)建立oozie.sql文件

$ bin/oozie-setup.sh db create -run -sqlfile oozie.sql

       (3)打包項目,生成war包

$ bin/oozie-setup.sh prepare-war

十、啓動關閉oozie(要先啓動mysql和hadoop)

       $ bin/oozied.sh start/stop

十一、訪問oozie的web頁面,進行測試

       http://hadoop102:11000/oozie

 

 

 

slaves

hadoop105

hadoop106

hadoop107

1五、spark的安裝配置

一、安裝好JDK、hadoop

spark-env.sh

SPARK_MASTER_HOST=hadoop105

SPARK_MASTER_PORT=7077

 

二、上傳安裝包到linux,並解壓到指定目錄

三、進入conf目錄

       將slaves.template複製爲slaves

將spark-env.sh.template複製爲spark-env.sh

四、啓動測試

       sbin/start-all.sh

五、注意:

若是遇到 「JAVA_HOME not set」 異常,能夠在sbin目錄下的spark-config.sh 文件中加入以下配置:

export JAVA_HOME=XXXX

六、配置歷史服務器(實戰必定要配置)

(1)將spark-default.conf.template複製爲spark-default.conf

(2)修改spark-default.conf文件,開啓Log

(3)同時修改spark-env.sh文件,添加以下配置:

spark-defaults.conf

spark.eventLog.enabled  true

spark.eventLog.dir       hdfs://hadoop105:9000/directory

spark.eventLog.compress true

 

 

       spark-env.sh

export SPARK_HISTORY_OPTS="-Dspark.history.ui.port=4000

-Dspark.history.retainedApplications=3

-Dspark.history.fs.logDirectory=hdfs://hadoop105:9000/directory"

 

七、啓動進行測試(注意: HDFS上的目錄須要提早存在

       sbin/start-all.sh

       sbin/start-history-server.sh

 

八、若是遇到Hadoop HDFS的寫入權限問題:org.apache.hadoop.security.AccessControlException

解決方案: 在hdfs-site.xml中添加以下配置,關閉權限驗證

<property>
             <name>dfs.permissions</name>
             <value>false</value>
      </property>

spark-env.sh

(1)將SPARK_MASTER_HOST刪除

# SPARK_MASTER_HOST=hadoop105

(2)添加以下配置信息

export SPARK_DAEMON_JAVA_OPTS="

-Dspark.deploy.recoveryMode=ZOOKEEPER

-Dspark.deploy.zookeeper.url=hadoop105:2181,hadoop106:2181,hadoop107:2181

-Dspark.deploy.zookeeper.dir=/spark"

 

 

 

九、配置spark-master的高可用(實戰)

       (1)啓動zookeeper集羣

       (2)修改配置文件spark-env.sh

 

十、啓動測試

sbin/start-all.sh—active master

sbin/start-master.sh—standby master

 

十一、配置spark運行在yarn上

       (1)修改yarn-site.xml,並分發

       (2)修改Spark-env.sh 添加,讓Spark可以發現Hadoop配置文件

 

 

 

 

 

<!--是否啓動一個線程檢查每一個任務正使用的物理內存量,若是任務超出分配值,則直接將其殺掉,默認是true -->

        <property>

                <name>yarn.nodemanager.pmem-check-enabled</name>

                <value>false</value>

        </property>

<!--是否啓動一個線程檢查每一個任務正使用的虛擬內存量,若是任務超出分配值,則直接將其殺掉,默認是true -->

        <property>

                <name>yarn.nodemanager.vmem-check-enabled</name>

                <value>false</value>

        </property>

 

 

spark-env.sh

HADOOP_CONF_DIR=/home/bigdata/hadoop/hadoop-2.7.3/etc/hadoop

YARN_CONF_DIR=/home/bigdata/hadoop/hadoop-2.7.3/etc/hadoop

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1六、nginx的安裝

下載nginx:官方網站:http://nginx.org/    Nginx提供的源碼。

要求的安裝環境

一、須要安裝gcc的環境。yum install gcc-c++

二、第三方的開發包。

n  PCRE

       PCRE(Perl Compatible Regular Expressions)是一個Perl庫,包括 perl 兼容的正則表達式庫。nginx的http模塊使用pcre來解析正則表達式,因此須要在linux上安裝pcre庫。

yum install -y pcre pcre-devel

注:pcre-devel是使用pcre開發的一個二次開發庫。nginx也須要此庫。

n  zlib

       zlib庫提供了不少種壓縮和解壓縮的方式,nginx使用zlib對http包的內容進行gzip,因此須要在linux上安裝zlib庫。

yum install -y zlib zlib-devel

 

n  openssl

       OpenSSL 是一個強大的安全套接字層密碼庫,囊括主要的密碼算法、經常使用的密鑰和證書封裝管理功能及SSL協議,並提供豐富的應用程序供測試或其它目的使用。

       nginx不只支持http協議,還支持https(即在ssl協議上傳輸http),因此須要在linux安裝openssl庫。

yum install -y openssl openssl-devel

 

安裝:

把nginx的源碼包上傳到linux系統

解壓:tar zxvf nginx-1.10.2.tar.gz

進入解壓目錄:cd nginx-1.10.2

執行最後的安裝步驟:      ./configure && make && make install

 

啓動nginx:

進入目錄(這個是默認安裝目錄,記住它):

cd /usr/local/nginx/

./nginx

 

訪問nginx:默認端口80

 

查詢啓動狀態:ps -aux | grep nginx

 

關閉nginx:

./nginx -s stop

推薦使用:

./nginx -s quit

 

重啓nginx:

./nginx -s reload

 

 

 



3.啓動nginx報錯處理

(1)、查看nginx安裝的地址(whereis)

(2)、進入目錄啓動

    cd /usr/local/nginx/     

   /usr/local/nginx/sbin/nginx

通常這個時候會報錯,不要慌張!!!

錯誤信息:error while loading shared libraries:libpcre.so.1.......

解決方案:

[root@localhost nginx]# whereis libpcre.so.1
libpcre.so: /lib64/libpcre.so.0 /usr/local/lib/libpcre.so.1 /usr/local/lib/libpcre.so
[root@localhost nginx]# ln -s /usr/local/lib/libpcre.so.1 /lib64
[root@localhost nginx]# sbin/nginx 
[root@localhost nginx]# ps -aux | grep nginx
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
root      12007  0.0  0.0  20296   628 ?        Ss   13:28   0:00 nginx: master process sbin/nginx
nobody    12008  0.0  0.1  20716  1220 ?        S    13:28   0:00 nginx: worker process
root      12010  0.0  0.0 103244   836 pts/0    S+   13:29   0:00 grep nginx

4.測試安裝是否成功:

進入linux自帶的火狐瀏覽器,鍵入localhost,會跳出welcome to nginx!(切忌關閉防火牆)

service iptables stop(若是不關閉防火牆,可能會致使訪問失敗!)

over~~~

 

 

Linux下打包壓縮war、解壓war包和jar命令

解決

把project_a文件夾下的文件打包成project.war

1.      打包

jar -xvf project.war /project_a

 

-c  建立war包

-v  顯示過程信息

-f  指定 JAR 文件名,一般這個參數是必須的

-M  不產生全部項的清單(MANIFEST〕文件,此參數會忽略 -m 參數

-0  這個是阿拉伯數字,只打包不壓縮的意思

2.      解壓

jar -xvf project.war

相關文章
相關標籤/搜索