This commit is contained in:
songnannan 2020-01-11 22:08:29 +08:00
parent a5fb29ad16
commit 5e114df75a
3 changed files with 106 additions and 0 deletions

BIN
keepalived-2.0.12.tar.gz Normal file

Binary file not shown.

15
keepalived.service Normal file
View File

@ -0,0 +1,15 @@
[Unit]
Description=LVS and VRRP High Availability Monitor
After=network-online.target syslog.target
Wants=network-online.target
[Service]
Type=forking
PIDFile=/var/run/keepalived.pid
KillMode=process
EnvironmentFile=-/etc/sysconfig/keepalived
ExecStart=/usr/sbin/keepalived $KEEPALIVED_OPTIONS
ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target

91
keepalived.spec Normal file
View File

@ -0,0 +1,91 @@
%bcond_without snmp
%bcond_without vrrp
%bcond_without sha1
%bcond_with profile
%bcond_with debug
%global _hardened_build 1
Name: keepalived
Version: 2.0.12
Release: 2
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
BuildRequires: net-snmp-devel gcc systemd-units openssl-devel libnl3-devel
BuildRequires: ipset-devel iptables-devel libnfnetlink-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}
%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_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 -m 0644 %{SOURCE1} %{buildroot}%{_unitdir}/keepalived.service
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/
%{_bindir}/genhash
%{_datadir}/snmp/mibs/*
%{_unitdir}/keepalived.service
%files help
%defattr(-,root,root)
%doc AUTHOR ChangeLog TODO CONTRIBUTORS
%{_mandir}/man*
%changelog
* Sat Dec 21 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.0.12-2
- Package init