{"id":1294,"date":"2008-11-21T19:15:00","date_gmt":"2008-11-22T02:15:00","guid":{"rendered":"http:\/\/kodegeek.com\/blog\/?p=1294"},"modified":"2008-11-21T19:15:00","modified_gmt":"2008-11-22T02:15:00","slug":"distribucion-de-archivos-en-una-granja-de-servidores-%c2%bfhay-algo-mejor-que-nfs-por-alli","status":"publish","type":"post","link":"http:\/\/kodegeek.com\/blog\/2008\/11\/21\/distribucion-de-archivos-en-una-granja-de-servidores-%c2%bfhay-algo-mejor-que-nfs-por-alli\/","title":{"rendered":"Distribuci\u00f3n de archivos en una granja de servidores: \u00bfHay algo mejor que NFS por all\u00ed?"},"content":{"rendered":"<p>Mi problema es el siguiente: Tengo que distribuir archivos de manera rutinaria a m\u00e1s de 500 servidores los cuales corren Linux \/ Solaris. Ninguno de ellos es mayor de 10 MB por si s\u00f3lo, pero tengo muchisimos de ellos y la distribuci\u00f3n de los archivos debe ser lo m\u00e1s rapida posible adem\u00e1s de tener cierta tolerancia a fallos.<\/p>\n<p>Por ahora estas son mis opciones:<\/p>\n<p><span style=\"font-weight: bold;\">NFS: M\u00e1s vale diablo por viejo que por diablo<\/span><br \/>NFS es muy conveniente; Es f\u00e1cil de compartir informaci\u00f3n, y sin embargo tiene problemas de desempe\u00f1o y seguridad. Si usted tiene una aplicaci\u00f3n que requiere compartir datos com m\u00e1s de 500 servidores entonces ya seguramente sabe de lo que estoy hablando.<\/p>\n<p><span style=\"font-style: italic;\">\u00bfEntonces como se puede reemplazar a NFS? <\/span>Una de las opciones m\u00e1s atractivas es <a href=\"http:\/\/www.openafs.org\/success.html\">AFS<\/a>. El problema es que es m\u00e1s complejo de administrar, y esa es una barrera dificil de superar en el mundo corporativo (ojo, muchas compa\u00f1ias grandes lo utilizan).<\/p>\n<p><span style=\"font-weight: bold;\">Rsync: Preparence a escribir scripts<\/span><\/p>\n<p><a href=\"http:\/\/www.samba.org\/rsync\/\">Rsync<\/a> utiliza un novedoso algoritmo el cual envia por la red solamente diferencias entre el destino y la fuente, lo cual  lo hace muy eficiente. Sin embargo si usted quiere utilizarlo para duplicar informaci\u00f3n entonces seguro se ver\u00e1 escribiendo un shell script para adaptarlo a sus necesidades. Otros inconvenientes: Si usted tiene muchos archivos entre la fuente y el destino entonces deber\u00e1 esperar un buen tiempo mientras rsync decide que copiar. Otro problema es que es considerado inseguro por muchos administradores de sistemas (los cuales prefieren no lidiar con su configuraci\u00f3n adecuada).<\/p>\n<p><span style=\"font-weight: bold;\">Secure Copy \/ Secure FTP: Scripts y la historia de la tortuga<\/span><\/p>\n<p>\u00bfY que tal <a href=\"http:\/\/en.wikipedia.org\/wiki\/Secure_copy\">scp or sftp<\/a>? Trabaja bien, es muy seguro pero no es m\u00e1s r\u00e1pido que rsync. Preparese a echar c\u00f3digo si quiere una soluci\u00f3n a la medida. Por otro lado rsync y ssh pueden trabajar juntos (opci\u00f3n -rsh=ssh de rsync).<\/p>\n<p><span style=\"font-weight: bold;\">P2P: Suena bien, pero \u00bfs\u00f3lo en papel?<\/span><br \/>Yo en particular no he visto casos de como distribuir archivos en una red corporativa usando <a href=\"http:\/\/en.wikipedia.org\/wiki\/Peer-to-peer\">P2P<\/a>. Java en particular tiene su estandar llamado <a href=\"http:\/\/www.sun.com\/software\/jxta\/\">JXTA<\/a> pero no he visto mucha acci\u00f3n all\u00ed. Algunos ejemplos interesantes incluyen el <a href=\"http:\/\/www.onjava.com\/pub\/a\/onjava\/2007\/06\/21\/enabling-peer-to-peer-bittorrent-downloads-with-azureus.html\">uso de clientes como Azureus<\/a> los cuales utilizan el protocolo <a href=\"http:\/\/www.bittorrent.org\/\">Bittorrent<\/a> para lograr su cometido.<\/p>\n<p><span style=\"font-weight: bold;\">\u00bfY entonces, qu\u00e9 hago?<\/span><\/p>\n<p>Por ahora estoy utilizando una combinaci\u00f3n de NFS, Rsync y scp para copias peque\u00f1as. Sin embargo estoy seguro de que existe una mejor manera de hacer esto.<\/p>\n<p>\u00bfY ustedes conocen una mejor soluci\u00f3n a este problema?<\/p>\n<p>Buscar en otros sitios:<\/p>\n<p>Blogalaxia:<a href=\"http:\/\/www.blogalaxia.com\/tags\/afs\" rel=\"tag\">afs<\/a>, <a href=\"http:\/\/www.blogalaxia.com\/tags\/nfs\" rel=\"tag\">nfs<\/a>, <a href=\"http:\/\/www.blogalaxia.com\/tags\/p2p\" rel=\"tag\">p2p<\/a>, <a href=\"http:\/\/www.blogalaxia.com\/tags\/rsync\" rel=\"tag\">rsync<\/a>, <a href=\"http:\/\/www.blogalaxia.com\/tags\/scp\" rel=\"tag\">scp<\/a>, <a href=\"http:\/\/www.blogalaxia.com\/tags\/sftp\" rel=\"tag\">sftp<\/a><br \/>Technorati:<a href=\"http:\/\/technorati.com\/tag\/afs\" rel=\"tag\">afs<\/a>, <a href=\"http:\/\/technorati.com\/tag\/nfs\" rel=\"tag\">nfs<\/a>, <a href=\"http:\/\/technorati.com\/tag\/p2p\" rel=\"tag\">p2p<\/a>, <a href=\"http:\/\/technorati.com\/tag\/rsync\" rel=\"tag\">rsync<\/a>, <a href=\"http:\/\/technorati.com\/tag\/scp\" rel=\"tag\">scp<\/a>, <a href=\"http:\/\/technorati.com\/tag\/sftp\" rel=\"tag\">sftp<\/a><br \/>To2blogs:<a href=\"http:\/\/www.to2blogs.com\/tag\/afs\" rel=\"tag\">afs<\/a>, <a href=\"http:\/\/www.to2blogs.com\/tag\/nfs\" rel=\"tag\">nfs<\/a>, <a href=\"http:\/\/www.to2blogs.com\/tag\/p2p\" rel=\"tag\">p2p<\/a>, <a href=\"http:\/\/www.to2blogs.com\/tag\/rsync\" rel=\"tag\">rsync<\/a>, <a href=\"http:\/\/www.to2blogs.com\/tag\/scp\" rel=\"tag\">scp<\/a>, <a href=\"http:\/\/www.to2blogs.com\/tag\/sftp\" rel=\"tag\">sftp<\/a><br \/>Del.icio.us:<a href=\"http:\/\/del.icio.us\/tag\/afs\" rel=\"tag\">afs<\/a>, <a href=\"http:\/\/del.icio.us\/tag\/nfs\" rel=\"tag\">nfs<\/a>, <a href=\"http:\/\/del.icio.us\/tag\/p2p\" rel=\"tag\">p2p<\/a>, <a href=\"http:\/\/del.icio.us\/tag\/rsync\" rel=\"tag\">rsync<\/a>, <a href=\"http:\/\/del.icio.us\/tag\/scp\" rel=\"tag\">scp<\/a>, <a href=\"http:\/\/del.icio.us\/tag\/sftp\" rel=\"tag\">sftp<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Mi problema es el siguiente: Tengo que distribuir archivos de manera rutinaria a m\u00e1s de 500 servidores los cuales corren Linux \/ Solaris. Ninguno de ellos es mayor de 10 MB por si s\u00f3lo, pero tengo muchisimos de ellos y la distribuci\u00f3n de los archivos debe ser lo m\u00e1s rapida posible adem\u00e1s de tener cierta <a class=\"read-more\" href=\"http:\/\/kodegeek.com\/blog\/2008\/11\/21\/distribucion-de-archivos-en-una-granja-de-servidores-%c2%bfhay-algo-mejor-que-nfs-por-alli\/\">[&hellip;]<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[],"tags":[424,422,423,421,425],"_links":{"self":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts\/1294"}],"collection":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/comments?post=1294"}],"version-history":[{"count":0,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/posts\/1294\/revisions"}],"wp:attachment":[{"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/media?parent=1294"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/categories?post=1294"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/kodegeek.com\/blog\/wp-json\/wp\/v2\/tags?post=1294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}