博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HA(High Availability高可用性)
阅读量:3932 次
发布时间:2019-05-23

本文共 1444 字,大约阅读时间需要 4 分钟。

简介

HA(High Availability高可用性)这里指的是hadoop的高可用机制,设计之初就是为了解决单节点故障问题。

HDFS(Hadoop分布式文件系统)中NameNode只有一个,当这个NameNode挂了,整个集群就不能对外服务,需要花很长时间才能修复正常,才能继续工作,生产中是不允许这种事情发生的。

它将最初的NN(主节点)的log日志进行了分布式存储,使文件存储更加安全;

并且对NN进行了监控,一旦NN出现故障就会立刻更换新的NN,对原有的NN进行替换,防止单节点故障的发生;

它装了两个NN,并且两个NN之间有隔离机制 (不能同时运行两台NN机器),若同时出现两台NN运行的情况,它会强制将先运行的那一台进行kill -9 。

运行原理

参考文章:

详细配置

参考文章:

ha.cf

ha.cf

debugfile /var/log/ha-debug.loglogfile /var/log/ha.log#bcast eth1   #心跳使用以太网广播方式,eth1为广播地址ucast eth1 192.168.200.129  #单播形式与对方机器通信,与上者二选一keepalive 2   #每2秒发一次广播warntime 10   # 这个时间为警告时间,10s钟内没有收到对方节点的信号,则会发警告信息记录到日志里deadtime 30   #30s内没有收到对方节点的信号则认为对方节点宕机,然后立即接管对方节点的服务initdead 120  #这个时间是给重启系统留出来的等待时间,如果系统重启了那么网络服务不会立即正常使用udpport 694   # 广播通信使用的端口auto_failback on   # 如果是on, 则当主节点故障恢复后,服务还会切换回来#虽然我们口头上约定好了node1  node2,但是若是主机名和这个不一致,会导致heartbeat启动不了。所以还得在每台机器上配置hostname#查看本机hostname:uname -n#	node	nodename ...	-- must match uname -nnode node1   #主节点主机名node node2   #从节点主机名ping 192.168.0.1    #仲裁节点,最好是一个比较强健的设备,比如说交换机respawn hacluster /usr/lib/heartbeat/ipfail     #当heartbeat启动时也会随着一起启动的进程放到这里,ipfail是用来检测网络连通性的工具,hacluster为启动该程序的用户

hosts

hosts文件是一个没有扩展名的系统文件,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。

  1. 主备机要从hosts里选;
  2. 当前机器(uname -n)需要作为主机或备机;
  3. 另一台机器的ip需要在hosts已配置;

查看服务状态

前提 /etc/init.d/heartbeat 脚本需存在

[root@NetSeal2 ~]# /etc/init.d/heartbeat statusheartbeat OK#heartbeat is stopped.

转载地址:http://yzqgn.baihongyu.com/

你可能感兴趣的文章
HTML5认知
查看>>
Ubuntu nginx 配置https
查看>>
Thrift 操作 Hbase
查看>>
前端开发概要
查看>>
静态方法应用
查看>>
学习资料
查看>>
技术 +市场必须两手抓
查看>>
服务器抓包
查看>>
vim应用
查看>>
SOA性能管理现状
查看>>
Linux服务器常用命令
查看>>
Linux 检索
查看>>
防止机器注册
查看>>
git操作杂记
查看>>
thrift应用
查看>>
php 按元素值获取最佳元素组合
查看>>
支付服务集成-支付宝
查看>>
使用openssl生成RSA公钥和私钥对
查看>>
Linux常用命令
查看>>
Linux 定时任务应用
查看>>