博客 ubuntu下Hadoop以及Spark的伪分布式安装

ubuntu下Hadoop以及Spark的伪分布式安装

   数栈君   发表于 2024-05-11 10:28  523  0

1 准备安装之前:
1.1 安装前说明:
很多初学者在安装的时候会碰到各种各样的问题,尤其各种版本的搭配问题。所以特意做一个初步安装的引导,希望大家都能一次调试出来。

经过测试,jdk11 + scala2.13.13 + hadoop3.3.6+spark3.5.1,这是暂时来说scalsa2能支持的最完美的搭配。Hadoop能支持到的java最完美的最后版本为jdk11,后面的版本也可以使用,但是java 11后面的版本去掉了javax.activation,导致无法浏览服务端的文件夹以及文件。

1.2 安装顺序:
安装JDK(无需安装Jre,安装也没有影响)
安装Scala
安装ssh,并设置免密登录
安装Hadoop
配置YARN
安装Spark
2 安装前准备:
2.1 更新系统,确保ubuntu为最新版
sudo apt update

sudo apt upgrade

注:

旧版使用apt-get命令,新版也可以使用;
所有的默认安装目录都在/usr/local下;
下面凡是出现localhost的地方,都可以用具体ip地址或主机名替代。
2.2 为安装Hadoop做准备
2.2.1建立hadoop用户,并给出默认shell
sudo useradd -m hadoop -s /bin/bash

#等效命令

adduser hadoop

passwd hadoop

2.2.2 修改hadoop密码:
sudo passwd hadoop

2.2.3 增加hadoop用户的管理员权限
sudo adduser hadoop sudo

#下面是给hadoop赋予root权限

sudo nano /etc/sudoers

如果使用root为hadoop的默认用户,则使用root登录然后开始安装即可。

但是后续需要修改些东西,比如修改ssh的root登录问题(ubuntu下适用)

2.3 如果已经安装了新版本java,可以先彻底删除掉
删除java的过程:

2.3.1 查看是否安装了java
$ java -version

openjdk version "11.0.10" 2024-01-16

OpenJDK Runtime Environment (build 17.0.10+7-Ubuntu-122.04.1)

OpenJDK 64-Bit Server VM (build 17.0.10+7-Ubuntu-122.04.1, mixed mode, sharing)

#或者

update-alternatives --list java

#或者

type -p java

2.3.2 查找jdk安装包,包括jdk和jre
dpkg -l | grep -i jdk

#或者

dpkg -L openjdk-11-jdk

2.3.3 删除所有老版java
sudo apt --purge remove openjdk-11-jdk

sudo apt --purge remove openjdk-11-jdk-headless

sudo apt --purge remove openjdk-11-jre

sudo apt --purge remove openjdk-11-jre-headless

2.3.4 删除残余的java文件及文件夹
sudo rm -rf /usr/lib/jvm/*

2.3.5 查看环境变量中是否存在java
vim /etc/environment

3 安装JDK
3.1 安装JAVA
sudo apt-get install openjdk-11-jre openjdk-11-jdk

或者

sudo apt install openjdk-11-jre openjdk-11-jdk

3.2 配置JAVA_HOME
在~/.bashrc文件中添加JAVA_HOME,可添加到文件最后,如果使用的root用户,则.bashrc文件在/root下,其他用户都在/home/用户名 下。

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64

4 安装Scala
4.1 下载及安装Scala
因为Scala2与Scala3存在不少区别,所以建议下载Scala2,最新版本是2.13.13版。

4.2 安装步骤
4.2.1 建立一个下载文件夹
sudo mkdir 下载

#或者使用鼠标在桌面新建一个文件夹,名字叫”下载”

4.2.2 解压及安装
# 解压到/usr/local中

sudo tar -zxf ~/下载/scala-2.13.13.tgz -C /usr/local

cd /usr/local/

sudo mv ./scala-2.13.13 ./scala # 将文件夹名改为scala

# 修改文件权限,用hadoop用户拥有对scala目录的权限

sudo chown -R hadoop ./scala

在~/.bashrc文件中添加scala文件执行的路径

export PATH=$PATH:/usr/local/scala/bin

直接执行source命令,让路径生效

source ./bashrc

验证是否成功:

VM:/usr/local$ scala

Welcome to Scala 2.13.13 (OpenJDK 64-Bit Server VM, Java 17.0.10).

Type in expressions for evaluation. Or try :help.

scala>

5 安装ssh
5.1 安装过程
5.1.1 安装ssh
sudo apt install openssh-server

5.1.2 第一次登录自己需要输入密码
ssh localhost

5.1.3 切换到root用户
su -

如果不记得密码了

sudo passwd root

5.1.4 必须设置免密码登录,否则Hadoop启动会出问题,下面是修改步骤
首先修改sshd_config文件(/etc/ssh/sshd_conifg)

将PermitRootLogin prohibie-password 修改为:PermitRootLogin yes

将PasswordAuthentication 后修改为yes

方法1:

exit # 退出刚才的 ssh localhost

cat ./id_rsa.pub >> ./authorized_keys # 加入授权

cd ~/.ssh/ # 若没有该目录,请先执行一次ssh localhost,然后再输入命令

ssh-keygen -t rsa # 会有提示,都按回车就可以

方法2:

ssh-keygen -t rsa #指定密钥类型为rsa,一直回车就好

ssh-copy-id root@hadoop01 #将公钥复制到远程服务器

注:

ssh-keygen -t rsa -P ""

#-P ""的意思是指设置密钥对的密码为空。

#实际上没有意义,因为ssh-copy-id将公钥复制到远程服务器上了,等同于无需输入密钥。

测试:ssh root@主机名


《行业指标体系白皮书》下载地址:https://www.dtstack.com/resources/1057/?src=bbs

《数据治理行业实践白皮书》下载地址:https://www.dtstack.com/resources/1001/?src=bbs

《数栈V6.0产品白皮书》下载地址:https://www.dtstack.com/resources/1004/?src=bbs

想了解或咨询更多有关袋鼠云大数据产品、行业解决方案、客户案例的朋友,浏览袋鼠云官网:https://www.dtstack.com/?src=bbs

同时,欢迎对大数据开源项目有兴趣的同学加入「袋鼠云开源框架钉钉技术群」,交流最新开源技术信息,群号码:30537511,项目地址:https://github.com/DTStack

0条评论
社区公告
  • 大数据领域最专业的产品&技术交流社区,专注于探讨与分享大数据领域有趣又火热的信息,专业又专注的数据人园地

最新活动更多
微信扫码获取数字化转型资料
钉钉扫码加入技术交流群