Bueno pues no soy un experto en el tema, pero pues te comento lo que se.
Un Storage del que hablas te refieres a un servidor que solo se dedica a almacenar información, vaya como un disco duro en red y a el mismo disco duro se pueden conectar muchos servidores.
Te dejo una imagen de un storage, es como el que manejo..jejejeje.
https://www.google.com.mx/search?q=i...2F%3B400%3B174
Como puedes ver este traer un monton de discos duros y en estos networks storages se pueden configurar arreglos, que basicamente es decir "quiero que se sume el disco 1 + el disco 2 para tener un disco duro que a los servidores les aparezca como del doble de capacidad". Pero luego te quedas pensando si se dana uno de estos dos discos entonces se perdera toda la informacion que hay en ambos y es cuando dices "quiero que el disco 1 y el disco 2 sean como uno solo, pero que espejeen su informacion en el disco 3 y 4", y con esto tendras la oportunidad de que si se dana uno el disco espejo siga con los datos. Todas estas convinaciones se llamadan RAID 0, RAID 1 hasta RAID 5, si no mal recuerdo.
Ahora diras Tu, ?Y yo para que quiero esto?. Estos son para entornos de alto desempeno en donde no puedes estar apagando servidores para meterles discos nuevos, ya que con estos solo agregas el storage haces el arreglo y luego en el servidor le dices que apunte a X unidad creada con X almacenamiento y si tiene mas capacidad tu storage pues luego puedes incrementar. Tambien para crear replicas en varios discos duros y tener tolerancia a fallos. Ademas como bien comentas algunos traen opciones de replicar todo a otro storage en otra parte, aunque para esto debes contemplar que necesitaras un enlace con considerable ancho de banda para que este replicando toda la informacion.
El storage que te mostre esta hecho a "la medida" y es caro pero puedes crear tu storage casero con una compu que le puedas meter varios discos duros y te instalas un distribucion llamada FREENAS.
Ahora en cuanto a tu pregunta de que es un servidor de replicacion y cuando se debe usar, pues es servidor de replicacion es el que replica jejejeje. Es broma es que en realidad como te mencionaba un network storage puede replicar toda la informacion de un disco duro a otro storage en otra parte, pero esto demanda ancho de banda y ademas pues es muy costoso. Muchos preferimos replicar a nivel de aplicacion, por ejemplo si es SQL pues el SQL trae una opcion para replicar X tablas o base de datos a otro SQL en otra parte. Windows trae una opcion de replicacion para sus carpetas compartidas que se llama DFS. MySQL tambien trae opcion para replicas con otro MySQL, asi que hay que ver el aplicativo a ver si tiene una opcion.
Ahora bien las replicas son eso una replica exacta, si asi lo quieres, y puedes utilizarla como lectura y escritura ya que los aplicativos traen metodos para saber cual es la informacion mas reciente y si encuentran una incoherencia poner la mas reciente de dos campos distintos, por decirlo asi.
Ahora bien lo que mencionas de tener replica de tus carpetas SAMBA ahi si te tocara investigar ya que en lo personal no lo manejo mucho en linux. Pero SAMBA es muy famoso y casi estoy seguro que tiene algo para replicar X carpeta a otra parte.
Tu servidor ERP me imagino que es un sistema, no se si WEB o que, que apunta a una base de datos donde guarda la informacion. Asi que puedes buscar la manera de replicar dicha BD.
Tambien veo que manejas la palabra CLUSTER y que si se cae un servidor todo siga sin afectaciones. Esto son varias cuestiones porque por ejemplo si tienes un servidor que guarda su informacion en un network storage y el servidor falla, entonces el sistema se caera aunque no haya fallado el storage pero si fallo el servidor, entonces necesitas proteger la parte del servidor, el cerebro digamos, y la parte del almacenamiento que seria el network storage. Para eso son los cluster para que pongas a varios servidores actuando como uno solo y si se apaga uno el otro siga brindando el mismo servicio. El CLUSTER pues tambien lo puedes hacer a nivel servidor o a nivel aplicacion. Si quisieras que un servidor tenga exactamente lo que tiene el otro, vaya como dos gotas de agua en todo: el sistema operativo, actualizaciones, etc, pues ya te conviene la virtualizacion. Si por otro lado lo quieres a nivel de aplicacion pues debes ver por ejemplo si es IIS de windows que tiene la aplicacion ERP entonces IIS tiene un esquema de cluster para que el mismo servicio y archivos los maneje otro servidor IIS.
Por otra parte la alta disponibilidad y minimo fallo de un sistema distribuido y critico pues es compleja y cara, porque tienes que contemplar todos los puntos de fallo y ver como prevenirlo.
Por ejemplo para empezar donde fisicamente vas a poner este servidor, debe ser un lugar designado y bajo llave o controles de acceso. Que tenga proteccion contra incendios, aire acondicionado seguramente, control para evitar el polvo, una base firme para evitar vibraciones, contar con proteccion de corriente electrica , sistema para evitar la estatica, etc, etc.
Debes contemplar tu red en donde pueda tener puntos de fallos, enlaces, routers, etc.
Y ya dentro del cluster y servidores espejos pues contemplar cada aspecto de la implementacion dependiendo si elegiste replicar algo a nivel aplicacion, a nivel servidor o a nivel storage.
Bueno espero no haberte aburrido, ojala los gurus te puedan dar mas consejos y pues ya tener un mejor panorama de lo que se trata todo esto y ver que es lo que te conviene mas para tu caso.