(Hadoop3)完全分布式配置文件

hdfs

vi hadoop.env.sh

export JAVA_HOME=/opt/jdk1.8

export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

vi core.site.xml

<configuration>
 	<!-- 设置主节点 -->
        <property>
             <name>fs.defaultFS</name>
             <value>hdfs://master:8020</value>
        </property>
        <!-- 设置data存放路径 -->
        <property>
              <name>hadoop.data.dir</name>
              <value>/opt/data/hadoop/data</value>
         </property>
         <!-- 设置静态访问用户为root -->
        <property>
              <name>hadoop.http.staticuser.user</name>
              <value>root</value>
        </property>


        <!--兼容性配置 -->
        <!--配置superUser允许通过代理访问主机 -->
        <property>
              <name>hadoop.proxyuser.atguigu.hosts</name>
              <value>*</value>
        </property>
        <!--配置superUser允许通过代理的用户组 -->
        <property>
              <name>hadoop.proxyuser.atguigu.groups</name>
              <value>*</value>
        </property>
        <!--配置superUser允许通过代理的用户 -->
        <property>
              <name>hadoop.proxyuser.atguigu.users</name>
              <value>*</value>
        </property>
</configuration>

vi hdfs.site.xml

<configuration>
        <!-- 指定副本数 -->
        <property>
                <name>dfs.replication</name>
                <value>3</value>
        </property>

        <!-- 指定NameNode数据存储目录 -->
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file://${hadoop.data.dir}/name</value>
        </property>

        <!-- 指定DataNode数据存储目录 -->
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file://${hadoop.data.dir}/data</value>
        </property>

        <!-- 指定SecondaryNameNode数据存储目录 -->
        <property>
                <name>dfs.namenode.checkpoint.dir</name>
                <value>file://${hadoop.data.dir}/namesecondary</value>
        </property>

        <!-- 兼容 -->
        <property>
                <name>dfs.client.datanode-restart.timeout</name>
                <value>30s</value>
        </property>
        <!-- nn web 访问地址 -->
        <property>
                <name>dfs.namenode.http-address</name>
                <value>master:9870</value>
        </property>
		<!-- 2nn web 访问地址 -->
        <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>slave1:9868</value>
        </property>
</configuration>

yarn

vi yarn-site.xml

<configuration>
        <!-- 指定shuffle方式 -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>
        <!-- 指定ResourceManager地址 -->
        <property>
                <name>yarn.resourcemanager.hostname</name>
                <value>master</value>
        </property>
        <!-- 环境变继承 -->
        <property>
                <name>yarn.nodemanager.env-whitelist</name>
                <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
        </property>
        <!-- 取消虚拟内存限制 -->
        <property>
                <name>yarn.nodemanager.vmem-check-enabled</name>
                <value>false</value>
        </property>
</configuration>

vi mapred.site.xml

<configuration>
	<!-- 指定MapReduce运行在yarn上 -->
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
</configuration>

Hadoop端口号总结

  1. NameNode内部通信:8020
  2. NameNode web端:9870
  3. 2NN web端:9868
  4. ResourceManager web端:8088
  5. 历史服务器 web端:19888

mysql

安装

yum -y install libaio

在这里插入图片描述

初始化配置

  1. 查看 /etc/my.cnf 中datadir=/var/lib/mysql位置文件,将datadir=/var/lib/mysql存在文件删除rm -rf ./*
    在这里插入图片描述

  2. 初始化

mysqld --initialize --user=mysql
  1. 查看临时生成的root临时密码
cat /var/log/mysqld.log | grep password

在这里插入图片描述

  1. 启动mysql
systemctl start mysqld
systemctl status mysqld  #查看状态

注 若发生 ‘ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)’ 重启mysql服务

systemctl restart mysqld
  1. 连接mysql
mysql -uroot -p
Enter password: 密码
  1. 修改密码
set password = password('root');

mysql远程连接

  1. 在mysql数据库下

在这里插入图片描述

update user set host='%' where user='root';

在这里插入图片描述
刷新权限

flush privileges;

Hive配置安装

解压配置环境变量

export HIVE_HOME=/opt/hive3.1

export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin

source /etc/profile

在这里插入图片描述
或者改名mv log4j-slf4j-impl-2.10.0.jar log4j-slf4j-impl-2.10.0.jar.bak

将hive元数据配置到mysql

  1. 移动mysql驱动到hive/lib
    在这里插入图片描述
  2. 在hive/conf中创建hive-site.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
</configuration>

        <property>
                 <name>javax.jdo.option.ConnectionURL</name>
                 <value>jdbc:mysql://master:3306/metastore?useSSL=false</value>
        </property>
                <value>com.mysql.jdbc.Driver</value>
        </property>
        <property>
                <name>javax.jdo.option.ConnectionUserName</name>
                <value>root</value>        </property>
        <property>                <name>javax.jdo.option.ConnectionPassword</name>
                <value>root</value>
        </property>
         <property>
                <name>hive.metastore.warehoues.dir</name>
                <value>/user/hive/warehouse</value>
        </property>
         <property>
                <name>hive.metastore.schema.verification</name>
                <value>false</value>
        </property>
         <property>
                <name>hive.metastore.uris</name>
                <value>thrift://master:9083</value>        </property>
        <property>
                <name>hive.server2.thrift.port</name>
                <value>10000</value>
        </property>

        <property>
                <name>hive.server2.thrift.bind.host</name>
                <value>master</value>
        </property>
         <property>
                <name>hive.metastore.event.db.notification.api.auth</name>
                <value>false</value>
        </property>
</configuration>

初始化hive元数据库

  1. 登录mysql
  2. 创建metastore数据库
mysql -uroot-proot
create database metastore;
  1. 初始化
schematool -initSchema -dbType mysql -verbose
  1. 成功

在这里插入图片描述

启动

  1. 启动hadoop集群
start-all.sh
  1. 启动hive
hive --service metastore
打开新窗口
hive --service hiveserver2
打开新窗口
  1. 阻塞后 打开新连接jps
    在这里插入图片描述
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值