HDFS部分:HDFS集群分布式HA高可用的搭建【包括安装JDK的步骤,免秘钥,时间同步,完全分布式搭建,搭建zookeeper等】

 HDFS集群的搭建:
 1.安装JDK
 2.免秘钥 
 3.时间同步
 4.完全分布式的搭建
 5.搭建zookeeper
一.首先安装JDK:上传解压就行
 注意解压的命令:
rpm -i /software/file/linux-basic/jdk-7u67-linux-x64.rpm(rpm类型的文件解压)
复制将路径配置到/etc/profile路径下
完成之后:. /etc/profile(source /etc/profile)
二.免秘钥
https://mp.csdn.net/postedit/80939949
就是生成自己的秘钥和公钥,将自己打的公钥发给别人,并且保存在authorizedkeys下的文件中

伪分布式:就是在一台机器上操作
免秘钥:是管理脚本,远程登录到一个节点上去,自己的登陆自己也需要免秘钥操作
ssh localhost:登录自己生成.ssh的密钥系统
ssh-keygen -t dsa -P '' -f /root/.ssh/id_dsa
秘钥放在root下的家目录下
要想登录对方,必须将自己的公钥给对方,也就是被登陆者有这么一个认证文件
将自己的密钥发给自己形成和自己IDE绵密登录:
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
管理脚本用到了免秘钥
将自己的公钥发给别人:
scp ~/.ssh/id_rsa.pub root@node02:`pwd`./node01_pub
三.时间同步:
分别下载:yum install ntp -y
同阿里云时间一致:
分别执行:
ntpdate ntp1.aliyun.com
四.安装Hadoop:
上传解压:
gz包的解压:tar xf hadoop-2.6.5.tar.gz /opt/sxt
hadoop文件下有bin目录和sbin目录,故在配置Hadoop的时候,需要在/etc/profile下分别配置$HADOOP_HOME/bin和$HADOOP_HOME/sbin

配置环境:
去Hadoop下etc下:
查看:
:! ls -l /usr/java
1.hadoop-env.sh下配置export java_home

2.mapred-env.sh下配置export java_home

3.yarn-env.sh下配置export java_home

hdfs中namenode:9000
hdfs是一个虚的东西,真正的是namenode

4.core-site.xml:配置namenode的节点

<property>
        <name>fs.defaultFS</name>
        <value>hdfs://mycluster</value>
</property>

5.hdfs-site.xml:配置namenode副本的节点

6.创建vi slaves 下配置DataNode的节点,主从模型
node02
node03
node04
五.zookeeper集群的搭建
具体见:
https://blog.csdn.net/wyqwilliam/article/details/81024103
上传解压:
去zoo.cfg下配置:
持久化的目录:
dataDir=/var/sxt/hadoop/zk
在最后加上:
server.1=192.168.206.22:2888:3888
server.2=192.168.206.23:2888:3888
server.3=192.168.206.24:2888:3888
2888:
3888:
分别去node02,node03,node04下:
mkdir -p /var/sxt/hadoop/zk
echo 1 > /var/sxt/hadoop/zk/myid
分别将配置好的zookeeper复制分发给其他节点
最后分别配置:
core-site.xml:配置zookeeper的节点
hdfs-site.xml:配置journalnode,免秘钥等
然后分发

zookeeper启动之前的格式化:
启动zookeeper的客户端,
在node01上:hdfs zkfc -format 
单独启动某一个节点用:
 hadoop-daemon.sh start namenode
hdfs namenode -format:格式化

启动HDFS的命令:start-dfs.sh

格式化zkfc,也就是创建znode文件

 附加hdfs-site.xml的配置:

hdfs-site.xml:

<property>
  <name>dfs.nameservices</name>
  <value>mycluster</value>
</property>
<property>
  <name>dfs.ha.namenodes.mycluster</name>
  <value>nn1,nn2</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn1</name>
  <value>node01:8020</value>
</property>
<property>
  <name>dfs.namenode.rpc-address.mycluster.nn2</name>
  <value>node02:8020</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn1</name>
  <value>node01:50070</value>
</property>
<property>
  <name>dfs.namenode.http-address.mycluster.nn2</name>
  <value>node02:50070</value>
</property>



<property>
  <name>dfs.namenode.shared.edits.dir</name>
  <value>qjournal://node01:8485;node02:8485;node03:8485/mycluster</value>
</property>

<property>
  <name>dfs.journalnode.edits.dir</name>
  <value>/var/sxt/hadoop/ha/jn</value>
</property>


<property>
  <name>dfs.client.failover.proxy.provider.mycluster</name>
  <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
  <name>dfs.ha.fencing.methods</name>
  <value>sshfence</value>
</property>
<property>
  <name>dfs.ha.fencing.ssh.private-key-files</name>
  <value>/root/.ssh/id_dsa</value>
</property>


<property>
   <name>dfs.ha.automatic-failover.enabled</name>
   <value>true</value>
 </property>

 附加core-site.xml的配置:

core-site.xml

******core-site.xml
注意:hadoop.tmp.dir的配置要变更:/var/sxt/hadoop-2.6/ha
 <property>
  <name>fs.defaultFS</name>
  <value>hdfs://mycluster</value>
</property>

<property>
   <name>ha.zookeeper.quorum</name>
   <value>node02:2181,node03:2181,node04:2181</value>
 </property>



客户端开发,保证core,hdfs-site.xml都被客户端加载

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值