HDFS伪分布式安装部署操作-实操

Posted david227

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDFS伪分布式安装部署操作-实操相关的知识,希望对你有一定的参考价值。

-安装步骤说明:
1、安装jdk的操作
1-1 检查centos6.8自带的jdk
1-2 卸载自带的jdk(使用root帐号)
1-3 解压缩jdk(root帐号)
1-4 配置环境变量
1-5 检查jdk是否生效
2、配置ssh免密登录
2-1 为什么需要配置ssh免密登录:
2-2 安装ssh
2-3 验证ssh是否安装成功
2-4 生成公钥和私钥
2-5 复制公钥并改名
2-6 验证SSH免密是否生效
3、安装hadoop伪分布式环境
3-1 官网下载
3-2 解压缩
3-3 修改配置文件hadoop-env.sh
3-4 修改配置文件core-site.xml
3-5 修改配置文件 hdfs-site.xml
3-6 启动hdfs/停止hdfs
  1)格式化文件系统(仅第一次需要执行)
  2)启动文件系统

  3)验证是否启动成功,两种方式:--jps方式验证   --浏览器访问验证

--开始操作--:
1、安装jdk的操作
1-1 检查centos6.8自带的jdk
使用的hadoop帐号,赋予管理员权限     [[email protected] hadoop]# usermod -G root hadoop
#查询版本
[[email protected] package]$ java -version
java version "1.7.0_99"
OpenJDK Runtime Environment (rhel-2.6.5.1.el6-x86_64 u99-b00)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
#查询文件全名
[[email protected] package]$ rpm -qa | grep java
tzdata-java-2016c-1.el6.noarch
java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64
java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64

1-2 卸载自带的jdk(使用root帐号)

[[email protected] package]# rpm -e --nodeps tzdata-java-2016c-1.el6.noarch
[[email protected] package]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64
[[email protected] package]# rpm -e --nodeps java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64
[[email protected] package]# rpm -qa | grep java
[[email protected] package]# 

1-3 解压缩jdk(root帐号)

##解压缩
[[email protected] app]# tar -zxvf jdk-8u131-linux-x64.tar.gz
##移动到自己的应用路径下
[[email protected] package]# mv jdk1.8.0_131 /home/hadoop/app/

1-4 配置环境变量

[[email protected] jdk1.8.0_131]# pwd
/home/hadoop/app/jdk1.8.0_131
[root@sf jdk1.8.0_131]# vim /etc/profile

## /etc/profile里面添加的内容
export JAVA_HOME=/home/hadoop/app/jdk1.8.0_131
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=$JAVA_HOME/lib/:${JRE_HOME}/lib 
export PATH=${JAVA_HOME}/bin:$PATH

#操作提示:光标处插入 i,保存退出 ctrl+c,:wq,退出 :q ,强制退出 !q
#执行配置文件使生效
[[email protected] jdk1.8.0_131]# source /etc/profile

技术图片

1-5 检查jdk是否生效

[[email protected] jdk1.8.0_131]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
[root@sf jdk1.8.0_131]# 

liunx中jdk安装结束。


2、配置ssh免密登录
2-1 为什么需要配置ssh免密登录:
 2-2 安装ssh
#yum在线安装ssh
[[email protected] app]$ sudo yum install ssh

2-3 验证ssh是否安装成功

[[email protected] app]$ ssh -version
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013
Bad escape character ‘rsion‘.
[hadoop@sf app]$ 

2-4 生成公钥和私钥

[[email protected] app]$ ssh-keygen -t rsa

注意:1、ssh和-keygen之间不能有空格 2、使用的不是root帐号

技术图片
2-5 复制公钥并改名
在帐号所在的目录下面会生成一个.ssh文件,使用ll -la 或者ls -l可以看到
[[email protected] ~]$ cd .ssh
[hadoop@sf .ssh]$ ll
总用量 8
-rw-------. 1 hadoop hadoop 1675 5月 31 22:38 id_rsa
-rw-r--r--. 1 hadoop hadoop 391 5月 31 22:38 id_rsa.pub
[hadoop@sf .ssh]$ pwd
/home/hadoop/.ssh
[hadoop@sf .ssh]$ cp id_rsa.pub authorized_keys
[hadoop@sf .ssh]$ 
2-6 验证SSH免密是否生效
使用命令 ssh localhost 登入账户,需要密码
exit退出
然后ssh localhost 再登录的时候,不用输入密码,表示成功

技术图片

注意:可能出现的问题:
@1、执行安装ssh的时候,提示:hadoop 不在 sudoers 文件中。此事将被报告。
解决方法:
使用root帐号打开/etc/sudoers,或者直接使用命令visudo
[[email protected] hadoop]# visudo
3、安装hadoop伪分布式环境
3-1 官网下载
3-2 解压缩
[[email protected] package]$ ll
总用量 507672
drwxr-xr-x. 14 1106 4001 4096 3月 24 2016 hadoop-2.6.0-cdh5.7.0
-rw-r--r--. 1 root root 311585484 5月 31 20:32 hadoop-2.6.0-cdh5.7.0.tar.gz
-rw-r--r--. 1 root root 185540433 5月 31 20:34 jdk-8u131-linux-x64.tar.gz
-rw-r--r--. 1 root root 22724574 5月 31 20:31 zookeeper-3.4.9.tar.gz
[[email protected] package]$ pwd
/home/hadoop/package
[[email protected] package]$ [[email protected] package]$ sudo tar -zxvf hadoop-2.6.0-cdh5.7.0.tar.gz
[[email protected] package]$ sudo mv hadoop-2.6.0-cdh5.7.0 /home/hadoop/app
3-3 修改配置文件hadoop-env.sh
文件位置: /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop/hadoop-env.sh
[[email protected] hadoop]$ pwd
/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop 
[[email protected] hadoop]$ echo $JAVA_HOME
/home/hadoop/app/jdk1.8.0_131
[[email protected] hadoop]$ sudo vim hadoop-env.sh

技术图片

修改后:

 技术图片

3-4 修改配置文件core-site.xml
文件位置: /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop/core-site.xml
查看本机hostname是否在hosts中,如果没有就添加进来,然后重启网络服务(root账户或者sudo权限)
#查看
[[email protected] ~]$ hostname
sf
[[email protected] ~]$ cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
[[email protected] ~]$ 
#vim  /etc/hosts
127.0.0.1 sf localhost localhost.localdomain localhost4 localhost4.localdomain4 
192.168.244.130 sf localhost localhost.localdomain localhost4 localhost4.localdomain4 
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 sf

技术图片

修改文件core-site.xml

[[email protected] hadoop]$ sudo vim core-site.xml
#重启网络服务
[[email protected] hadoop]# /etc/rc.d/init.d/network restart

目的:配置映射和临时存储文件目录

<configuration>
       <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.244.130:8020</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/app/tmp</value>
    </property>
</configuration>

注意 /home/hadoop/app/tmp 这里tmp目录自己新建

 技术图片

3-5 修改配置文件 hdfs-site.xml
文件位置: /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/etc/hadoop/hdfs-site.xml
作用:本地伪分布式,学习使用,不必3个副本,一个就够。
[[email protected] hadoop]$ sudo vim hdfs-site.xml

技术图片

3-6 启动hdfs/停止hdfs
 
1)格式化文件系统(仅第一次需要执行)
[[email protected] bin]$ pwd
/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/bin
[[email protected] bin]$ sudo ./hdfs namenode -format

2) 启动文件系统

[[email protected] sbin]$ pwd
/home/hadoop/app/hadoop-2.6.0-cdh5.7.0/sbin
[[email protected] sbin]$ sudo ./start-dfs.sh
#停止  /home/hadoop/app/hadoop-2.6.0-cdh5.7.0/sbin
sudo ./stop-dfs.sh
3)验证是否启动成功:两种方式
--jps方式验证
--jps验证
[[email protected] sbin]# jps
33911 Jps
32856 SecondaryNameNode 
32589 NameNode
32703 DataNode
[[email protected] sbin]#
注意:很奇怪的问题,使用root帐号的时候,执行jps可以看见这些节点,
使用hadoop帐号的时候,就看不到。
如果有问题,查看tmp中的error
--浏览器访问验证
注意:此过程中容易出现的问题:
@1、格式化的时候提示:
SHUTDOWN_MSG: Shutting down NameNode at localhost/127.0.0.1
不用处理
@2、启动的时候提示:
18/06/01 00:15:49 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
技术图片
不用处理:没有编译的hadoop都这样,不影响使用
@3、配置ssh免密码登录后,仍提示输入密码
启动/停止的时候需要各种密码,甚是烦人----原因:ssh配置不正确
 技术图片
[[email protected] ~]$ sudo vim /etc/selinux/config 
#SELINUX=enforcing 
改成
SELINUX=disabled

#权限问题?
drwx------. 2 hadoop hadoop 4096 5月  31 22:44 .ssh
-rw-r--r--. 1 hadoop hadoop  391 5月  31 22:43 authorized_keys
/home/hadoop/.ssh
[[email protected] .ssh]# chmod 600 authorized_keys
-rw-------. 1 hadoop hadoop  391 5月  31 22:43 authorized_keys
@4、浏览器访问不了
原因:关闭网络防火墙
方法:临时关闭 
 
[[email protected] test]# service iptables stop
@5、外部浏览器上使用ip可以访问,但是主机名不行
原因:ip可以ping通,vm和电脑是可以通信的,但是电脑的hosts里面没有配置vm的hostname,自然无法访问
 
@6、hadoop启动的时候需要输入密码(一般帐号和root账户都需要)
 
 

 

以上是关于HDFS伪分布式安装部署操作-实操的主要内容,如果未能解决你的问题,请参考以下文章

2018-08-13期 Hbase伪分布模式安装部署

大数据笔记:HDFS-伪分布式模式

2018-08-12期 Hbase本地模式安装部署

Hadoop伪分布式模式安装

大数据之---hadoop伪分布式部署(HDFS)全网终极篇

大数据之---hadoop伪分布式部署(HDFS)全网终极篇