Professional Documents
Culture Documents
BlogdeFelipeJaramilloFonnegra
300Baudios
Search
Archivo
Blog
Archivo
Sistemasdearchivosdistribuidosenlanube
20130516
Cuandodiseamossistemasdealtadisponibilidadtenemosquecubrircadauno
delospuntosposiblesdefalloconinfraestructuraoserviciosredundantes.
Veamoscualessonnuestrasopciones.
Deunamanerasimplificadapodemosverlaredundanciadelosdiferentesserviciosas:
DNS:RedundanteconRoute53
BalanceodeCarga:RedundanteconELBElasticLoadBalancer
ServidorWeb:RedundanteconmltiplesmquinasEC2.Opcionalmenteconautoscalingparamayor
elasticidad.
Elproblematpico:Almacenamientolocal
LasaplicacionesdecontenidoenPHPenunrangodesdeeZPublish,Drupal,Wordpress,Typo3,Joomla,
Moodle,etc.usanunesquemadealmacenamientodecontenidosimilar:
Estructuraycontenido:Almacenadoenlabasededatos.
Archivosdecontenido(imagenes,videos,archivosdeword,excel,pdf,etc)vanalsistemadearchivos
localdelamquina.
http://www.300baudios.com/2013/sistemasdearchivosfilesystemdistribuidosenlanube/ 1/4
5/12/2016 SistemasdearchivosdistribuidosenlanubeFelipeJaramilloFonnegra
Cachesistemadearchivoslocaldelamquina.
Viendoloanteriortenemosquegarantizardurabilidad(lahabilidaddedatosaperdurardespusdeunfallo)
ReplicacindelaBasedeDatos
Esunproblemarelativamenteresuelto.ParaMysql,AmazonWebServicespermiteelmodoMultiAZensu
servicioRDSyestonosdareplicacinaniveldelaplataformadelanube.EnotrasbasesdedatoscomoOraclo
oSQLServerselanzandosomsinstanciasyseusanlosmecanismosnativosdecadabasededatosparahacer
replicacinmastermaster.
ElCache
Elcachesepuederegenerardespusdeunfallo,porloquenonospreocupaquesepierda.Es,pornaturaleza,
efmero.
ArchivosdeContenido
Siqueremosescalarhorizontalmente,vamosalanzarnuevasinstancias,perocmohacerquelosarchivosestn
sincronizadosentreellasdemanerainstantnea,ocasiinstantnea?
Diseandoparaelfallo,todovaaestarbien
Sabiendoquetodovaafallar,lascosasvanaestarbien.U
nsistemadearchivosdebloquecomoEBSElasticBlockStorageesaltamentedisponible(99.99%cuatro
nueves)ymsdurablequeundiscoduronormal,peroelproblemaquetenemosesque*solamentesepuede
asignaraunainstanciaEC2**.
1.Rsync
Rsyncesuncomandoeficienteparacopiar,osincronizarsolamentelosarchivoscambiadosdeundirectorio.Lo
hacerpidoyesconfiable.Alponeruncronjoboprocesorecurrentequehagasincronizacindelosarchivos
desdeunamquinaalasdems,tenemoslosarchivossincronizadosconalgodedemora.
Qupasasialguienbuscaelcontenidoenunadelasmquinas*antesdequesehayasincronizado*?Lesale
unerror404pornoestardisponible.
Cundofuncionabienestasolucin?Sielcontenidonoseactualizafrecuentemente,estasolucinfunciona
razonablementebien.
Cmoeselcomando?
rsyncavz[usuario]@[maquina_origen]:/[ruta_origen][usuario]@[maquina_destino]:/[ruta_destino]
Cmoexcluirarchivos?Avecesqueremossincronizartodoundirectorioexcluyendoalgunostiposdearchivo.
ParaestoexisteelparmetroexcludeenRsync.
2.Archivosenlabasededatos
Sipodemosreplicarlasbasesdedatos,lasugerenciamuchasvecesessimple:pongamoslosarchivosde
contenidoenlabasededatos.
http://www.300baudios.com/2013/sistemasdearchivosfilesystemdistribuidosenlanube/ 2/4
5/12/2016 SistemasdearchivosdistribuidosenlanubeFelipeJaramilloFonnegra
Suenafcilyfuncionabiensisonarchivospequeos.Quhacemoscuandoloseditoresempiecenapublicar
grandesvideosoarchivosPDFde500mb?Labasededatosvaaquedargigantesca.
Cundousarestaestrategia?Sinuestrosarchivossonpequeosypodemosvivirconunaligerademoraal
accederlos,almacenarenlabasededatosesunabuenaopcin.
Estodependedirectamentedelaaplicacinqueestemosusando.PorejemploeZPublishpermiteusarlabasede
datosparaalmacenararchivosensuconfiguracinenmodocluster.
3.Sistemadearchivoscompartido(sharedfilesystem)
NFSenunasolamquina
Eslaopcinmssencillaperolamspeligrosa.Sisolotenemosunamquinacmogarantizamosalta
disponibilidadenella?
Esverdad,unamquinapoderosaquesolamentesirvadeNFS(NetworkFileSystem)tiendeaserbastante
estable.
LosvolmenesdeEBSsonestablesaunquetienenfallosde35%porao.Muchomejoresqueundiscoduro
normalperomuchomenoresquelaestelardurabilidaddeunbucketdeAmazonS3*(99.999999999%).La
solucin:montardosomsvolumenesusandoRAID10*.
Bien,siladurabilidadestgarantizada,qupasasisecorreenunasolamquina?
Bienvenidoslossistemasdearchivosdistribuidos:
DRDB
Lausamoshacetiempoenunsitiodealtorendimiento.Tomatiempoyexperienciasuimplementacinporlo
quehequeridobuscaralgomejor.AcencontrarnuntutorialdeDRDBOCFS2
GlusterFS
Glusteresunadelassolucionesdearchivosdistribuidosmsmencionadasenlared.EntiendoqueDrupal
GardensdeAcquiausaGlusterFSparamantenerunrepositoriodistribuidoparaarchivosaccesiblesporvarios
servidoresweb.
GlusterFS
Ceph
NosabadeCephhastaMayode2013cuandolomencionaronenelentrenamientodeAmazonAWSArchitect.
Inmediatamenteloinvestiguaunqueenalgunossitioselcomentarioeraquelaversindeesemomentoeracasi
espectacular.
Cephesunaherramientaopensource,definidaas:
Cephisadistributedobjectstoreandfilesystemdesignedtoprovideexcellentperformance,
reliabilityandscalability.
Ceph
http://www.300baudios.com/2013/sistemasdearchivosfilesystemdistribuidosenlanube/ 3/4
5/12/2016 SistemasdearchivosdistribuidosenlanubeFelipeJaramilloFonnegra
Elfuturo:EBSconmontajemltiple
Noexistetodava.YnadiemehadichoquelovayanalanzarporqueAWSnopublicasusplanes.Esinevitable
queAWSpermitamontarunvolumenEBSenmsdeunamquinaolanceunnuevoservicioparacompartir
sistemasdearchivosfcilmente.
YaGoogle(Juniode2013)permitemontarundiscoenvariasmquinasenmododeslolectura,essolo
cuestindetiempo.
Conclusin
Enmiexperiencialamaneramsdifcildehacerarquitecturaenlanubeparaaplicacionestradicionalescomoun
manejadordecontenidoeslareplicacininstantneayconfiabledearchivosentremltiplesmquinas.
Sepuede?Si,peroserequierediferentesestrategias,mstrabajoymsmantenimiento.Enestepostvimos
diferentesopcionesparalograrloqueesperoquelesayudenatomarmejoresdecisiones.
Photobylenardshttp://flic.kr/p/72qFP4
PostedbyFelipeJaramilloFonnegra20130516AWS,CloudComputing
Tweet 0
Like Share Bethefirstofyourfriendstolikethis.
GuardarunarchivoconotrousuarioenVim
Copyright2014FelipeJaramilloFonnegraPoweredbyOctopress
http://www.300baudios.com/2013/sistemasdearchivosfilesystemdistribuidosenlanube/ 4/4