hadoop基本环境搭建

hadoop基本环境搭建

linux配置
本地模式
伪分部模式
完全分布式
HA架构
启动方式
基准测试

clouder版本说明
由于配置限制 没有用 CDH 加CM (配置足够的话这两个更方便)直接下载的各个模块 地址:http://archive.cloudera.com/cdh5/cdh/5/
推荐 jdk 8u144 , jdk 8u40 8u45 and 8u60 8u75 有问题不要用
建议用cdh 5.13.0 以下的版本

1. linux配置

1.配置主机名

编辑:/etc/sysconfig/network
内容:

NETWORKING=yes
HOSTNAME=master

2.配置dns
编辑:/etc/resolv.conf
内容:

search master
nameserver 114.114.114.114
nameserver 114.114.115.115

备用:

223.5.5.5
223.6.6.6
112.124.47.27
114.215.126.16

3.配置静态ip (IP生效:ifdown 设备名,ifup 设备名)
编辑:/etc/sysconfig/network-scripts/ifcfg-eno
内容:

DEVICE=eth0
BOOTPROTO=static
TYPE=Ethernet
IPADDR=192.168.13.10
NETMASK=255.255.255.0         //子网掩码
NETWORK=192.168.13.0         //网络地址
GATEWAY=192.168.13.2          //网关
BROADCAST=192.168.13.255  //广播地址
ONBOOT=yes

4.host配置(scp传到所有机器)
编辑: /etc/hosts
格式:

192.168.13.10 master.cty.com master

5.yum源配置
6.安装jdk

卸载原有包:
rpm -qa|grep java
rpm -e --nodeps java-* …
解压安装包:
tar -zxfjdk-7u67-linux-x64.tar.gz -C /opt/modules/
配置环境变量: /etc/profile
JAVA_HOME=
PATH=PATH:\JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

7.关闭防火墙Selinux

service iptables status
chkconfig iptables off
firewall-cmd --state
systemctl stop firewalld.service
systemctl disable firewalld.service #禁止firewall开机启动
修改/etc/selinux/config文件中设置SELINUX=disabled 然后重启服务器
8.ssh配置
确认已安装ssh:
rpm –qa | grep openssh
rpm –qa | grep rsync
master:
生成密匙对:
ssh-keygen -t rsa -P ''
ssh-copy-id 192.168.13.10 (master本机ip)
ssh-copy-id -i~/.ssh/id_rsa.pub 用户名@对方机器IP

所有机器:
chmod 600 ~/.ssh/authorized_keys(且.ssh文件夹应为700)
root用户下 vi /etc/ssh/sshd_config
把文件中的下面几条信息的注释去掉: 
RSAAuthentication yes # 启用 RSA 认证
PubkeyAuthenticationyes # 启用公钥私钥配对认证方式
AuthorizedKeysFile.ssh/authorized_keys # 公钥文件路径(和上面生成的文件同)
重启ssh
service sshd restart(或systemctl restart sshd.service)
运行 ps -e | grep ssh,查看是否有sshd进程
若ssh进程未启动: /etc/init.d/ssh -start
解决 Agentadmitted failure tosign using the key
如果出现该错误,则需要在所有的节点都执行 ssh-add ~/.ssh/id_rsa 将私钥加入ssh

2. 本地模式

1.简介:

本地就是单机模式,hadoop默认安装完就是单机模式
hdfs默认使用本地的文件系统
hdfs dfs -ls / 查看本地文件系统 和linux的ls/一样

2.安装解压:

tar xf /soft/hadoop-2.7.3.tar.gz -C /…
编辑: /etc/profile
HADOOP_HOME=…
编辑: hadoop/etc/hadoop/hadoop-env.sh
修改jAVA_HOME
如果需要修改日志存储路径,则需要在conf/hadoop-env.sh文件中增加:
export HADOOP_LOG_DIR=/home/xxxx/xxxx即可

3.测试wordcount:

hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /input/output

3. 伪分部模式

1.简介

Hadoop进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。

2.安装及配置
在本地模式的基础上
在hadoop文件夹下建立 tmp name data文件夹
配置core-site.xml

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/**/hadoop/tmp</value>
</property> </configuration>
配置hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
 </property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/**/hadoop/name</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master.cty.com:50090</value>
</property>
 <property>
<name>dfs.datanode.data.dir</name>
<value>/home/**/hadoop/tmp/data</value>
</property>
</configuration>

配置mapred-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<!-- ###########jobhistory############    -->
<property>
<name>mapreduce.jobhistory.address</name>
<value>master.cty.com:10020</value>
</property>
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master.cty.com:19888</value>
</property>
</configuration>

配置yarn-site.xml

<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
     <name>yarn.log-aggregation-enable</name>
     <value>true</value>
</property>
<property>
     <name>yarn.log-aggregation.retain-seconds</name>
     <value>640800</value>
</property>
</configuration>

配置slaves

Master

格式化
bin/hadoop namenode -format
可查看集群状态
hdfs dfsadmin -report
进入离开安全模式
hadoop dfsadmin -safemode leave/enter
启动JobHistoryServer服务
sbin/mr-jobhistory-daemon.sh starthistoryserver
start-balancer.sh(负载均衡)
hadoop job -kill job_id 杀进程
通过web 50070端口可查看hdfs信息

4. 完全分布式

1.安装及配置

在本地模式的基础上
在hadoop文件夹下建立 tmp name data文件夹
配置core-site.xml
<<core-site.xml>>
配置hdfs-site.xml
<<hdfs-site.xml>>
配置mapred-site.xml
<<mapred-site.xml>>
配置yarn-site.xml
<<yarn-site.xml>>
配置slaves
加入从节点的hostname

2.启动方式
各个服务组件逐一启动

  • hdfs
    hadoop-daemon.sh start|stopnamenode|datanode|secondarynamenode
  • yarn
    yarn-daemon.sh start|stop resourcemanager|nodemanager
  • historyserver
    mr-historyserver-daemon.sh start|stop historyserver
    各个模块分开启动
  • hdfs
    start-dfs.sh
    stop-dfs.sh
  • yarn
    start-yarn.sh
    stop-yarn.sh
  • 全部启动
    start-all.sh
    stop-all.sh

3.基准测试

  • Hdfs io测试:
    TestDFSIO用来测试HDFS的I/O性能,
    以下命令写了10个文件,每个1000MB:
    Hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.5.0-tests.jarTestDFSIO -write -nrFiles 10 -fileSize 1000
    结果被写入控制台并同时记录在一个本地文件。
    cat TestDFSIO_results.log
    完成基准测试后,可通过参数-clean从HDFS上删除所有生成的文件:
    Hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.5.0-tests.jar TestDFSIO-clean

  • Namenode负载测试:
    nnbench用于测试NameNode的负载,它会生成很多与HDFS相关的请求,给NameNode施加较大的压力。这个测试能在HDFS上创建、读取、重命名和删除文件操作。
    以下例子使用10个mapper和5个reducer来创建1000个文件
    hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.5.0-tests.jarnnbench -operation create_write -maps 10 -reduces 5 -numberOfFiles 1000-replicationFactorPerFile 3 -readFileAfterOpen true

  • mrbench会多次重复执行一个小作业,用于检查在机群上小作业的运行是否可重复以及运行是否高效。
    hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.5.0-tests.jarmrbench -numRuns 50

    hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-client-jobclient-2.0.0-cdh4.5.0-tests.jarmrbench -numRuns 10 -inputLines 100000 -maps 100 -reduces 5

  • example测试:
    其中最常用的是teragen/terasort/teravalidate,一个完整的terasort测试由三个步骤组成:1)teragen产生数据;2)terasort执行排序;3)teravalidate验证排序结果。其运行命令参数如下:
    terasort产生数据:
    hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.0.0-cdh4.5.0.jar teragen10000000 /examples/terasort-input
    排序数据:
    hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.0.0-cdh4.5.0.jar terasort /examples/terasort-input /examples/terasort-output
    验证是否有序:
    hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.0.0-cdh4.5.0.jarteravalidate /examples/terasort-output /examples/terasort-validate
    teravalidate执行验证操作时会输出排序错误的key,当输出结果为空时,表示排序正确
    wordcount:现将一个文本文件put到hdfs中,执行
    hadoop jarshare/hadoop/mapreduce/hadoop-mapreduce-examples-2.0.0-cdh4.5.0.jarwordcount /input /output

5. HA架构

1.需要zookeeper实现自动切换
2.实现局域网内时间同步 ntp
安装ntp
编辑:/etc/ntp.conf
#restrict 192.168.1.0 mask 255.255.255.0nomodify notrap 去注释改成正确网络号
server 0.centos.pool.ntp.org iburst 此行及以下注释掉
server1.centos.pool.ntp.org iburst
server2.centos.pool.ntp.org iburst
编辑 :/etc/sysconfig/ntpd
#Drop root to id 'ntp:ntp' by default.
SYNC_HWCLOCK=yes
OPTIONS="-untp:ntp -p /var/run/ntpd.pid -g"
servicentpd status
servicentpd start
chkconfigntpd on
用crontab -e
定时执行Ntpdate master.cty.com
3.配置
<<core-site.xml>>
<<hdfs-site.xml>>
缺失的配置文件真的需要的话 可以查找我的onenote笔记
地址:github.com/cccccttttyyy/Mynote

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

推荐阅读更多精彩内容