Ubuntu 18.04 安装 Hadoop系统环境

安装ubuntu-server系统

安装系统

选择系统语言-Englishjava

1.png

键盘设置-Chinesenode

2.png

选择操做Install ubuntulinux

3.png

设置网络(这里选择默认)算法

4.png

选择Doneshell

5.png

6.png

文件系统设置-选择使用整个磁盘ubuntu

7.png

选择磁盘vim

8.png

选择Donebash

9.png

选择继续Continue网络

10.png

配置文件设置ssh

11.png

12.png

正在安装

13.png

Reboot Now

14.png

15.png

16.png

安装ssh环境

配置root用户密码

修改root用户的初始密码

sudo passwd

17.png

退出当前用户,使用root登录系统。

关闭防火墙

关闭防火墙

systemctl stop firewalld.service

开机不启动防火墙

systemctl disable firewalld.service

查看防火墙状态

ufw status

inactive状态是防火墙关闭状态,active是开启状态。

配置root用户远程链接

(注:装了ssh-server,若是未安装,请先安装)

apt-get install openssh-server

修改sshd_config

vim /etc/ssh/sshd_config

找到

# Authentication:
LoginGraceTime 120
PermitRootLogin without passwd
StrictModes yes

改为

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

而后重启SSH服务便可。

重启事后经过shell链接:

18.png

设置ssh localhost 免密码登陆

ssh localhost
exit

输入密码登陆本机和退出本机

19.png

在进行了初次登录后,会在当前家目录用户下有一个.ssh文件夹,进入该文件夹下:

cd ~/.ssh/

使用rsa算法生成秘钥和公钥对:

ssh-keygen -t rsa

20.png

运行后一路回车就能够了,其中第一个是要输入秘钥和公钥对的保存位置,默认是在:

.ssh/id_rsa

而后把公钥加入到受权中:

cat ./id_rsa.pub >> ./authorized_keys

再次ssh localhost的时候就能够无密码登录了。

安装jdk

解压jdk

建立一个java的文件夹,用户存放Java文件

mkdir /usr/local/java

经过ftp工具把下载好的jdk安装包上传到java文件夹下。

21.png

解压:

cd /usr/local/java
tar -vxzf jdk-8u181-linux-x64.tar.gz

解压成功后会在当前目录下看到:

jdk1.8.0_181文件夹

而后删除安装包:

rm jdk-8u181-linux-x64.tar.gz

配置jdk

设置环境变量:

vim /etc/profile

在末尾添加:

JAVA_HOME=/usr/local/java/jdk1.8.0_181
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH

从新加载环境变量的配置文件:

source /etc/profile

检测:

java -version

22.png

安装Hadoop

解压hadoop

建立一个hadoop的文件夹,用户存放hadoop文件

mkdir /usr/local/hadoop

经过ftp工具把下载好的hadoop安装包上传到hadoop文件夹下。

解压:

cd /usr/local/hadoop
tar -vxzf hadoop-2.7.7.tar.gz

解压完成:

23.png

移动hadoop-2.7.7文件下的文件到当前的目录

mv ./hadoop-2.7.7/* ./

删除hadoop-2.7.7文件夹

rm -rf ./hadoop-2.7.7

查看文件夹的全部者以及用户组,最重要的是拥有者是不是当前用户

24.png

若是拥有者不是当前用户,则修改成当前用户:

sudo chown -R 当前用户名 ./hadoop

配置hadoop

设置环境变量:

vim /etc/profile

在末尾添加:

JAVA_HOME=/usr/local/java/jdk1.8.0_181
HADOOP_HOME=/usr/local/hadoop
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export JAVA_HOME
export PATH
export HADOOP_HOME

从新加载环境变量的配置文件:

source /etc/profile

检测:

hadoop version

25.png

修改配置文件

在core-site.xml 中添加

<!-- 指定HDFS老大(namenode)的通讯地址 -->
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://0.0.0.0:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储路径 -->
<property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/tmp</value>
 </property>
<property>
    <name>hadoop.tmp.dir</name>
    <value>/usr/local/hadoop/tmp</value>
</property>

26.png

在 hdfs-site.xml 中添加

<property>
    <name>dfs.data.dir</name>
    <value>/usr/local/hadoop/hdfs/data</value>
    <description>datanode上数据块的物理存储位置</description>
</property>

<!-- 设置hdfs副本数量 -->
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>

<property>
    <name>dfs.permissions</name>
    <value>false</value>
</property>

27.png

在 hadoop-env.sh 中更改 JAVA_HOME

注释掉:

export JAVA_HOME=${JAVA_HOME}

添加:

export JAVA_HOME=/usr/local/java/jdk1.8.0_181

测试,启动

格式化namenode:

hadoop namenode -format

28.png

启动hdfs

start-all.sh

29.png

查看相应的进程:

jps

30.png

肯定5个进程所有启动。

访问测试:

10.168.1.129:50070

31.png

设置开机启动

进入/etc/init.d/目录下

cd /etc/init.d/

建立文件hadoop

vim hadoop

写入开机启动相关的脚本内容

#!/bin/bash
#
# chkconfig: 2345 88 33
# description: Starts and stops Hadoop server

### BEGIN INIT INFO
# Required-Start:
# Required-Stop:
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Starts and stops Hadoop server
# Description:          Starts and stops Hadoop server
### END INIT INFO

start(){
    #
    # Start Hadoop
    #
    /usr/local/hadoop/sbin/start-all.sh
}
stop(){
    #
    # Stop Hadoop
    #
    /usr/local/hadoop/sbin/stop-all.sh
}

case "$1" in
    start)
        start
        exit $?
    ;;

    stop)
        stop
        exit $?
    ;;

    restart)
        #
        # Restart Hadoop
        #
        stop
        sleep 5
        start
        exit $?
    ;;

*)
echo "Usage hadoop start/stop/restart"
exit 1;;
esac

设置文件权限

chmod +x hadoop

添加到服务中

update-rc.d -f hadoop defaults

测试

service hadoop start

查看服务是否启动成功

jps

7.png