monitoringartist / dockbix-agent-xxl

:whale: Dockerized Zabbix agent with Docker metrics and host metrics support for CoreOS, RHEL, CentOS, Ubuntu, Debian, Fedora, Boot2docker, Photon OS, Amazon Linux, ...
https://hub.docker.com/r/monitoringartist/dockbix-agent-xxl-limited/
Other
182 stars 54 forks source link

use proot with a recent kernel (4.8.4 and above) I got a segv #25

Closed magicalyak closed 7 years ago

magicalyak commented 7 years ago

As a known issue, you get a segv with a kernel higher than 4.8.4 If you would update your README to include the following information it would eliminate your known issue

adding -e "ROOT_NO_SECCOMP=1" to disable SEGV it will work (of course you disable SEGV though).

Issue is brought up here - https://github.com/proot-me/PRoot/issues/106

jangaraj commented 7 years ago

Hi Tom, thx for your feedback. Did you test it? I was testing it a month ago and it was still a problem.

magicalyak commented 7 years ago

Tested less than a day but I'm using it on a rockstor system (centos7 with new kernel and btrfs and docker). The docker apps listed and I tried to pass custom commands via -e but couldn't tell if they worked. However the base functionality worked! I had to use 172.16.0.1 as the server ip since I'm running the server on the same system as a docker container (I know you can force the ip but using the docker networking ip locally works fine.) external systems just use the rockstor (centos7 nas) as the ip. I've made a docker json to run the server as a "rockon" and plan to add the agent. What else can I test with the agent?

jangaraj commented 7 years ago

Try to verify these zabbix items pls: docker.discovery, docker.cpu[/<some_container_name>,user], vfs.fs.discovery, net.if.discovery.

magicalyak commented 7 years ago

Confirmed I can see the following

docker.cpu/ I see entries for containers for vfs.fs.size and others

For the system i see net.if entries including veth but I don’t see those tagged to the containers.

On Mar 22, 2017, at 2:12 PM, Jan Garaj notifications@github.com wrote:

Try to verify these zabbix items pls: docker.discovery, docker.cpu[/,user], vfs.fs.discovery, net.if.discovery.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/monitoringartist/dockbix-agent-xxl/issues/25#issuecomment-288490350, or mute the thread https://github.com/notifications/unsubscribe-auth/AF4Vgf7tQAb5SWoTzv7e4g75FeWrkHyHks5roWScgaJpZM4MknRW.

jangaraj commented 7 years ago

I've retested ROOT_NO_SECCOMP=1 and it's still a problem:

[root@fedora-512mb-lon1-01 ~]# uname -a
Linux fedora-512mb-lon1-01.localdomain 4.8.6-300.fc25.x86_64 #1 SMP Tue Nov 1 12:36:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
[root@fedora-512mb-lon1-01 ~]# docker version
Client:
 Version:      17.03.0-ce
 API version:  1.26
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 08:21:51 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.03.0-ce
 API version:  1.26 (minimum version 1.12)
 Go version:   go1.7.5
 Git commit:   3a232c8
 Built:        Tue Feb 28 08:21:51 2017
 OS/Arch:      linux/amd64
 Experimental: false
[root@fedora-512mb-lon1-01 ~]# docker run \
>   --name=dockbix-agent-xxl \
>   --net=host \
>   --privileged \
>   -v /:/rootfs \
>   -v /var/run:/var/run \
>   --restart unless-stopped \
>   -e "ROOT_NO_SECCOMP=1" \
>   -e "ZA_Server=<ZABBIX SERVER IP/DNS NAME>" \
>   -e "ZA_ServerActive=<ZABBIX SERVER IP/DNS NAME>" \
>   -d monitoringartist/dockbix-agent-xxl-limited:latest
953071bea62c2e40a766216b7e0f895fc410980b891c823935ed67b34891b023
[root@fedora-512mb-lon1-01 ~]# docker logs dockbix-agent-xxl
Dockbix Agent XXL v0.0.1b limited version
Copyright (C) 2014-2017 Jan Garaj - www.monitoringartist.com
Freeware licence - Usage of this binary is restricted to official monitoringartist Docker images only.
proot info: pid 9: terminated with signal 11

Unfortunately, it's not a proper workaround. I will add a note to the Readme.

antgubarev commented 7 years ago
docker run \
 --name=dockbix-agent-xxl \
 --net=host \
 --privileged \
 -v /:/rootfs \
 -v /var/run:/var/run \
 -e "ZA_Server=ip" \
 -e "ROOT_NO_SECCOMP=1" \
 -e "ZA_ServerActive=ip" \
 -d monitoringartist/dockbix-agent-xxl-limited:latest

kernel 4.9.8-040908-generic OS Ubuntu 16.04.1 LTS

Result: proot info: pid 9: terminated with signal 11

magicalyak commented 7 years ago

I wonder if this works on centos7 vs ubuntu?

Sent from my iPhone

On Mar 29, 2017, at 12:01 AM, Anton Gubarev notifications@github.com wrote:

docker run --name=dockbix-agent-xxl --net=host --privileged -v /:/rootfs -v /var/run:/var/run -e "ZA_Server=ip" -e "ROOT_NO_SECCOMP=1" -e "ZA_ServerActive=ip" -d monitoringartist/dockbix-agent-xxl-limited:latest

kernel 4.9.8-040908-generic OS Ubuntu 16.04.1 LTS

Result: proot info: pid 9: terminated with signal 11

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.

alexbarton commented 7 years ago

Probably this issue should be reopened, because the problem still exists?

root@hurzel:~ # uname -a
Linux hurzel 4.8.0-0.bpo.2-amd64 #1 SMP Debian 4.8.11-1~bpo8+1 (2016-12-14) x86_64 GNU/Linux
root@hurzel:~ # docker --version
Docker version 17.04.0-ce, build 4845c56
# docker run --name=dockbix-agent-xxl --net=host --privileged -v /:/rootfs -e "ROOT_NO_SECCOMP=1" -e "ZA_Server=172.31.1.100" -e "ZA_ServerActive=172.31.1.100" -d monitoringartist/dockbix-agent-xxl-limited:latest
bed50d89c47051321f3482e2ce074f1fffb07738cdf8fb1e342f84f465a2ce41
# docker logs dockbix-agent-xxl
Dockbix Agent XXL v0.0.1b limited version
Copyright (C) 2014-2017 Jan Garaj - www.monitoringartist.com
Freeware licence - Usage of this binary is restricted to official monitoringartist Docker images only.
proot info: pid 10: terminated with signal 11
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x626403]

goroutine 1 [running]:
main.main()
    /root/git/dockbix-agent-xxl-private/dockbix-agent-xxl/src/dockbix-agent-xxl.go:257 +0x9f3
jangaraj commented 7 years ago

Probably this issue should be reopened.

Nope, because this issue is not in this code. It's in the README as known issue. Also I mentioned it above ROOT_NO_SECCOMP=1 is not a proper workaround.

alexbarton commented 7 years ago

So this is a bug in Docker or the Linux kernel itself? Would it work again with a newer kernel? Any pointers? Or any other workaround?

Thanks for your work and support @jangaraj!

jangaraj commented 7 years ago

proot issue https://github.com/proot-me/PRoot/issues/106

Safe solution: use https://github.com/monitoringartist/zabbix-docker-monitoring on host directly = don't run zabbix agent in the container.

aviramartac commented 7 years ago

-e "PROOT_NO_SECCOMP=1" works fine for me, I'm getting all metrics.