准备工作:

  1.安装VMware Workstation Pro

  2.新建三个虚拟机,安装centOS7.0 版本不限

配置工作:

1.准备三台服务器(nameNode10、dataNode20、dataNode30)
2.配置三台机器网络ip分别为(192.168.18.10、192.168.18.20、192.168.18.30)
  2.1 进入/etc/sysconfig/network-scripts 修改 ifcfg-ens33 文件,定义网卡 信息如下,三台机器都要配置
    ONBOOT=yes
    IPADDR=192.168.18.30
    GATEWAY=192.168.18.2
    DNS1=114.114.114.114
  2.2网卡验证

     执行命令:ping 192.168.18.30

  2.3配置hosts域名 文件位置:/etc/hosts

    nameNode10.com、dataNode20.com、dataNode30.com
3.安装jdk (三台机器都要配置)
  3.1下载jdk安装包
  3.2安装并配置环境变量
  3.3生效 source profile
  3.4验证:java -version
4.安装Hadoop(三台机器都要配置)
  4.1下载hadoop安装包
  4.2安装并配置环境变量
  4.3生效 source profile
  4.3验证:hadoop version
5.配置免密登录(三台机器都要配置)
  5.1 配置免密
    方法一:
    1)分别在四台机器上执行 ssh-keygen 一直按回车

    2)。分别在四台机器上执行 ssh-coyp-id "目标机器" 命令
    比如:
    在nameNode10机器上分别执行
    ssh-copy-id dataNode20.com
    ssh-copy-id dataNode30.com
    在nameNode20机器上分别执行------
    ssh-copy-id nameNode10.com
    ssh-copy-id dateNode30.com
    依次类推
    方法二(推荐):
    1)检查是否安装了ssh相关软件包(openssh-server + openssh-clients + openssh)
    $yum list installed | grep ssh

    2)检查是否启动了sshd进程
    $>ps -Af | grep sshd

    3)在client侧生成公私秘钥对。
     $>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa

    4)生成~/.ssh文件夹,里面有id_rsa(私钥) + id_rsa.pub(公钥)

    5)追加公钥到~/.ssh/authorized_keys文件中(文件名、位置固定)
    $>cd ~/.ssh
    $>cat id_rsa.pub >> authorized_keys

    6)修改authorized_keys的权限为644.
    $>chmod 644 authorized_keys
    7)在每台机器上发送至目标机器并执行 
    dataNode20.com===> root@nameNode10.com
    dataNode20.com===>ssh-copy-id -i ~/.ssh/id_rsa.pub root@nameNode30.com
    依次类推
  5.2验证方法
    在当前服务器下(nameNode10.com),执行ssh nameNode10.com 会自动进入dataNode20.com 服务器

6.配置core-site.xml 指明nameNode节点
   <configuration>
    <property>
    <name>fs.defaultFS</name>
    <value>hdfs://nameNode10.com:8020</value>
    </property>
    <property>
    <name>hadoop.tmp.dir</name>
    <value>/opt/data/tmp</value>
    </property>
  </configuration>
7.配置hdfs-site.xml 指明复制个数
  <configuration>
    <property>
    <name>dfs.replication</name>
    <value>1</value>
    </property>
  </configuration>
8.修改hadoop/etc/hadoop/hadoop-env.sh 指定jdk地址
  exoprt JAVA_HOME=/opt/jdk
9.配置dataNode节点  vim /hadoop/etc/hadoop/slaves 文件 (高版本需要路径hadoop/etc/hadoop/workers)
  dataNode20.com
  dataNode30.com
10.格式化nameNode
  hadoop namenode -format
11. 在start-dfs.sh stop-dfs.sh配置权限
  HDFS_DATANODE_USER=root
  HADOOP_SECURE_DN_USER=hdfs
  HDFS_NAMENODE_USER=root
  HDFS_SECONDARYNAMENODE_USER=root
  HDFS_JOURNALNODE_USER=root
  HDFS_ZKFC_USER=root
12.关闭防火墙
  systemctl stop firewalld.service
  systemctl disable firewalld.service
   firewall-cmd --state
13.启动 ./start-dfs.sh 并上传文件测试:hdfs dfs -put /local/txt /test

查看各控制台
namenode控制台
http://nameNode10.com:9870

