Hadoop二:Hadoop伪分布式模式

Hadoop伪分布式模式

Hadoop2.x:

官网:hadoop.apache.org
三个组件:
HDFS:分布式文件系统,存储
MapReduce:分布式计算
Yarn:资源(cpu + memory)和JOB调度监控
文档地址:
    http://hadoop.apache.org/docs/r2.8.2/
部署方式:
1.单机模式(Standalone):1个Java进程
2.伪分布模式(Pseudo-Distribute Mode):开发|学习   多个Java进程
3.集群模式(Cluster Mode):生产 多态机器多个Java进程

http://hadoop.apache.org/docs/r2.8.2/hadoop-project-dist/hadoop-common/SingleCluster.html
伪分布式部署:HDFS
1.创建hadoop服务的一个用户
# useradd hadoop
# id hadoop
# vi /etc/sudoers
    hadoop ALL=(root) NOPASSWD:ALL
2.部署Java
使用:Oracle jdk1.8
尽力不要使用: Open JDk
    2.1、解压+环境变量
    2.2、CDH课 /usr/java
        最好:which java
3.部署ssh,确保其是运行的
查看:默认是已经安装
    service sshd status
4.解压hadoop
解压:
    software]# tar -zxvf hadoop-2.8.1.tar.gz
软连接:
    software]# ln -s /opt/software/hadoop-2.8.1 hadoop
修改用户和用户组:
    software]# chown -R hadoop:hadoop hadoop
        修改软连接
    software]# chown -R hadoop:hadoop hadoop/*
        修改软连接文件夹里面的内容
    software]# chown -R hadoop:hadoop hadoop-2.8.1
        修改原文件夹

    chown -R hadoop:hadoop 文件夹:修改文件夹和文件夹里面的内容
    chown -R hadoop:hadoop 软连接文件夹:修改软连接文件夹,不会修改软连接文件夹里面的
    chown -R hadoop:hadoop 软连接文件夹/*:软连接文件夹不修改,只修改软连接文件夹里面的
    
    software]# cd hadoop
    hadoop]# rm -rf *.txt
    hadoop]# ll
        bin:命令
        etc:配置文件
        lib:lib包
        sbin:启动和关闭hadoop里面的组件(进程)
5.切换hadoop用户和配置
进入hadoop用户:
    ~]# su -hadoop
进入hadoop文件夹:
    ~]$ cd /opt/software/hadoop
hadoop]$ cd /etc/hadoop
hadoop]$ ll
    hadoop-env.sh:hadoop配合环境
    core-site.xml:hadoop 核心配置文件
    hdfs-site.xml:针对于hdfs服务的  -->会起进程
    [mapred-site.xml:MapReduce计算所需要的配置文件] 只当在jar计算时才有
    yarn-site.xml:yarn服务的  -->会起进程
    slaves:集群的机器名称
hadoop]$ vi core-site.xml
    <configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://localhost:9000</value>
        </property>
    </configuration>
hadoop]$ vi hdfs-site.xml
    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>
6.配置hadoop用户的ssh的信任关系
~]$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
~]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
~]$ chmod 0600 ~/.ssh/authorized_keys
.ssh]$ ssh 机器名 date
    第一次输入需要yes
.ssh]$ ssh 机器名 date
    第二次输入不需要yes
7.格式化
hadoop]$ bin/hdfs namenode -format
    Storage directory: /tmp/hadoop-hadoop/dfs/name 
    1.默认的存储路径哪个参数配置?
    2.hadoop-hadoop指的是什么意思?
        core-site.xml
            hadoop.tmp.dir:/tmp/hadoop-${user.name}
        hdfs-site.xml
            dfs.namenode.name.dir : file://${hadoop.tmp.dir}/dfs/name
8.启动HDFS服务
删除不需要的cmd:
    sbin]$ rm -rf *.cmd
启动dfs:
    sbin]$ ./start-dfs.sh
        namenode(名称节点) : localhost
        datanode(数据节点) : localhost:
        secondary namenode(第二名称节点) : 0.0.0.0

        http://localhost:50070/
        默认的端口:50070

        web: localhost:9000

查看进程是否启动:
    sbin]$ ps -ef | grep hadoop

    问题:
        发现JAVA_HOME变量是存在的,无法启动HDFS服务

        无法找到JAVA_HOME:
            etc/hadoop]$ vi hadoop-env.sh
                export JAVA_HOME=/usr/java/jdk1.8.0_45
        之后再重新启动dfs
9.使用命令(hadoop、hdfs)
在hdfs上创建user文件夹:
    bin]$ ./hdfs dfs -mkdir /user
在hdfs上创建hadoop文件夹:
    bin]$ ./hdfs dfs -mkdir /user/hadoop
创建本地log文件:
    bin]$ echo "123456" > rz.log
上传本地文件到hdfs:
    bin]$ ./hadoop fs -put rz.log hdfs://localhost:9000/
查看hdfs里面的文件:
    bin]$ ./hadoop fs -ls hdfs://localhost:9000/
        或者
    bin]$ ./hadoop fs -ls /
10.想要修改hdfs://localhost:9000hdfs://IP地址:9000
停止hdfs服务:
    bin]$ ../sbin/stop-dfs.sh 
修改配置文件:
    bin]$ vi ../etc/hadoop/core-site.xml 
        <configuration>
            <property>
                    <name>fs.defaultFS</name>
                    <value>hdfs://192.168.137.201:9000</value>
            </property>
        </configuration>
重新格式化:
    bin]$ ./hdfs namenode -format
启动hdfs服务:
    bin]$ ../sbin/start-dfs.sh 
        namenode(名称节点) : 主机名(admin)
        datanode(数据节点) : localhost:
        secondary namenode(第二名称节点) : 0.0.0.0
查看端口文件是否启动:
    bin]$ netstat -nlp|grep 9000
11.修改HDFS的服务以主机名(admin)启动
针对于datanode修改:
    hadoop]$ vi slaves
        admin(主机名)
针对于secondarynamenode修改:
    hadoop]$ vi hdfs-site.xml 
        <configuration>
            <property>
                    <name>dfs.replication</name>
                    <value>1</value>
            </property>

            <property>
                     <name>dfs.namenode.secondary.http-address</name>
                     <value>admin(主机名):50090</value>
            </property>
            <property>
                 <name>dfs.namenode.secondary.https-address</name>
                 <value>admin(主机名):50091</value>
            </property>
        <configuration>
切换到sbin:
    hadoop]$ cd ../../sbin
停止hdfs:
    sbin]$ ./stop-dfs.sh
启动hdfs:
    sbin]$ ./start-dfs.sh 
12.Yarn部署
MapReduce + Yarn
部署Yarn:
    ResourceManager 
    NodeManager
拷贝配置文件:
    hadoop]# cp mapred-site.xml.template mapred-site.xml
修改配置文件:
    hadoop]# vi mapred-site.xml
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
配置yarn文件:
    hadoop]# vi yarn-site.xml
        <configuration>
            <!-- Site specific YARN configuration properties -->
                <property>
                    <name>yarn.nodemanager.aux-services</name>
                    <value>mapreduce_shuffle</value>
                </property>
            </configuration>
修改权限:
    hadoop]# chown hadoop:hadoop *
切换用户:
    hadoop]# su - hadoop
进入hadoop:
    ~]$ cd /opt/software/hadoop
启动yarn服务:
    hadoop]$ sbin/start-yarn.sh

web界面: http://192.168.137.201:8088/
13.MR Job测试
MapReduce: java代码写的,map(映射)函数和reduce(归约)函数
查找jar包:
    hadoop]$ find ./ -name "*example*"
执行任务:
    hadoop]$ bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.1.jar pi 5 10
如何在yarn的web界面查看application(应用|job)日志?

如何使用rundeck调度2的测试案例?
1.root shell脚本
2.在1步骤的shell脚本:
su - hadoop -c "/opt/software/hadoop/bin/hadoop jar /opt/software/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.8.1.jar pi 5 10"
14.停止yarn
    sbin]$ ./stop-yarn.sh

补充:
1.配置root用户的ssh的信任关系
当我们第一次执行:ssh localhost date时是需要输入yes和密码,之后会在.ssh下生成一个名字为known_hosts的文件。

    如果.ssh下面存在known_hosts文件,则再次输入的时候不用输入yes。

    使用ssh的时候不输入密码:
        # ssh-keygen
        之后一直回车,会生成id_rsa.pub和id_rsa两个文件
        id_rsa:私钥
        id_rsa.pub:公钥

        .ssh]# cat id_rsa.pub > authorized_keys
        .ssh]# ssh 机器名 date
2.某个服务数据目录在A盘(500G),还剩10G,/a/dfs/data
添加B盘2T.
    1.A盘:mv /a/dfs /b/
    2.B盘:ln -s /b/dfs /a/  
    现在A盘存在的是软连接之后的文件夹,所有A盘的服务都是可以正常启动的,但是最后的数据都是存在B盘的dfs,A盘的只是一个假象
    3.检查(修改)A,B盘的文件夹的用户和用户组的权限
3.查看网页内容
    curl http://localhost:50070
疑问:
1.多个机器的HDFS的数据目录,数据不均衡,怎么办?
2.一台机器的多个磁盘数据不均衡,怎么办?
作业:
1.hadoop官网
http://hadoop.apache.org/docs/r2.8.2/hadoop-project-dist/hadoop-common/SingleCluster.html
http://hadoop.apache.org/docs/r2.8.2/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml
2.hadoop部署---hdfs
3.将10,11做一下
4.拓展
hadoop001(第一台虚拟机) hadoop002(第二台虚拟机)配置互相信任关系,说白了,不需要输入密码,进入对方执行命令
http://blog.itpub.net/30089851/viewspace-1992210/

解决方案;
    hadoop002(虚拟机2):
    scp id_rsa.pub hadoop001:/root/.ssh/id_rsa.pub002
    hadoop001(虚拟机1):
    cat /root/.ssh/id_rsa.pub002 >> /root/.ssh/authorized_keys

【来自@若泽大数据】

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 151,688评论 1 330
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 64,559评论 1 273
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 101,749评论 0 226
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 42,581评论 0 191
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 50,741评论 3 271
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 39,684评论 1 192
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,122评论 2 292
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 29,847评论 0 182
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 33,441评论 0 228
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 29,939评论 2 232
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 31,333评论 1 242
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 27,783评论 2 236
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 32,275评论 3 220
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 25,830评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,444评论 0 180
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 34,553评论 2 249
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 34,618评论 2 249

推荐阅读更多精彩内容