Hadoop完全分布式搭建以及部分组件部署

1.Hadoop完全分布式搭建
把所有需要的安装包通过xftp上传到虚拟机的指定目录存放
tar -zxvf jdk… -C /usr
vi /etc/profile
配置环境变量
export JAVA_HOME=/usr/project/jdk1.8.0_171
export CLASSPATH=.: J A V A H O M E / l i b JAVA_HOME/lib JAVAHOME/libJAVA_HOME/jre/lib: C L A S S P A T H P A T H = CLASSPATH PATH= CLASSPATHPATH=JAVA_HOME/bin: J A V A H O M E / j r e / b i n : JAVA_HOME/jre/bin: JAVAHOME/jre/bin:PATH
验证jdk:java -version
ssh免密
生成密钥:ssh-keygen -t rsa
发送:ssh-copy-id -i .ssh/id_rsa.pub 主机名
验证:ssh 主机名

修改hosts文件配置IP与主机名映射关系

安装hadoop
解压安装:tar -zxvf hadoop -C /usr/
配置环境变量
export HADOOP_HOME=/usr/project/hadoop-2.7.3
export PATH= H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin:$PATH
创建hadoop相关目录 mkdir
编辑core.site.xml文件


fs.defaultFS
hdfs://master:9000


io.file.buffer.size
131072


hadoop.tmp.dir
file:/var/hadoop/tmp

hdfs-site.xml文件

dfs.namenode.name.dir file:/var/hadoop/namenode dfs.namenode.data.dir file:/var/hadoop/disk1 dfs.namenode.data.dir file:/var/hadoop/disk2 dfs.replication 3

yarn-site.xml文件


yarn.resourcemanager.address
master:8032


yarn.resourcemanager.scheduler.address
master:8030


yarn.resouremanager.resourcetracker.address
master:8031


yarn.resourcemanager.admin.address
master:8033


yarn.resourcemanager.webapp.address
master:8088


yarn.nodemanager.aux-services
mapreduce_shuffle


yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler

mapred-site.xml文件


mapreduce.framework.name
yarn


mapreduce.jobhistory.address
master:10020


mapreduce.jobhistory.webapp.address
master:19888

修改slaves文件:编写三台主机名
master
slave1
slave2
修改hadoop-env.sh环境变量使其JDK文件生效
export JAVA_HOME=/usr/project/jdk1.8.0_171
将配置好的jdk、hadoop发送到slave服务器
scp -r /路径/ slave1:/路径
并配置环境变量
master首次启动需要格式化:hadoop namenode -format
注意:关于重复格式化后的解决问题

路径:/var/hadoop/tmp/dfs/data/current

最后启动所有服务:start-all.sh
登陆web的HDFS管理界面验证安装结果
http://master:50070
登陆web的RM管理界面验证安装结果
http://master:8088

Hbase组件部署(slave)

解压安装配置环境变量,环境变量看root用户需求
tar -zxvf
vi ~/.bashrc
export PATH=$PATH:/usr/project/hadoop/sbin:/usr/project/hadoop/bin:/usr/project/hbase/bin
修改配置文件hbase-env.sh
export JAVA-HOME=/usr/project/jdk1.8.0_171
export HABSE_CLASSPATH=/usr/project/hadoop/conf
export HBASE_MANAGES_ZK=true
修改配置文件hbase-site.xml


hbase.rootdir
hdfs://master:9000/hbase


hbase.cluster.distributed
true

验证是否安装成功
jps查看进程
用hbase shell 访问
bin/hbase shell
查看hbase版本信息
hbase version
启动hbase:start-hbase.sh
web访问:http://master:16010

zookeeper搭建
解压安装:tar -zxvf
配置环境变量
export ZOOKEEPER_HOME=/usr/project/zookeeper-3.4.5
PATH= P A T H : PATH: PATH:ZOOKEEPER_HOME/bin
创建zkdata文件夹和zkdatalog文件夹
修改配置文件zoo.cfg
修改加入刚创建的文件夹路径

dataDir=/usr/project/zookeeper-3.4.5/zkdata
dataLogDir=/usr/project/zookeeper-3.4.5/zkdatalog

server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

在zkdata目录下
vim myid
写入对应的端口ID123
发送到其他服务器

启动服务:bin/zkServer.sh start
查看状态:bin/zkServer.sh status
查看zookeeper版本:echo stat | nc localhost 2181

kafka单机版部署

解压安装:tar -zxvf 重命名:mv
配置环境变量
export KAFKA_HOME=/usr/project/kafka
PATH= P A T H : PATH: PATH:KAFKA_HOME/bin
修改配置文件config目录下的
server.properties
设置如下参数
broker.id=2 对应myid值
log.dirs=/usr/project/kafka/logs #暂存数据目录
zookeeper.connect=slave1:2181 #改成对应的主机名

启动测试:
bin/kafka-server-start.sh -daemon config/server.properties

命令操作
测试创建topic
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic name

通过list查看创建的topic
./kafka-topics.sh –list –zookeeper localhost:2181

生产消息测试
./kafka-console-producer.sh --broker-list localhost:9092 --topic test
消费消息测试
./kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

