2015.07.12hadoop伪分布安装
hadoop伪分布安装
- Hadoop2的伪分布安装步骤【使用root用户用户登陆】other进去超级用户拥有最高的权限
1.1(桥接模式)设置静态IP ,,修改配置文件,虚拟机IP192.168.1.99重启网卡,网关192.168.1.1是物理机下面的默认网关,
执行命令
vi /etc/sysconfig/network-scripts/ifcfg-eh0
修改内容:
TYPE="Ethernet"
BOOTPROTO="static"
ONBOOT="yes"
IPADDR="192.168.1.99"
GATEWAY="192.168.1.1"
DNS1="192.168.1.1"
NETMASK=255.255.255.0
重启网卡,执行命令service network restart
验证:执行命令 ifconfig
1.2修改主机名(主机名类似于域名(baidu.com))
<1>修改当前会话中的主机名,执行命令hostname hadoop
<2>修改配置文件中的主机名,执行命令vi /etc/sysconfig/network
验证:重启机器reboot -h now
命令vi三种模式 只读,不能写
编辑,能读,也能写(敲击键盘a或i)
命令,需要执行命令(按Esc键,然后按Shift+:组合键,输入wq保存退出)
编辑文件强退时会产生(没保存时vi就自动保存成.a.swp)交换分区缓存文件(.a.swp) 查看隐藏文件使用命令ls -a
1.3把hostname和IP绑定
执行命令vi /etc/hosts,增加一行内容,如下
192.168.1.99 hadoop (虚拟机的IP地址)
保存退出。
验证:ping hadoop
1.4关闭防火墙
执行命令 service iptables stop
验证:service iptables status
1.5关闭防火墙的自动运行(防火墙重启后可能会自动启动)
执行命令 chkconfig iptables off
验证:chkconfig --list | grep iptables(chkconfig是检查自动运行的配置项,--list是显示所有结果)
1.6 ssh免密码登录(类似与telnet命令,是明文传输包括密码,不安全。ls /root/.shh/查看(重启命令service shhd restart)A要免密码登录B,A、B的自身shh是可以运行,A将公钥文件复制给B中的authorized_keys文件,A向B发送登录请求,B向A发送随机的字符串,A用私钥加密字符串后的数据发回B,B自身将公钥加密之前的字符串,然后对比加密后的数据,如果比对匹配则可通信,反之不可通信)
<1>执行命令ssh-keygen -t rsa(-t指定加密类型,rsa是加密的算法一种)产生密钥,位于~/.shh文件夹中(id_rsa.pub是公钥文件id_rsa是私钥文件)
<2>执行命令(将自己的公钥文件拷贝到其他机器)ssh-copy-id -i hadoop ((不安全偷懒)或者将crxy2的密钥文件拷贝到hadoop在crxy2执行命令scp /root/.ssh/* crxy1:/root/.shh/) (cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys)
验证:ssh localhost
主节点->(公钥)子节点,子节点->(字符串)主节点,主节点->(密钥加密字符串)自己公钥加密字符串配对
公钥到了对方那里会放到authorized_keys文件夹中,ssh验证的时候会读取authorized_keys文件夹的内容
2.7安装jdk
<1>执行命令rm -rf/usr/local/*删除所有内容(r是递归删除,f是强制删除*是全部)
<2>使用winscp把jdk文件从windows复制到/usr/local目录下
<3>执行命令 chmod u+x jdk-8u31-linux-x64.tar.gz 赋予执行权限
<4>执行命令(当前目录/usr/local/) tar -zxvf jdk-8u31-linux-x64.tar.gz(./jdk-6u24-linux-i586.bin 解压缩)
<5>执行命令 mv jdk-8u31 jdk 重命名
<6>执行命令 vi /etc/profile 设置环境变量,增加了2行内容
export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
保存退出
执行命令 source /etc/profile 让该设置立即生效
验证:java -version
位的,如果是32位需要编译)
<1>执行命令 tar -zxvf(z是压缩格式,x是解压,f是文件) hadoop-2.6.0.tar.gz进行解压缩
<2>执行命令 mv hadoop-2.6.0 hadoop 重命名
<3>执行命令 vi /etc/profile 设置环境变量,增加了1行内容
export HADOOP_HOME=/usr/local/hadoop
修改了1行内容
export PATH=.:$HADOOP_HOME:$JAVA_HOME/bin:$PATH
保存退出
执行命令 source /etc/profile 让该设置立即生效
<4>修改hadoop的配置文件,位于$HADOOP_HOME/etc/hadoop 目录下的
修改3个配置文件,分别是hadoop-env.sh、core-site.xml、hdfs-site.xml
注意:查看hadoop版本:进入位机器上需要编译源码,可是为什么要编译源码,编译源码后,会有什么效果。
1.为什么需要编译Java文件?
你写出来的都是*.JAVA文件,JVM能执行的都是*.CLASS文件,所以需要编译2.为什么要编译hadoop文件?
只有编译后的hadoop,才能被就jvm执行,才能被安装
位,64位。虚拟机编译的文件,只能运行于32虚拟机虚拟机编译的文件,只能运行于64虚拟机)关闭防火墙
参考一下
疑问:老师操设置完环境变量后并没有source /etc/profile就可以echo $JAVA_HOME,而我操作时却需要source /etc/profile才能echo $JAVA_HOME
注意细节,最后是</configuration>,不然就会报错。
HDFS伪分布搭建
修改配置文件etc/hadoop/hadoop-env.sh
JAVA_HOME=/usr/local/jdk(安装jdk所在的路径)
修改配置文件etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
</configuration>
//备注:<value>/usr/local/hadoop/tmp</value>(备注hadoop运行时产生的数据文件所存在的目录,具有读写权限)
修改配置文件etc/hadoop/hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>(指的是副本数)
</property>
</configuration>
格式化文件系统
$ bin/hdfs namenode -format(格式化)
启动hdfs集群:
$ sbin/start-dfs.sh
访问web浏览器:
(NameNode ) http://localhost:50070/
练习:
创建目录:
$ bin/hdfs dfs -mkdir /user
$ bin/hdfs dfs -mkdir /user/root
复制文件:
$ bin/hdfs dfs -put /etc/profile input
关闭集群:
$ sbin/stop-dfs.sh
启动不成功查看日志文件
用浏览器查看hdfs(http://hadoop:50070/)(能查看就说明HDFS已启动成功啦!恭喜恭喜!)
试验(验证hdfs是启动成功)
报错情况与解决办法:
配置文件修改错了!重新修改一次!
先停止hdfs(sbin/stop-all.sh),删除hadoop下的logs文件夹,然后再删除tmp文件夹,再格式化NameNode(bin/hdfs namenode -format),最后启动hdfs(sbin/start-all.sh)
2015.07.12hadoop伪分布安装的更多相关文章
- Hadoop学习记录(1)|伪分布安装
本文转载自向着梦想奋斗博客 Hadoop是什么? 适合大数据的分布式存储于计算平台 不适用小规模数据 作者:Doug Cutting 受Google三篇论文的启发 Hadoop核心项目 HDFS(Ha ...
- CentOS 6.5 伪分布安装
CentOS 6.5 伪分布安装 软件准备 jdk-6u24-linux-i586.bin .hadoop-1.2.1.tar.gz.hadoop-eclipse-plugin-1.2.1.jar ...
- hadoop 2.6伪分布安装
hadoop 2.6的“伪”分式安装与“全”分式安装相比,大部分操作是相同的,主要区别在于不用配置slaves文件,而且其它xxx-core.xml里的参数很多也可以省略,下面是几个关键的配置: (安 ...
- hadoop伪分布安装
解压 将安装包hadoop-2.2.0.tar.gz存放到/home/haozhulin/install/目录下,并解压 #将hadoop解压到/home/haozhulin/install路径下,定 ...
- Hadoop伪分布安装详解(五)
目录: 1.修改主机名和用户名 2.配置静态IP地址 3.配置SSH无密码连接 4.安装JDK1.7 5.配置Hadoop 6.安装Mysql 7.安装Hive 8.安装Hbase 9.安装Sqoop ...
- hadoop: hbase1.0.1.1 伪分布安装
环境:hadoop 2.6.0 + hbase 1.0.1.1 + mac OS X yosemite 10.10.3 安装步骤: 一.下载解压 到官网 http://hbase.apache.org ...
- 【hadoop之翊】——基于CentOS的hadoop2.4.0伪分布安装配置
今天总算是把hadoop2.4的整个开发环境弄好了,包括 windows7上eclipse连接hadoop,eclipse的配置和測试弄得烦躁的一逗比了~ 先上一张成功的图片,hadoop的伪分布式安 ...
- Hadoop-1.0.4伪分布安装与配置
1.采用伪分布模式安装 将hadoop-****.tar.gz复制到linux的/usr/local目录下. 2.解压,重命名 #tar -xzvf hadoop-1.0.4.ta ...
- hbase伪分布安装配置
hbase1.2.4 伪分布式安装 注意:在安装hbase或者hadoop的时候,要注意hadoop和hbase的对应关系.如果版本不对应可能造成系统的不稳定和一些其他的问题.在hbase的lib ...
随机推荐
- 你不知道的document.write
使用document.write向文档输出写内容; document.write用法:document.write("要输出的内容"); 其实document.write()有两种 ...
- Class path contains multiple SLF4J bindings
[logback不同版本jar包] SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:fi ...
- C++ 头文件系列(ios)
1 简介 我们都知道,平时常用的那些标准流,诸如iostream.ofstream.ifstream等等,其实都是对应的basic_XXX模版的实例类. 而这些basic_XXX类模版又都是继承自同一 ...
- JAVA中的数据结构 - 真正的去理解红黑树
一, 红黑树所处数据结构的位置: 在JDK源码中, 有treeMap和JDK8的HashMap都用到了红黑树去存储 红黑树可以看成B树的一种: 从二叉树看,红黑树是一颗相对平衡的二叉树 二叉树--&g ...
- java初级开发程序员(第二单元)
*课前必背.需要记忆的单词: double 小数 String 字符串 character 字符 integer 整型 Scanner 扫描仪 score 分 ...
- BZOJ 4089:[Sdoi2015]graft(SDOI 2015 Round 2 Day 2)
别人家的神选系列,我只会做这道题QAQ 题目描述: 给定一颗树,加上k条边,将n个点染色,相邻两点不同,记颜色为i的又ti个,求$$\frac{\sum_{i=1}^{n} \frac{ti}{i}} ...
- BZOJ 1898: [Zjoi2004]Swamp 沼泽鳄鱼(矩阵乘法)
可以发现,如果没有鳄鱼,那么就是裸地一道题,但是可以发现鳄鱼最多每12次重复,那么就少于12的那部分dp,其他的就矩阵乘法就行了 PS:第一次吧矩阵乘法AC了好开心QAQ CODE: #include ...
- android学习5——画图问题
重写View中的onDraw函数可以实现画图.代码如下: @Override public void onDraw(Canvas canvas) { Paint paint = new Paint() ...
- 学习JVM--垃圾回收(二)GC收集器
1. 前言 在上一篇文章中,介绍了JVM中垃圾回收的原理和算法.介绍了通过引用计数和对象可达性分析的算法来筛选出已经没有使用的对象,然后介绍了垃圾收集器中使用的三种收集算法:标记-清除.标记-整理.标 ...
- 【转】Netty系列之Netty是什么
Netty是什么 大概用Netty的,无论新手还是老手,都知道它是一个“网络通讯框架”.所谓框架,基本上都是一个作用:基于底层API,提供更便捷的编程模型.那么”通讯框架”到底做了什么事情呢?回答这个 ...