栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

dajian

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

dajian

文章目录
  • 搭建步骤
    • 基础环境配置
    • 免密配置
    • JDK配置
    • JAVA
    • Zookeeper安装配置
    • Hadoop配置
    • Hive安装配置
    • hql 语句
    • Spark安装配置


搭建步骤
基础环境配置

三台机器主机名修改:(无需重启生效,重新连接即可)

hostnamectl set-hostname master
hostnamectl set-hostname slave1
hostnamectl set-hostname slave2

三台机器防火墙关闭:

systemctl stop firewalld.service

IP映射:

vim /etc/hosts
内网ip1 master
内网ip2 slave1
内网ip3 slave2

三台机器时区更改:

tzselect 5911

三台机器ntp服务下载:

yum install -y ntp

master作为ntp服务器,修改ntp配置文件。(master上执行)

vim /etc/ntp.conf
server 127.127.1.0
fudge 127.127.1.0	stratum 10

master中重启ntp服务

systemctl restart ntpd.service

slave1、slave2同步:

ntpdate master

比赛中必须将如下信息添加至环境变量中并且生效(三台机器)

vim /etc/profile
TZ='Asia/Shanghai'; export TZ
保存退出
source /etc/profile

slave1、slave2从节点在早十晚五时间段每隔半个小时同步一次主节点时间(24小时制、用户root任务调度crontab

crontab -e
添加如下:
*/30 10-17 * * *./ntpdate master

免密配置
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
ssh-copy-id localhost

master:

cat id_rsa.pub >> authorized_keys
(注意在.ssh/路径下操作。查看一下authorized_keys,如果authorized_keys中有密钥信息,就不用追加了)
ssh master
exit

slave1、slave2:

scp master:~/.ssh/id_rsa.pub ~/.ssh/master_rsa.pub
cat master_rsa.pub >> authorized_keys

master:

ssh slave1
ssh slave2

JDK配置
mkdir -p /usr/java
tar -zxvf /usr/package/jdk-8u171-linux-x64.tar.gz -C /usr/java/

vim /etc/profile
source /etc/profile
JAVA
export JAVA_HOME=/usr/java/jdk1.8.0_171
export CLASSPATH=$JAVA_HOME/lib/
export PATH=$PATH:$JAVA_HOME/bin
export PATH JAVA_HOME CLASSPATH
保存退出
source /etc/profile

scp -r /usr/java/ slave1:/usr/
scp -r /usr/java/ slave2:/usr/

从节点配置环境变量并且生效。


Zookeeper安装配置
mkdir -p /usr/zookeeper
tar -zxvf /usr/package/zookeeper-3.4.10.tar.gz -C /usr/zookeeper/

vim /etc/hosts
192.168.57.110 master master.root
192.168.57.111 slave1 slave1.root
192.168.57.112 slave2 slave2.root

进入配置文件目录conf:

zoo.cfg:

cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
## 修改如下内容
dataDir=/usr/zookeeper/zookeeper-3.4.10/zkdata
## 添加如下内容
dataLogDir=/usr/zookeeper/zookeeper-3.4.10/zkdatalog
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

myid:

进入主目录
mkdir zkdata
mkdir zkdatalog
vim zkdata/myid
1
保存推出

scp -r /usr/zookeeper/ root@slave1:/usr/
scp -r /usr/zookeeper/ root@slave2:/usr/
slave1修改myid为2
slave2修改myid为3

三台机器配置环境变量:

vim /etc/profile
## ZOOKEEPER
export ZOOKEEPER_HOME=/usr/zookeeper/zookeeper-3.4.10 
PATH=$PATH:$ZOOKEEPER_HOME/bin
source /etc/profile

三台机器启动zookeeper:

zkServer.sh start
zkServer.sh status

Hadoop配置
mkdir -p /usr/hadoop
tar -zxvf /usr/package/hadoop-2.7.3.tar.gz -C /usr/hadoop/

三台机器配置环境变量:

vim /etc/profile
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3
export CLASSPATH=$CLASSPATH:$HADOOP_HOME/lib
export PATH=$PATH:$HADOOP_HOME/bin
source /etc/profile

进入配置文件目录 主目录/etc/hadoop

hadoop-env.sh:

export JAVA_HOME=/usr/java/jdk1.8.0_171

core-site.xml:


	
		fs.default.name
		hdfs://master:9000
	
	
		hadoop.tmp.dir
		/usr/hadoop/hadoop-2.7.3/hdfs/tmp
		A base for other temporary directories.
	
	
		io.file.buffer.size
		131072
	
	
		fs.checkpoint.period
		60
	
	
		fs.checkpoint.size
		67108864
	

yarn-site.xml:


	
		yarn.resourcemanager.address
		master:18040
	
	
		yarn.resourcemanager.scheduler.address  
		master:18030
	
	
		yarn.resourcemanager.webapp.address
		master:18088
	
	
		yarn.resourcemanager.resource-tracker.address
		master:18025
	
	
		yarn.resourcemanager.admin.address
		master:18141
	
	
		yarn.resourcemanager.aux-services
		mapreduce_shuffle
	
	
		yarn.nodemanager.aux-services
		mapreduce_shuffle
	
	
		yarn.nodemanager.auxservices.mapreduce.shuffle.class
		org.apache.hadoop.mapred.ShuffleHandler
	

yarn-en.sh:

export JAVA_HOME=/usr/java/jdk1.8.0_171

slaves:

vim slaves
slave1
slave2

master:

vim master
master

hdfs-site.xml:


	
		dfs.replication
		2
	
	
		dfs.namenode.name.dir
		file:/usr/hadoop/hadoop-2.7.3/hdfs/name
		true
	
	
		dfs.datanode.data.dir
		file:/usr/hadoop/hadoop-2.7.3/hdfs/data
		true
	
	
		dfs.namenode.secondary.http-address
		master:9001
	
	
		dfs.webhdfs.enabled
		true
	
	
		dfs.permissions
		false
	

mapred-site.xml:


	
		mapreduce.framework.name
		yarn
	



scp -r /usr/hadoop/ root@slave1:/usr/
scp -r /usr/hadoop/ root@slave2:/usr/

sourc /etc/profile

验证,待前面步骤全部验证成功后再格式化启动

hadoop namenode -format
sbin/start-all.sh

Hive安装配置

slave2 启动mysql服务,重置密码:

systemctl start mysqld.service
grep "temporary password" /var/log/mysqld.log    查看初始密码
mysql -uroot -p
set global validate_password_policy=0;
set global validate_password_length=4;
alter user 'root'@'localhost' identified by '123456';
q	
mysql -uroot -p123456
create user 'root'@'%' identified by '123456';
grant all privileges on *.* to 'root'@'%' withgrant option;
flush privileges;

解压安装 master、slave1:

mkdir -p /usr/hive
tar -zxvf /usr/package/apache-hive-2.1.1-bin.tar.gz -C /usr/hive

master、slave1设置HIVE系统环境变量($HIVE_HOME):在配置文件目录下

vim /etc/profile
## HIVE
export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile

master、slave1设置HIVE运行环境:

cp hive-env.sh.template hive-env.sh
vim hive-env.sh
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3
export HIVE_CONF_DIR=/usr/hive/apache-hive-2.1.1-bin/conf
export HIVE_AUX_JARS_PATH=/usr/hive/apache-hive-2.1.1-bin/lib
保存退出

解决jline的版本冲突 操作环境: master、slave1:

cp /usr/hive/apache-hive-2.1.1-bin/lib/jline-2.12.jar /usr/hadoop/hadoop-2.7.3/share/hadoop/yarn/lib/

slave1驱动拷贝(依赖包存放于/usr/package/):

cp /usr/package/mysql-connector-java-5.1.47-bin.jar /usr/hive/apache-hive-2.1.1-bin/lib/

slave1 配置 hive-site.xml 文件:




	hive.metastore.warehouse.dir
	/user/hive_remote/warehouse

	

	javax.jdo.option.ConnectionURL
		jdbc:mysql://slave2:3306/hive?createDatabaseIfNotExist=true        
		

	

	javax.jdo.option.ConnectionDriverName
	com.mysql.jdbc.Driver

	

	javax.jdo.option.ConnectionUserName
	root

	

	javax.jdo.option.ConnectionPassword
	123456


	hive.metastore.schema.verification
	false


	datanucleus.schema.autoCreateAll
	true


master 配置 hive-site.xml 文件:




	hive.metastore.warehouse.dir
	/user/hive_remote/warehouse



	hive.metastore.local
	false



	hive.metastore.uris
thrift://slave1:9083          



初始化数据库,启动metastore服务,开启客户端操作环境: slave1、master
解决:(slave1)

启动:

bin/hive --service metastore

先查看是否有连接数据库的权限,没有的话给权限
查看是否已经有该数据库,有的话删除
将hive目录下的 metastore_db删除
重新初始化 bin/schematool -dbType mysql -initSchema
开启slave1 的metastore: bin/hive --service metastore
hive服务器不需要初始化,可以直接启动客户端 bin/hive


hql 语句
create external table person(age double, workclass string, fnlwgt string, edu string, edu_num double, marital_status string, occupation string, relationship string, race string, sex string, gain string, loss string, hours double, native string, income string) row format delimited fields terminated by ',';

load data local inpath '/root/college/person.csv' into table person;
insert overwrite local directory '/root/person00' row format delimited fields terminated by ',' select count(*) from person;
insert overwrite local directory '/root/person03' row format delimited fields terminated by ',' select round(avg(age)) from person;
insert overwrite local directory '/root/person04' row format delimited fields terminated by ',' select count(*) from person where age between 35 and 40 and marital_status == 'Never-married';
insert overwrite local directory '/root/person05' row format delimited fields terminated by ',' select count(*) from person where hours between 20 and 30 and occupation == 'Tech-support';
insert overwrite local directory '/root/person06' row format delimited fields terminated by ',' select * from(select count(*) as s from person group by race) w order by w.s desc;
select * from(select count(*) as s from person group by race) w order by w.s desc;
select count(*) x from person group by race having order by x desc;

create table student(Id Int, Name String, Age Int, Sex string) row format delimited fields terminated by ',';
alter table student add columns (address string);

Spark安装配置

scala安装

mkdir -p /usr/scala
tar -zxvf 压缩包 -C /usr/scala

vim /etc/profile
export SCALA_HOME=/usr/scala/scala-2.11.12
export PATH=$SCALA_HOME/bin:$PATH
保存退出
source /etc/profile

scala -version

scp -r /usr/scala root@slave1:/usr/
scp -r /usr/scala root@slave2:/usr/
配置环境变量

mkdir -p /usr/spark
tar -zxvf 压缩包 -C /usr/spark

进入配置文件目录

spark-env.sh:

cp spark-env.sh.template spark-env.sh
vim spark-env.sh
	export SPARK_MASTER_IP=master
	export SCALA_HOME=/usr/scala/scala-2.11.12
	export SPARK_WORKER_MEMORY=8g
	export JAVA_HOME=/usr/java/jdk1.8.0_171
	export HADOOP_HOME=/usr/hadoop/hadoop-2.7.3
	export HADOOP_CONF_DIR=/usr/hadoop/hadoop-2.7.3/etc/Hadoop

slaves:

cp slaves.template.template slaves
vim slaves
	slave1
	slave2

vim /etc/profile
export SPARK_HOME=/usr/spark/spark-2.4.0-bin-hadoop2.7
export PATH=$SPARK_HOME/bin:$PATH
source /etc/profile

scp -r /usr/spark root@slave1:/usr/
scp -r /usr/spark root@slave2:/usr/

从节点配置环境变量并且生效。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/271005.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号