hadoop集群安装(多机,非伪集群)
1. 创建用户
创建hadoop用户组:sudo addgroup hadoop
创建hadoop用户:sudo adduser -ingroup hadoop hadoop
为hadoop用户分配root权限:sudo gedit /etc/sudoers
按回车键就能够打开sudoers文件
在root ALL=(ALL:ALL) ALL以下加入hadoop ALL=(ALL:ALL) ALL
2. 改动机器名
系统安装之后默认的名称为"ubuntu"。为了在集群中可以分辨各台server,我们须要改动机器名,机器名由/etc/hostname文件决定。
打开/etc/hostname文件:sudo gedit /etc/hostname
将"ubuntu"改为规定的机器名。比方"master"
3. 安装JDK
将已经下载的jdk-7u79-linux-x64.tar.gz拷贝到ubuntu上。
复制到/usr/local路径:
解压:cd /usr/local进入到jdk压缩包所在路径;解压缩sudo tar -zxvf jdk-7u79-linux-x64.tar.gz。回车出现量的压缩信息。压缩完之后查看该文件夹下的文件,会发现多了个文件夹。如图
环境变量设置
打开/etc/profile文件,将下面内容拷贝进去。
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/java-7-sun/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/java-7-sun/bin/javac 300
sudo update-alternatives --config java sudo update-alternatives --remove-all 变量名 測试JDK
输入java -version測试环境
系统Java环境安装完成
4. 安装SSH服务
hdfs通过ssh控制节点之间的通讯,所以ssh一定要设置。
sudo apt-get install ssh openssh-server
5. 设置SSH免password连接。在master节点上生成key
成功流程:
hadoop@master 用户下 sudo gedit /home/sudoers 加入权限
hadoop@master 用户下 sudo gedit /etc/hosts 加入客户机/server
cd ~/.ssh
ssh-keygen -t rsa 然后无脑回车
cat id_rsa.pub >> authorized_keys 将密钥写入公钥
cat authorized_keys 查看公钥
sudo scp authorized_keys hadoop@slave03:/home/hadoop/.ssh 将公钥发给客户机/3号server
ssh slave03 链接客户机/server
出现上图所看到的就说明能够连通,输入exit命令。推出ssh登陆状态。
再次输入ssh slave03就可以自己主动链接,否则没成功
二、 配置集群
1. 解压hadoop安装包
与安装jdk的步骤一样,将hadoop-2.6.0.tar.gz移动到/usr/local下。解压后在/usr/local文件夹下多一个文件夹,如图
将hadoop-2.6.0.tar.gz文件重命名为hadoop
sudo mv hadoop-2.6.0.tar.gz hadoop
2. 将hadoop文件的权限加入给hadoop组的hadoop用户
sudo chown -R hadoop:hadoop hadoop
3. 设置linux系统的hadoop环境变量
export JAVA_HOME=/opt/jdk1.7.0_79
export JRE_HOME=$JAVA_HOME/jre
export HADOOP_HOME=/usr/local/hadoop
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$PATH
4. 改动/etc/hosts文件
打开/etc/hosts文件,将各个节点的机器名与IP相应
211.69.255.01 slave01
................
5. 配置/etc/hadoop/hadoop-env.sh文件
指定当中的jdk路径/opt/jdk1.7.0_79
6. 配置/etc/hadoop/core-site.xml文件
打开core-site.xml文件,配置例如以下。 <property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property> <property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/hadoop-datastore/hadoop-hadoop</value>
</property>
(注:当中的hadoop.tmp.dir项不要按默认的设置。默认的设置会将这个文件夹指定到tmp文件夹下,一旦NameNode关机或者重新启动,集群中全部的存储文件将丢失)
7. 配置hdfs-site.xml文件
打开hdfs-site.xml文件,配置例如以下
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property> <name>dfs.permissions</name> <value>false</value> </property> 8。配置mapred-site.xml文件 <property>
<name>mapred.job.tracker</name>
<value>master:9001</value>
</property>
9. 配置slaves文件
里面配置的都是集群中的机器名,与hosts文件形成映射。
打开etc/hadoop/slaves文件。配置例如以下
master
slave01
slave02
slave03
(注意这里必须增加master主机域名) 10. 将配置好的hadoop发给每个slave节点
scp -r /usr/local/hadoop hadoop@slave01:/usr/local 这个命令非常6哦,假设发现一台机子配置没配好,或者有更改,就用这样的命令将文件发给每一台机子
在slave节点上,分别把得到的hadoo文件的权限分配给hadoop用户组的hadoop用户,运行例如以下命令
sudo chown -R hadoop:hadoop hadoop
11. 启动hadoop
这里则要注意是在bin的上一层文件夹运行
第一次启动hadoop集群须要对namenode进行格式化,运行命令:bin/hdfs namenode -format。
仅仅有第一次启动的时候须要格式化。以后都不须要。
格式化完毕后运行sbin/start-all.sh脚本启动所有服务。
三、 測试集群
执行 bin/hdfs dfsadmin -report在控制台查看dfs的状态
也可在浏览器訪问master节点的50070port
能够看到有3个活着的datanode。
注意:
(1)假设搭建不成功则sbin/stop-all.sh关闭服务。清除tmp和你配置的存储数据的目录,清空后,然后在配置
恭喜你搭建成功
hadoop集群安装(多机,非伪集群)的更多相关文章
- CentOS---zookeeper安装(单机、伪集群、集群)
一:单机安装: 可以参考下面的伪集群安装方式 不同点: 不需要在data目录下创建 myid 文件 不需要配置集群 配置好后的启动和状态查询命令相同!! 二:伪集群模式 伪集群模式就是在同一主机上启动 ...
- zookeeper安装和配置(单机+伪集群+集群)
#单机模式 解压到合适目录. 进入zookeeper目录下的conf子目录, 复制zoo_sample.cfg-->zoo.cfg(如果没有data和logs就新建):tickTime=2000 ...
- 超详细,多图文介绍redis集群方式并搭建redis伪集群
超详细,多图文介绍redis集群方式并搭建redis伪集群 超多图文,对新手友好度极好.敲命令的过程中,难免会敲错,但为了截好一张合适的图,一旦出现一点问题,为了好的演示效果,就要从头开始敲.且看且珍 ...
- 峰Redis学习(10)Redis 集群(单机多节点集群和多机多节点集群)
单机多节点集群:参考博客:http://blog.java1234.com/blog/articles/326.html 多机多节点集群:参考博客:http://blog.java1234.com/b ...
- MongoDB ReplacaSet & Sharding集群安装 配置 和 非集群情况的安装 配置 -摘自网络
单台机器做sharding --单机配置集群服务(Sharding) --shard1_1 mongod --install --serviceName MongoDBServerShard1 --s ...
- CDH集群安装配置(三)- 集群时间同步(主节点)和 免密码登录
集群时间同步(主节点) 1. 查看是否安装ntp服务,如果没有安装 rpm -qa |grep ntpd查看命令 yum install ntp安装命令 2. 修改配置 vi /etc/ntp.con ...
- MongoDB集群搭建---副本和分片(伪集群)
参考地址:https://blog.csdn.net/weixin_43622131/article/details/105984032 已配置好的所有的配置文件下载地址:https://files. ...
- CDH集群安装配置(一)-集群规划和NAT网络配置
三台物理机或者虚拟机. cdh1,cdh2,cdh3. 内存要求大于8GB,cdh1的物理磁盘要求多余50G. 每台虚拟机安装centos 7 系统.
- 【分布式】Zookeeper伪集群安装部署
zookeeper:伪集群安装部署 只有一台linux主机,但却想要模拟搭建一套zookeeper集群的环境.可以使用伪集群模式来搭建.伪集群模式本质上就是在一个linux操作系统里面启动多个zook ...
随机推荐
- C++ 为什么要virtual析构函数
class A { public: A() { printf("A()\n"); } virtual ~A() { printf("~A()\n"); } }; ...
- Java Base64、HMAC、SHA1、MD5、AES DES 3DES加密算法
● BASE64 严格地说,属于编码格式,而非加密算法 ● MD5(Message Digest algorithm 5,信息摘要算法) ● SHA(Secure Hash Algo ...
- CF741DArpa’s letter-marked tree and Mehrdad’s Dokhtar-kosh paths(DSU on tree)
题目大意: 给定一个以1为根的树,每条路径上都有一个字符(a~v共22个)询问对于每一个子树内最长的路径上字母经排序后可以形成回文串的最长路径多长 解题思路: 假定给你一个字符串,如何判定其经打乱能否 ...
- 自定义input[type="checkbox"]样式
input[type=checkbox] { visibility: hidden; position: relative;} input[type=checkbox]:after { content ...
- 可执行EXE在windows调用过程
举例图中, 一个C#编写的测试程序, 输出两句话分别 : Hello, GoodBye, 介绍其在windows上CLR的调用过程. 1.在执行Main方法之前, CLR会检测出Main的代码引用的所 ...
- Cts框架解析(1)-windows下cts配置
环境搭建 下载 cts工具的下载地址:http://source.android.com/compatibility/downloads.html windows选择Android4.4 R3 Com ...
- Eclipse Class Decompiler——Java反编译插件手工配置方法
最近在eclipse上配置了java反编译插件,但是不好用,原因是我的eclipse之前有手动配置过一些类似的java反编译插件,当我将原来的插件完全卸载后重新配置才正常配置上去,自动配置java反编 ...
- 右键菜单添加带图标的Notepad++
给Notepad++ 加带图标右键菜单 方式一: 拷贝以下代码建立一个reg文件,替换相关路径,保存,双击运行加入注册表 Windows Registry Editor Version 5.00 [H ...
- git stash备份当前工作区内容,回到最近一次commit提交
git stash: 备份当前的工作区的内容,从最近的一次提交中读取相关内容,让工作区保证和上次提交的内容一致.同时,将当前的工作区内容保存到Git栈中.git stash pop: 从Git栈中读取 ...
- 关于PyYAML报错问题解决
转自:http://www.fwqtg.net/%E5%85%B3%E4%BA%8Epyyaml%E6%8A%A5%E9%94%99%E9%97%AE%E9%A2%98%E8%A7%A3%E5%86% ...