Beruflich Dokumente
Kultur Dokumente
GNU/Linux
O que temos e o que falta?
Fernanda G Weiden
Google's mission
Toorganizetheworldsinformation
andmakeituniversally
accessibleanduseful
Introduo
Servionomundodigital
Disponibilidade
Escalabilidade
Velocidadedecrescimentosvezesnoprevisvel
Combinarmelhorcusto
benefciotambmnacompra dehardware
Downtimeparamanutenonotrazclientesfelizes
Balanceamentodecarga
Muitasmquinas(backends)efetuandoamesma tarefa
Escalabilidadesemdowntime
Possibilidadedecrescimentorpidosemnecessidadede
renovaodehardware
Melhorutilizaoderecursosdehardware
Tolernciaafalhas
Altadisponibilidade
Balanceamento de carga
LoadBalancermquina(s)querecebemedistribui
asrequisies
VirtualServercombinaodeIP:portaconfigurados
noLoadBalancer
Backendservidorreal(fsicoouno)
Clientequemrequisitaoservio
VIPoendereoIPconhecidopelocliente
RIPendereoIPdobackend(realserver)
CIPendereoIPdocliente
GlobalServerLoadBalancing
Distribuiotrfegoentreumclustergeograficamente
distribudo,baseadonalocalizaodoclienteena
disponibilidadedoservidor/cluster
DNS based
Routing based
Dispatcherbasedloadbalancingcluster
omtodotradicionaldebalanceamentodecarga
OusuriosconheceoVIP,enotodososbackends
BaseadoemIPouaplicao
Tolernciaafalha
Grandecontrolesobasconexeseutilizaodos
backends(estado,persistncia)
Madonna-like
ip_vs
Layer 4 switch
half NAT
tunneling
DSR
NAT
NATmudaoendereodedestinodopacote,e
redirecionaaobackend.Aconexopassapelodirector
antesderetornaraocliente.
Tunneling
TUNTnelentreoLoadBalancereosBackend
Necessriaconfiguraoesuporteatneisemtodosos
backends.
AlgoritmosparaScheduling
Define a distribuio das requisies entre os backends.
RR:RoundRobin
WRR:WeightedRoundRobin
LC:LeastConnection
WLC:WeightedLeastConnection
Persistncia
SourceIPconexesdeummesmoIPdeorigem
sodirecionadasaomesmobackend.
CookieInsertion(http)oloadbalanceradicionaum
cookienoheaderhttp,quevaiconterinformao
sobrequalbackendutilizar
SSLsessionIDpersistnciabaseadonoIDda
sesso,quefazpartedoSSLhandshake
Heartbeat
Gerenciamento de recursos entre os nodes de um cluster
de alta disponibilidade
Monitoramento de backends
ldirectord
nao tem monitoramento paralelo
instancias individuais por VIP
keepalived
nao tem instancias individuais por VIP
IPv6
mainstream no linux 2.6.28
ip_vs movido de net/ipv4/ipvs para net/netfilter/ipvs
adicionada interface netlink para comunicacao interprocesso
O que falta?
monitoramento paralelo de backends
full NAT/proxy (+ failback)
checar status atual de um VIP e seus backends
read-only mode (ipvsadm funciona somente como root)
suporte IPv6
espelhamento de configuracao entre HA nodes
Perguntas?