Centos7 大数据组件安装

news2024/10/5 17:17:11

Java 安装

下载JDK

查看Linux 服务区的操作系统位数,下载适合的JKD安装包

[root@master ~]# getconf LONG_BIT
64

下载jdk-8u361

解压安装JDK

tar -zxvf jdk-8u361-linux-x64.tar.gz -C /usr/local

添加JAVA 环境变量

执行命令 vi ~/.bash_profile 在~/.bash_profile文件中增加Java环境变量

export JAVA_HOME=/usr/local/jdk1.8.0_361
export JAVA_BIN=$JAVA_HOME/bin
export JAVA_LIB=$JAVA_HOME/lib
export CLASSPATH=.:$JAVA_LIB/tools.jar:$JAVA_LIB/dt.jar
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$JAVA_BIN
 
export PATH

最后 source ~/.bash_profile

验证JAVA是否安装成功

[root@master src]# java -version
java version "1.8.0_361"
Java(TM) SE Runtime Environment (build 1.8.0_361-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.361-b09, mixed mode)

修改host

[root@master ~]# vim /etc/hosts
## 在文件末尾添加一行
127.0.0.1   hadoop001

创建hadoop 用户

useradd hadoop

给普通用户设置超级管理的权限

/etc/sudoers文件默认情况下是只读的,若要修改它需要为其添加写权限,使用命令 chmod u+w /etc/sudoers

chmod u+w /etc/sudoers

编辑/etc/sudoers, 在 root ALL=(ALL) ALL 这一行下面添加一行

## 为 hadoop 用户添加 sudo 权限,sudo 时需要键入密码
hadoop  ALL=(ALL)       ALL:

修改完毕,保存文件,取消掉 /etc/sudoers 的写权限

chmod u-w /etc/sudoers

Hadoop 安装[单机版]

Hadoop 下载

hadoop-3.2.3

Hadoop 安装

tar -zxvf hadoop-3.2.3.tar.gz -C /usr/local/

添加Hadoop 环境变量

vim ~/.bash_profile

export HADOOP_HOME=/usr/local/hadoop-3.2.3
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$JAVA_BIN:`$HADOOP_HOME/bin:$HADOOP_HOME/sbin`

修改hadoop 配置

配置目录 $HADOOP_HOME/etc/hadoop

hadoop-env.sh

export JAVA_HOME=/usr/local/jdk1.8.0_361
export HADOOP_HOME=/usr/local/hadoop-3.2.3

mapred-site.xml

<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
                <final>true</final>
                <description>The runtime framework for executing MapReduce jobs</description>
        </property>
        <property>
                <name>yarn.app.mapreduce.am.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop-3.2.3</value>
        </property>
        <property>
                <name>mapreduce.map.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop-3.2.3</value>
        </property>
        <property>
                <name>mapreduce.reduce.env</name>
                <value>HADOOP_MAPRED_HOME=/usr/local/hadoop-3.2.3</value>
        </property>
</configuration>

core-site.xml

参数
fs.default.nameNameNode的IP地址及端口
<configuration>
        <property>
                <name>fs.default.name</name>
                <value>hdfs://hadoop001:9001</value>
        </property>
</configuration>

hdfs-site.xml

参数
dfs.namenode.name.dirNameNode 存储名字空间及汇报日志的位置
dfs.datanode.data.dirDataNode 存储数据块的位置
<configuration>
        <property>
                <name>dfs.replication</name>
                <value>1</value>
        </property>
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>/home/hadoop/dfs/namenode</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>/home/hadoop/dfs/datanode</value>
        </property>
        <property>
                <name>dfs.http.address</name>
                <value>0.0.0.0:50070</value>
        </property>
</configuration>

yarn-site.xml

<configuration>
        <!-- Site specific YARN configuration properties -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
                <final>true</final>
        </property>
</configuration>

启动Hadoop

格式化NameNode

第一次启动HDFS需要先进行格式化

hdfs namenode -format

启动NameNode && 启动DataNode

hdfs --daemon start namenode
hdfs --daemon start datanode
jps
bash-4.2$ jps
11526 NameNode
11643 DataNode
11679 Jps

如果启动失败,可以查看%HADOOP_HOME%/logs/ 目录下的日志进行错误排查

访问HDFS的管理界面

输入 http://192.168.1.128:50070/
在这里插入图片描述

