更改主机名
更改hosts文件
vi /etc/hosts
在后面添加ip地址和主机名的映射
配置多台服务器间的免密登录
可以参考:https://blog.csdn.net/u010698107/article/details/119079821
Hadoop配置
1.下载安装
Hadoop官网:[http://hadoop.apache.org]
(http://hadoop.apache.org)
新建目录
/opt/hadoop
将下载的压缩包解压到 /opt/hadoop
重命名文件名
cd /opt/hadoop
mv hadoop-3.3.1 hadoop
更改配置文件
进入安装目录
cd /opt/hadoop/hadoop/etc/hadoop
修改 core-site.xml 文件
<configuration>
<property>
<name>fs.defaultFS</name>
<!-- 此处改为主节点的主机名-->
<value>hdfs://centosAI1:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop/hadoopdata</value>
</property>
</configuration>
修改 hdfs-site.xml 文件
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
修改 yarn-site.xml 文件
<configuration>
<!-- 注意修改主机名 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>centosAI1:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>centosAI1:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>centosAI1:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>centosAI1:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>centosAI1:18088</value>
</property>
</configuration>
修改 mapred-site.xml 文件
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
配置workers文件
vi /opt/hadoop/hadoop/etc/hadoop/workers
加入主机名称,如果文件中有localhost这行信息,直接删除掉
centosAI1
centosAI2
centosAI3
配置系统环境变量,三台机器都需配置
vim ~/.bash_profile
添加内容,路径为自己安装的目录
# hadoop
export HADOOP_HOME=/opt/hadoop/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
修改环境变量以后使之生效
source ~/.bash_profile
输入
vim /etc/profile
添加以下内容:
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
使生效:
source /etc/profile
创建数据存放目录
mkdir /opt/hadoop/hadoopdata
格式化文件系统
hadoop namenode -format
将配置文件复制到workers节点上
scp -r /opt/hadoop root@centosAI2:/opt
scp -r /opt/hadoop root@centosAI3:/opt
将hadoop-env.sh中java路径更改为自己的
输入:echo $JAVA_HOME
查看JAVA_HOME
在hadoop的配置目录etc/hadoop中(我的是/opt/hadoop/hadoop/etc/hadoop/)修改hadoop-env.sh,
把JAVA_HOME换成正确的目录,三台服务器都需修改
export JAVA_HOME=/usr/local/java/jdk1.8.0_333
命令行输入start-all.sh启动集群
start-all.sh
三台服务器上查看是否启动成功
输入 jps
主节点上应包含
DataNode
NameNode
SecondaryNameNode
NodeManager
从节点上应包含
DataNode
NodeManager
Hive 安装配置
首先需安装mysql
下载并解压hive压缩包
可以从官网下载:
https://mirrors.cnnic.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
也可以用wget命令下载:
wget https://mirrors.cnnic.cn/apache/hive/hive-3.1.2/apache-hive-3.1.2-bin.tar.gz
解压并更改文件名:
sudo tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /usr/local
cd /usr/local
sudo mv apache-hive-3.1.2-bin hive
把hive命令加入到环境变量中去
vim ~/.bashrc
加入:
export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export HADOOP_HOME=/opt/hadoop/hadoop
其中HADOOP_HOME需要被配置成你机器上Hadoop的安装路径
运行如下命令使配置立即生效:
source ~/.bashrc
修改配置文件
cd /usr/local/hive/conf
mv hive-default.xml.template hive-default.xml
使用vim编辑器新建一个配置文件hive-site.xml:
cd /usr/local/hive/conf
vim hive-site.xml
在hive-site.xml中添加如下配置信息:
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
<description>Driver class name for a JDBC metastore</description>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>password to use against metastore database</description>
</property>
</configuration>
其中 hive 和 123456 应与接下来在mysql中创建的用户名和密码相同
将mysql-connector-java的jar包拷贝到/usr/local/hive/lib目录下,我用的是
mysql-connector-java-8.0.29.jar
登录mysql:
新建hive数据库,与以上配置文件hive-site.xml中数据库名称对应。
create database hive;
创建hive用户,用户名密码与以上配置文件hive-site.xml中对应
create user 'hive'@'localhost' identified by '123456';
对hive用户赋予权限:
grant all on *.* to 'hive'@'localhost'
刷新权限:
flush privileges;
退出mysql
初始化mysql数据库:
schematool -dbType mysql -initSchema
此时可以此时hive
命令行输入hive
hive
查看数据库:
show databases;
也可测试创建数据库及其他操作。
若出错可关闭hadoop安全模式后再进行测试。
至此已全部安装完成。
其他问题:
在hive中插入数据时卡死,插入不成功。
解决:可能是主机名的问题
此处显示应为自己配置的主机名,如不是,可使用
Hostname 你的主机名
修改。此问题只有部分服务器会出现。