147 lines
4.9 KiB
RPMSpec
147 lines
4.9 KiB
RPMSpec
%bcond_without snmp
|
|
%bcond_without vrrp
|
|
%bcond_without sha1
|
|
%bcond_with profile
|
|
%bcond_without nftables
|
|
%bcond_with debug
|
|
|
|
%global _hardened_build 1
|
|
|
|
Name: keepalived
|
|
Version: 2.2.4
|
|
Release: 4
|
|
Summary: High Availability monitor built upon LVS, VRRP and service pollers
|
|
License: GPLv2+
|
|
URL: http://www.keepalived.org/
|
|
Source0: http://www.keepalived.org/software/keepalived-%{version}.tar.gz
|
|
Source1: keepalived.service
|
|
Source2: keepalived-stop-post.sh
|
|
Source3: keepalived-start-post.sh
|
|
Source4: keepalived-pid-check.sh
|
|
|
|
Patch0001: CVE-2021-44225.patch
|
|
Patch0002: scheduler-Handle-cancelling-timer-thread-on-ready-qu.patch
|
|
Patch0003: vrrp-dbus-Fix-assert-on-shutdown-after-name-lost.patch
|
|
Patch0004: vrrp-Resolve-segfault-when-enable_snmp_vrrp-is-added.patch
|
|
Patch0005: Fix-segfault-when-receive-netlink-message-for-static.patch
|
|
Patch0006: vrrp-deley-freeing-vrrp-instances-until-all-referenc.patch
|
|
Patch0007: check-use-last-entry-if-duplicate-definition.patch
|
|
Patch0008: check-fix-further-memory-leaks-when-configuration-is.patch
|
|
Patch0009: dbus-fix-type-of-name-property-in-interface.patch
|
|
|
|
Requires(post): systemd
|
|
Requires(preun): systemd
|
|
Requires(postun): systemd
|
|
BuildRequires: net-snmp-devel gcc systemd-units openssl-devel libnl3-devel
|
|
BuildRequires: ipset-devel iptables-devel libnfnetlink-devel libnftnl-devel
|
|
BuildRequires: file-devel libmnl-devel
|
|
%{?systemd requires}
|
|
|
|
%description
|
|
Keeplived is a routing software written in C. The main goal of this project
|
|
is to provide simple and robust facilities for loadbalancing and
|
|
high-availability to Linux system and Linux based infrastructures.
|
|
Loadbalancing framework relies on well-known and widely used Linux Virtual
|
|
Server (IPVS) kernel module providing Layer4 loadbalancing. Keepalived
|
|
implements a set of checkers to dynamically and adaptively maintain and
|
|
manage loadbalanced server pool according their health. On the other hand
|
|
high-availability is achieved by VRRP protocol. VRRP is a fundamental brick
|
|
for router failover. In addition, Keepalived implements a set of hooks to
|
|
the VRRP finite state machine providing low-level and high-speed protocol
|
|
interactions. In order to offer fastest network failure detection, Keepalived
|
|
implements BFD protocol. VRRP state transition can take into account BFD hint
|
|
to drive fast state transition. Keepalived frameworks can be used independently
|
|
or all together to provide resilient infrastructures.
|
|
|
|
%package_help
|
|
|
|
%prep
|
|
%autosetup -n %{name}-%{version} -p1
|
|
|
|
%build
|
|
%configure %{?with_debug:--enable-debug} %{?with_profile:--enable-profile} \
|
|
%{!?with_vrrp:--disable-vrrp} %{?with_sha1:--enable-sha1} \
|
|
--with-init=systemd %{!?with_vrrp:--disable-vrrp} \
|
|
%{?with_nftables:--enable-nftables --disable-iptables --disable-ipset} \
|
|
%{?with_snmp:--enable-snmp --enable-snmp-rfc} \
|
|
|
|
%make_build STRIP=/bin/true
|
|
|
|
%install
|
|
%make_install
|
|
pushd %{buildroot}
|
|
rm -rf .%{_initrddir}/
|
|
rm -rf .%{_sysconfdir}/keepalived/samples/
|
|
popd
|
|
|
|
install -d -m 0755 %{buildroot}%{_unitdir}
|
|
install -p -D -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/keepalived.service
|
|
install -p -D -m 0550 %{SOURCE2} %{buildroot}%{_sbindir}/keepalived-stop-post.sh
|
|
install -p -D -m 0550 %{SOURCE3} %{buildroot}%{_sbindir}/keepalived-start-post.sh
|
|
install -p -D -m 0550 %{SOURCE4} %{buildroot}%{_sbindir}/keepalived-pid-check.sh
|
|
install -Dd -m 0755 %{buildroot}%{_libexecdir}/keepalived
|
|
|
|
%post
|
|
%systemd_post keepalived.service
|
|
|
|
%preun
|
|
%systemd_preun keepalived.service
|
|
|
|
%postun
|
|
%systemd_postun_with_restart keepalived.service
|
|
|
|
%files
|
|
%defattr(-,root,root)
|
|
%doc README
|
|
%license COPYING
|
|
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/sysconfig/keepalived
|
|
%config(noreplace) %attr(0644,root,root) %{_sysconfdir}/keepalived/keepalived.conf
|
|
%attr(0755,root,root) %{_sbindir}/keepalived
|
|
%dir %{_sysconfdir}/keepalived/
|
|
%dir %{_libexecdir}/keepalived/
|
|
%attr(0550,root,root) %{_sbindir}/keepalived-stop-post.sh
|
|
%attr(0550,root,root) %{_sbindir}/keepalived-start-post.sh
|
|
%attr(0550,root,root) %{_sbindir}/keepalived-pid-check.sh
|
|
%{_bindir}/genhash
|
|
%{_datadir}/snmp/mibs/*
|
|
%{_unitdir}/keepalived.service
|
|
|
|
%files help
|
|
%defattr(-,root,root)
|
|
%doc AUTHOR ChangeLog TODO CONTRIBUTORS
|
|
%{_mandir}/man*
|
|
|
|
%changelog
|
|
* Thu Aug 10 2023 liubo <liubo335@huawei.com> - 2.2.4-4
|
|
- Type:bugfix
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:dbus:fix type of name property in interface
|
|
|
|
* Mon Jun 12 2023 sunsuwan <sunsuwan3@huawei.com> - 2.2.4-3
|
|
- Type:CVE
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:backport upstream patches and make service start not so offen
|
|
|
|
* Tue Mar 29 2022 kwb0523 <kwb0523@163.com> - 2.2.4-2
|
|
- Type:bugfix
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:fix CVE-2021-44225
|
|
|
|
* Tue Dec 21 2021 kwb0523 <kwb0523@163.com> - 2.2.4-1
|
|
- Type:bugfix
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:upgrade keepalived to 2.2.4
|
|
|
|
* Thu Jun 10 2021 wangxp006 <wangxp006@163.com> - 2.0.20-3
|
|
- Type:bugfix
|
|
- ID:NA
|
|
- SUG:NA
|
|
- DESC:backport upstream patches
|
|
|
|
* Tue May 12 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.0.20-2
|
|
- Package init
|