Hadoop入门学习笔记-第一天 (HDFS:分布式存储系统简单集群)

准备工作:

  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

上一篇:从零开始学android


下一篇:Opencv4Android环境搭建及第一个例子