flume安装搭建
解压安装:tar -zxvf
修改配置文件flume-env.sh
加入配置jdk的环境变量:
export JAVA_HOME=/usr/project/jdk1.8.0_171
配置环境变量:
export FLUME_HOME=/usr/project/flume
export PATH= P A T H : PATH: PATH:FLUME_HOME/bin
查看版本:flume-ng version

修改flume-env.sh
export JAVA_HOME=/usr/project/jdk1.8.0_171
flume安装完成

mysql安装搭建

1、配置源下载mysql
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
2、repo的安装
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
执行完成后会在/etc/yum.repos.d/目录下生成两个文件
mysql-community.repo
mysql-community-source.repo
3、使用yum命令安装y
注意:必须进入到/etc/yum.repo.d/目录后再执行
安装:yum install mysql-server
4、启动mysql
systemctl start mysqld
5、获取安装时的临时密码(第一次登陆的时候需要)在/etc/yum.repos.d/目录下执行
grep ‘temporary password’ /var/log/mysqld.log
注意:如果没有临时密码,则删除原来安装的mysql残留的数据
rm -rf /var/lib/mysql
再重新启动mysql:systemctl start mysqld
6、登陆mysql:mysql -uroot -p 密码
注意:如果登陆失败,修改配置文件跳过登陆
vim /etc/my.cnf
在mysqld后面任意一行添加“ skip-grant-tables ”跳过密码验证

重启mysql

7、登陆成功后修改密码
注意:这里会进行密码强度校验,默认为4
密码设置:
设置密码强度为低级:set global validate_password_policy=0;
设置密码长度:set global validate_password_length=4;
修改本地密码:alter user ‘root’@‘localhost’ identified by ‘123456’;
远程登录:
以新密码登陆MySQL:mysql -uroot -p123456
创建用户:create user ‘root’@’%’ identified by ‘123456’;
允许远程连接:grant all privileges on . to ‘root’@’%’ with grant option;
刷新权限:flush privileges;

关于mysql密码策略相关参数
1)、validate_password_length 固定密码的总长度;
2)、validate_password_dictionary_file 指定密码验证的文件路径;
3)、validate_password_mixed_case_count 整个密码中至少要包含大/小写字母的总个数;
4)、validate_password_number_count 整个密码中至少要包含阿拉伯数字的个数;
5)、validate_password_policy 指定密码的强度验证等级,默认为 MEDIUM;
关于 validate_password_policy 的取值:
LOW:只验证长度;
1/MEDIUM:验证长度、数字、大小写、特殊字符;
2/STRONG:验证长度、数字、大小写、特殊字符、字典文件;
6/validate_password_special_char_count 整个密码中至少要包含特殊字符的个数;
关于设置mysql字符集
mysql查询字符集:show variables like ‘char%’
修改文件my.cnf
在[mysqld]上面加入:
[client]
default-character-set=utf8
在[mysqld]下面加入:
character-set-server=utf8

hive组件部署
tar -zxvf
如果名字过长则重命名:mv /usr/project/hive
配置环境变量
export HIVE_HOME=/usr/project/hive
export PATH= P A T H : PATH: PATH:HIVE_HOME/bin
解决版本冲突和jar包依赖问题
将hive的lib包中的jline jar包拷贝到hadoop的lib中
将mysql的驱动包拷贝到hive的lib目录下
删除/usr/project/hadoop-2.6.0/share/hadoop/yarn/lib/jline-0.9.94.jar这个文件

修改配置文件hive-env.sh,没有此文件就拷贝
修改HADOOP_HOME环境变量
HADOOP_HOME=/usr/project/hadoop-2.7.3
export HIVE_CONF_DIR=/usr/project/hive/conf

修改hive-site.xml文件

hive.metastore.warehouse.dir /user/hive/warehouse javax.jdo.option.ConnectionURL jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&useSSL=false 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 初始化数据库:schematool -initSchema -dbType mysql 启动hive:hive

sqoop组件部署

解压安装:tar -zxvf
重命名:mv
环境变量:
export SQOOP_HOME=/
export PATH= P A T H : PATH: PATH:SQOOP_HOME/bin
修改配置文件:sqoop-env.sh
根据自己安装的组件加入环境变量的路径
export HADOOP_COMMON_HOME=/usr/project/hadoop-2.7.3
export HADOOP_MAPRED_HOME=/usr/project/hadoop-2.7.3

将mysql的驱动包上传到sqoop的lib目录下

sqoop的相关命令
sqoop help
使用sqoop查询mysql中的数据库
sqoop list-databases
–connect jdbc:mysql://localhost:3306
–username root
–password 123456

scala安装

解压安装:tar -zxvf
重命名:mv
配置环境变量
export SCALA_HOME=/usr/project/scala
export PATH= S C A L A H O M E / b i n : SCALA_HOME/bin: SCALAHOME/bin:PATH
检查版本:scala -version

spark安装
解压安装:tar -zxvf
配置环境变量:
export SPARK_HOME=/usr/project/spark
export PATH= S P A R K H O M E / b i n : SPARK_HOME/bin: SPARKHOME/bin:PATH

修改配置文件spark-env.sh

export JAVA_HOME=/usr/project/jdk1.8.0_171
export HADOOP_HOME=/usr/project/hadoop-2.7.3
export SPARK_MASTER_HOST=172.16.11.20
export SPARK_MASTER_PORT=7077

启动spark:sbin/start-all.sh
测试:spark-shell
进入web界面:master:8080

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值