haproxy: definindo explicitamente o valor gpc0 em uma seção frontend ou backend

3

Eu tenho algo parecido com isso na minha configuração haproxy

backend myservice
    option httplog
    stick-table type string size 10 expire 10m store gpc0
    stick store-request req.hdr(MYHDR)
    server server1 127.0.0.1:9494  check inter 1s rise 1 fall 1

Acabei de usar o acima como exemplo. Desde que a tabela da vara é indexada por uma chave; neste caso, é o cabeçalho de solicitação MYHDR. O contador gpc0 é capaz de manter algum valor. Eu posso definir o valor externamente a partir do exterior usando o soquete UDS e socat.

set table name-of-the-table key <MYHDR> data.gpc0 <someval>

No entanto, não consigo descobrir como definir o valor de gpc0 na configuração haproxy.

O que tenho em mente é isto:

Para uma solicitação, use a tabela-pau como uma tabela hash de propósito geral e armazene key = req.hdr (MYHDR), value = src (ou algum outro material)

Usarei o valor da chave posteriormente para tomar decisões de roteamento para solicitações não relacionadas.

Eu não consegui descobrir uma maneira de usar a mesa de pau dessa maneira. Existe algo que eu perdi? Em qualquer caso, faz sentido fornecer um método set-gpc0 na configuração haproxy? Existem maneiras de incrementar e limpar, mas não de um valor específico.

Eu percebo que o c em gpc significa contador e eu não estou exatamente usando como um contador, mas pense nisso como inicializando um contador para um valor específico ao invés de começar em 0.

    
por user232536 13.07.2014 / 02:20

0 respostas

Tags