本文共 1444 字,大约阅读时间需要 4 分钟。
HA(High Availability高可用性)这里指的是hadoop的高可用机制,设计之初就是为了解决单节点故障问题。
HDFS(Hadoop分布式文件系统)中NameNode只有一个,当这个NameNode挂了,整个集群就不能对外服务,需要花很长时间才能修复正常,才能继续工作,生产中是不允许这种事情发生的。它将最初的NN(主节点)的log日志进行了分布式存储,使文件存储更加安全;
并且对NN进行了监控,一旦NN出现故障就会立刻更换新的NN,对原有的NN进行替换,防止单节点故障的发生;
它装了两个NN,并且两个NN之间有隔离机制 (不能同时运行两台NN机器),若同时出现两台NN运行的情况,它会强制将先运行的那一台进行kill -9 。
参考文章:
参考文章:
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文件是一个没有扩展名的系统文件,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。
前提 /etc/init.d/heartbeat 脚本需存在
[root@NetSeal2 ~]# /etc/init.d/heartbeat statusheartbeat OK#heartbeat is stopped.
转载地址:http://yzqgn.baihongyu.com/