5. 修改 hadoop 的核心配置文件
5.1 修改 hadoop-env.sh ? mapred-env.sh ? yarn-env.sh ?
vim hadoop-env.sh ?
export JAVA_HOME=/usr/local/jdk
5.2 修改 core-site.xml?
<property>
?? ??? ??? ?<name>fs.defaultFS</name>
?? ??? ??? ?<value>hdfs://master:9000</value>
?? ??? ?</property>
?? ? ? ?<property>
?? ??? ??? ?<name>hadoop.tmp.dir</name>
?? ??? ??? ?<value>/usr/local/src/hadoop/data_tmp</value>
?? ??? ?</property>
复制代码
5.3 修改 hdfs-site.xml?
??
<property>
?? ??? ??? ?<name>dfs.namenode.secondary.http-address</name>
?? ??? ??? ?<value>master:50090</value>
?? ??? ?</property>
复制代码
5.4 修改 mapred-site.xml?
<property>
?? ??? ??? ?<name>mapreduce.framework.name</name>
?? ??? ??? ?<value>yarn</value>
?? ??? ?</property>
复制代码
5.5 修改 yarn-site.xml?
<property>
?? ??? ??? ?<name>yarn.nodemanager.aux-services</name>
?? ??? ??? ?<value>mapreduce_shuffle</value>
?? ??? ?</property>
复制代码
5.6 修改 slave
slave1
slave2
6、远程分发
7、格式化
hdfs namenode -format
8、启动 hdfs 和 yarn
start-dfs.sh
start-yarn.sh
六、安装 Hive
#1、安装 Hive 的元数据库 MySQL
1、下载 mysql 源安装包
sudo wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
2、安装 mysql 源
sudo yum localinstall mysql57-community-release-el7-8.noarch.rpm
3、安装 mysql
sudo yum install mysql-community-server
4、启动 MySQL 服务
sudo systemctl start mysqld
5、查看 mysql 初始密码
[ec2-user@master ~]$ sudo grep "password" /var/log/mysqld.log
2021-03-19T07:56:41.030922Z 1 [Note] A temporary password is generated for root@localhost: v=OKXu0laSo;
复制代码
v=OKXu0laSo;是密码
6、修改 mysql 登陆密码
把初始密码复制下来,在进入 mysql 需要输入密码时粘贴下来,回车,就可以进入 MySQL 命令行。
进入命令行
sudo mysql -uroot -p
修改密码,设置 MySQL 登陆密码为 1234
新密码设置的时候如果设置的过于简单会报错
修改密码规则:
在 mysql 命令行中输入
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
复制代码
重新设置密码
mysql> set password for 'root'@'localhost'=password('1234');
Query OK, 0 rows affected, 1 warning (0.00 sec)
复制代码
7、设置远程登陆
先退出 MySQL
以新密码登陆 MySQL
[ec2-user@master ~]$ mysql -uroot -p1234
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 5.7.33 MySQL Community Server (GPL)
Copyright (c) 2000, 2021, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
复制代码
创建用户
mysql> create user 'root'@'172.%.%.%' identified by '1234';
Query OK, 0 rows affected (0.00 sec)
复制代码
允许远程连接:
mysql> grant all privileges on *.* to 'root'@'172.%.%.%' with grant option;
Query OK, 0 rows affected (0.00 sec)
复制代码
刷新权限:
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
复制代码
到此 mysql 安装完成
#2、安装 Hive(依赖 Hadoop)
1、把 Hive 解压到指定位置
tar -zxvf hadoop/apache-hive-1.1.0-bin.tar.gz -C /usr/local/src/
2、重命名
mv apache-hive-1.1.0-bin/ hive
3、配置全局环境变量
sudo vim /etc/profile
export HIVE_HOME=/usr/local/src/hive
export PATH=PATH:HIVE_HOME/bin
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/usr/local/src/hive/lib/*
刷新环境变量
source?/etc/profile
4、在 src/hive/conf 下创建 hive-site.xml 文件
touch hive-site.xml
在 hive-site.xml 文件中添加如下内容:
<configuration>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&useSSL=false</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>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>1234</value>
</property>
</configuration>
复制代码
注意:MySQL 密码要改成自己设置的密码
5、添加驱动包
把 MySQL 驱动放到 hive 的 lib 目录下
cp /home/ec2-user/hadoop/mysql-connector-java-5.1.44-bin.jar $HIVE_HOME/lib
6、修改 hive-env.sh 配置文件
[ec2-user@master conf]$ vi hive-env.sh
#在里面添加如下配置
export HADOOP_HOME=/usr/local/src/hadoop
export HIVE_CONF_DIR=/usr/local/src/hive/conf
复制代码
7、启动 Hive
需要确保 hdfs、mapreduce、mysql 启动
若没启动
start-all.sh
初始化 MySQL 中的 hive 的数据库
schematool -dbType mysql -initSchema
启动 hive
hive
#安装 sqoop
1、解压
tar -zxvf hadoop/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /usr/local/src/
2、重命名为 sqoop
[ec2-user@master src]$ ls
hadoop hive jdk sqoop-1.4.7.bin__hadoop-2.6.0
[ec2-user@master src]$ mv sqoop-1.4.7.bin__hadoop-2.6.0/ sqoop
复制代码
3、添加环境变量
[ec2-user@master src]$ sudo vi /etc/profile
#在里面添加如下代码
export SQOOP_HOME=/usr/local/src/sqoop
export PATH=$PATH:$SQOOP_HOME/bin
#刷新环境变量
[ec2-user@master src]$ source /etc/profile
复制代码
4、修改 sqoop-env.sh 配置文件
[ec2-user@master src]$ cd sqoop/conf/
[ec2-user@master conf]$ mv sqoop-env-template.sh sqoop-env.sh
[ec2-user@master conf]$ vi sqoop-env.sh
复制代码
在里面修改一下配置项,根据自己的环境来修改:
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/usr/local/src/hadoop
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/usr/local/src/hadoop
#Set the path to where bin/hive is available
export HIVE_HOME=/usr/local/src/hive
复制代码
5、把 mysql 驱动放到 sqoop 的 lib 目录下
[ec2-user@master conf]$ cp /home/ec2-user/hadoop/mysql-connector-java-5.1.44-bin.jar $SQOOP_HOME/lib[ec2-user@master conf]$ ls $SQOOP_HOME/lib/mysql-connector-java-5.1.44-bin.jar
/usr/local/src/sqoop/lib/mysql-connector-java-5.1.44-bin.jar
复制代码
6、验证 sqoop 是否能连接 mysql
[ec2-user@master conf]$ sqoop help
Warning: /usr/local/src/sqoop/../hbase does not exist! HBase imports will fail.
# 总结
阿里伤透我心,疯狂复习刷题,终于喜提offer 哈哈~好啦,不闲扯了,**文章开头说要免费给大家分享我的复习资料,下面就给大家展示一下——[点击这里免费获取我的复习刷题宝典](https://gitee.com/vip204888/java-p7)**
![image](https://static001.geekbang.org/infoq/d5/d576ae887ccb80b93e39bceaf32db882.jpeg)
1、JAVA面试核心知识整理(PDF):包含**JVM**,**JAVA集合**,**JAVA多线程并发**,JAVA基础,**Spring原理**,**微服务**,Netty与RPC,网络,日志,**Zookeeper**,**Kafka**,**RabbitMQ**,Hbase,**MongoDB**,Cassandra,**设计模式**,**负载均衡**,**数据库**,**一致性哈希**,**JAVA算法**,**数据结构**,加密算法,**分布式缓存**,Hadoop,Spark,Storm,YARN,机器学习,云计算共30个章节。
![image](https://static001.geekbang.org/infoq/21/21cafd34c098edfa3637d676e9e100a2.jpeg)
2、Redis学习笔记及学习思维脑图
![image](https://static001.geekbang.org/infoq/eb/eb148a882e622dede55af09d8f5b6147.jpeg)
3、数据面试必备20题+数据库性能优化的21个最佳实践
![image](https://static001.geekbang.org/infoq/7a/7a1b094fe31ef2107ee7b4b7648a1037.jpeg)
复制代码
评论