Hadoop伪分布式搭建
来源:互联网 发布:怎么复制淘宝宝贝视频 编辑:程序博客网 时间:2024/05/14 19:35
安装虚拟机及linux系统(本文以CentOS为例)
请自行百度.
创建hadoop用户
# 创建hadoop用户(su root用户创建)useradd -m hadoop -s /bin/bash# 设置密码passwd hadoop
切换到hadoop用户登陆linux.
修改主机名
sudo vim /etc/hostname# 在haotname中输入用户名,再次以 ylitech为例.# (若不能使用sudo:)# 切换到root用户,为/etc/sudoers文件添加写权限:chmod u+w /etc/sudoers# vim /etc/sudoers# 复制 root ALL ... 那一行# 把root改为自己的用户名.保存退出:wq
修改映射
sudo vim /etc/hosts# 在文件中添加本机Ip(ifconfig可以查看ip) 和用户名# 例:192.168.160.130 ylitech
配置ssh免密码登陆
首先测试ssh是否安装,
rpm -qa | grep ssh
若返回的结果中包括SSH client和SSH server ,则不需要再安装.
若为安装,通过:
sudo yum install openssh-clientssudo yum install openssh-server
接着执行ssh localhost
测试ssh是否可用,exit
可以退出ssh。
设置免密码登陆:
cd ~/.sshssh-keygen -t rsa # 通过ssh-keygen命令来生成密钥对在.ssh目录下(会有提示,回车即可)。# 此命令执行后,会在~/.ssh目录下生成私钥id_rsa 和公钥id_rsa.pubcat id_rsa.pub >> authorized_keys # 将id_rsa.pub中的公钥信息保存到authorized_keys中.chmod 600 ./authorized_keys # 修改文件授权.
这时再用ssh localhost命令,无需密码即可直接登陆。
JDK的安装.
到网上下载jdk,本例使用的是jdk-9.0.1
# 首先使用tar命令解压jdk到/usr/local目录下.sudo tar -zxvf jdk-9.0.1_linux-x64_bin.tar -C /usr/local# 接着需要配置JAVA环境变量.vim ~/.bashrc# 在文件最后添加export JAVA_HOME=/usr/local/jdk-9.0.1-1export PATH=$JAVA_HOME/bin:$PATH# 接下来需要使用source命令是环境变量生效.source ~/.bashrc
若环境变量配置正确,在终端输入java -version即可查看java版本.
安装hadoop
同上,在网上下在hadoop,(在此以hadoop-2.8.2为例)
sudo tar -zxvf hadoop-2.8.2.tar.gz -C /usr/local# 将hadoop解压到/usr/localsudo mv hadoop-2.8.2 hadoop # 将文件夹重命名为hadoop(可选,方便后续添加环境变量)sudo chown hadoop:hadoop hadoop # 将hadoop文件夹所属用户和组修改为hadoop用户和hadoop组.
若安装成功,在cd /usr/local/hadoop
文件夹下输入./bin/hadoop version
即可查看hadoop版本.
Hadoop伪分布式配置
1> 配置环境变量
vim ~/.bashrc# 在文件最后添加:export HADOOP_HOME=/usr/local/hadoopexport HADOOP_INSTALL=$HADOOP_HOMEexport HADOOP_MAPRED_HOME=$HADOOP_HOMEexport HADOOP_COMMON_HOME=$HADOOP_HOMEexport HADOOP_HDFS_HOME=$HADOOP_HOMEexport YARN_HOME=$HADOOP_HOMEexport HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/nativeexport PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin# 保存推出 :wq# 使用source命令,是环境变量生效.source ~/.bashrc
2> 修改/usr/local/hadoop/etc/hadoop 文件夹下的core-site.xml配置文件.
默认情况下,Hadoop将数据保存在/tmp下,当重启系统时,/tmp中的内容将被自动清空,所以我们需要制定自己的一个Hadoop的目录,用来存放数据。另外需要配置Hadoop所使用的默认文件系统,以及Namenode进程所在的主机。
<configuration><property> <!-- 指定hadoop运行时产生文件的存储路径 --> <name>hadoop.tmp.dir</name <value>file:/usr/local/hadoop/tmp</value> <description>A base for other temporary directories.</description></property><property> <!-- hdfs namenode的通信地址 --> <name>fs.defaultFS</name> <value>hdfs://ylitech:9000</value></property></configuration>
3> 修改hdfs-site.xml配置文件.
该文件指定与HDFS相关的配置信息。需要修改HDFS默认的块的副本属性,因为HDFS默认情况下每个数据块保存3个副本,而在伪分布式模式下运行时,由于只有一个数据节点,所以需要将副本个数改为1;否则Hadoop程序会报错。
<configuration><property> <!-- 指定HDFS存储数据的副本数目,默认情况下是3份--> <name>dfs.replication</name> <value>1</value></property><property> <!-- name node 存放 name table 的目录 --> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value></property><property><!-- data node 存放数据 block 的目录 --> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value></property></configuration>
4> mapred-site.xml配置
在该配置文件中指定与MapReduce作业相关的配置属性,需要指定JobTracker运行的主机地址。
/usr/local/hadoop/etc/hadoop文件夹中并没有mapred-site.xml文件,但提供了模板mapred-site.xml.template 将其重命名为mapred-site.xml 即可。
mv mapred-site.xml.template mapred-site.xmlvim mapred-site.xml# 修改配置文件:<configuration><property> <!-- 指定mapreduce 编程模型运行在yarn上 --> <name>mapreduce.framework.name</name> <value>yarn</value></property></configuration>
5> 修改yarn-site.xml配置文件
vim yarn-site.xml<configuration><property> <!-- mapreduce执行shuffle时获取数据的方式 --> <name>yarn.nodemanager.auxservices</name> <value>mapreduce_shuffle</value></property></configuration>
Hadoop namenode格式化
hdfs namenode -format# 成功的话会看到"successfully formatted" 和 "Exitting with status 0" 的提示,若为 "Exitting with status 1" 则是出错。
关闭防火墙
sudo service iptables stop # 关闭防火墙服务。sudo chkconfig iptables off # 禁止防火墙开机自启。
Hadoop启动
cd /usr/local/hadoop/sbin./start-all.sh # 启动所有的hadoop服务,包括hdfs和yarn.
命令执行完成后输入jps命令若有5个进程:namenode、secondarynamenode、datanode、resourcemanager、nodemanager,则表示启动成功。
可以通过web访问http://ylitech:50070 查看NameNode和DataNode信息。
访问web界面:http://ylitech:8088 可以查看mapreduce运行情况。
至此hadoop伪分布式即安装成功。
- hadoop伪分布式搭建
- hadoop伪分布式搭建
- hadoop 伪分布式搭建
- hadoop伪分布式搭建
- hadoop伪分布式搭建
- Hadoop伪分布式搭建
- Hadoop伪分布式搭建
- hadoop伪分布式搭建
- Hadoop伪分布式搭建
- hadoop伪分布式搭建
- hadoop伪分布式搭建
- Hadoop伪分布式搭建
- 搭建hadoop伪分布式
- hadoop伪分布式搭建
- hadoop伪分布式搭建
- 搭建hadoop伪分布式
- hadoop伪分布式搭建
- hadoop伪分布式搭建
- 强化学习(二)----- 马尔可夫决策过程MDP
- android开发之获取一个页面的源代码用一个textview显示出来
- Java发邮件测试,QQ总是出现错误A secure connection is requiered(such as ssl). More information at
- ubuntu下运行caffe下的“Hello World”——mnist手写体数字识别例程
- java 反射机制-学习笔记(4)
- Hadoop伪分布式搭建
- c 练习三
- java语言学习笔记(一)之初始java
- 强化学习(三)----- MDP的动态规划解法
- jQuery----文档加载事件
- druid源码研究之Filter
- 自定义回调控制OSG模型进行移动操作
- 2017秦皇岛ICPC
- Matlab学习笔记--数值计算