Skip to content
This repository has been archived by the owner on Aug 19, 2020. It is now read-only.

keepalived in release 0.24 fails to start due to missing libcrypto.so.1.1 #34

Closed
elemental-lf opened this issue Jan 12, 2018 · 0 comments · Fixed by #35
Closed

keepalived in release 0.24 fails to start due to missing libcrypto.so.1.1 #34

elemental-lf opened this issue Jan 12, 2018 · 0 comments · Fixed by #35
Labels

Comments

@elemental-lf
Copy link
Contributor

It seems that keepalived has picked up a dependency on libcrypto.so.1.1 in 0.24 which isn't included in the runtime image and leads to keepalived not starting. If I go back to 0.23 everything works fine. This is with the official image from Docker Hub. I suspect that the container used to build keepalived has the newer version of libcrypto but it isn't included in the runtime container. Different update level of the build versus the runtime container?

The exact image used is:

imageID: docker-pullable://aledbf/kube-keepalived-vip@sha256:9a5246e7b32c71c096da00c491f1bb48df9a92f2d9b918110da770913a9ae9d5

Output from the container:

$ kubectl -n ingress logs nginx-ingress-vip-kube-keepalived-vip-jdtd8 -c kube-keepalived-vip-keepalived
ERROR: logging before flag.Parse: I0112 14:39:10.502159       1 main.go:96] keepalived will use unicast to sync the nodes
ERROR: logging before flag.Parse: I0112 14:39:10.506894       1 main.go:225] cleaning ipvs configuration
ERROR: logging before flag.Parse: I0112 14:39:10.511110       1 main.go:179] Creating API server client for https://10.3.0.1:443
ERROR: logging before flag.Parse: I0112 14:39:10.513708       1 main.go:127] starting LVS configuration
ERROR: logging before flag.Parse: W0112 14:39:10.650131       1 main.go:90] requeuing ingress/nginx-ingress-nginx-ingress-default-backend, err unexpected error searching configmap ingress/nginx-ingress-vip-kube-keepalived-vip: configmap nginx-ingress-vip-kube-keepalived-vip was not found
ERROR: logging before flag.Parse: I0112 14:39:10.743072       1 main.go:304] starting keepalived to announce VIPs
keepalived: error while loading shared libraries: libcrypto.so.1.1: cannot open shared object file: No such file or directory
ERROR: logging before flag.Parse: F0112 14:39:10.752420       1 keepalived.go:155] keepalived error: exit status 127

These are the shared library dependencies in 0.23:

docker run --rm -it --entrypoint bash aledbf/kube-keepalived-vip:0.23 -il
bash: mesg: command not found
root@bc7c206c1b6b:/# ldd /keepalived/sbin/keepalived                                                                                                                                   
	linux-vdso.so.1 =>  (0x00007fff0f9ce000)
	libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f6a5a059000)
	libssl.so.1.0.0 => /lib/x86_64-linux-gnu/libssl.so.1.0.0 (0x00007f6a59df0000)
	libnl-genl-3.so.200 => /lib/x86_64-linux-gnu/libnl-genl-3.so.200 (0x00007f6a59be9000)
	libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007f6a59986000)
	libnl-3.so.200 => /lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007f6a59767000)
	libip4tc.so.0 => /lib/x86_64-linux-gnu/libip4tc.so.0 (0x00007f6a5955f000)
	libip6tc.so.0 => /lib/x86_64-linux-gnu/libip6tc.so.0 (0x00007f6a59358000)
	libxtables.so.11 => /lib/x86_64-linux-gnu/libxtables.so.11 (0x00007f6a5914b000)
	libnetsnmpmibs.so.30 => /usr/lib/x86_64-linux-gnu/libnetsnmpmibs.so.30 (0x00007f6a58cce000)
	libnetsnmpagent.so.30 => /usr/lib/x86_64-linux-gnu/libnetsnmpagent.so.30 (0x00007f6a58a65000)
	libnetsnmp.so.30 => /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30 (0x00007f6a58788000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f6a58583000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f6a581b9000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f6a57f9c000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f6a57c92000)
	libsensors.so.4 => /usr/lib/x86_64-linux-gnu/libsensors.so.4 (0x00007f6a57a83000)
	libpci.so.3 => /lib/x86_64-linux-gnu/libpci.so.3 (0x00007f6a57876000)
	libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007f6a5766b000)
	libperl.so.5.22 => /usr/lib/x86_64-linux-gnu/libperl.so.5.22 (0x00007f6a57290000)
	/lib64/ld-linux-x86-64.so.2 (0x000055fbd85e9000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f6a57075000)
	libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f6a56e5a000)
	libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f6a56e3a000)
	libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007f6a56c20000)
	libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007f6a569e8000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f6a567e0000)

And these the ones in 0.24 (note the two missing libraries):

$ docker run --rm -it --entrypoint bash aledbf/kube-keepalived-vip:0.23 -il
bash: mesg: command not found
root@f7811a16f90a:/# ldd /keepalived/sbin/keepalived                                                                                                                                   
	linux-vdso.so.1 =>  (0x00007ffd728b0000)
	libcrypto.so.1.1 => not found
	libssl.so.1.1 => not found
	libnl-genl-3.so.200 => /lib/x86_64-linux-gnu/libnl-genl-3.so.200 (0x00007f93daa15000)
	libnl-route-3.so.200 => /usr/lib/x86_64-linux-gnu/libnl-route-3.so.200 (0x00007f93da7b2000)
	libnl-3.so.200 => /lib/x86_64-linux-gnu/libnl-3.so.200 (0x00007f93da593000)
	libip4tc.so.0 => /lib/x86_64-linux-gnu/libip4tc.so.0 (0x00007f93da38b000)
	libip6tc.so.0 => /lib/x86_64-linux-gnu/libip6tc.so.0 (0x00007f93da184000)
	libxtables.so.12 => not found
	libnetsnmpmibs.so.30 => /usr/lib/x86_64-linux-gnu/libnetsnmpmibs.so.30 (0x00007f93d9d07000)
	libnetsnmpagent.so.30 => /usr/lib/x86_64-linux-gnu/libnetsnmpagent.so.30 (0x00007f93d9a9e000)
	libnetsnmp.so.30 => /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30 (0x00007f93d97c1000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f93d94b7000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f93d92b3000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f93d8ee9000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f93d8ccb000)
	libsensors.so.4 => /usr/lib/x86_64-linux-gnu/libsensors.so.4 (0x00007f93d8abc000)
	libpci.so.3 => /lib/x86_64-linux-gnu/libpci.so.3 (0x00007f93d88af000)
	libwrap.so.0 => /lib/x86_64-linux-gnu/libwrap.so.0 (0x00007f93d86a4000)
	libperl.so.5.22 => /usr/lib/x86_64-linux-gnu/libperl.so.5.22 (0x00007f93d82c9000)
	libcrypto.so.1.0.0 => /lib/x86_64-linux-gnu/libcrypto.so.1.0.0 (0x00007f93d7e85000)
	/lib64/ld-linux-x86-64.so.2 (0x0000562ae176d000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f93d7c6a000)
	libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f93d7a4f000)
	libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f93d7a2f000)
	libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007f93d7815000)
	libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007f93d75dd000)
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f93d73d4000)
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants