免责声明是的,我要求你为我devise一个系统:) 我的任务是devise一个系统来存储大约10TB /天,保留时间为180天。 我的第一个方法是使用GlusterFS并使用像这样的硬件设置: 系统中的单个节点: 1个带有HP Smart Array P812控制器的 HP ProLiant DL180 G6 8 惠普D2600瓦特/ 12 2 TB 6G SAS 7.2K LFF双端口MDL硬盘24 TB捆绑 106存储磁盘(2个操作系统磁盘,10个服务器数据磁盘,96个分布在8个机架上) 我需要9个节点来获得可以容纳数据的networking存储(没有复制或在本地磁盘上的RAID)。 优点: 我可以从一台没有架子的服务器开始 通过在一台服务器上添加机架(或者添加服务器,通过首先添加节点或者首先添加机架或者两者的组合来增加机架的扩展) “无限”地缩放(对于“无限”的某些定义) 缺点: 一般来说:我实际上不知道如何validation这一点,一旦达到扩展的最后阶段(1.8 PB估计),这将是一个可行的设置。 我没有任何实际的首选方向,只有GlusterFS的一些经验,我已经使用GlusterFS的4 TB系统(分布式,复制,4个节点)。 我敢肯定,这个设置运行Hadoop / Gluster / Netapp / EMC / Hitachi / EveryoneElse没有什么太大差别,但是用例是( drumroll ): ls -ltr | grep 'something' | xargs grep […]
任何人有任何使用MooseFS的经验? 我想要一个简单的分布式存储平台来存储大约10TB的静态数据存档,并将其存储到20-40个节点。 另外,我希望能够在存档增长时添加存储,而无需重新构build文件系统。 我不在乎是否有点慢。 我只是希望它简单而稳定。 基本上,从我所看到的OS X之间的MooseFS和Gluster之间。 还有其他build议吗?
我注意到当前处于离线状态的服务器上有15%的CPU负载。 它通过TCP挂载了GlusterFS卷。 通过顶部看,它显示我glusterfs。 之后,我试图找出究竟是什么使用它,我得到了这个: # lsof /storage/ COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME find 16433 nobody cwd DIR 0,19 8192 9259265867489333824 /storage/200000/200000/200700/200704/08 然后: # ps uax | grep find root 16415 0.0 0.0 4400 724 ? SN 06:34 0:00 /bin/sh /usr/bin/updatedb.findutils root 16423 0.0 0.0 4400 336 ? SN 06:34 0:00 /bin/sh […]
现在我有一个带有ZFS和NFSv4的FreeBSD主机。 它被复制到另一个FreeBSD盒子进行备份。 对我来说重要的ZFSfunction是 软件RAID6 快照或一些其他复制方式到另一台主机 配额 ACL 更换发生故障的磁盘而不使主机脱机 题 在CentOS 6上可以用XFS或GlusterFS做相同或相似的设置? 更新 硬件是 Supermicro CSE-847E16-R1400LPB机箱,36个HS托架 Supermicro H8DG6-F AMD Dual G34主板 AMD Opteron 6320,2.8GHz 8核8MB二级caching6400MT 64GB RAM和128GB交换 每个主机在RAIDZ2中有36 * 3TB空间,所以100TB可用和50TB使用。 它认为这是Ubuntu客户端可能会导致重读的主机崩溃。 现在有〜5个NFS客户端。 没有阅读caching。 除了启用巨帧之外,没有NFSv4调优 echo 'kern.ipc.nmbclusters="32768"' >> /boot/loader.conf echo 'kern.ipc.maxsockbuf=16777216' >> /etc/sysctl.conf echo 'net.inet.tcp.sendspace=262144' >> /etc/sysctl.conf echo 'net.inet.tcp.recvspace=262144' >> /etc/sysctl.conf echo 'net.inet.tcp.rfc1323=1' >> /etc/sysctl.conf echo 'net.inet.tcp.sendbuf_max=16777216' […]
以前我问过在Ubuntu 12.04服务器上安装GlusterFS的问题,答案是这是12.04的错误,而在14.04工作。 好奇的我尝试了一下在我的笔记本上运行的虚拟机,并在14.04工作。 由于这对我来说非常重要,我决定将运行中的服务器升级到14.04,以便发现GlusterFS不会自动挂载localhost卷。 这是一个Linode服务器,fstab看起来像这样: # <file system> <mount point> <type> <options> <dump> <pass> proc /proc proc defaults 0 0 /dev/xvda / ext4 noatime,errors=remount-ro 0 1 /dev/xvdb none swap sw 0 0 /dev/xvdc /var/lib/glusterfs/brick01 ext4 defaults 1 2 koraga.int.example.com:/public_uploads /var/www/shared/public/uploads glusterfs defaults,_netdev 0 0 引导过程像这样(围绕networking安装部分,这是唯一的失败): * Stopping Mount network filesystems [ OK ] * Starting […]
我很好奇,如果有人真的在生产容器中运行PostgreSQL的某种forms的分布式文件系统 – GlusterFS最好,或任何东西。 我目前正在运行Mesos / Marathon。 如果PostgreSQL节点出现故障,Marathon只会在其他节点上启动另一个PostgreSQL实例,如果正确完成(服务发现和应用程序从数据库连接丢失中恢复),则将实现最终容错。 我知道PostgreSQL有自己的HA解决scheme,比如日志传送和热备份备份,但是还是需要解决什么时候从主机切换到从机,如何正确执行等问题。 那么,如何在GlusterFS或类似的产品上运行PostgreSQL呢? 如果是这样,它是稳定的吗? 性能如何?
我有一个Web应用程序,提供二进制文件(图像等)。 我们的应用程序在Amazon EC2上运行。 我们本来打算使用Amazon S3来存储和提供这些文件,这不再是一个选项。 我们需要使用CNAME通过HTTPS传输这些文件。 出于许多技术原因, Amazon S3显然是不可能的。 Amazon提供弹性块存储(EBS) ,允许您在一个实例上安装最大1TB的块。 我们将有多个实例并行访问这些数据。 我在想的是使用分布式文件系统,如MogileFS / GluserFS / [insert-more-here]和弹性块存储(EBS) 。 所以我的问题是:其他人目前正在做什么来在不使用Amazon S3的情况下在Amazon EC2上创build可扩展的(几个100TB)文件存储系统? 数据仍将在Amazon S3上进行备份,但是所有的读取操作都不在文件系统中。 先谢谢了。 如果有人需要澄清任何事情,请随时询问。
在过去的几个月里,我一直在试图find跨多个运行Apache + PHP的Web服务器(12+)共享多个网站内容的最佳方式。 我面临的最大挑战之一是我们需要能够随时读写文件系统,因为各种各样的好坏原因(例如,应用程序不在我们的控制范围内,通过networking界面pipe理的WordPress网站等) …)。 以下是我尝试过的一些结果: Rsync / duplicity/csync2:每分钟只运行一次,这意味着某些更改不会在整个群集中共享,从而避免出现严重问题。 inotify / incron:考虑到大量的文件和目录来监视太复杂。 而且,新文件的效果也不好。 GlusterFS:我们有一个4服务器gluster后端和性能,虽然明确缓慢,是可以容忍的。 不幸的是,在每台Web服务器上运行的gluster客户端不断崩溃,然后冻结2个到15分钟之间的4个文件服务器中的一个。 我们联系了Gluster Inc.,让他们的一些工程师帮助我们,但是他们无法弄清楚问题所在。 使用3个月后,我们不得不放弃。 有关我们设置的一般信息: 在Amazon EC2上主办 运行Ubuntu Maverick 运行Nginx(2) – > Varnish(2) – > Apache(12+) 禁用.htaccess以获得最佳性能。 我们直接将指令添加到网站configuration文件 我们运行的大多数网站/应用程序不是我们的,不幸的是,只读环境是不可能的 具有自动故障转移function的高可用性对于我们考虑这些Web服务器正在处理的任务非常重要 所以我认为这涵盖了一切:)。 预先感谢您的时间和回应。
首先是一些背景:我在一家运行PHP-web应用程序的公司工作。 我们在几个networking服务器上通过NFS安装了一个存储后端。 今天,如果一个networking服务器通过NFS写入一个文件,有时这个文件在几分钟之后才会出现在其他挂载的客户端上。 这也不是多余的,所以我们不能进行任何“隐形”维护。 我一直在考虑迁移到一个GlusterFS解决scheme(两个或三个复制砖/冗余机器)。 现在,使用XFS作为Gluster后面的存储文件系统运行得非常好,性能更好。 Gluster也似乎没有上面提到的同步问题。 但是,我想用ZFS作为后端文件系统,原因在于; 廉价的压缩(目前存储1.5TB未压缩) 很容易扩大存储量“活”(一个命令,比较LVM的混乱) 快照,Bit-rot保护和所有其他ZFS荣耀。 在我的解决scheme的演示设置中,我有三台服务器,每台服务器上有一个独立的磁盘,带有一个ZFS后端池的复制Gluster。 我在Linux(0.6.2)+ GlusterFS 3.4上使用CentOS 6.5和ZFS。 我也尝试与Ubuntu 13.10。 一切都在VMware ESX中。 为了testing这个设置,我把音量挂在Gluster上,然后运行BlogBench( http://www.pureftpd.org/project/blogbench )来模拟加载。 我遇到的问题是,在testing结束时,ZFS存储似乎陷入了僵局。 所有这三台机器都有以90-100%CPU运行的“zfs_iput_taskq”,并且testing冻结。 如果我中止testing,死锁不会消失,只有选项似乎是硬重启。 我努力了: 禁用一次 禁用调度程序(noop) 不同的压缩/不压缩 直接在ZFS上的Blogbench工作正常 Gluster + XFS上的Blogbench作为后端工作正常 想法? 我应该放弃ZFS和其他东西? 备择scheme? 问候奥斯卡
经过深入了解如何使用gluster设置复制我遇到了这个问题: Apache可以直接读GlusterFS块,但写入GlusterFS挂载? 我也发现了一个似乎解释同样的事情的方法,我想我明白了,但现在我认为我不知道。 所以为了获得这种复制的function,我需要让这两台机器同时作为服务器和客户端? 现在我不明白这种关系是如何工作的:不是B,比如A的客户? 是否涉及多个级别的客户端 – 服务器关系? A和B的客户端是B的客户端,每个客户端在同一台计算机上安装一个卷,并且这两个卷在第三层关系中以某种方式同步(从A到B)? 为什么上面的问题是关于写入文件系统还是写入已安装的卷? 当我把B作为A的客户端时,A出口一个文件夹,B把它作为一个远程卷装在一个文件夹中,我从来没有问过我自己写的是什么:我写入A的原始文件夹, B.这不是应该如何工作?