目录
一、修改主机名【分别在三台主机执行,将主机名修改为master,slave1,slave2】
二、添加IP与主机名映射【分别在三台主机执行,将主机名修改为master,slave1,slave2】
三、配置ssh免密登录
1、修改配置文件
2、 配置免密
3、测试连接
四、配置java环境
1、 上传、解压、重命名安装包,
2、在/etc/profile中添加环境变量,并使其生效【注意切换为自己的实际路径】
注意:安装过程中,使用vim编辑器后,上下左右变为ABCD。
3、安装成功测试,输入以下命令,出现java版本
4、在master上分发给其余两台主机,并测试配置是否成功
五、配置zookeeper环境
1、上传安装包到/home/user/Downloads下
2、解压到当前路径
3、重命名
4、修改配置文件
5、在data文件夹下新建myid文件,添加值1
6、添加系统环境变量配置
7、将zookeeper文件夹分发到slave1和slave2中。
8、修改zookeeper/data文件夹下myid的值分别为2和3
9、将/etc/profile分发到slave1和slave2中。
10、启动zookeeper
11、部署成功验证
六、配置hadoop完全分布部署【3.1.3版本】
1、下载,上传
2、解压
3、重命名
4、配置系统环境变量
5、 修改配置文件
(1)在 $HADOOP_HOME/etc/hadoop配置hadoop-env.sh文件【$JAVA_HOME,$HADOOP_HOME换为具体路径】
(2)在 $HADOOP_HOME/etc/hadoop配置workers文件【添加datanode部署主机名】
(3) 在 $HADOOP_HOME/etc/hadoop配置core-site.xml文件
(4) 在 $HADOOP_HOME/etc/hadoop配置hdfs-site.xml文件
(5)在 $HADOOP_HOME/etc/hadoop配置yarn-site.xml文件
(6)在 $HADOOP_HOME/etc/hadoop配置yarn-site.xml文件
(7)在$HADOOP_HOME下创建文件夹
6、在master主机格式化NameNode
7、在master主机启动hadoop集群
8、启动成功验证
一、修改主机名【分别在三台主机执行,将主机名修改为master,slave1,slave2】
>hostnamectl set-hostname master
# 查看是否修改成功
>cat /etc/hostname
二、添加IP与主机名映射【分别在三台主机执行,将主机名修改为master,slave1,slave2】
# 查看IP地址
>ip addr
>vi /etc/hosts
#添加如下内容
192.168.184.131 master
192.168.184.132 slave2
192.168.184.130 slave1
三、配置ssh免密登录
1、修改配置文件
>vi /etc/ssh/sshd_config
# 修改两个配置
PermitRootLogin yes
PasswordAuthentication yes
#重启服务
/etc/init.d/ssh restart
2、 配置免密
#(1)在三台主机中分别生成密钥,一直按回车,不要输入
>ssh-keygen -t rsa
#(2)在三台主机中传输密钥
>ssh-copy-id master
>ssh-copy-id slave1
>ssh-copy-id slave2
3、测试连接
# 退出连接使用:logout
ssh master
ssh slave1
ssh slave2
四、配置java环境
1、 上传、解压、重命名安装包,
链接:https://pan.baidu.com/s/1tmVEGjRI_7CXgCzcmocRAw
提取码:ku4b
或者官网下载:
https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
>tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /home/user/Downloads
>mv jdk-17_linux-x64_bin jdk
2、在/etc/profile中添加环境变量,并使其生效【注意切换为自己的实际路径】
>vi /etc/profile
export JAVA_HOME=/home/user/Downloads/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=$PATH:${JAVA_HOME}/bin
>source /etc/profile
注意:安装过程中,使用vim编辑器后,上下左右变为ABCD。
解决方案:重新安装vim
apt-get install vim
3、安装成功测试,输入以下命令,出现java版本
>java -version
4、在master上分发给其余两台主机,并测试配置是否成功
> scp -r jdk slave1:/home/user/Downloads/
#在slave1主机执行
>source /etc/profile
>java -version
> scp -r jdk slave2:/home/user/Downloads/
#在slave2主机执行
>source /etc/profile
>java -version
五、配置zookeeper环境
1、上传安装包到/home/user/Downloads下
2、解压到当前路径
>tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz
3、重命名
mv apache-zookeeper-3.5.5-bin zookeeper
4、修改配置文件
打开$ZOOKEEPER_HOME,新建data文件夹,并在conf文件,复制zoo_sample.cfg为zoo.cfg文件,并修改配置参数
>cd /home/user/Downloads
>cd zookeeper
>mkdir data
>cd conf
>cp zoo_sample.cfg zoo.cfg
>vi zoo.cfg
# 修改以下参数
dataDIr=/home/user/Downloads/zookeeper/data
# 在文件末尾追加以下参数配置
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888
5、在data文件夹下新建myid文件,添加值1
>vi myid
1
6、添加系统环境变量配置
>vi /etc/profile
export ZOOKEEPER_HOME=/home/user/Downloads/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
>source /etc/profile
7、将zookeeper文件夹分发到slave1和slave2中。
>scp -r zookeeper slave1:/home/user/Downloads/
>scp -r zookeeper slave2:/home/user/Downloads/
8、修改zookeeper/data文件夹下myid的值分别为2和3
# 在slave1主机
>cd /home/user/Downloads/zookeeper/data
>vi myid
2
# 在slave2主机
>cd /home/user/Downloads/zookeeper/data
>vi myid
3
9、将/etc/profile分发到slave1和slave2中。
>scp /etc/profile slave1:/etc/
>scp /etc/profile slave2:/etc/
# 在slave1主机,slave2主机分别使系统环境变量配置生效
>source /etc/profile
10、启动zookeeper
分别在三台主机输入
>zkServer.sh start
然后再查看状态
zkServer.sh status
如果mode为follower或者leader,则表示部署成功。
11、部署成功验证
master显示:
slave1:
slave2:
六、配置hadoop完全分布部署【3.1.3版本】
1、下载,上传
Index of /dist/hadoop/common/hadoop-3.1.3 (apache.org)
2、解压
>tar -zxvf hadoop-3.1.3.tar.gz
3、重命名
>mv hadoop-3.1.3 hadoop
4、配置系统环境变量
>vi /etc/profile
export HADOOP_HOME=/home/user/Downloads/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
>source /etc/profile
5、 修改配置文件
(1)在 $HADOOP_HOME/etc/hadoop配置hadoop-env.sh文件【$JAVA_HOME,$HADOOP_HOME换为具体路径】
export JAVA_HOME=$JAVA_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
#添加
export HDFS_DATANODE_USER=root
export HADOOP_SECURE_DN_USER=root
export HDFS_NAMENODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
(2)在 $HADOOP_HOME/etc/hadoop配置workers文件【添加datanode部署主机名】
#localhost
master
slave1
slave2
(3) 在 $HADOOP_HOME/etc/hadoop配置core-site.xml文件
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file://home/user/Downloads/hadoop/tmp</value>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
(4) 在 $HADOOP_HOME/etc/hadoop配置hdfs-site.xml文件
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/user/Downloads/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/home/user/Downloads/hadoop/tmp/dfs/data</value>
</property>
</configuration>
(5)在 $HADOOP_HOME/etc/hadoop配置yarn-site.xml文件
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
(6)在 $HADOOP_HOME/etc/hadoop配置yarn-site.xml文件
1>复制mapred-site.xml.template 为mapred-site.xml
mv mapred-site.xml.template mapred-site.xml
2>添加如下内容:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
(7)在$HADOOP_HOME下创建文件夹
mkdir tmp
mkdir tmp/dfs
mkdir tmp/dfs/name
mkdir tmp/dfs/data
mkdir tmp/dfs/namesecondary
6、将hadoop文件夹,/etc/profile文件分发到slave1,slave2中,并使系统环境配置文件生效
>scp -r hadoop slave1:/home/user/Downloads/
>scp -r hadoop slave2:/home/user/Downloads/
>scp /etc/profile slave1:/etc/
>scp /etc/profile slave2:/etc/
# 在slave1主机,slave2主机分别使系统环境变量配置生效
>source /etc/profile
7、在master主机格式化NameNode
hdfs namenode -format
8、在master主机启动hadoop集群
start-all.sh
9、启动成功验证
master主机:
slave1主机:
slave2主机: