前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >hadoop安装配置过程总结

hadoop安装配置过程总结

作者头像
闵开慧
发布2018-03-30 14:44:26
8550
发布2018-03-30 14:44:26
举报
文章被收录于专栏:闵开慧

 一、Jdk安装 系统已经默认有安装,但不完全,所以需要自己安装 配置环境变量: 在usr下新建java文件夹,将Java7压缩文件解压在该文件夹中,并配置系统文件: nano /etc/profile #export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL export JAVA_HOME=/usr/java/jdk1.7.0_51 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 执行配置文件,令其立即生效 source /etc/profile 通过java -version及java、javac查看是否安装成功 二、新增hadoop用户 添加用户:useradd hadoop 修改用户密码:passwd hadoop 修改/etc/sudoers文件,在root ALL=(ALL) ALL后 hadoop ALL=(ALL) ALL使hadoop用户具有root权限 使用su hadoop切换到Hadoop用户进行操作 三、ssh配置 用hadoop账户进行登录。 安装openssh-server:sudo apt-get install openssh-server 建立SSH KEY:ssh-keygen -t rsa --P"" 启用SSH KEY:cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys sudo /etc/init.d/ssh reload 验证SSH的配置:ssh localhost 首先请确保防火墙都处于关闭状态,具体命令是ufs disable。并确保安装ssh spenssh-server。 在主机qiuchenl0中执行以下命令:     cd ~/.ssh     (进入用户目录下的隐藏文件.ssh)     ssh-keygen -t rsa   (用rsa生成密钥)     cp id_rsa.pub authorized_keys   (把公钥复制一份,并改名为authorized_keys,这步执行完,应该ssh localhost可以无密码登录本机了,可能第一次要密码)     scp authorized_keysqiuchenl@qiuchenl1:/home/qiuchenl/.ssh  (把重命名后的公钥通过ssh提供的远程复制文件复制到从机qiuchenl1上面)     chmod 600 authorized_keys    (更改公钥的权限,也需要在从机qiuchenl1中执行同样代码)     ssh qiuchenl1  (可以远程无密码登录qiuchenl1这台机子了,注意是ssh不是sudo ssh。第一次需要密码,以后不再需要密码) 四、安装hadoop并更改用户所有权 我们采用的Hadoop版本是最新的Hadoop-0.20.2,可到Apache基金会官方主页下载http://www.apache.org/dyn/closer.cgi/hadoop/core,然后使用tar或直接解压到/home/hadoop下,解压后得到一个hadoop-0.20.2的一个文件夹。     安装目录:/usr/local/hadoop     更改所有权:chown -R hadoop:hadoop hadoop 五、配置hadoop (1)配置$HADOOP_HOME/conf/hadoop-env.sh 切换到Hadoop的安装路径找到hadoop-0.20.2下的conf/hadoop-env.sh文件 将:# export JAVA_HOME=/usr/lib/j2sdk1.5-sun 改为:export JAVA_HOME=/usr/lib/jvm/java-6-openjdk (2) 配置$HADOOP_HOME/conf/core-site.xml 切换到Hadoop的安装路径找到hadoop-0.20.2下的conf/core-site.xml文件 <configuration> <property>   <name>fs.default.name</name> NameNode的URI hdfs://主机名/   <value>hdfs://localhost:9000</value> </property> <property>   <name>hadoop.tmp.dir</name>   <value>/home/hadoop/tmp</value> </property> -- 配置第二名称节点 <property>   <name>fs.checkpoint.dir</name>   <value>{}/home/hadoop/secondname</value> </property> -- 设置回收站保留时间 <property>   <name>fs.trash.interval</name>   <value>10080</value>   <description>       Number of minutes between trash checkpoints. If zero, the trash feature is disabled   </description> </property> </configuration> (3) 配置$HADOOP_HOME/conf/hdfs-site.xml 切换到Hadoop的安装路径找到hadoop-0.20.2下的conf/hdfs-site.xml文件内容如下: <configuration> <property> <name>dfs.name.dir</name> <value>/home/hadoop/name</value> </property> <property> <name>dfs.data.dir</name> <value>/home/hadoop/data</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> -- NameNode HTTP状态监视地址 <property> <name>dfs.http.address</name> <value>localhost:50070</value> </property> -- SecondaryNameNode HTTP状态监视地址 <property> <name>dfs.secondary.http.address</name> <value>localhost2:50090</value> </property> </configuration> (4) 配置$HADOOP_HOME/conf/mapred-site.xml 切换到hadoop的安装路径找到hadoop-0.20.2下的conf/mapred-site.xml文件内容如下: <configuration> <property> <name>mapred.local.dir</name> <value>/home/hadoop/temp</value> </property> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> -- 每个job的map任务数 <property> <name>mapred.map.tasks</name> <value>7</value> </property> -- 每一个tasktracker同时运行的map任务数为2 <property> <name>mapred.tasktracker.map.tasks.maximum</name> <value>2</value> </property> -- 每一个tasktracker同时运行的reduce任务数为4 <property> <name>mapred.tasktracker.reduce.tasks.maximum </name> <value>4</value> </property> -- jvm虚拟机最大内存 <property>   <name>mapred.child.java.opts</name>   <value>-XX:-UseGCOverheadLimit</value> </property> </configuration> 六、格式化namenode 命令:bin/hadoop namenode -format 七、启动及验证 命令:./bin/start-all.sh 或者进入到Hadoop安装文件夹里面即和bin文件夹同目录运行bin/start-all.sh 验证方法1:jps 验证方法2:bin/hadoop dfsadmin -report 八:运行Wordcount 1.准备工作 准备两个文本文件并拷贝到dfs里,具体命令操作如下: $ echo "hello hadoop world." > /tmp/test_file1.txt $ echo "hello world hadoop.i'm ceshiuser." > /tmp/test_file2.txt $ bin/hadoop dfs -mkdir test-in $ bin/hadoop dfs -copyFromLocal /tmp/test*.txt test-in --$ bin/hadoop dfs -put /tmp/test*.txt test-in --$ bin/hadoop dfs -copyToLocal test-out /tmp/test*.txt --$ bin/hadoop dfs -get test-out /tmp/test*.txt $ bin/hadoop dfs -ls test-in 2.运行 $ bin/hadoop jar hadoop-0.20.2-examples.jar wordcount test-in test-out --% ln -s /home/hadoop/junyu-hadoop/hadoop-iflytek-tempcount.jar tempcount 3.查看结果 $ bin/hadoop dfs -ls test-out $ bin/hadoop dfs -cat test-out/part-r-00000 分布式部署: 一,修改/etc/hosts文件: 192.168.71.89  node0 192.168.77.213 node1 二,ssh配置 (1)使用scp 命令把生成的公钥传给其它服务器,并保存成不同的名字,如192.168.71.89 -> 192.168.77.213 ,并且保存为89_id_rsa.pub 的时候命令如下: scp id_rsa.pub hadoop@192.168.77.213:/home/hadoop/.ssh/89_id_rsa.pub (2) 登录192.168.77.213 ,可以远程登录:ssh hadoop@192.168.77.213,进入当前用户默认目录下的.ssh 目录:cd ~/.ssh (3) 把公钥内容添加到登录认证文件中:cat 89_id_rsa.pub >> authorized_keys (4) 登录到192.168.71.89 主机,使用ssh hadoop@192.168.77.213 进行连接213 主机,这时候会出现输入yes/no? 的提示,输入yes。 scp -r java root@centos3:/usr拷贝整个java文件夹 kill -9 加进程ID   如下 [root@moyea309 init.d]# kill -9 2091 三,配置hadoop文件。目录:/usr/local/hadoop/conf/ conf/masters :192.168.71.89 conf/slaves  :192.168.77.213 修改 core-site.xml 文件 <property> <name>fs.default.name</name> <value>hdfs://192.168.71.89:9000/</value> </property> 修改 hdfs-site.xml 文件 1: <property> <name>dfs.http.address</name> <value>192.168.71.89:50070</value> </property> 2: <property> <name>dfs.secondary.http.address</name> <value>192.168.71.213:50070</value> </property> 修改mapred-site.xml文件 <property> <name>mapred.job.tracker</name> <value>192.168.71.89:9001</value> </property>

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档