1 %include /usr/lib/rpm/macros.perl
2 Summary: Heartbeat - subsystem for High-Availability Linux
3 Summary(es): Subsistema heartbeat para Linux "High-Availability"
4 Summary(pl): Podsystem heartbeat dla systemów o podwy¿szonej niezawodno¶ci
5 Summary(pt_BR): Implementa sistema de monitoração (heartbeats) visando Alta Disponibilidade
10 Group: Applications/System
11 Source0: http://linux-ha.org/download/%{name}-%{version}.tar.gz
12 # Source0-md5: b31e3f91c76fe006d2af94a868445293
13 Patch0: %{name}-ac.patch
14 URL: http://linux-ha.org/
15 BuildRequires: OpenIPMI-devel
16 BuildRequires: autoconf
17 BuildRequires: automake
18 BuildRequires: curl-devel
19 BuildRequires: glib-devel
20 BuildRequires: libnet-devel >= 1.1.0
21 BuildRequires: libltdl-devel
22 BuildRequires: libtool
23 BuildRequires: libxml2-devel
24 BuildRequires: net-snmp-devel
25 BuildRequires: perl-libwww
26 BuildRequires: rpm-perlprov
27 BuildRequires: rpmbuild(macros) >= 1.159
29 Requires(pre): /usr/bin/getgid
30 Requires(pre): /usr/sbin/groupadd
31 Requires(post,preun): /sbin/chkconfig
32 Requires(post,postun): /sbin/ldconfig
33 Requires(postun): /usr/sbin/groupdel
34 Requires: syslogdaemon
35 Provides: group(haclient)
36 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
39 heartbeat is a basic heartbeat subsystem for Linux-HA. It will run
40 scripts at initialization, and when machines go up or down. This
41 version will also perform IP address takeover using gratuitous ARPs.
42 It works correctly for a 2-node configuration, and is extensible to
43 larger configurations.
45 It implements the following kinds of heartbeats:
46 - Bidirectional Serial Rings ("raw" serial ports)
49 heartbeat es un sistema básico para Linux-HA. La función de este
50 software es ejecutar scripts en la inicialización y al apagar las
51 máquinas que lo utilizan.
54 heartbeat jest podstawowym podsystemem dla systemów o podwy¿szonej
55 dostêpno¶ci budowanych w oparciu o Linuksa. Zajmuje siê uruchamianiem
56 skryptów podczas startu i zamykania systemu. Ta wersja pakietu pozwala
57 na przejmowanie adresów IP. Oprogramowanie dzia³a poprawnie dla
58 konfiguracji sk³adaj±cej siê z 2 hostów, mo¿na je równie¿ stosowaæ do
59 bardziej skomplikowanych konfiguracji.
62 #Summary: Provides an interface to Shoot The Other Node In The Head
72 %{__libtoolize} --ltdl
78 --with-initdir=/etc/rc.d/init.d
83 rm -rf $RPM_BUILD_ROOT
86 DESTDIR=$RPM_BUILD_ROOT
88 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/ha.d/resource.d/ldirectord
89 ln -sf %{_sbindir}/ldirectord $RPM_BUILD_ROOT%{_sysconfdir}/ha.d/resource.d/ldirectord
91 # plugins are lt_dlopened, but using *.so names, so *.la are not used
92 rm -f $RPM_BUILD_ROOT%{_libdir}/{heartbeat,pils,stonith}/plugins/*/*.{la,a}
95 rm -rf $RPM_BUILD_ROOT
98 if [ -n "`/usr/bin/getgid haclient`" ]; then
99 if [ "`/usr/bin/getgid haclient`" != 60 ]; then
100 echo "Error: group haclient doesn't have gid=60. Correct this before installing heartbeat." 1>&2
104 /usr/sbin/groupadd -g 60 haclient 1>&2
109 /sbin/chkconfig --add heartbeat
112 Uninstall_PPP_hack() {
113 file2hack=/etc/ppp/ip-up.local
114 echo "NOTE: Restoring /$file2hack"
116 ed -s $file2hack <<-!EOF 2>/dev/null
123 if [ "$1" = "0" ]; then
124 /sbin/chkconfig --del heartbeat
125 if [ ! -x /etc/ppp/ip-up.heart ]; then
132 if [ "$1" = "0" ]; then
133 %groupremove haclient
137 %defattr(644,root,root,755)
138 %doc doc/{*.html,AUTHORS,apphbd.cf,authkeys,ha.cf,haresources,startstop}
139 %attr(755,root,root) %{_sbindir}/*
140 %attr(755,root,root) %{_libdir}/lib*.so.*.*.*
141 %dir %{_libdir}/heartbeat
142 %dir %{_libdir}/heartbeat/cts
143 %attr(755,root,root) %{_libdir}/heartbeat/cts/*.py
144 %dir %{_libdir}/heartbeat/plugins
145 %dir %{_libdir}/heartbeat/plugins/*
146 %attr(755,root,root) %{_libdir}/heartbeat/plugins/*/*.so
147 %attr(755,root,root) %{_libdir}/heartbeat/[!cp]*
148 %attr(755,root,root) %{_libdir}/heartbeat/c[!t]*
150 %dir %{_libdir}/pils/plugins
151 %dir %{_libdir}/pils/plugins/*
152 %attr(755,root,root) %{_libdir}/pils/plugins/*/*.so
153 %dir %{_libdir}/stonith
154 %dir %{_libdir}/stonith/plugins
155 %dir %{_libdir}/stonith/plugins/stonith
156 %attr(755,root,root) %{_libdir}/stonith/plugins/stonith/*.so
157 %dir %{_sysconfdir}/ha.d
158 %dir %{_sysconfdir}/ha.d/conf
159 %attr(755,root,root) %{_sysconfdir}/ha.d/rc.d
160 %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d
161 %{_sysconfdir}/ha.d/README.config
162 %attr(755,root,root) %{_sysconfdir}/ha.d/harc
163 %{_sysconfdir}/ha.d/shellfuncs
164 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/heartbeat
165 %attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/logrotate.d/ldirectord
166 %attr(754,root,root) /etc/rc.d/init.d/heartbeat
167 %attr(754,root,root) /etc/rc.d/init.d/ldirectord
168 %dir /var/lib/heartbeat
169 %attr(750,root,haclient) %dir /var/lib/heartbeat/api
170 %attr(1770,root,haclient) %dir /var/lib/heartbeat/casual
171 #%attr(755,hacluster,haclient) %dir /var/lib/heartbeat/ccm
172 %attr(755,root,haclient) %dir /var/lib/heartbeat/ccm
173 %attr(755,root,haclient) %dir /var/lib/heartbeat/ckpt
174 %attr(600,root,root) /var/lib/heartbeat/fifo