Freeze Break Request - Introduce fedmsg-gateway slaves on the proxies

Luke Macken lmacken at redhat.com
Thu Sep 4 21:00:21 UTC 2014


Looks good to me, +1.

luke

On Thu, Sep 04, 2014 at 01:08:16PM -0700, Ralph Bean wrote:
> I'm seeking two +1s to apply some work I did and tested in staging to
> the production proxies.
> 
> The gist is that we currently proxy persistent tcp connections for the
> fedmsg firehose through our proxies to busgateway01 (which these days
> numbers around 700 connections but could scale up unexpectedly).  We
> suspect that this has been causing our vpn issues since all fedmsg
> traffic is sent to the proxies for every connection (700 times the
> traffic normally on the bus).
> 
> The following patch 'turns on' a scheme where each proxy will run its
> own fedmsg-gateway slave.  Haproxy connects remote requests to these
> slaves, and the slaves in turn connect just once to the master
> fedmsg-gateway on busgateway01.  Traffic should then only be sent once
> to each proxy (over the vpn in most cases).
> 
> I tested it pretty thoroughly in stg (removed the daemon and its
> config and re-ran puppet a few times to make sure things were put in
> place in the correct order).
> 
> Patch attached.
> 
> -Ralph

> From e88462f501ff79bf1f346f717b453d7a58d72517 Mon Sep 17 00:00:00 2001
> From: Ralph Bean <rbean at redhat.com>
> Date: Thu, 4 Sep 2014 20:02:01 +0000
> Subject: [PATCH] Apply fedmsg-gateway-slave work to prod proxies.
> 
> ---
>  manifests/services/proxy.pp       |    4 +---
>  modules/haproxy/files/haproxy.cfg |    7 +++----
>  2 files changed, 4 insertions(+), 7 deletions(-)
> 
> diff --git a/manifests/services/proxy.pp b/manifests/services/proxy.pp
> index 4f2c8d0..d73b957 100644
> --- a/manifests/services/proxy.pp
> +++ b/manifests/services/proxy.pp
> @@ -20,9 +20,7 @@ class proxy {
>          varnish::varnish{ 'proxy.vcl': }
>      }
>  
> -    if $environment == "staging" {
> -        include haproxy::fedmsg-gateway-slave
> -    }
> +    include haproxy::fedmsg-gateway-slave
>  
>  
>      $fpo_ips = [
> diff --git a/modules/haproxy/files/haproxy.cfg b/modules/haproxy/files/haproxy.cfg
> index 76f05d3..981d366 100644
> --- a/modules/haproxy/files/haproxy.cfg
> +++ b/modules/haproxy/files/haproxy.cfg
> @@ -202,9 +202,8 @@ listen fedmsg-websockets 0.0.0.0:9938
>  
>  # This, unlike the websockets entry just above, is listening directly to the
>  # outside world with no stunnel inbetween.
> -# Simply redirect tcp connections to busgateway01 on the same port.  There, an
> -# instance of fedmsg-gateway will be publishing every message that comes across
> -# the bus internally.  This is for consumption by desktop applications.
> +# Simply redirect tcp connections to a local fedmsg-gateway slave.  It should be
> +# forwarding messages from the master gateway on busgateway01.
>  listen fedmsg-raw-zmq-outbound 0.0.0.0:9940
>      mode tcp
>      balance roundrobin
> @@ -212,7 +211,7 @@ listen fedmsg-raw-zmq-outbound 0.0.0.0:9940
>      timeout queue 5000
>      timeout server 86400000
>      timeout connect 86400000
> -    server  busgateway01 busgateway01:9940 weight 1 maxconn 16384
> +    server  localhost localhost:9942 weight 1 maxconn 16384
>  
>  # While the above fedmsg-raw-zmq-outbound forwards incoming connections to an
>  # instance of the "fedmsg-gateway" daemon (which pushes internal messages out),
> -- 
> 1.7.2.1
> 




> _______________________________________________
> infrastructure mailing list
> infrastructure at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/infrastructure

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.fedoraproject.org/pipermail/infrastructure/attachments/20140904/9b307177/attachment.sig>


More information about the infrastructure mailing list