hadoop集群安装
一、简述
本次集群安装基于4台虚拟集群下进行。
hadoop版本使用 2.6.4
操作系统为 centos6.5
jdk版本为 jdk-7u67-linux-x64.tar.gz
二、准备
创建hadoop用户
#分别在4台机器中创建hadoop用户
useradd hadoop#给hadoop用户授权——如下【图1】
vi /etc/sudoers
【图1】
下载hadoop安装包
https://archive.apache.org/dist/hadoop/common/hadoop-2.6.4/hadoop-2.6.4.tar.gz
下载jdk安装包
https://download.csdn.net/download/u014414323/10420850
上传文件到linux
解压jdk、hadoop安装包并设置环境变量
#解压JDK安装包
tar -zvxf jdk-7u67-linux-x64.tar.gz -C ../apps/#解压hadoop安装包
tar -zvxf hadoop-2.6.4.tar.gz -C ../apps/#设置jdk、hadoop 环境变量sudo vi /etc/profile#文件最后追加以下3行
export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_67
export HADOOP_HOME=/home/hadoop/apps/hadoop-2.6.4
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin#让环境变量生效
source /etc/profile
三、hadoop配置
hadoop安装包解压目录说明
[hadoop@min1 ~]$ ll apps/hadoop-2.6.4/
总用量 52
drwxrwxr-x. 2 hadoop hadoop 4096 3月 8 2016 bin #存放hadoop自身的操作命令
drwxrwxr-x. 3 hadoop hadoop 4096 3月 8 2016 etc #存放配置文件
drwxrwxr-x. 2 hadoop hadoop 4096 3月 8 2016 include #存放c语言本地库的一些头文件
drwxrwxr-x. 3 hadoop hadoop 4096 3月 8 2016 lib #存放本地库
drwxrwxr-x. 2 hadoop hadoop 4096 3月 8 2016 libexec
-rw-r--r--. 1 hadoop hadoop 15429 3月 8 2016 LICENSE.txt
-rw-r--r--. 1 hadoop hadoop 101 3月 8 2016 NOTICE.txt
-rw-r--r--. 1 hadoop hadoop 1366 3月 8 2016 README.txt
drwxrwxr-x. 2 hadoop hadoop 4096 3月 8 2016 sbin #存放hadoop框架启动管理的命令
drwxrwxr-x. 4 hadoop hadoop 4096 3月 8 2016 share #存放文档与jar包
伪分布式需要修改5个配置文件
第一个:hadoop-env.sh
vim hadoop-env.sh#第27行export JAVA_HOME=/home/hadoop/apps/jdk1.7.0_67
第二个:core-site.xml
<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 --><property><name>fs.defaultFS</name><value>hdfs://min1:9000</value></property><!-- 指定hadoop运行时产生文件的存储目录 --><property><name>hadoop.tmp.dir</name><value>/home/hadoop/apps/hadoop-2.6.4/tmp</value></property>
第三个:hdfs-site.xml
<!-- 指定HDFS副本的数量 --><property><name>dfs.replication</name><value>3</value></property>
<!-- 指定secondary namenode地址 --><property><name>dfs.secondary.http.address</name><value>min1:50090</value></property>
第四个:mapred-site.xml (mv mapred-site.xml.template mapred-site.xml)
#重命名 mv mapred-site.xml.template mapred-site.xml#编辑vim mapred-site.xml
<!-- 指定mr运行在yarn上,默认为local(表示让mr在本地机器运行) --><property><name>mapreduce.framework.name</name><value>yarn</value></property>
第五个:yarn-site.xml
<!-- 指定YARN的老大(ResourceManager)的地址 --><property><name>yarn.resourcemanager.hostname</name><value>min1</value></property><!-- reducer获取数据的方式 --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>
把上述min1配置好的文件内容全部拷贝到其他集群机器(min2、min3、min4)中(可通过人机交互脚本实现自动化处理)
scp -r apps/ min2:/home/hadoop/scp -r apps/ min3:/home/hadoop/scp -r apps/ min4:/home/hadoop/#拷贝环境变量配置文件sudo scp /etc/profile min2:/etc/sudo scp /etc/profile min3:/etc/sudo scp /etc/profile min4:/etc/#使环境变生效(将命令发送给4台机器执行)source /etc/profile
格式化namenode(是对namenode进行初始化,namenode存放着文件存放的索引地址)
hadoop namenode -format
单独启动 namenode
hadoop-daemon.sh start namenode
访问namenode网页界面:
http://min1:50070/
单独启动 datanode
hadoop-daemon.sh start datanode
更多常用命令详情查看:https://blog.csdn.net/u013490585/article/details/83012749
slaves 文件作用说明
一般在集群中你唯一地选择一台机器作为 NameNode ,一台机器作为 ResourceManager,这是master (主)。
那么 ,集群中剩下的机器作为DataNode 和 NodeManager。这些是slaves (从)。
在你的 hadoop目录/etc/hadoop/slaves 文件上列出全部slave机器名或IP地址,一个一行如下:
[hadoop@min1 hadoop]$ vi slaves #slaves 编辑内容如下
min2
min3
min4
四、免密登录
生成ssh免登陆密钥
ssh-keygen
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免密登陆的目标机器上
[hadoop@min1 ~]$ ssh-copy-id min1
hadoop@min1's password:
Now try logging into the machine, with "ssh 'min1'", and check in:.ssh/authorized_keysto make sure we haven't added extra keys that you weren't expecting.[hadoop@min1 ~]$ ssh-copy-id min2
hadoop@min2's password:
Now try logging into the machine, with "ssh 'min2'", and check in:.ssh/authorized_keysto make sure we haven't added extra keys that you weren't expecting.[hadoop@min1 ~]$ ssh-copy-id min3
hadoop@min3's password:
Now try logging into the machine, with "ssh 'min3'", and check in:.ssh/authorized_keysto make sure we haven't added extra keys that you weren't expecting.[hadoop@min1 ~]$ ssh-copy-id min4
hadoop@min4's password:
Now try logging into the machine, with "ssh 'min4'", and check in:.ssh/authorized_keysto make sure we haven't added extra keys that you weren't expecting.
启动hadoop
start-all.sh
查看各机器进程启动情况
关闭hadoop
总结
以上是生活随笔为你收集整理的hadoop集群安装的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 11月去西安有什么好玩的,11去西安穿什
- 下一篇: hadoop系统 hdfs 命令行操作