Jun 22, 2016
I've enabled SPDY on nginx
1.6.2 shipped with Debian GNU/Linux 8 Jessie.
In Chrome's DevTools Console i saw:
GET https://mysite/myasset.ico net::ERR_CONNECTION_CLOSED
When get my static assets. I started to dig/search a similar issue and
find that the problem is not specific to Chrome and reproducible with Firefox.
I've found that the combo of nginx + ssl + spdy + proxy_cache was the issue
in a Chrome bug.
The problem is that SPDY connection is closed prematurely if proxy caching is used.
As SPDY multiplex connections, if the connection is closed, all other transactions are lost.
This bug is fixed in nginx version 1.7.3 of nginx and on i will choose one of the following options:
- Upgrade nginx by using Debian backport (>= 1.9.10)
- Disable SPDY, as the protocol is superseded by HTTP/2 and i don't need
for this for now (just a one shot test). Nginx 1.9.5
is the first release that implement HTTP/2.
Detail of nginx original bug https://trac.nginx.org/nginx/ticket/428
Click to read and post comments
Sep 02, 2015
EDIT 2016-03-31: un backport Debian officiel existe depuis le 8 décembre 2015.
Après upgrade en Jessie, pnp4nagios 0.6.16-2 n'est plus dans l'archive stable. En fait, il est resté installé et les graphes ne s'affichent plus (/pnp4nagios/graph?host=host&srv=service) :
Please check the documentation for information about the following error.
Non-static method nagios_Core::SummaryLink() should not be called statically, assuming $this from incompatible context
file [line]:
application/views/graph_content.php [47]:
back
Pnp4nagios me sert à grapher les perfdata issues de nagios. En plus de lagguer, je n'ai pas vraiment de mérite puisque c'est connu depuis au moins le 29 juin 2014 :
# sed --in-place=.orig "s|error_reporting(E_ALL \& ~E_STRICT);$|error_reporting(E_ALL \& ~E_STRICT \& ~E_DEPRECATED); // see https://bugs.debian.org/752088|" /usr/share/pnp4nagios/html/index.php
Comme il y a pas mal de changement entre la version 0.6.16-2 et celle de testing, j'ai fait un backport, le paquet n'étant pas dans l'archive, il faut aller chercher le paquet source manuellement (et apt-get build-dep ne sait pas encore lire un dsc pour le moment)
# dget --allow-unauthenticated http://http.debian.net/debian/pool/main/p/pnp4nagios/pnp4nagios_0.6.24+dfsg1-4.dsc
# apt-get install dh-autoreconf quilt rrdtool librrds-perl python-jsmin
# cd pnp4nagios*
# dch --bpo
# dpkg-buildpackage
J'en ai profité pour inclure le patch concernant le problème de niveau d'erreur PHP et l'ai poussé ici.
Click to read and post comments
Aug 18, 2015
Ouai je lag un peu par rapport à d'autres (en fait j'ai vu cet article après).
Depuis Debian Jessie, il n'est plus possible d'utiliser l'option de configuration dont_blame_nrpe « outofthebox » dans /etc/nagios/nrpe.cfg. En effet, celle-ci a été désactivée à la compilation.
Selon la stratégie, deux options s'offrent à nous pour la numérotation de la version de ce nouveau paquet :
- 2.15-2: aura pour effet d'être supérieur à 2.15-1 et aux éventuelles mises à jour de sécurité (voir ici pour la référence; s'il y a une mise à jour de sécurité, il y a de grandes chances pour le paquet soit numéroté 2.15-1+deb8u1)
- 2.15-1local1: aura pour effet d'être supérieur à 2.15-1 mais inférieur lors de nouvelles mises à jour de sécurité. Le paquet local sera donc conservé (on peut s'aider de
dpkg --compare-versions
pour vérifier mes dires).
Pour ce cas de figure d'un agent de supervision (chacun ses contraintes), je préfère que le paquet ne soit pas conservé en cas de mise à jour, cela me forcera à prendre en compte / étudier des éventuels changements du paquet et à le reconstuire si besoin.
La reconstruction du paquet maintenant :
- On choisit une machine qui va faire la compilation (en général je préfère utiliser
debootstrap
pour créer un chroot dédié à cet effet). Une fois le paquet construit, il suffira de l'installer sur d'autres machines Debian Jessie (en partant du principe que c'est la même architecture) via dpkg --install
ou via un dépôt local avec apt
- On installe
build-essential
(et devscripts
pour avoir dch
), le paquet source nagios-nrpe
et toutes ses dépendances de constructions avec apt-get build-dep
qui va les récupérer du paquet source et se débrouiller
- On rajoute la fameuse option
--enable-command-args
dans debian/rules
, si pas déjà présente
- On ajoute une entrée dans
debian/changelog
pour incrémenter la version et facilement identifier nos changements
- On build !
sudo apt-get install build-essential devscripts lsb-release
# s'assurer qu'on a une source deb-src dans sources.list(.d), sinon en ajouter :
cat << EOF > /etc/apt/sources.list.d/sources.list
deb-src http://ftp.fr.debian.org/debian $(lsb_release --codename --short) main
EOF
sudo apt-get update
sudo apt-get source nagios-nrpe-server
sudo apt-get --yes build-dep !$ && cd nagios-nrpe*
# oneliner pour ne rajouter l'option de compilation que s'il n'est pas déjà présente
grep --quiet "\-\-enable-command-args" debian/rules || \
sed --in-place "/--enable-ssl/a \\\t\t--enable-command-args \\\\" debian/rules
dch --local local "Rebuild with --enable-command-args (see #773840, #756479)"
sudo dpkg-buildpackage
Le paquet pour l'agent nrpe résultant sera nagios-nrpe-server_2.15-1local1_amd64.deb
. J'ai buildé mon mien ici.
Click to read and post comments