Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

org.keepalived.Vrrp1.Vrrp.xml, errno 2 (No such file or directory) #2090

Open
gdanov opened this issue Feb 1, 2022 · 3 comments
Open

org.keepalived.Vrrp1.Vrrp.xml, errno 2 (No such file or directory) #2090

gdanov opened this issue Feb 1, 2022 · 3 comments

Comments

@gdanov
Copy link

gdanov commented Feb 1, 2022

Describe the bug
dbus is enabled and the error message below is logged at start-up
Feb 01 09:45:40 pp-staging-2 Keepalived_vrrp[189587]: Unable to open DBus file /usr/share/dbus-1/interfaces/org.keepalived.Vrrp1.Vrrp.xml, errno 2 (No such file or directory)

To Reproduce
enable dbus

Expected behavior
no log

Keepalived version

Keepalived v2.2.7 (01/16,2022)

Distro (please complete the following information):
Description: Ubuntu 20.04.3 LTS

Details of any containerisation or hosted service (e.g. AWS)
hetzner VPS

Configuration file:

global_defs {
  script_user root
  enable_script_security
  # see https://serverfault.com/a/871783/407607
  enable_dbus
  # see https://groups.io/g/keepalived-users/topic/what_are_the_best_priority/84312332?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,84312332
  max_auto_priority 99
  vrrp_rt_priority 99
  vrrp_no_swap
  vrrp_rlimit_rttime 10000000
}
then vrrp defs, IMO not relevant
@pqarmitage
Copy link
Collaborator

@gdanov Does the file /usr/share/dbus-1/interfaces/org.keepalived.Vrrp1.Vrrp.xml exist? Can you please provide the output of ls -l /usr/share/dbus-1/interfaces/. Can you also please provide the output of head -40 config.log in the directory where you built keepalived.

Did you run, as root, make install after running make?

@gdanov
Copy link
Author

gdanov commented Feb 2, 2022

shocking is everything's fine on the prod nodes that are supposed to be identical twins of the staging...
here are the details you requested, from the faulty nodes:

root@pp-staging-2:~# ll /usr/share/dbus-1/interfaces/
total 164K
drwxr-xr-x 2 root root 4.0K Jan 28 15:42 .
drwxr-xr-x 7 root root 4.0K Jan 28 14:47 ..
-rw-r--r-- 1 root root  86K Sep 23  2020 org.freedesktop.PackageKit.Transaction.xml
-rw-r--r-- 1 root root  22K Sep 23  2020 org.freedesktop.PackageKit.xml
-rw-r--r-- 1 root root  15K Jun 13  2019 org.freedesktop.bolt.xml
-rw-r--r-- 1 root root  25K Jun 29  2021 org.freedesktop.fwupd.xml

the package was not built, but installed via snap.

root@pp-staging-2:~# snap info keepalived
name:      keepalived
summary:   High availability VRRP/BFD and load-balancing for Linux
publisher: Keepalived (keepalived-project✓)
store-url: https://snapcraft.io/keepalived
contact:   https://github.com/acassen/keepalived/issues
license:   unset
description: |
  Keepalived 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.
commands:
  - keepalived.310
  - keepalived.415
  - keepalived.418
  - keepalived.504
  - keepalived.508
  - keepalived.genhash
  - keepalived
services:
  keepalived.daemon: forking, enabled, active
snap-id:      V4Z90JuG4d64ycAAl948fM4vWQA9594q
tracking:     latest/stable
refresh-date: 5 days ago, at 14:48 UTC
channels:
  latest/stable:    2.2.7              2022-01-16 (2345) 21MB classic
  latest/candidate: 2.2.7              2022-01-16 (2345) 21MB classic
  latest/beta:      2.2.7              2022-01-16 (2345) 21MB classic
  latest/edge:      v2.2.7-6-gd88fea9d 2022-01-29 (2355) 21MB classic
installed:          2.2.7                         (2345) 21MB classic

on both sets of servers I had the apt version of keepalived but it was outdated so switched to snap version.

@pqarmitage
Copy link
Collaborator

pqarmitage commented Feb 2, 2022

It appears that there are additional items that need specifying in snapcraft.yaml for building the snap - see SNAP DBus interface.

I am not familiar with this, and it is not immediately obvious to me what needs to be done. If anyone is familiar with setting up snaps to use dbus, then any suggestions regarding what needs to changed would be gratefully received. If there are no suggestions, then I will look at this in due course.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants