广东省第二届职业技能大赛大数据技术与应用模块A

广东省第二届职业技能大赛大数据技术与应用模块A,第1张

广东省第二届职业技能大赛大数据技术与应用模块A

文章目录
  • Hadoop完全分布式配置文件
    • 1、 core-site.xml 文件
    • 2、 hdfs-site.xml文件
    • 3、 yarn-site.xml 文件
    • 4、 mapred-site.xml 文件
    • 5、 slaves 文件
  • 解题思路
    • 修改主机的名字、免密服务、网络映射和防火墙设置
      • 1、修改用户名字
      • 2、免密服务
      • 3、防火墙设置
  • 安装hadoop生态文件
    • 1、解压
    • 2、配置环境变量
    • 3、更新环境变量
  • 配置文件设置
  • 启动hadoop准备
  • 开机的自启动
    • 1、添加hadoop服务
  • Mysql安装配置
    • 1、安装mysql
    • 2、做好环境配置
    • 3、查看密码
    • 4、登录mysql
    • 5、配置好hive需要用的设置
  • 单机hive
    • 1、解压
    • 2、环境配置
    • 3、测试启动
  • 集成hive
    • 1、配置hive连接mysql设置
    • 2、初始化hivemysql
    • 3、登录beeline,查看mysql数据表

Hadoop完全分布式配置文件

注:这里的版本hadoop为2.7.7,hive为2.3.4,mysql为5.7
(这里可以配置文件可以单独使用为伪分布)

管理员应该使用

etc/hadoop/hadoop-env.sh

和可选的

etc/hadoop/mapred-env.sh和etc/hadoop/yarn-env.sh脚本

来对 Hadoop 守护进程的进程环境进行站点特定的定制。

至少,

您必须指定JAVA_HOME以便在每个远程节点上正确定义它。

本节涉及要在给定配置文件中指定的重要参数

1、 core-site.xml 文件


    fs.defaultFS
    hdfs://master:8020



    hadoop.tmp.dir
    /hadoop/tmp



    io.file.buffer.size
    131072


2、 hdfs-site.xml文件


    dfs.namenode.secondary.http-address
    master:50090



    dfs.namenode.http-address
    master:50070



    dfs.namenode.name.dir
    /hadoop/name



    dfs.datanode.data.dir
    /hadoop/data



    dfs.replication
    3



    dfs.blocksize
    268435456



    dfs.namenode.handler.count
    100


3、 yarn-site.xml 文件


    yarn.log-aggregation-enable
    true



    yarn.resourcemanager.hostname
    master



    yarn.resourcemanager.scheduler.address
    master:8080



    yarn.resourcemanager.resource-tracker.address
    master:8081



    yarn.resourcemanager.webapp.address
    master:8088



    yarn.nodemanager.aux-services
    mapreduce_shuffle


4、 mapred-site.xml 文件


    mapreduce.framework.name
    yarn



    mapreduce.reduce.memory.mb
    3072



    mapreduce.reduce.shuffle.parallelcopies
    50



    mapreduce.jobhistory.address
    master:10020



    mapreduce.jobhistory.webapp.address
    master:19888


5、 slaves 文件
master
slave1
slave2
解题思路 修改主机的名字、免密服务、网络映射和防火墙设置 1、修改用户名字
[root@master ~]# vi /etc/hostname

删除内容后改为

你需要的名字(方便记忆),修改后重启机器

2、免密服务

1、生成密钥

[root@master ~]# ssh-keygen

第一次直接回车三次

其他情况具体分析

进入到 { ~/.ssh} 目录

[root@master ~]# cd ~/.ssh

2、拷贝公钥

[root@master .ssh]# cat id_rsa.pub >> authorized_keys
[root@master .ssh]# scp authorized_keys 主机名字@IP地址:~/.ssh

注:每一台机器都要输入生成密钥命令。第一台机器拷贝公钥后,发送到下一台,最后一台拷贝完公钥后,再把公钥分发所有的机器。

3、 网络映射

[root@master .ssh]# vi /etc/hosts

添加一下内容(在文本最下面,有多少个免密就写多少个)
伪分布就写localhost

IP地址 主机名字

3、防火墙设置

第一种:

禁用防火墙

[root@master ~]# systemctl stop firewalld
[root@master ~]# systemctl diable firewalld

第二种:

# 添加端口
[root@master ~]# firewall-cmd --add-port=10050/tcp --permanent
# (永久生效,没有此参数重启后失效)
# 重新载入防火墙
[root@master ~]# firewall-cmd --reload
# 查看端口是否开启
[root@master ~]# firewall-cmd --list-all
安装hadoop生态文件 1、解压

有什么需要的就解压什么

[root@master h3cu_2021]# tar xf hadoop-2.7.7.tar.gz -C /usr/local/src/
[root@master h3cu_2021]# tar xf jdk-8u144-linux-x64.tar.gz -C /usr/local/src/
2、配置环境变量
[root@master h3cu_2021]# vi /etc/profile

在文本最下面添加变量

export JAVA_HOME=/usr/local/src/java
export HADOOP_HOME=/usr/local/src/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:

保存退出

3、更新环境变量
[root@master h3cu_2021]# . /etc/profile
配置文件设置

根据上面的Hadoop配置文件添加内容

启动hadoop准备

格式化namenode

[root@master h3cu_2021]# hdfs namenode -format

启动hadoop

[root@master h3cu_2021]# start-all.sh

启动historyserver(这个可以看到历史任务)

[root@master h3cu_2021]# mr-jobhistory-daemon.sh start historyserver

查看节点

[root@master h3cu_2021]# jps

master:

slave1、slave2:

开机的自启动 1、添加hadoop服务
[root@master h3cu_2021]# vi /usr/lib/systemd/system/hadoop.service
[Unit]
Description=hadoop
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/src/hadoop/sbin/start-all.sh
ExecStop=/usr/local/src/hadoop/sbin/stop-all.sh
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[root@master system]# chmod +x hadoop.service # 添加权限
[root@master system]# systemctl start hadoop # 启动
[root@master system]# systemctl stop hadoop # 停止
[root@master system]# systemctl enable hadoop # 自启动
Mysql安装配置 1、安装mysql

这里基于rpm安装

[root@master mysql-5.7.18]# rpm -ivh *.rpm --nodeps --force
2、做好环境配置

启动后自动会初始化密码

[root@master mysql-5.7.18]# systemctl start mysqld

这里顺便添加自启动

[root@master mysql-5.7.18]# systemctl enable mysqld
3、查看密码
[root@master mysql-5.7.18]# grep 'temporary password' /var/log/mysqld.log
2021-12-20T13:02:34.360237Z 1 [Note] A temporary password is generated for root@localhost: lxBDI&H:u1qe
4、登录mysql
[root@master mysql-5.7.18]# mysql -uroot -p

输入查询到的密码

修改密码后才能正常使用

mysql> alter user 'root'@'localhost' identified by 'Mzj_311';
5、配置好hive需要用的设置

查看当前编码

mysql> show variables like 'character_set_database';       

创建用户

mysql> create user 'hive'@'localhost' identified by 'Hive_311'; 

创建数据库

mysql> create database contest charset=utf8;

赋予权限hive用户权限

mysql> grant all privileges on contest.* to 'hive'@'%' identified by 'Hive_311';

刷新权限,将以上 *** 作生效

mysql> flush privileges;
单机hive 1、解压
[root@master h3cu_2021]# tar xf apache-hive-2.3.9-bin.tar.gz -C /usr/local/src/
2、环境配置

设置环境变量

[root@master h3cu_2021]# vi /etc/profile

在最后添加下面内容

export HIVE_HOME=/usr/local/src/hive
export PATH=$PATH:$HIVE_HOME/bin:

刷新变量

[root@master h3cu_2021]# . /etc/profile

删除一个jline包(hadoop,这里有可能有一些版本的没有)

[root@master h3cu_2021]# rm -rf /usr/local/src/hadoop/share/hadoop/yarn/lib/
3、测试启动

初始化元数据

[root@master hive]# schematool -dbType derby -initSchema 

启动hive

[root@master hive]# hive
集成hive 1、配置hive连接mysql设置

直接新建修改

[root@master conf]# vi /usr/local/src/hive/conf/hive-site.xml





    javax.jdo.option.ConnectionURL  jdbc:mysql://localhost:3306/contestcreateDatabaseIfNotExist=true&serverTimezone=GMT&useSSL=false



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




    javax.jdo.option.ConnectionUserName
    hive



    javax.jdo.option.ConnectionPassword
    密码

                

这里可以把log4j打开(也可以不打开)

[root@master conf]# vi hive-log4j2.properties

2、初始化hivemysql

找到mysql连接jar包,复制到hive/lib目录下

[root@master h3cu_2021]# cp mysql-connector-java-5.1.47.jar /usr/local/src/hive/lib/

初始化mysql

[root@master conf]# schematool -initSchema -dbType mysql

3、登录beeline,查看mysql数据表

进入到hive目录下

[root@master conf]# hiveserver2 &

运行了hiveserver2,不要关闭,然后在另一个会话窗口打开,也可以后台运行

[root@master conf]# beeline

输入beeline后,在当前的beeline界面输入

!connect jdbc:mysql://localhost:3306

然后输入用户名

hive

在输入用户名的当前密码

Hive_311

然后就登录了mysql命令行

接下来就可以使用mysql命令了。

1]# cp mysql-connector-java-5.1.47.jar /usr/local/src/hive/lib/

初始化mysql

```shell
[root@master conf]# schematool -initSchema -dbType mysql

进入到hive目录下

[root@master conf]# hiveserver2 &

运行了hiveserver2,不要关闭,然后在另一个会话窗口打开,也可以后台运行

[root@master conf]# beeline

输入beeline后,在当前的beeline界面输入

!connect jdbc:mysql://localhost:3306

然后输入用户名

hive

在输入用户名的当前密码

Hive_311

然后就登录了mysql命令行

接下来就可以使用mysql命令了。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5679210.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-17
下一篇2022-12-17

发表评论

登录后才能评论

评论列表(0条)

    保存