本机SSH免密码登录配置

关闭防火墙和SELinux(root权限)

永久有效

修改 /etc/selinux/config 文件中的 SELINUX=enforcing 修改为 SELINUX=disabled ,然后重启

临时生效

setenforce 0

配置sshd(root权限)

编辑 /etc/ssh/sshd_config 文件,使用命令:vi /etc/ssh/sshd_config ,去掉以下3行的 “#” 注释

RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile      .ssh/authorized_keys

重启 sshd 服务,使用命令:systemctl restart sshd.service

生成秘钥(普通用户权限)

从 root 用户切换到hadoop 用户. 执行命令 ssh-keygen -t rsa 来生成秘钥

将公钥导入到认证文件(普通用户权限

cat /home/hadoop/.ssh/id_rsa.pub >> /home/hadoop/.ssh/authorized_keys

设置认证文件访问权限(普通用户权限

chmod 700 /home/hadoop/.ssh
chmod 600 /home/hadoop/.ssh/authorized_keys

启动Yarn

bash-4.2$ start-yarn.sh
Starting resourcemanager
resourcemanager is running as process 13040.  Stop it first and ensure /tmp/hadoop-hadoop-resourcemanager.pid file is empty before retry.
Starting nodemanagers
bash-4.2$ jps
13040 ResourceManager
13731 Jps
12824 NameNode
12687 DataNode
13583 NodeManager

查看YARN的管理界面

在这里插入图片描述

MapReduce测试

bash-4.2$ hdfs dfs -mkdir /input    # 在HDFS根目录下创建input目录
bash-4.2$ hdfs dfs -mkdir /output   # 在HDFS根目录下创建output目录
bash-4.2$ hdfs dfs -ls /           # 查看HDFS根目录下文件列表

Found 2 items
drwxr-xr-x   - hadoop supergroup          0 2023-05-29 16:30 /input
drwxr-xr-x   - hadoop supergroup          0 2023-05-29 16:30 /output

其他命令

hdfs dfs -put src out # 文件夹上传
hdfs dfs -get src out # 文件夹下载
hdfs dfs -cat # 文件查看
hdfs dfs -rm -r # 删除

Spark 安装[单机版]

Spark 下载

spark-3.0.0-without-hadoop

解压安装

# 解压安装包并移动到/usr/local/下
sudo tar -zxvf spark-3.0.0-bin-without-hadoop.tgz
sudo mv ./spark-3.0.0-bin-without-hadoop/ /usr/local/spark

环境配置

sudo vim /etc/profile

export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin

配置 ${SPARK_HOME}/conf/spark-env.sh 文件关联 spark-without-hadoop 和 hadoop【非without版本无需配置】

bash-4.2$ sudo cp spark-env.sh.template spark-env.sh
bash-4.2$ vim spark-env.sh

# 添加以下内容
# 实际就是执行时在 CLASSPATH 中加入 Hadoop 的 Jar 包 【要根据Hadoop的安装路径配置】
export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop-3.2.3/bin/hadoop classpath)

Local模式

Local 模式是最简单的一种运行方式,它采用单节点多线程方式运行,适合日常测试开发使用

bash-4.2$ spark-shell --master local[*]
  • local:只启动一个工作线程
  • local[k]:启动 k 个工作线程
  • local[*]:启动跟 cpu 数目相同的工作线程数

在这里插入图片描述

spark 测试

进入 spark-shell 后,程序已经自动创建好了上下文 SparkContext ,等效于执行了下面的 Scala 代码

import org.apache.spark.SparkConf
import org.apache.spark.SparkContext

val conf = new SparkConf().setAppName("Spark shell").setMaster("local[*]")
val sc = new SparkContext(conf)

准备一个词频统计的文件样本 word.txt

hadoop,spark,hive
spark,hive,hbase,kafka
hadoop,hive,spark

执行如下 Scala 语句

sc
.textFile("file:///home/spark/testFile/word.txt")
.flatMap(_.split(","))
.map((_, 1))
.reduceByKey(_ + _)
.saveAsTextFile("file:///home/spark/testFile/wordCount")

词频统计的结果

[root@master wordCount]# cat /home/spark/testFile/wordCount/part-00000
(hive,3)
(kafka,1)

通过 Web UI 查看作业的执行情况, 访问端口为 4040
在这里插入图片描述

参考资料

  • CentOS7下Hadoop3.2.1的安装与部署(单机模式)
  • Spark【环境搭建 01】spark-3.0.0-without 单机版

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1619416.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux系统编程——进程

一、进程相关概念 面试中关于进程&#xff0c;应该会问的的几个问题&#xff1a; 1.1 什么是程序&#xff1f;什么是进程&#xff1f;有什么区别&#xff1f; 程序是静态的概念&#xff0c;比如&#xff1a; 磁盘中生成的a.out文件&#xff0c;就叫做&#xff1a;程序 进程…

记录一下用MobaXterm建立隧道的配置

【为什么要建立隧道】 在公司环境中&#xff0c;我们通过本地Windows机器没法直接访问公司的服务器&#xff08;安全考虑&#xff0c;都装了防火墙&#xff09;&#xff0c;要访问公司服务器的通常做法是&#xff0c;在本机安装个代理插件&#xff08;如Proxy SwitchyOmega&am…

维基百科、百度百科和搜狗百科词条的创建流程

随着网络的发展&#xff0c;百度百科、搜狗百科、维基百科等百科网站已经成为大众获取知识的重要途径。因为百科具有得天独厚的平台优势&#xff0c;百科上的信息可信度高&#xff0c;权威性强。所以百科平台也成为商家的必争之地。这里小马识途聊聊如何创建百度百科、搜狗百科…

网络安全之CSRFSSRF漏洞(上篇)(技术进阶)

目录 一&#xff0c;CSRF篇 二&#xff0c;认识什么是CSRF 三&#xff0c;实现CSRF攻击的前提 四&#xff0c;实战演练 【1】案例1 【2】案例2 【3】案例3 【4】案例4&#xff08;metinfo&#xff09; 一&#xff0c;CSRF篇 二&#xff0c;认识什么是CSRF CSRF&#x…

coredns部署

coredns部署 coredns部署 一&#xff1a;coredns-rbac.yaml apiVersion: v1 kind: ServiceAccount metadata:name: corednsnamespace: kube-systemlabels:kubernetes.io/cluster-service: "true"addonmanager.kubernetes.io/mode: Reconcile --- apiVersion: rbac…

NXP恩智浦 S32G电源管理芯片 VR5510 安全概念 Safety Concept (万字长文详解,配21张彩图)

NXP恩智浦 S32G电源管理芯片 VR5510 安全概念 Safety Concept (万字长文详解&#xff0c;配21张彩图) 1. 简介 本应用笔记描述了与S32G处理器和VR5510 PMIC相关的安全概念。该文档涵盖了S32G和VR5510的安全功能以及它们如何相互作用&#xff0c;以确保对ASIL D安全完整性级别…

I2C,UART,SPI(STM32、51单片机)

目录 基本理论知识&#xff1a; 并行通信/串行通信&#xff1a; 异步通信/同步通信&#xff1a; 半双工通信/全双工通信: UART串口&#xff1a; I2C串口&#xff1a; SPI串口&#xff1a; I2C在单片机中的应用&#xff1a; 软件模拟&#xff1a; 51单片机&#xff1a;…

【计算机网络】(三)物理层 - 通信基础

文章目录 【计算机网络】&#xff08;三&#xff09;物理层 - 通信基础前言3.1 物理层的基本概念3.2 数据通信的基础知识3.2.1 数据、信号、码元3.2.2 信源、信宿、信道3.2.3 编码、调制3.2.3.1 基带调制&#xff08;编码&#xff09;3.2.3.2 带通调制&#xff08;调制&#xf…

视频改字祝福 豪车装X系统源码uniapp前端源码

uniapp视频改字祝福 豪车装X系统源码 全开源,只有uniapp前端,API接口需要寻找对应的。 创意无限!AI视频改字祝福,豪车装X系统源码开源,打造个性化祝福视频不再难! 想要为你的朋友或家人送上一份特别的祝福,让他们感受到你的真诚与关怀吗?现在, 通过开源的AI视频改字…

智慧园区引领产业智慧化:深入探索智慧技术如何点亮园区创新发展之路,构建未来产业生态圈,驱动区域经济持续升级

目录 一、引言 二、智慧园区的内涵与特征 三、智慧技术点亮园区创新发展之路 1、智慧技术推动产业转型升级 2、智慧技术促进新兴产业发展 3、智慧技术提升园区创新能力 四、智慧园区在产业智慧化中的作用与价值 1、优化资源配置&#xff0c;提高经济效益 2、提升服务品…

Meta和多表继承,继承与反向关系

1. Meta和多表继承 在Django模型多表继承中&#xff0c;子类不会继承父类中的Meta类。所有的Meta类属性已被应用至父类&#xff0c;在子类中再次应用则会导致行为冲突。因此&#xff0c;子类模型无法访问父类中的Meta类。 不过也有例外情况&#xff0c;若子类未指定ordering属…

单片机使用循环来实现延时和定时器延时的区别是什么?

循环延时是一种简单的实现方式&#xff0c;但由于资源占用和精确度的限制。我这里有一套嵌入式入门教程&#xff0c;不仅包含了详细的视频 讲解&#xff0c;项目实战。如果你渴望学习嵌入式&#xff0c;不妨点个关注&#xff0c;给个评论222&#xff0c;私信22&#xff0c;我在…

FPGA秋招-笔记整理(2)

一、数字IC前端设计的主要流程 参考&#xff1a;数字IC前端设计流程及工具【RTL设计功能仿真】【综合】【DFT】【形式验证】【STA静态时序分析】 以门级网表&#xff08;Netlist&#xff09;的生成为界限&#xff0c;将整个流程分为前端和后端。 布局布线之前可以认为是前端…

sudo的设置

sudo指令就是提高你的用户权限&#xff0c;用来完成root可以完成的工作&#xff0c;但是有一个前提&#xff0c;就是被root添加到信任名单中&#xff0c;接下来我们要讲解如何在root中添加用户到信任名单中。 在root中输入指令&#xff1a; 即可到达添加信用列表的位置&#x…

书生·浦语大模型第二期实战营第四节-XTuner 微调 LLM:1.8B、多模态、Agent 笔记

来源&#xff1a; 视频来源&#xff1a;XTuner 微调 LLM&#xff1a;1.8B、多模态、Agent 1. XTuner 微调 LLM&#xff1a;1.8B、多模态、Agent 1.1 为什么要微调 1.2 两种Finetune范式 在LLM的下游应用中&#xff0c;增量预训练和指令跟随是经常会用到的两种微调模式。 增…

基于Python+Selenium+Pytest的Dockerfile如何写

使用 Dockerfile 部署 Python 应用程序与 Selenium 测试 在本文中&#xff0c;我们将介绍如何使用 Dockerfile 部署一个 Python 应用程序&#xff0c;同时利用 Selenium 进行自动化测试。我们将使用官方的 Python 运行时作为父镜像&#xff0c;并在其中安装所需的依赖项和工具…

sql server 恢复数据库、单表数据的方法

1、查看备份文件在哪个路径、一般文件夹名都是叫&#xff1a;Backup 2、下面开始还原&#xff08;恢复&#xff09;数据库&#xff0c;对着【数据库】右键--【新建数据库】--然后随便命名&#xff0c;如下图 3、你要是想改路径的话就拉过来&#xff0c;2行都要改、不想多事就直…

(四)Servlet教程——Maven的安装与配置

1.在C盘根目录下新建一个Java文件夹,该文件夹用来放置以下步骤下载的Maven&#xff1b; 2. 下载Maven的来源有清华大学开源软件镜像站和Apache Maven的官网&#xff0c;由于清华大学开源软件镜像站上只能下载3.8.8版本以上的Maven&#xff0c;我们选择在Apache Maven的官网上下…

Error: ‘\bibliographystyle‘ invalid for ‘biblatex‘.

这个错误是因为使用了 biblatex &#xff0c;而不是传统的 BibTeX&#xff0c; 而 \bibliographystyle命令只能用于 BibTeX。 我的就是上述原因&#xff0c;冲突问题。 一种解决方法&#xff1a; 注释掉原文中的\usepackage{biblatex}等和biblatex 有关内容

上汽大通:依托电子签网络,升级产业供应链协同

2023年12月&#xff0c;法大大发布了中国首部《汽车行业合同数智化白皮书》&#xff08;点击阅读及下载&#xff1a;中国首部&#xff01;《汽车行业合同数智化白皮书》重磅发布 | 附下载&#xff09;。该白皮书中基于法大大自身参与汽车行业合同数智化建设的实践和思考&#x…