文章目录
这里是一段防爬虫文本,请读者忽略。
本文原创首发于CSDN,作者IDYS
博客首页:https://blog.csdn.net/weixin_41633902/
本文链接:https://blog.csdn.net/weixin_41633902/article/details/105874991
写在开头的话
- 请记住:实践是掌握知识的最快方法
- 如果你只是怀着看看的态度去快速浏览文章,而不去认认真真的把文章里面讲的任何一个知识点去实践一遍,那么你永远也掌握不了它
- 生命不息,折腾不止!
前提环境准备
配置JAVA环境
将jdk安装包传输至你的Linux宿主机中
- 将jdk安装包传输到Linux当中
- 方法一:sftp方式(当然也可以用scp,或者是xshel的xftp,还有很多其它的sftp工具都可以)
- 在CRT里面按住ALT+P即可进入sftp模式
- put 你的Windows下jdk安装包的位置,如:
- put D:\Users\dayuanshuai\Desktop\jdk-8u212-linux-x64.tar.gz,现在即上传文件到你的Linux当中
- 方法二:lrzsz工具安装
- 在Linux中安装lrzsz安装包
- 执行rz(receive)从Linux中接收客户端文件
- sz(send)就是从linux中发送文件到客户端
[root@dayuanshuai java]# yum -y install lrzsz
[root@dayuanshuai java]# rz
- 方法三:安装VMware工具,最后直接将jdk安装包拖进去就ok了
- 挂载VMware-tool的ISO文件,然后将文件复制到/usr/local 下
- 解压VMware压缩包
- 直接vmware的脚本文件,不停回车即可安装完vmware-tool
- 最后直接可以把jdk安装包拖进虚拟机当中
- 方法四:建立VMware的磁盘映射,将jdk文件传到VMware当中
- 这种方式即为少见,我就不介绍了
操作jdk安装包,然后配置java环境
- 将jdk安装包移动到/usr/local/java下,并且解压
mkdir /usr/local/java
mv jdk-8u212-linux-x64.tar.gz /usr/local/java/
tar -zxvf jdk-8u212-linux-x64.tar.gz
- 编辑/etc/profile文件
JAVA_HOME=/usr/local/java/jdk1.8.0_212
JRE_HOME=/usr/local/java/jdk1.8.0_212/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
# 以上路径均为你jdk包存放的路径
- 重新执行profile文件
source /etc/source
- 查看java是否安装成功
[root@dayuanshuai ~]# java -version
java version "1.8.0_212"
[root@dayuanshuai ~]# java
用法: java [-options] class [args...]
(执行类)
或 java [-options] -jar jarfile [args...]
(执行 jar 文件)
....... #省略
[root@dayuanshuai ~]# javac
用法: javac <options> <source files>
其中, 可能的选项包括:
..... #省略
- 到此java安装成功
配置ssh免密登录
- 生成一对密钥对,执行
ssh-keygen -t rsa -b 2048
命令,这时你的家目录的.ssh目录下就有一对rsa密钥
- 关于
ssh-keygen
命令的参数解释-t
指定加密类型-b
指定密码长度
- 执行
ssh-copy-id 用户名@主机名
命令,然后输入对应的用户名密码,这时你就能实现免密登录某台主机对应的用户
#最开始登录自己主机对应的用户是需要输入密码的
[root@dayuanshuai ~]# ssh root@192.168.200.135
root@192.168.200.135's password:
Last login: Mon Apr 27 00:19:40 2020 from 192.168.200.1
your UID=0 your home=/root
# 生成密钥对
[root@dayuanshuai ~]# ssh-keygen -t rsa -b 2048
# 复制自己的公钥到主机对应用户的~/.ssh/authorized_keys里面
[root@dayuanshuai ~]# ssh-copy-id root@192.168.200.135
#输入主机对应用户的密码
root@192.168.200.135's password:
Now try logging into the machine, with "ssh 'root@192.168.200.135'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
# 这时再次登录,可以不用输入主机名对应用户的密码了,直接免密登录
[root@dayuanshuai ~]# ssh root@192.168.200.135
Last login: Mon Apr 27 00:33:39 2020 from dayuanshuai
your UID=0 your home=/root
安装Hadoop,及其hadoop配置
- 在
/usr/local/
下创建目录,然后再将Hadoop安装包复制到该目录下,之后再解压
#在/usr/local下创建bigdata_software目录
mkdir /usr/local/bigdata_software
# 移动hadoop安装包到/usr/local/bigdata_software/ 下
mv hadoop-2.4.1.tar.gz /usr/local/bigdata_software/
#解压Hadoop安装包
tar -zxvf hadoop-2.4.1.tar.gz
- 在
/etc/profile
下配置Hadoop环境
# 编辑/etc/profile文件
vim /etc/profile
HADOOP_HOME=/usr/local/bigdata_software/hadoop-2.4.1
# 前面PATH下前面的是java的配置,后面才是Hadoop的环境配置
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
# 环境变量导入
export JAVA_HOME JRE_HOME CLASS_PATH HADOOP_HOME PATH
- 编辑Hadoop的配置文件,文件包括:
core-site.xml
;hdfs-site.xml
;mapred-site.xml
;yarn-site.xml
hdfs-site.xml
的配置
# 配置分布式文件系统里面副本的备份个数,因为此为单机分布式,所以配置value值为1即可
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
core-site.xml
的配置
<configuration>
# fs.defaultFS配置uri,用户唯一资源标识符
<property>
<name>fs.defaultFS</name>
<value>hdfs://dayuanshuai:9000/</value>
</property>
# hadoop.tmp.dir即可配置Hadoop里hdfs生成的文件的存储目录
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/bigdata_software/hadoop-2.4.1/tmp</value>
</property>
</configuration>
mapred-site.xml
配置
# 首先完成改名,hadoop只会识别mapred-site.xml而是不mapred-site.xml.template
cp mapred-site.xml.template mapred-site.xml
# 编辑文件
vim mapred-site.xml
<configuration>
# 配置mapreduce的资源调度框架是基于谁的
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml
配置
<property>
# 资源调度的主机名,此处填写你的主机名,或者localhost都可以,dayuanshuai是我的主机名
<name>yarn.resourcemanager.hostname</name>
<value>dayuanshuai</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
- 添加Hadoop用户,并将Hadoop目录及其目录下所有的子目录文件的所属主和所属组全部分配给Hadoop
# 添加Hadoop组
useradd hadoop
# 分配所属主和所属组
chown -R hadoop:hadoop hadoop-2.4.1
- 跳转到hadoop用户下,格式化namenode
su - Hadoop
hadoop namenode -format
- 运行Hadoop
[hadoop@dayuanshuai ~]$ start-dfs.sh
[hadoop@dayuanshuai ~]$ start-yarn.sh
- 查看运行状态
[hadoop@dayuanshuai hadoo_tmp]$ jps
6630 DataNode
6535 NameNode
6810 SecondaryNameNode
7370 Jps
7054 NodeManager #yarn开启
- 查看开启端口数量
[hadoop@dayuanshuai hadoo_tmp]$ netstat -lntp
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:50010 0.0.0.0:* LISTEN 6630/java
tcp 0 0 0.0.0.0:50075 0.0.0.0:* LISTEN 6630/java
tcp 0 0 0.0.0.0:50020 0.0.0.0:* LISTEN 6630/java
tcp 0 0 192.168.200.135:9000 0.0.0.0:* LISTEN 6535/java
tcp 0 0 0.0.0.0:50090 0.0.0.0:* LISTEN 6810/java
tcp 0 0 0.0.0.0:50070 0.0.0.0:* LISTEN 6535/java
.... 省略
你可以通过浏览器进入Hadoop的50070端口查看Hadoop的使用情况
- 访问连接
http://192.168.200.135:50070/
;ip地址为你的Hadoop的IP地址
关于安装过程中的报错及其解决办法
提示信息:
WARN org.apache.hadoop.util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
- 其实就是无法加载Hadoop的本地库文件,因为本地库为32位,而我的机器,系统,包括安装包都是64位
解决办法:
- 升级依赖库文件
yum -y update glibc
- 编辑
/etc/profile
文件,添加如下配置
HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native
HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib"
export HADOOP_COMMON_LIB_NATIVE_DIR HADOOP_OPTS
- 编辑
hadoop-env.sh
文件,在末尾处添加如下文本
HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native
HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib"
export HADOOP_COMMON_LIB_NATIVE_DIR HADOOP_OPTS
- 编辑
yarn-env.sh
文件,在末尾添加如下文本
HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native
HADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib"
export HADOOP_COMMON_LIB_NATIVE_DIR HADOOP_OPTS
- 上传
hadoop-native-64-2.4.0.tar
文件,将其解压到$HADOOP_HOME/lib/native/
和$HADOOP_HOME/lib/
下
tar -xvf hadoop-native-64-2.4.0.tar -C hadoop-2.4.1/lib/native/
tar -xvf hadoop-native-64-2.4.0.tar -C hadoop-2.4.1/lib/
- 关于
hadoop-native-64-2.4.0.tar
文件的下载,链接如下:
- 重新读取
/etc/profile
文件,让配置的环境变量生效
source /etc/profile
至此Hadoop单机伪分布式已经全部安装完成
写在最后的话:
- 无论每个知识点的难易程度如何,我都会尽力将它描绘得足够细致
- 欢迎关注我的CSDN博客,IDYS’BLOG
- 持续更新内容:
linux基础 | 数据通信(路由交换,WLAN) | Python基础 | 云计算 - 如果你有什么疑问,或者是难题。欢迎评论或者私信我。你若留言,我必回复!
- 虽然我现在还很渺小,但我会做好每一篇内容。谢谢关注!