`
奔跑的羚羊
  • 浏览: 570290 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

搭建hadoop集群环境

阅读更多
1) 安装jdk
下载jdk-6u21-linux-i586.bin
然后修改/etc/profile:
export JAVA_HOME=/usr/local/jdk
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$PATH:$JAVA_HOME/bin

保存,并执行source /etc/profile

2) 配置host
Namenode的机器,需要配置集群中所有机器的ip
修改/etc/hosts
10.10.236.190   master
10.10.236.191   slave-A
10.10.236.193   slave-B


其他的datanode只需要配置namenode的机器ip和本机ip
10.10.236.190   master
10.10.236.191   slave-A


修改hostname
vi /proc/sys/kernel/hostname

3) 建立ssh无密码登录
首先进到root目录下
root@master:~# $ssh-keygen  -t  rsa

进入.ssh目录
root@master:~/.ssh# cp id_rsa.pub authorized_keys


其余的datanode的机器
新建.ssh目录
root@slave-A:~# mkdir .ssh

在name(master)上远程拷贝
root@master:~/.ssh# scp authorized_keys slave-A:/root/.ssh/


测试ssh

chmod 600 authorized_keys

如果还是失败
vi /etc/ssh/sshd_config 
RSAAuthentication yes
PubkeyAuthentication yes
然后重启ssh服务  service sshd restart


4) 安装hadoop
下载Hadoop 解压到每台服务器的/data/soft
解压
root@master:/data/soft# tar zxvf hadoop-0.21.0.tar.gz

建立软连
root@master:/data/soft# ln -s hadoop-0.21.0 hadoop

然后修改/etc/profile
export HADOOP_HOME=/data/soft/hadoop
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin


5) 配置hadoop
1.修改conf/hadoop-env.sh,添加jdk支持
export JAVA_HOME=/usr/local/jdk


2.修改conf/core-site.xml,增加下面内容
       
        <property> 
                <name>fs.default.name</name>  
                <value>hdfs://master:54310</value> //这个才是真正决定namenode
        </property>
        <property>  
                <name>hadoop.tmp.dir</name>  
                <value>/data/hdfs/tmp</value>  //临时文件,有问题的时候,可以删除
                <description>A base for other temporary directories.</description>
        </property>
        


3.修改conf/hdfs-site.xml,增加下面内容
      
 
        <property>
                <name>dfs.name.dir</name>
                <value>/data/hdfs/name</value> //namenode持久存储名字空间,事务日志的本地路径
        </property>
        <property>
                <name>dfs.data.dir</name>
                <value>/data/hdfs/data</value> //datanode存放数据的路径
        </property>
        <property>
                <name>dfs.datanode.max.xcievers</name>
                <value>4096</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>1</value> //数据备份的个数,默认是3
        </property>


3.修改conf/mapred-site.xml,增加下面内容
      
 
        <property>
                <name>mapred.job.tracker</name> //jobTracker的主机
                <value>master:54311</value>
        </property>

4. .修改conf/masters,这个决定那个是secondarynamenode
Master

5 .修改conf/slaves,这个是所有datanode的机器

6) 将配置好的hadoop拷贝到所有的datanode
root@master:/data/soft/hadoop/conf# scp -rp /data/soft/hadoop-0.21.0 10.10.236.191:/data/soft/hadoop-0.21.0

在datanode上建立对应的软连

7) 格式化hdfs文件系统的namenode
root@master:/data/soft/hadoop# bin/hadoop namenode –format

输入Y

8) 启动hdfs

root@master:/data/soft/hadoop# bin/start-all.sh


9) Hdfs操作
建立目录
root@master:/data/soft/hadoop # bin/hadoop dfs -mkdir testdir


查看现有文件
root@master:/data/soft/hadoop # bin/hadoop dfs -ls


10) 执行第一个java程序
1.
 root@master:/data/soft # echo "hello World Bye World" > file01

2.
 root@master:/data/soft# scho "hello Hadoop Goodbye Hadoop" > file02

3.创建目录
hadoop/bin/hadoop fs -mkdir input

4.将本来文件拷贝到分布式文件系统
root@master:/data/soft# hadoop/bin/hadoop fs -copyFromLocal /data/soft/file0* input

5.运行事例程序
root@master:/data/soft/hadoop# hadoop jar hadoop-mapred-examples-0.21.0.jar wordcount input output

查看运行结果
root@master:/data/soft/hadoop# hadoop fs -cat output/part-r-00000  



用户权限

1.添加组cloud
groupadd cloud

2.添加用户hadoop,并添加到组cloud
useradd -g cloud hadoop

3.修改hadoop的所有者
chown -R hadoop:cloud hadoop/

4.修改hadoop文件的权限
chmod -R 750 ./hadoop

hadoop上的用户名依赖与宿主计算机的登录用户
同样hadoop shell中也支持chown  chmod
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics