diff --git a/keepalived-2.0.12.tar.gz b/keepalived-2.0.12.tar.gz new file mode 100644 index 0000000..e65394d Binary files /dev/null and b/keepalived-2.0.12.tar.gz differ diff --git a/keepalived.service b/keepalived.service new file mode 100644 index 0000000..64c5d3f --- /dev/null +++ b/keepalived.service @@ -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 diff --git a/keepalived.spec b/keepalived.spec new file mode 100644 index 0000000..efe4b73 --- /dev/null +++ b/keepalived.spec @@ -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 - 2.0.12-2 +- Package init