centos6环境下大数据组件单独安装配置

1、安装虚拟机并配置静态IP

1、配置网络IP

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

IPADDR=192.168.1.101—网络ip

GATEWAY=192.168.1.2—网关

DNS1=192.168.1.2—网关

ONBOOT=yes

BOOTPROTO=static

 

2、修改主机名

vim /etc/sysconfig/network

 

3、配置IP映射

vim /etc/hosts

192.168.1.101 hadoop101

4、重启,并ping通外网

 

2、配置网络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

 

3、安装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++

 

 

4、关闭防火墙、创建一个非root用户

1、关闭防火墙

$ chkconfig iptables off       --永久关闭

$ service iptables stop  --本次关闭

 

2、创建一个非root用户

$ adduser hth

$ passwd hth        --修改密码

$ vi /etc/sudoers   --给hth用户赋予所有权限

root    ALL=(ALL)     ALL

hth   ALL=(ALL)     ALL

 

3、切换到hth用户,在/opt下创建两个文件夹

$ mkdir module

$ mkdir software

 

5、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通外网

 

 

 

 

 

 

 

 

 

 

 

 

 

6、安装JDK并分发

1、查看本机系统是否安装了JDK并卸载

$ rpm -qa| grep -i java

如果有安装JDK,卸载

$ rpm -e –nodeps 已安装rpm包

 

2、安装jdk

(1)将jdk安装包上传到/opt/software

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

 

3、配置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     --测试安装成功与否

 

 

7、安装hadoop并分发

1、将hadoop安装包上传到/opt/software

2、解压到/opt/module  $ tar -zxvf hadoop-2.7.2.tar.gz -C /opt/module/

3、配置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         --测试

 

4、修改配置文件 /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>

                                  

8、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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9、配置时间同步(主从服务器切换到root进行操作)

1、检查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

2、修改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

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

$ vim /etc/sysconfig/ntpd

增加内容如下 SYNC_HWCLOCK=yes

4、重新启动并设置开机自启ntp服务

$ service ntpd status    systemctl status ntpd.service

$ service ntpd start/restart  systemctl start ntpd.service

$ chkconfig ntpd on     systemctl enable ntpd.service

5、在其他机器配置10分钟与时间服务器同步一次

$ crontab -e

              编写脚本

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

6、其它机器先手动同步一次时间

       $ ntpdate -u hadoop101

 

 

 

 

10、安装zookeeper并分发

1、上传安装包到/opt/software

2、解压到/opt/module

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

3、进入安装目录/opt/module/zookeeper-3.4.5

       $ mkdir zkData

4、进入/opt/module/zookeeper-3.4.5/zkData

       $ touch myid(编辑myid给定id标识)

5、修改配置文件

       $ 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

6、zookeeper的启停命令

       bin/zkServer.sh start    --启动服务端

bin/zkServer.sh stop     --停止服务端

bin/zkServer.sh status --查看服务端启动状态

bin/zkCli.sh  --启动客户端

quit  --退出客户端

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11、安装mysql(切换到root)

1、查看本机系统是否安装mysql并卸载

$ rpm -qa| grep -i mysql

2、卸载已经安装的mysql rpm

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

3、上传到/opt/software

       在当前路径中解压 $ unzip mysql-libs.zip

4、进入mysql-libs,修改解压后文件的操作权限

       $ chmod u+x ./*

5、安装服务端和客户端(顺序不能乱) (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

6、查看并启动mysql

       $ service mysql status

       $ service mysql start

       $ cat /root/.mysql_secret    --查看随机生成的登录密码

7、登录并修改密码

       $ mysql -uroot -pOEXaQuS8IWkG19Xs

       $ SET PASSWORD=PASSWORD('123456');

       $ exit;

8、重新登录并修改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;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

12、安装配置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

 

 

 

 

13、安装sqoop

1、上传安装包到/opt/software

2、解压到/opt/module

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

3、修改配置文件

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

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

4、$ 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

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/

 

 

 

14、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

 

 

 

 

 

 

 

 

15、kafka的安装配置

1、先安装好zookeeper集群并启动

 

2、上传安装包到/opt/sodtware,并解压到/opt/module

 

3、进入kafka根目录,创建logs文件夹

       $ mkdir logs

 

4、修改配置文件 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

 

5、分发到其它机器并修改broker.id

 

6、命令行操作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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16、hbase的安装和配置

1、首先确保JDK、hadoop、zookeeper正常安装并启动

 

2、上传到/opt/sodtware,解压到/opt/module

 

3、修改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>

 

 

4、替换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

 

 

5、将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

 

6、将整个配置好的hbase分发到其它服务器

 

7、hbase启停命令

$ bin/hbase-daemon.sh start master

$ bin/hbase-daemon.sh start regionserver

$ bin/start-hbase.sh

$ bin/stop-hbase.sh

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

14、oozie的安装配置

1、机器安装并配置好JDK、cdh5.3.6版本的hadoop、以及mysql

2、上传oozie安装包到/opt/software

3、解压到/opt/module/cdh

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

4、修改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>

5、在oozie根目录下解压hadooplibs(完成后Oozie目录下会出现hadooplibs目录)

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

6、在根目录下创建文件夹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要从本地上传

7、修改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的配置文件

8、进入Mysql并创建oozie数据库

       $ mysql -uroot -p123456

mysql> create database oozie;

9、初始化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

10、启动关闭oozie(要先启动mysql和hadoop)

       $ bin/oozied.sh start/stop

11、访问oozie的web页面,进行测试

       http://hadoop102:11000/oozie

 

 

 

slaves

hadoop105

hadoop106

hadoop107

15、spark的安装配置

1、安装好JDK、hadoop

spark-env.sh

SPARK_MASTER_HOST=hadoop105

SPARK_MASTER_PORT=7077

 

2、上传安装包到linux,并解压到指定目录

3、进入conf目录

       将slaves.template复制为slaves

将spark-env.sh.template复制为spark-env.sh

4、启动测试

       sbin/start-all.sh

5、注意:

如果遇到 “JAVA_HOME not set” 异常,可以在sbin目录下的spark-config.sh 文件中加入如下配置:

export JAVA_HOME=XXXX

6、配置历史服务器(实战一定要配置)

(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"

 

7、启动进行测试(注意: HDFS上的目录需要提前存在

       sbin/start-all.sh

       sbin/start-history-server.sh

 

8、如果遇到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"

 

 

 

9、配置spark-master的高可用(实战)

       (1)启动zookeeper集群

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

 

10、启动测试

sbin/start-all.sh—active master

sbin/start-master.sh—standby master

 

11、配置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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

16、nginx的安装

下载nginx:官方网站:http://nginx.org/    Nginx提供的源码。

要求的安装环境

1、需要安装gcc的环境。yum install gcc-c++

2、第三方的开发包。

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

 

posted @ 2018-04-08 23:28  谦如尘埃风过隙  阅读(260)  评论(0编辑  收藏  举报