前言:
目前我们对“centoshadoop”大概比较注意,小伙伴们都想要学习一些“centoshadoop”的相关内容。那么小编在网摘上网罗了一些对于“centoshadoop””的相关文章,希望兄弟们能喜欢,小伙伴们一起来了解一下吧!这里介绍如何安装Hadoop的伪分布式,步骤如下:
一、准备工作
参考我的博文 安装VMware15、CentOS7镜像官网下载、VMWare安装CentOS7超全图解、最小系统Centos7进行网络配置以及 ifconfig和vim的安装等博文安装好虚拟机,以及用远程连接工具S额cureCRT可以连接到虚拟机上传下载文件。
1、安装java
可以选择上jdk官网下载jdk包,解压后将路径加入环境变量,这里直接用如下命令安装。
yum install -y java-1.8.0-openjdk.x86_642、添加环境变量
echo 'export JAVA_HOME=/usr/lib/jvm/jreexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/tools.jar' >> /etc/profilesource /etc/profile3、关闭防火墙
systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动4、关闭selinux
打开 /etc/sysconfig/selinux 文件把 SELINUX=enforcing 改为:SELINUX=disabled。
5、设置Hostname
我把机器的Hostname设置为worker1,并在/etc/hosts里添加Hostname指向内网IP。
hostnamectl set-hostname worker1echo '192.168.157.3 worker1' > /etc/hosts二、搭建hadoop-2.8.5伪分布式环境1、创建hadoop用户
useradd hadooppasswd hadoop2、设置hadoop用户免密登录
hadoop用户登录
cd /home/hadoopssh-keygen
cat命令输出Key,写入到/home/hadoop/.ssh/authorized_keys中,并设置权限,用于机器自己登录自己:
cat /home/hadoop/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keys
测试登录
ssh worker1yesexit # 退出刚登录的hadoop会话3、下载hadoop-2.8.5并上传到hadoop用户根目录
hadoop用户根目录这里是/home/hadoop
去Hadoop的官方网站上选择安装包:
上传的话这里借助WinSCP工具,本人觉得贼好用。
4、解压并配置环境变量
切换到hadoop用户(su hadoop)
cd ~tar -zxvf hadoop-2.8.5.tar.gz
切换回root,配置环境变量
exit echo 'export HADOOP_HOME="/home/hadoop/hadoop-2.8.5"export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH' >> /etc/profilesource /etc/profile5、hadoop配置文件添加JAVA_HOME环境变量
切换到hadoop用户
su hadoop
在如下两个文件第一行添加JAVA_HOME=/usr/lib/jvm/jre
${HADOOP_HOME}/etc/hadoop/hadoop-env.sh${HADOOP_HOME}/etc/hadoop/mapred-env.sh6、修改core-site.xml、hdfs-site.xml 配置文件
# core-site.xmlecho '<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration> <property> <name>fs.defaultFS</name> <value>hdfs://worker1:9000</value> <description>设定namenode的主机名及端口</description> </property> <property> <name>io.file.buffer.size</name> <value>131072</value> <description> 设置缓存大小 </description> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/hadoop/hadoop-2.8.5/tmp</value> <description> 存放临时文件的目录 </description> </property> <property> <name>fs.checkpoint.period</name> <value>3600</value> <description> 检查点备份日志最长时间 </description> </property> <property> <name>hadoop.security.authorization</name> <value>false</value> </property></configuration>' > ${HADOOP_HOME}/etc/hadoop/core-site.xml# hdfs-site.xmlecho '<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration> <property> <name>dfs.replication</name> <value>1</value> <description>分片数量</description> </property> <property> <name>dfs.namenode.name.dir</name> <value>{hadoop.tmp.dir}/name</value> <description>命名空间和事务在本地文件系统永久存储的路径</description> </property> <property> <name>dfs.blocksize</name> <value>134217728</value> <description>HDFS块大小128M,如果你只有普通网线,就别64M了,没什么用</description> </property> <property> <name>dfs.datanode.data.dir</name> <value>{hadoop.tmp.dir}/data</value> <description>DataNode在本地文件系统中存放块的路径</description> </property></configuration>' > ${HADOOP_HOME}/etc/hadoop/hdfs-site.xml# slavesecho 'worker1' > ${HADOOP_HOME}/etc/hadoop/slaves
上面分片数量是1,是因为我们是伪分布式只有一个节点,如果是有多个节点那么最好配置为3,这样的话会更高可用。
三、格式化
mkdir -p ${HADOOP_HOME}/tmphdfs namenode -format四、启动测试
start-dfs.shstart-yarn.sh # 可选,暂时不启动没问题
浏览器访问:
上传文件
mkdir text.txthdfs -put text.txt /
浏览器访问 点击Utilities->Browse the file system 可以看到已经上传了一个文件:
到此,伪分布式环境搭建成功。
标签: #centoshadoop