hdfs

11 篇文章 0 订阅
6 篇文章 0 订阅

hadoop

  1. 广义:以Hadoop软件为主的生态圈
  2. 狭义:Hadoop软件
  3. hadoop.apache.org hive.apache.org spark.apache.org flink.apache.org
  4. 生产上一般用Hadoop2.x 版本(因为考虑到很多软件在一起用的兼容性,所以不用最新的3.x的版本)
  5. hadoop2.x组件:
    hdfs: 存储 分布式文件系统 底层 生产(将sql上的数据同步到hdfs中)
    hive/hbase 都依赖于hdfs,hdfs是底层存储
    mapreduce: 分布式计算 (开发难度高、计算慢(shuffle 走的是磁盘))
    hive sql/spark用来计算
    yarn: 资源(内存+core)+作业(job)调度管理系统 生产
  6. apache hadoop 不选择部署,企业一般选择CDH、Ambari、hdp部署。cloudera公司拿来Apache hadoop-2.6.0源代码,修复bug,新功能,编译为自己的版本cdh5.7.0 。Apache hadoop-2.6.0 ==hadoop-2.6.0-cdh5.7.0

添加sudo权限的无密码访问的hadoop用户

  1. useradd hadoop (创建新用户)
  2. cat /etc/sudoers |grep hadoop(查看其权限)

进入官网下载压缩包

  1. su - hadoop(切换到Hadoop用户)
  2. mkdir app (创建一个文件夹用来存放压缩包)
    3.wget http://archiveprimary.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.7.0.tar.gz(使用这个命令之前应该yum -y install wget(在root环境下))
  3. tar -xzvf hadoop-2.6.0-cdh5.7.0.tar.gz(将下载的压缩包进行解压,注意看解压后的文件夹的用户及用户组)
  4. cd hadoop-2.6.0-cdh5.7.0
  5. (因为Hadoop所需要的Java版本是1.6 1.7的,需要重新下载Java1.7版本,重新配置Java的环境变量)

准备工作

  1. [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$ cd etc/hadoop(一般环境变量都在etc目录下面)
  2. vi hadoop-env.sh(按照官网的步骤来)
  3. export JAVA_HOME=/usr/java/jdk1.7.0_80
    export HADOOP_PREFIX=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0(可以通过进入尾行模式:/HADOOP_PREFIX 进行搜索,发现未搜到,所以新建一个)
  4. bin/hadoop

启动

  1. Local (Standalone) Mode: 单机 没有进程 不用
  2. Pseudo-Distributed Mode: 伪分布式 1台机器 进程 (学习过程用)
  3. Fully-Distributed Mode: 分布式 多台机器 进程 生产

配置文件

  1. [hadoop@hadoop002 hadoop]$vi core-site.xml(配置hdfs文件系统的端口号)
  2. vi hdfs-site.xml(因为是伪分布式,把副本系数修改为1)

无密码ssh

  1. cd (回到家目录)
  2. rm -rf .ssh (删除该文件)
  3. ssh-keygen -t dsa -P ‘’ -f ~/.ssh/id_dsa
  4. cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
  5. cd .ssh
  6. ll
  7. chmod 600 authorized_keys(修改.ssh下面的authorized_keys文件的权限,官网中并没有这一步骤,但是这一步骤不执行会出问题)
  8. ssh hadoop-01(我的虚拟机的名字,可以通过hostname查询)

修改个人的环境变量(不是全局)

  1. [hadoop@hadoop002 ~]$ vi .bash_profile(是在Hadoop家目录下面执行的,所以修改的是个人的环境变量)
  2. 个人的环境变量配置如下
export JAVA_HOME=/usr/java/jdk1.7.0_80
export HADOOP_PREFIX=/home/hadoop/app/hadoop-2.6.0-cdh5.7.0
export PATH=$HADOOP_PREFIX/bin:$JAVA_HOME/bin:$PATH
  1. ssh hadoop-01 (登陆)
  2. which hdfs(查找命令,看其是否配置成功)
    得到内容如下: ~/app/hadoop-2.6.0-cdh5.7.0/bin/hdfs
  3. cd ~/app/hadoop-2.6.0-cdh5.7.0
  4. bin/hdfs namenode -format
  5. [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$ sbin/start-dfs.sh
  6. [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$ jps(查看是否Hadoop的三个进程都起来了)
  7. 发现少了一个进程,所以进行第二次部署

发现DN进程有问题,重新部署

  1. [root@hadoop002 tmp]# rm -rf /tmp/hadoop-hadoop(删除在/tmp下的hadoop-hadoop)
  2. vi slaves (hadoop-01)将里面localcast 改为自己的机器名称hadoop-01
  3. [hadoop@hadoop002 hadoop]$ cd …/…/
  4. [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$ bin/hdfs namenode -format(再次格式化)
  5. [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$ sbin/start-dfs.sh
  6. [hadoop@hadoop002 hadoop-2.6.0-cdh5.7.0]$jps (包括jps一共四个进程,所以成功安装并启动)
    25398 DataNode
    26180 Jps
    25559 SecondaryNameNode
    25280 NameNode
  7. 根据NameNode 的进程号为25280,根据netstat -nlp | grep 25280 查到其端口号为50070
  8. 此时用windows 的浏览器,输入http://192.168.2.61:50070(自己机器的IP地址加上端口号,可以进入网页)

总结

本次安装由于误删把之前的mysql的全局变量的配置搞没了,后来通过翻自己博客找出了删的全局变量是mysql的,重新配置后问题解决,以后删文件一定要记得备份!!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值