User Tools

Site Tools


решение_hast

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
решение_hast [2016/04/26 14:46]
val [Настройка узлов]
решение_hast [2017/09/29 10:01]
val
Line 20: Line 20:
         on node1 {         on node1 {
                 local /dev/ada1                 local /dev/ada1
-                remote 10.10.101.200+X+                remote 10.Z.M.200+X
         }         }
         on node2 {         on node2 {
                 local /​dev/​ada1 ​           ​                 local /​dev/​ada1 ​           ​
-                remote 10.10.101.100+X+                remote 10.Z.M.100+X
         }         }
 } }
Line 72: Line 72:
 </​code>​ </​code>​
  
-===== Дополнительные материалы ===== +===== Решение ситуации split brain =====
- +
-==== Решение ситуации split brain ====+
  
 Выбираем узел, данные которого будут затерты. Выбираем узел, данные которого будут затерты.
Line 89: Line 87:
 </​code>​ </​code>​
  
 +===== HAST и HEARTBEAT =====
 +
 +  - Состояние init возникает при запуске hastd на secondary узле, если он остановился и стартует раньше primary
 +  - Ситуация Split-Brain возникает при запуске hastd на secondary узле, если он остановился позже primary и heartbeat успел его назначить primary, а запускаются оба узла синхронно и heartbeat считает что primary должен оставаться прежним.
 +
 +<​code>​
 +nodeN# service heartbeat stop
 +
 +nodeN# cat /​usr/​local/​etc/​ha.d/​resource.d/​hast
 +</​code><​code>​
 +#!/bin/sh
 +case $1 in
 +status)
 +        hastctl status r0 | grep -q '​init'​ && hastctl role secondary r0
 +        ;;
 +start)
 +        hastctl role primary r0
 +        sleep 60
 +        fsck -y -t ufs /​dev/​hast/​r0
 +        mount /​dev/​hast/​r0 /disk2
 +        ;;
 +stop)
 +        mount | grep -q hast && umount /disk2
 +        hastctl role secondary r0
 +        ;;
 +esac
 +
 +exit 0
 +</​code><​code>​
 +nodeN# chmod +x /​usr/​local/​etc/​ha.d/​resource.d/​hast
 +
 +nodeN# cat /​usr/​local/​etc/​ha.d/​haresources
 +</​code><​code>​
 +node1.corpX.un hast
 +</​code><​code>​
 +nodeN# service heartbeat start
 +</​code>​
решение_hast.txt · Last modified: 2017/10/02 09:48 by val