hdfs dfs -ls /
hdfs dfs -mkdir /test
hdfs dfs -put /local/txt /test
hdfs dfs -cat /test/txt
....
提交hadoop任务
bin/yarn jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar wordcount /input/wc.input /output

Hadoop入门学习笔记-第一天 (HDFS:分布式存储系统简单集群)的更多相关文章

  1. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  2. Hadoop入门学习笔记---part1

    随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...

  3. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  4. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  5. Hadoop入门学习笔记-第二天 (HDFS:NodeName高可用集群配置)

    说明:hdfs:nn单点故障,压力过大,内存受限,扩展受阻.hdfs ha :主备切换方式解决单点故障hdfs Federation联邦:解决鸭梨过大.支持水平扩展,每个nn分管一部分目录,所有nn共 ...

  6. Hadoop入门学习笔记总结系列文章导航

    一.为何要学习Hadoop? 这是一个信息爆炸的时代.经过数十年的积累,很多企业都聚集了大量的数据.这些数据也是企业的核心财富之一,怎样从累积的数据里寻找价值,变废为宝炼数成金成为当务之急.但数据增长 ...

  7. Hadoop入门学习笔记(一)

    Week2 学习笔记 Hadoop核心组件 Hadoop HDFS(分布式文件存储系统):解决海量数据存储 Hadoop YARN(集群资源管理和任务调度框架):解决资源任务调度 Hadoop Map ...

  8. Hadoop入门学习笔记之一

    http://hadoop.apache.org/docs/r1.2.1/api/index.html 适当的利用 null 在map中可以实现对文件的简单处理,如排序,和分集合输出等. 需要关心的内 ...

  9. Hadoop入门学习笔记-第三天(Yarn高可用集群配置及计算案例)

    什么是mapreduce 首先让我们来重温一下 hadoop 的四大组件:HDFS:分布式存储系统MapReduce:分布式计算系统YARN: hadoop 的资源调度系统Common: 以上三大组件 ...

随机推荐

  1. Linux c++ vim环境搭建系列(3)——Ubuntu18.04.4编译安装youcompleteme

    3. youcompleteme编译安装 参考网址: https://github.com/ycm-core/YouCompleteMe#linux-64-bit 建议不要用这个博客的方法: http ...

  2. 线程池:Execution框架

    每问题每线程:在于它没有对已创建线程的数量进行任何限制,除非对客户端能够抛出的请求速率进行限制. 下边 有些图片看不到,清看原地址:http://www.360doc.com/content/10/1 ...

  3. developerWorks 中文社区

    https://www.ibm.com/developerworks/community/groups/service/html/communityview?communityUuid=3302cc3 ...

  4. 漏洞复现环境集锦-Vulhub

    0x01 Vulhub简介 Vulhub是一个面向大众的开源漏洞靶场,无需docker知识,简单执行两条命令即可编译.运行一个完整的漏洞靶场镜像. 0x02 安装 # 安装pip curl -s ht ...

  5. WinForm:API

    一.WndProc:  主要用在拦截并处理系统消息和自定义消息 比如:windows程序会产生很多消息,比如你单击鼠标,移动窗口都会产生消息.这个函数就是默认的消息处理函数.你可以重载这个函数来制定自 ...

  6. Python-元组tuple、列表list、字典dict

    1.元组tuple(1)元组是有序列表,有不可见的下标,下标从0开始(2)元组的数据是相对固定的,数据不能增删改,他的一个重要用途是保存固定的.安全要求高的数据(3)元组用小括号()括起来,空元组定义 ...

  7. python selenium模块 css定位

    selenium是python的非标准库,使用时需要下载安装 安装命令  pip install selenium selenium是python的自动化测试模块,可以模拟浏览器的行为 所以在使用之前 ...

  8. kubernetes的headless service介绍

    headless service是一个特殊的ClusterIP类service,这种service创建时不指定clusterIP(--cluster-ip=None),因为这点,kube-proxy不 ...

  9. 最通俗易懂的Redis发布订阅及代码实战

    发布订阅简介 除了使用List实现简单的消息队列功能以外,Redis还提供了发布订阅的消息机制.在这种机制下,消息发布者向指定频道(channel)发布消息,消息订阅者可以收到指定频道的消息,同一个频 ...

  10. Linux系统防火墙相关操作

    服务器重启后防火墙会自动开启,需要把防火墙关闭 以下为对防火墙进行的相关操作 查看防火墙状态 systemctl status firewalld service iptables status 暂时 ...