Opened 13 years ago

Closed 13 years ago

#187 closed enhancement (fixed)

som geen proxy

Reported by: richardvm Owned by: nobody
Priority: major Milestone: WL-9.0-RELEASE
Keywords: Cc: som2, proxy
Resource needed to fix:

Description

Som2 heeft geen lokale proxy server:

HybridSOM2# sh /usr/local/libexec/nagios/check_inet
INET CRITICAL: fetch: http://proxy-test.wirelessleiden.nl/: Connection refused\n

HybridSOM2# sockstat | grep 3128
<leeg>

Just in case:
HybridSOM2# reboot

CNodeZwaluwak# ssh som2

HybridSOM2# sh -x /usr/local/libexec/nagios/check_inet
+ PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/root/bin:/bin:/usr/bin
+ export PATH
+ HTTP_PROXY=http://proxy.wleiden.net:3128
+ PROXY_TEST=http://proxy-test.wirelessleiden.nl/
+ export HTTP_PROXY
+ fetch -o /dev/null http://proxy-test.wirelessleiden.nl/
+ SPEEDOUT='fetch: http://proxy-test.wirelessleiden.nl/: Connection refused'
+ SPEEDEXIT=1
+ echo fetch: http://proxy-test.wirelessleiden.nl/: Connection refused
+ awk '{ print $4 " " $5 }'
+ SPEED='refused '
+ echo fetch: http://proxy-test.wirelessleiden.nl/: Connection refused
+ awk '{ print $5 }'
+ TYPE=
+ [ 1 -eq 0 -a
= Bps ]
+ echo 'INET CRITICAL: fetch: http://proxy-test.wirelessleiden.nl/: Connection refused\n'
INET CRITICAL: fetch: http://proxy-test.wirelessleiden.nl/: Connection refused\n
+ exit 2

HybridSOM2# sockstat | grep 3128

Change History (8)

comment:1 by huub, 13 years ago

pen_wrapper staat op yes in rc.conf.local maar draait kennelijk niet:

HybridSOM2# /usr/local/etc/rc.d/pen_wrapper start
HybridSOM2# sockstat | grep 3128
root fetch 25869 3 tcp4 172.16.3.138:35371 172.16.18.18:3128

comment:2 by huub, 13 years ago

Idem op KWVdeKaag:

HybridKWVdeKaag# sockstat | grep 3128 HybridKWVdeKaag# /usr/local/etc/rc.d/pen_wrapper start
HybridKWVdeKaag# sockstat | grep 3128
root fetch 51013 3 tcp4 172.16.17.252:58028 172.17.143.4:3128

en Boterhuis:

HybridBoterhuis# sockstat | grep 3128
HybridBoterhuis# /usr/local/etc/rc.d/pen_wrapper start
HybridBoterhuis# sockstat | grep 3128
root fetch 8481 3 tcp4 172.16.6.92:58758 172.17.143.4:3128

Dit zijn allemaal Hybrids 'gewone nodes'.

comment:3 by rick, 13 years ago

In 10926/hybrid:

Should be normal machine_readable list.

Related-To: nodefactory:ticket:187

comment:4 by huub, 13 years ago

Er gaat eea mis met de pen_wrapper. Ik zie pen_wrapper op twee plaatsen:
/etc/local/rc.d/
en
/usr/local/bin/

De proxylijst wordt niet goed uit rc.conf.local gehaald, ik neem aan dat in

update_proxy_list() {
  # Get (updated) proxy listing from configuration files.
  . /etc/rc.subr
  load_rc_config "pen_wrapper"

de regel

  echo "$list_normal_proxies"

moet zijn

  echo "`make_list "$list_normal_proxies" ","`"

Er wordt dan inderdaad een lijst van proxies gemaakt. Maar de test gaat nog niet goed.
In test_proxy staat geen PORT (deze versie wijkt af van die op de 'oude' nodes):

# Return speed value, higher is better
test_proxy() {
  PROXY=$1
  retstr=`HTTP_PROXY=http://$PROXY fetch -T 3 -o /dev/null ${TEST_URL} 2>&1` || return 0
  BPS=`echo "${retstr}" | awk '/Bps/ {printf $4}'`
  return $BPS
}

in reply to:  4 comment:5 by rick, 13 years ago

Replying to huub:

Er gaat eea mis met de pen_wrapper. Ik zie pen_wrapper op twee plaatsen:

Dat is ook de bedoeling.

/etc/local/rc.d/

Het startup script

/usr/local/bin/

De echte binary.

De proxylijst wordt niet goed uit rc.conf.local gehaald, ik neem aan dat in

update_proxy_list() {
  # Get (updated) proxy listing from configuration files.
  . /etc/rc.subr
  load_rc_config "pen_wrapper"

de regel

  echo "$list_normal_proxies"

moet zijn

  echo "`make_list "$list_normal_proxies" ","`"

Dat klopt dat had ik idd in [10926/hybrid] gefixed. Er moet trouwens een spatie tussen ipv van een comma.

Er wordt dan inderdaad een lijst van proxies gemaakt. Maar de test gaat nog niet goed.
In test_proxy staat geen PORT (deze versie wijkt af van die op de 'oude' nodes):

# Return speed value, higher is better
test_proxy() {
  PROXY=$1
  retstr=`HTTP_PROXY=http://$PROXY fetch -T 3 -o /dev/null ${TEST_URL} 2>&1` || return 0
  BPS=`echo "${retstr}" | awk '/Bps/ {printf $4}'`
  return $BPS
}

De port wordt nu in de main loop (bij sort_proxies) gezet:

# Sort proxy list on highest bandwidth
sort_proxies() {
...
    bps=`test_proxy $host:3128`
...
}

comment:6 by rick, 13 years ago

In 10950/hybrid:

I guess not awake during rewrite. Did it right now.

Related-To: nodefactory:ticket:187

comment:7 by rick, 13 years ago

sorteren ging niet goed. Die pen wrapper is zowiezo een vieze hack, zou eigenlijk via cron moeten starten en dan de parameters van /etc/rc.conf.running moeten schrijven, bij verandering de service herstarten. De initiële pen_flags zouden dan via gformat gepushed kunnen worden.

comment:8 by huub, 13 years ago

Resolution: fixed
Status: newclosed

foutje in pen_wrapper script, zie ticket #198 (opgelost)

Note: See TracTickets for help on using tickets.