Linux Ubuntu 18.04安装JDK、Hadoop、Hbase以及图形界面


🌸提示🌸

  • 如果是在Linux服务器上安装JDK、Hadoop、Hbase,请按照文章顺序阅读;
  • 如果是在本机的Linux虚拟机中安装,请跳过文章1、2、6这几个部分。

0. 准备工作

首先,需要准备下列东西(VNC Viewer特别适合像我这样看不到GUI就心慌的小菜鸟🦜)

在选择JDK、Hadoop、HBase版本时需注意各版本的兼容情况

官方文档 (搜索文档中的内容:Ctrl + F


1. 【服务器】获取阿里云ECS

系统:Ubuntu 18.04

疫情防控期间😷,学生可获取一台6个月免费使用的阿里云ECS服务器

获取条件:

  • 账号通过实名认证 & 学生认证
  • 完成一次10道选择题的测试(答对6道以上)

2. 【服务器】了解快照 ✨

2.1 快照简介

快照可在某一时间点上、对某一特定磁盘的数据进行留存,起到数据备份🗄的作用。

快照的优势:

  • 创建快照可有效规避大量的风险,例如操作失误删除了系统文件、安全漏洞造成了病毒感染…

  • 创建快照亦可极大地提升效率,例如通过快照创建的镜像可以快速部署多个服务器


2.2 创建一个快照

  1. 从阿里云的实例列表,进入到服务器的管理界面
  1. 进入本示例快照,点击创建快照
  1. 填写快照信息
  1. 创建成功!

    创建过程需要几分钟,请耐心等待~⌛️

    创建成功后,本实例可以通过回滚磁盘来规避风险;其它实例可以通过创建自定义镜像来快速部署。


2.3 回滚磁盘 💿

  1. 首先,回到实例详情页面,停止✋🏻服务器的运行
  1. 再次进入本实例快照页面,选择快照,点击回滚磁盘
  1. 在弹出页面点击确定
  1. 利用快照回滚完成,请耐心等待服务器的自动部署(大约需要2~5分钟)

更多相关内容:创建自动快照策略


3. 创建Hadoop用户🧑🏻‍💻

# 创建hadoop用户,并使用/bin/bash作为shell
sudo useradd -m hadoop -s /bin/bash  

# 为hadoop用户设置密码,密码输入两次
sudo passwd hadoop         

# 为hadoop用户增加管理员权限,方便部署
sudo adduser hadoop sudo       

# 将当前用户切换到hadoop用户
su - hadoop             

# 更新hadoop用户的apt,方便后续软件安装
sudo apt-get update

4. 配置SSH无密码登陆

# 1. 服务端安装
sudo apt-get install openssh-server
 
# 客户端安装
# Ubuntu默认安装了SSH client
# sudo apt-get install openssh-client


------------------------
# 2. 进入到宿主目录下,生成本机秘钥同时设置免密登录
# >>> 注意,这里不能使用 root 用户生成秘钥,而是要使用你想要设置的用户 <<<
cd /home/hadoop/
 
ssh-keygen -t rsa -P ""
 
# 2.1 将公钥追加到 authorized_keys 文件中
cat .ssh/id_rsa.pub >> .ssh/authorized_keys
# 2.2 赋予 authorized_keys 文件权限
chmod 600 .ssh/authorized_keys


------------------------
# 3. 验证是否成功
ssh localhost

5. 安装JDK

5.1 方法一:👋手动安装 (推荐 🙆🏻‍♂️)

5.1.1 流程
  1. 电脑端下载Linux_JDK8
  2. 使用WinSCP将压缩包上传至服务器
  3. 解压并安装JDK8
5.1.2 电脑端下载Linux JDK8

获取Linux_JDK8(下载需登录Oracle账号)

5.1.3 使用WinSCP将压缩包上传至服务器

获取WinSCP

  1. 填入服务器信息
  1. 连接服务器
  1. 上传压缩包
5.1.4 解压并安装JDK8
# 1. 创建目录
sudo mkdir /usr/lib/jvm

------------------------
# 2. 将JDK解压缩到该目录
# >>> 注意下列命令的文件名是否与自己的JDK压缩包名一致 <<<
sudo tar -zxvf jdk-8u241-linux-x64.tar.gz -C /usr/lib/jvm

------------------------
# 3. 修改环境变量
# 3.1 编辑.bashrc
# 相关操作: 'i': 进入编辑模式, 'esc': 退出编辑模式, ':wq': 保存并退出
sudo vi ~/.bashrc

# 3.2 在文件末尾添加如下内容
# >>> 注意目录与JDK与自己创建的一致 <<<
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_241
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH 

# 3.3 使环境变量马上生效
source ~/.bashrc

------------------------
# 4. 系统注册此JDK
# >>> 注意JDK与自己创建的一致 <<<
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.8.0_241/bin/java 300

------------------------
# 5. 查看是否安装成功
java -version

5.2 方法二:命令行安装 (不推荐!🙅🏻‍♂️)

看到很多JDK命令行安装教程都是这样写的,可是我用这种方法直到最后也没装上JDK… 😭😤

# 1. 安装依赖
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

# 2. 安装jdk1.8
sudo apt-get install oracle-java8-installer
5.2.1 安装过程中遇到的一些问题🧐
  1. E: Package ‘python-software-properties’ has no installation candidate

    # >>> 解决方法 <<<
    # 系统 >= Ubuntu 12.10 使用'software-properties-common'代替'python-software-properties'
    sudo apt-get install software-properties-common
    
  2. add-apt-repository command not found

    # >>> 解决方法 <<<
    # 安装software-properties-common
    apt-get install software-properties-common
    
  3. E: Package ‘oracle-java8-installer’ has no installation candidate

    # >>> 尝试以下几种均无效... <<<
    # 1. 添加各种依赖
    # 2. 更新apt-get
    # 3. 用aptitude替代apt-get
    # 4. sudo update-alternatives --config java    # 该方法用于多版本jdk间的切换
    
    
    # >>> 解决方法 <<<
    # 1. 手动安装
    #   (详见“方法二:手动安装”)
    
    # 2. 用OpenJDK替代
    # 2.1 更新软件包列表
    sudo apt-get update
    # 2.2 安装openjdk
    sudo apt-get install openjdk-8-jdk
    # 2.3 查看是否安装成功
    java -version
    

6. 【服务器】图形化界面

6.1 流程

  1. 服务器开启VNC使用的端口
  2. 服务器安装Ubuntu桌面与VNC Server
  3. 客户端安装VNC Viewer
  4. 连接

6.2 服务器开启VNC使用的端口

  1. 进入安全组
  1. 添加安全组规则

⚠️ 注意:若端口未开启,用VNC Viewer连接时会出现如下提示:

6.3 服务器安装Ubuntu桌面与VNC Server

# 1. 更新apt
sudo apt-get update && sudo apt-get upgrade -y

------------------------
# 2. 安装桌面
# 安装过程中,若出现是否将系统文件改为新版本的提示,请输入'y'并回车
# 安装过程大概持续10min
sudo apt-get install ubuntu-desktop gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

------------------------
# 3. 安装VNC Server
sudo apt-get install vnc4server

------------------------
# 4. 启动VNC Server并创建一个会话
# >>> 注意'vncserver'与':'间有一个空格 <<<
# 接下来需设置密码
vncserver :1

------------------------
# 5. 关闭会话
vncserver -kill :1

------------------------
# 6. 编辑~/.vnc/xstartup
# 该文件只有在第一次启动VNC Sever后才会创建
nano ~/.vnc/xstartup

# >>> nano部分操作:'ctrl + o' 保存, 'Enter' 确认,'ctrl + x' 退出 <<<
# 7. 将文件改为:

#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
x-window-manager &

gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
# 8. 再次打开VNC Server
vncserver :1

6.4 客户端安装VNC Viewer(略)

获取VNC Viewer

6.5 连接🔗

  1. 输入服务器IP + :1,回车
  1. 输入密码(命令行第一次输入vncserver :1后设置的密码),点击OK
  1. √ 大功告成!😆
再测试一下网络~

7. 安装Hadoop 🐘

7.1 流程

  1. 电脑端下载Hadoop 2.7.1(略)
  2. 将Hadoop压缩包用WinSCP上传至Linux服务器(同5.1.3,略)
  3. 解压并安装Hadoop 2.7.1

7.2 解压并安装Hadoop 2.7.1

# 1. 解压
# 1.1 解压到/usr/local目录下
sudo tar -zxvf  hadoop-2.7.1.tar.gz -C /usr/local

# 1.2 进入到/usr/local目录
cd /usr/local

# 1.3 重命名为hadoop
sudo mv hadoop-2.7.1 hadoop

# 1.4 修改文件权限
sudo chown -R hadoop ./hadoop


------------------------
# 2. 配置环境变量
# 2.1 编辑.bashrc
vim ~/.bashrc

# 2.2 添加如下内容
# Hadoop Environment
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

# 2.3 使环境变量马上生效
source ~/.bashrc

# 2.4 查看是否安装成功
hadoop version
# 3. 在hadoop-env.sh中添加jdk路径
# 3.1 进入到/usr/local/hadoop/etc/hadoop目录
cd /usr/local/hadoop/etc/hadoop

# 3.2 编辑hadoop-env.sh
vim hadoop-env.sh

# 3.3 修改JAVA_HOME值
# 修改前:export JAVA_HOME=${JAVA_HOME}
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_241
# 4. 依旧是在/usr/local/hadoop/etc/hadoop目录下,修改两个配置文件

# 4.1 修改core-site.xml文件
# 4.1.1 编辑core-site.xml
vim core-site.xml

# 4.1.2 添加如下配置内容
<configuration>
        <property>
             <name>hadoop.tmp.dir</name>
             <value>file:/usr/local/hadoop/tmp</value>
             <description>Abase for other temporary directories.</description>
        </property>
        <property>
             <name>fs.defaultFS</name>
             <value>hdfs://localhost:9000</value>
        </property>
</configuration>

----------------
# 4.2 修改hdfs-site.xml文件
# 4.2.1 编辑core-site.xml
vim hdfs-site.xml

# 4.2.2 添加如下配置内容
<configuration>
        <property>
             <name>dfs.replication</name>
             <value>1</value>
        </property>
        <property>
             <name>dfs.namenode.name.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/name</value>
        </property>
        <property>
             <name>dfs.datanode.data.dir</name>
             <value>file:/usr/local/hadoop/tmp/dfs/data</value>
        </property>
</configuration>


------------------------
# 5. 启动hadoop
# 5.1 进入/usr/local/hadoop
cd /usr/local/hadoop

# 5.2 执行NameNode格式化
./bin/hdfs namenode –format

# 5.3 启动Namenode和Datanode进程
./sbin/start-dfs.sh

# 5.4 查看启动结果
jps

7.3 jps下无NameNode进程的一种解决方法🕺🏻

# 1. 关闭dfs
stop-dfs.sh

# 2. 格式化namenode
hadoop namenode -format

# 3. 重启服务
start-all.sh

8. 安装HBase

8.1 流程

  1. 电脑端下载HBase 1.6.0(略)
  2. 将HBase压缩包用WinSCP上传至Linux服务器(同5.1.3,略)
  3. 解压并安装HBase 1.6.0

8.2 解压并安装HBase 1.6.0

# 1. 解压
# 1.1 解压到/usr/local目录下
sudo tar -zxf hbase-1.6.0-bin.tar.gz  -C/usr/local  

# 1.2 进入/usr/local目录
cd /usr/local

# 1.3 重命名
mv ./hbase-1.6.0 ./hbase

# 1.4 修改权限
sudo chown -R hadoop:hadoop  ./hbase  


------------------------
# 2. 配置命令行环境变量
# 2.1 编辑/etc/profile
vim /etc/profile

# 2.2 添加环境变量
export HBASE_HOME=/usr/local/hbase
export PATH=$HBASE_HOME/bin:$PATH
# 3. 修改hbase的配置文件/conf/hbase-env.sh
# 3.1 编辑hbase-env.sh
vim /usr/local/hbase/conf/hbase-env.sh

# 3.2 添加如下内容
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_241
export HBASE_MANAGES_ZK=true
# 4. 编辑.xml配置文件 conf/hbase-site.xml
# 4.1 编辑hbase-site.xml
vim /usr/local/hbase/conf/hbase-site.xml

# 4.2 添加如下内容
<configuration>
        <property>
                <name>hbase.rootdir</name>
                <value>hdfs://localhost:9000/hbase</value>
                <description>数据存放的位置。</description>
        </property>
        <property>
                <name>hbase.cluster.distributed</name>
                <value>true</value>
        </property>
        <property>
                <name>hbase.zookeeper.quorum</name>
                <value>localhost</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
                <description>指定副本个数为1,因为伪分布式。</description>
        </property>
</configuration>
# 5. 启动HBase
# >>> 启动HBase之前,确保Hadoop是运行正常的 <<<
# >>> 命令行输入jps,显示有4个Java进程 <<<
# >>> 分别是:jps、NameNode、DataNode、SecondaryNameNode <<<
start-hbase.sh

# 启动HBase后,再次执行jps会新增3个Java进程
# 分别是:HMaster、HRegionServer、HQuorumPeer

浏览器访问localhost:16010,会进入到Web管理页面

⚠️ 注意:HBASE1.0之前的版本端口为60010

至此,Ubuntu Linux服务器上的HBase数据库就安装完成啦!🎉🥳🎉

不如听首我写的歌放松一下叭~


9. 参考资料

  • 10
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值