【Hadoop安装】伪分布式hadoop集群安装,实现集群间免登陆

【安装包】

官网地址:Apache Hadoop

安装文档:Apache Hadoop 3.3.1 – Hadoop: Setting up a Single Node Cluster.

【环境介绍】

  1. Linux:CentOS Linux release 8.0.1905 (Core)
  2. Java版本:jdk1.8.0_211
  3. Hadoop版本:hadoop-3.2.1.tar.gz
  4. Kibana版本:kibana-7.8.0.tar.gz
  5. Logstash版本:logstash.tar.gz

【实现ssh免密码登录】

由于Hadoop需要使用SSH进行通信,因此需要在Linux操作系统上安装SSH。SSH是一种通过网络连接提供安全的加密连接的客户端服务。

安装过程略。

SSH作为一个安全通信协议,需要在通信的时候输入密码。

操作环境:

机器

操作系统

IP

Node-1

CentOS 8

172.20.49.155

Node-2

CentOS 8

172.20.49.138

1、Node-1机器

执行终端命令“ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa”生成公钥与私钥对。

将本机的公钥复制到远程机器,即Node-2机器的authorized_keys文件中。

ssh-copy_id root@172.20.33.138

 

 执行终端命令“ssh root@172.20.49.138”,测试是否需要输入密码。

  1. Node-2机器

与操作1步骤一致,只需修改相应的IP地址即可。如下所示。

# 生成公钥与私钥对

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

# 复制本机的公钥到远程机器的authorized_keys文件中

ssh-copy-id root@172.20.49.155

服务器环境如下表所示:

机器

操作系统

IP

Node-1

CentOS 8

172.20.49.138

Node-2

CentOS 8

172.20.49.139

Node-3

CentOS 8

172.20.49.140

注意:请先在上述三台服务器上安装JDK1.8、配置三台机器间实现免密通信。

查看OS版本:

cat /etc/redhat-release

将本地下载完成的hadoop-3.2.1.tar.gz压缩包上传至CentOS服务器,命令如下:

scp hadoop-3.2.1.tar.gz root@172.20.49.138:/usr/local/soft

scp hadoop-3.2.1.tar.gz root@172.20.49.139:/usr/local/soft

scp hadoop-3.2.1.tar.gz root@172.20.49.140:/usr/local/soft

接下来,在三台服务器上做同样的操作,只需修改相应的路径即可。

进入/usr/local/soft目录下,解压hadoop到指定目录。

tar -zxvf hadoop-3.2.1 -C /usr/local/softins

进入/usr/local/softins/hadoop-3.2.1目录,查看Hadoop的目录结构。

【hadoop目录】

hadoop目录说明:

  1. bin:hadoop可执行的脚本文件,比如hadoop,mapreduce,yarn;
  2. sbin:系统相关的一些执行脚本,比如hadoop的相关启动/关闭脚本;
  3. lib:本地库,本地平台的效率实现;
  4. etc:相关配置文件;
  5. libexec:执行相关文件;
  6. include:本地库相关;
  7. share:jar包,开发相关;
  8. share/doc:开发文档;

        编辑/etc/profile文件,配置java和hadoop的环境变量。

vim /etc/profile

        配置内容如下:

# java

export JAVA_HOME=/usr/java/jdk1.8.0_291-amd64

export CLASSPATH=./$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export JRE_HOME=$JAVA_HOME/jre

export PATH=$JAVA_HOME/bin:$PATH



# Hadoop

export HADOOP_HOME=/usr/hadoop-3.2.1

export LD_LIBRARY_PATH=$HADOOP_HOME/lib/native

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



# hadoop-3.2.1

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

        其中# hadoop-3.2.1部分对hadoop-3.2.1来说必须配置,否则启动报错。

        执行命令使配置文件立即生效。

source /etc/profile

        执行终端命令“hadoop version”进行安装测试所示的Hadoop版本信息,则表示Hadoop安装完成。

【配置参数】

  1.  修改hadoop-env.sh,配置JAVA_HOME的值,使其值指向jdk的位置。
cd /usr/local/softins/hadoop/hadoop-3.2.1

vim etc/hadoop/hadoop-env.sh

        取消并修改export JAVA_HOME=jdk安装位置,如下所示。

export JAVA_HOME=/usr/local/softins/jdk/jdk1.8.0_241

        2.修改core-site.xml文件。

vim etc/hadoop/core-site.xml

        添加内容如下所示:

<configuration>

        <!--指定HADOOP所使用的文件系统schema(URI) NameNode的地址-->

        <property>

                <name>fs.defaultFS</name>

                <value>hdfs://localhost:9000</value>

        </property>

        <!--指定HADOOP运行时产生文件的存储目录 -->

        <property>

                <name>hadoop.tmp.dir</name>

                <value>/opt/hadoop/tmp</value>

        </property>

</configuration>

        执行终端命令:

mkdir -p /usr/local/data/hadoop-3.2.1/tmp

 3.修改hdfs-site.xml文件。

vim etc/hadoop/hdfs-site.xml

        编辑内容如下所示:


<configuration>

        <!--指定HDFS副本的数量-->

        <property>

                <name>dfs.replication</name>

                <value>3</value>

        </property>

        <property>

                <name>dfs.namenode.name.dir</name>

                <value>file:/opt/hadoop/tmp/dfs/name</value>

        </property>

        <property>

                <name>dfs.datanode.data.dir</name>

                <value>file: /opt/hadoop /tmp/dfs/data</value>

        </property>

</configuration>

        执行终端命令:

mkdir -p /usr/local/data/hadoop-3.2.1/tmp/dfs/name

mkdir -p /usr/local/data/hadoop-3.2.1/tmp/dfs/data

 4.修改mapred-site.xml

vim etc/hadoop/mapred-site.xml

        编辑内容如下所示:

<configuration>

        <!--指定mapreduce运行在yarn上 -->

        <property>

                <name>mapreduce.framework.name</name>

                <value>yarn</value>

        </property>

</configuration>

【启动Hadoop】

  • 初始化文件服务,执行终端命令:
cd /usr/local/softins/hadoop/hadoop-3.2.1/

hdfs namenode -format

  •         若出现下列语句就表示hadoop文件服务初始化成功。

common.Storage: Storage directory /usr/local/data/hadoop-3.2.1/tmp/dfs/name has been successfully formatted.

执行终端命令:

start-dfs.sh

使用jps查看进程情况。

在本地浏览器上输入链接地址“http://172.20.49.139:9870”,访问Hadoop服务。如果出现如下图则表示hadoop已启动。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值