renyanping 发表于 2018-10-29 09:49:10

centos 64位 hadoop 完全分布式安装

#####  
####安装hadoop完全分布式集群
  
#####
  

  
####文件及系统版本:
  
####
  
hadoop-1.2.1
  
Java version 1.7.0_79
  
centos 64位
  

  
####预备
  
####
  
在/home/hadoop/下:mkdir Cloud
  
把java和hadoop安装包放在/home/hadoop/Cloud下
  

  
####配置静态ip
  
####
  
master192.168.116.100
  
slave1192.168.116.110
  
slave2192.168.116.120
  

  
####修改机器相关名称(都是在root权限下)
  
####
  
su root
  
vim /etc/hosts
  
在原信息下输入:(空格+tab)
  
master192.168.116.100
  
slave1192.168.116.110
  
slave2192.168.116.120
  

  
vim /etc/hostname
  
master
  
shutdown -r now(重启机器)
  

  
vim /etc/hostname
  
slave1
  
shutdown -r now
  

  
vim /etc/hostname
  
slave2
  
shutdown -r now
  

  
####安装openssh
  
####
  
su root
  
yum install openssh
  
ssh-keygen -t rsa
  
然后一直确认
  
把slave1和slave2的公钥发给master:
  
scp /home/hadoop/.ssh/id_rsa.pub hadoop@master:~/.ssh/slave1.pub
  
scp /home/hadoop/.ssh/id_rsa.pub hadoop@master:~/.ssh/slave2.pub
  
在master下: cd .ssh/
  
cat id_rsa.pub >> authorized_keys
  
cat slave1.pub >> authorized_keys
  
cat slave2.pub >> authorized_keys
  
把公钥包发给slave1和slave2:
  
scp authorized_keys hadoop@slave1:~/.ssh/
  
scp authorized_keys hadoop@slave2:~/.ssh/
  

  
ssh slave1
  
ssh slave2
  
ssh master
  
相应的输入yes
  
到这里ssh无密码登录配置完成
  

  

  
####设计JAVA_HOME HADOOP_HOME
  
####
  
su root
  
vim /etc/profile
  
输入:
  
export JAVA_HOME=/home/hadoop/Cloud/jdk1.7.0_79
  
export JRE_HOME=$JAVA_HOME/jre
  
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  
export HADOOP_HOME=/home/hadoop/Cloud/hadoop-1.2.1
  
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
  
然后source /etc/profile
  

  

  

  
####配置hadoop文件
  
####
  
在/home/hadoop/Cloud/hadoop-1.2.1/conf下
  
vim masters 输入:
  
master
  

  
vim slaves 输入:
  
master
  
slave1
  
slave2
  

  
vim hadoop-env.sh 输入:
  
export JAVA_HOME=/home/hadoop/Cloud/jdk1.7.0_79
  
export HADOOP_HOME_WARN_SUPPRESS="TRUE"
  
然后source hadoop-env.sh
  

  
vim core-site.xml 输入:
  
###################################core
  

  

  

  

  
io.native.lib.avaliable
  

  
true
  

  

  

  

  

  
fs.default.name
  

  
hdfs://master:9000
  

  
true
  

  

  

  

  

  
hadoop.tmp.dir
  

  
/home/hadoop/Cloud/workspace/temp
  

  

  

  

  
############################core
  

  
vimhdfs-site.xml
  
##############################hdfs
  

  

  

  

  
dfs.replication
  

  
3
  

  

  

  

  

  
dfs.permissions
  

  
false
  

  

  

  

  

  
dfs.namenode.name.dir
  

  
/home/hadoop/Cloud/workspace/hdfs/data
  

  
true
  

  

  

  

  

  
dfs.namenode.dir
  

  
/home/hadoop/Cloud/workspace/hdfs/name
  

  

  

  

  

  
dfs.datanode.dir
  

  
/home/hadoop/Cloud/workspace/hdfs/data
  

  

  

  

  

  
dfs.webhdfs.enabled
  

  
true
  

  

  

  

  
##################################hdfs
  

  
vim mapred-site.xml
  

  
####################################mapred
  

  

  

  
   mapred.job.tracker
  
      master:9001
  
      
  

  

  
######################################mapred
  

  
到这里hadoop配置完成
  
把hadoop发送到slave1和slave2
  
scp -r hadoop-1.2.1 hadoop@slave1:~/Cloud/
  
scp -r hadoop-1.2.1 hadoop@slave2:~/Cloud/
  

  
########现在可以启动hadoop啦
  
########
  
首先格式化namenode
  
hadoop namenode -format   (由于前面设计了hadoop-env.sh和系统环境,所以在任意目录下都可以执行)
  
查看日志没错的话往下
  
start-all.sh
  
然后
  
完整的的话会出现:
  
$ jps
  
8330 JobTracker
  
8452 TaskTracker
  
8246 SecondaryNameNode
  
8125 DataNode
  
8000 NameNode
  
8598 Jps
  
$ ssh slave1
  
Last login: Thu Jan 12 07:08:06 2017 from master
  
$ jps
  
3885 DataNode
  
3970 TaskTracker
  
4078 Jps
  
$ ssh slave2
  
Last login: Thu Jan 12 07:20:45 2017 from master
  
$ jps
  
2853 TaskTracker
  
2771 DataNode
  
2960 Jps
  
至此,hadoop完全分布式配置完成。
  
下面是hadoop的浏览器端口号:
  
localhost:50030/   for the Jobtracker
  
localhost:50070/   for the Namenode
  
localhost:50060/   for the Tasktracker
  

  
从此走上大数据这条不归路。。。


页: [1]
查看完整版本: centos 64位 hadoop 完全分布式安装