RHEL 6.x na Rackspace Cloud e hardware dedicado com tempos limite do Redis

1

Recentemente, configurei uma mistura de hosts de nuvem Rackspace do RHEL 6.1 e hosts dedicados do RHEL 6.2 usando o Rackconnect. Estou passando por tempos limites Redis intermitentes de dentro do nosso aplicativo Rails 3.2.8 com o Redis 2.4.16 em execução nos hosts dedicados do RHEL 6.2. Não há latência de rede ou perda de pacotes. Além disso, não há erros em nenhuma interface em nossos servidores em nuvem ou dedicados ou no firewall gerenciado da Rackspace.

Quando o tempo limite do Redis é esgotado, não há nada logado dentro dos redis, embora esteja configurado para fazer o log de depuração. O único erro que recebemos é da Airbrake dizendo que havia um tempo limite do Redis.

Topologia de rede:

RHEL 6.1 cloud hosts  <--> Alert logic IDS <--> Cisco ASA 5510 <--> RHEL 6.2 dedicated hosts
(web nodes)                            (two way NAT)             (db hosts running redis)

Ping do host db para o host:

64 bytes from 10.181.230.180: icmp_seq=998 ttl=64 time=0.520 ms
64 bytes from 10.181.230.180: icmp_seq=999 ttl=64 time=0.579 ms
64 bytes from 10.181.230.180: icmp_seq=1000 ttl=64 time=0.482 ms

--- web1.xxxxxx.com ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 999007ms
rtt min/avg/max/mdev = 0.359/0.535/5.684/0.200 ms

Ping do host da web para o host do banco de dados:

64 bytes from 192.168.100.26: icmp_seq=998 ttl=64 time=0.544 ms
64 bytes from 192.168.100.26: icmp_seq=999 ttl=64 time=0.452 ms
64 bytes from 192.168.100.26: icmp_seq=1000 ttl=64 time=0.529 ms

--- data1.xxxxxx.com ping statistics ---
1000 packets transmitted, 1000 received, 0% packet loss, time 999017ms
rtt min/avg/max/mdev = 0.358/0.499/6.120/0.201 ms

Configuração do Redis:

daemonize yes
pidfile /var/run/redis/6379/redis_6379.pid

port 6379

timeout 0

loglevel debug

logfile /var/lib/redis/log

syslog-enabled yes

syslog-ident redis-6379

syslog-facility local0

databases 16

save 900 1
save 300 10
save 60 10000

rdbcompression yes

dbfilename dump-6379.rdb

dir /var/lib/redis

maxclients 10000

maxmemory-policy volatile-lru

maxmemory-samples 3

appendfilename appendonly-6379.aof

appendfsync everysec

no-appendfsync-on-rewrite no

auto-aof-rewrite-percentage 100
auto-aof-rewrite-min-size 64mb

slowlog-log-slower-than 10000

slowlog-max-len 1024

vm-enabled no

vm-swap-file /tmp/redis.swap

vm-max-memory 0

vm-page-size 32

vm-pages 134217728

vm-max-threads 4

hash-max-zipmap-entries 512
hash-max-zipmap-value 64

list-max-ziplist-entries 512
list-max-ziplist-value 64

set-max-intset-entries 512

zset-max-ziplist-entries 128
zset-max-ziplist-value 64

activerehashing yes

Informação do Redis-cli:

redis-cli info
redis_version:2.4.16
redis_git_sha1:00000000
redis_git_dirty:0
arch_bits:64
multiplexing_api:epoll
gcc_version:4.4.6
process_id:4174
uptime_in_seconds:79346
uptime_in_days:0
lru_clock:1064644
used_cpu_sys:13.08
used_cpu_user:19.81
used_cpu_sys_children:1.56
used_cpu_user_children:7.69
connected_clients:167
connected_slaves:0
client_longest_output_list:0
client_biggest_input_buf:0
blocked_clients:6
used_memory:15060312
used_memory_human:14.36M
used_memory_rss:22061056
used_memory_peak:15265928
used_memory_peak_human:14.56M
mem_fragmentation_ratio:1.46
mem_allocator:jemalloc-3.0.0
loading:0
aof_enabled:0
changes_since_last_save:166
bgsave_in_progress:0
last_save_time:1352823542
bgrewriteaof_in_progress:0
total_connections_received:286
total_commands_processed:507254
expired_keys:0
evicted_keys:0
keyspace_hits:1509
keyspace_misses:65167
pubsub_channels:0
pubsub_patterns:0
latest_fork_usec:690
vm_enabled:0
role:master
db0:keys=6,expires=0

edit 1 : adicione a saída de informações do redis-cli

    
por Zac Hallett 13.11.2012 / 16:53

1 resposta

1

Resolvido. Isto foi devido ao nosso Cisco ASA soltar conexões TCP parcialmente conectadas / desconectadas. A atualização da configuração com o Rackspace resolveu esse problema.

    
por 20.11.2012 / 19:59