Questions tagged «storage»

主要是有关磁盘存储的问题,有时是有关应用程序存储或云存储的问题。总是对存储数据有疑问。

9
人们实际上将哪种存储用于VMware ESX服务器?
VMware和许多网络传播者试图告诉您,复杂的(=昂贵的)光纤SAN是VMware ESX和ESXi服务器的“唯一”存储选项。好,是的,当然。使用SAN是快速,可靠的,并使vMotion成为可能。大。但是:所有ESX / ESXi用户能否真正负担得起SAN? 我的理论是,在这个星球上,只有不到20%的VMware ESX安装实际使用光纤或iSCS SAN。这些安装大多数将在有能力承担费用的较大公司中进行。我预计大多数VMware安装都将使用“附加存储”(vmdks存储在服务器内部的磁盘上)。他们中的大多数都在中小型企业中经营,其中有很多! 我们运行两个带有附加存储的ESX 3.5服务器,以及两个带有iSCS san的ESX 4服务器。两者之间的“真实生活差异”几乎不明显:-) 您知道这个问题的任何官方统计信息吗?您将什么用作存储介质?

5
BBWC:从理论上讲,这是个好主意,但是有没有人保存过您的数据?
我熟悉BBWC(电池支持的写缓存)的用途-甚至在使用优质UPS的情况下,它们也曾在我的服务器中使用过。显然存在无法提供保护的故障。我很好奇它在实践中是否真正提供了任何真正的好处。 (注意,我特别在寻找患有BBWC且发生车祸/故障以及BBWC是否有助于恢复的人的答复) 更新资料 收到反馈后,我越来越怀疑BBWC是否会带来任何价值。 为了对数据完整性有信心,文件系统必须知道何时将数据提交到非易失性存储(不一定是磁盘,这是我将要谈到的问题)。值得注意的是,将数据提交到磁盘后,会出现许多磁盘(http://brad.livejournal.com/2116715.html)。尽管可以合理地认为禁用磁盘上的缓存可能会使磁盘更老实,但仍然不能保证确实如此。 由于BBWC中的缓冲区通常过大,因此屏障可能需要将更多数据提交到磁盘,从而导致写入延迟:一般建议是在使用非易失性回写高速缓存时禁用屏障(并禁用on-磁盘缓存)。但是,这似乎破坏了写操作的完整性-仅因为非易失性存储中保留了更多数据并不意味着它会更加一致。确实,可以说在逻辑事务之间不进行划分,与其他方式相比,确保一致性的机会似乎更少。 如果BBWC在数据进入其非易失性存储(而不是提交到磁盘)的那一刻承认障碍,那么它似乎可以满足数据完整性要求而不会降低性能-意味着仍应启用障碍。但是,由于这些设备通常表现出与将数据刷新到物理设备一致的行为(带有障碍的速度明显较慢)以及禁用障碍的广泛建议,因此它们无法以此方式运行。为什么不? 如果将OS中的I / O建模为一系列流,则在某种程度上可以最大程度地减小由OS管理写缓存时的写屏障的阻塞效果-因为在此级别仅逻辑事务(单个流) )需要承诺。另一方面,一个不知道构成事务的数据位的BBWC必须将其整个缓存提交到磁盘。内核/文件系统是否实际上在实践中实现了这一点,将比我目前打算投入的工作多得多。 磁盘组合会告诉故障发生了什么,并且突然断电无疑会导致损坏-以及日记或日志结构化的文件系统在中断后无法完全执行fsck的情况下,更不可能发现损坏的发生,更不用说试图修复它。 就故障模式而言,根据我的经验,大多数突发性停电是由于市电中断而造成的(通过UPS和管理性关机可以轻松缓解)。人们将错误的电缆从机架中拔出,意味着数据中心的卫生性很差(标签和电缆管理)。UPS不能阻止某些类型的突然断电事件-PSU或VRM中的故障,带有障碍物的BBWC在发生故障时将提供数据完整性,但是这种事件有多普遍?从这里缺乏回应来看非常罕见。 当然,将容错能力提高到更高的堆栈中比使用BBWC的成本要高得多-但是将服务器实现为群集对于性能和可用性还有很多其他好处。 减轻突然断电的影响的另一种方法是实施SAN-AoE使这成为一个可行的方案(我对iSCSI的意义不大),但同样存在更高的成本。

7
如何使用CentOS 6监控Dell PERC H710 Raid Controller背后的硬盘状态?
我有一个CentOS 6使用PERC H710Raid 5设置的Raid Controller卡运行的Dell服务器,我想监视Raid Controller背后的硬盘故障/工作状态。 然后,我应该能够使用bash脚本监视硬盘状态,并在出现问题时发送警报电子邮件。 用于CentOS / Red Hat / Linux 的LSI MegaRAID SAS命令工具(关于LSI MegaRAID SAS Linux工具)不支持PERC H710,并且smartctl也不支持。 基于Dell网站,CentOS此服务器(NX3200 PowerVault)不支持IS,并且我无法下载任何Linux程序来监视硬盘。 [root@server ~]# lspci | grep RAID 03:00.0 RAID bus controller: LSI Logic / Symbios Logic MegaRAID SAS 2208 [Thunderbolt] (rev 05) [root@server ~]# smartctl -a /dev/sda smartctl 5.43 …

12
在Linux上存储和备份1000万个文件
此问题已从堆栈溢出迁移,因为可以在服务器故障时回答。 迁移 8年前。 我经营一个网站,该网站在3个级别的子目录中存储大约1000万个文件(书籍封面),范围为[0-f]: 0/0/0/ 0/0/1/ ... f/f/f/ 这导致每个目录大约2400个文件,这在我们需要检索一个文件时非常快。此外,这是许多问题建议的做法。 但是,当我需要备份这些文件时,只需要花几天时间浏览包含10m个文件的4k目录。 因此,我想知道是否可以将这些文件存储在一个容器(或4k容器)中,每个容器的行为都完全类似于文件系统(某种已安装的ext3 / 4容器?)。我想这几乎与直接访问文件系统中的文件一样有效,并且这将具有非常有效地被复制到另一台服务器的巨大优势。 关于如何做到最好的任何建议?还是任何可行的替代方法(noSQL,...)?

2
如何在Docker卷容器和Docker卷之间决定?
阅读文档后,我发现自己对如何最好地管理生产性应用程序/服务数据有些困惑。 似乎有3种选择: 只需将卷映射到主机目录(即的-v参数docker run) 创建用于数据的docker容器映像(即,单独的容器和--volumes-from) 创建一个docker卷(即docker volume create) 现在,似乎可以接受的做法是选择#2,但是然后我想知道#3的目的是什么。 尤其是您如何正确地处理这些docker volume情况?对于每个情况,使用数据卷容器还是更好? 您需要服务器中单独的卷和/或存储层中的应用程序数据 备份 恢复数据
24 storage  docker 

1
KVM和Libvirt-如何热插拔新的virtio磁盘?
我正在尝试将基于文件的磁盘热添加到正在运行的KVM虚拟服务器。我已经使用以下命令从头开始创建了新磁盘 dd of=/home/cloud/vps_59/test.img bs=1 seek=5G count=0 我希望通过在virsh shell中将其热添加到来宾: virsh # attach-disk vps_59 /home/cloud/vps_59/test.img \ vdd --driver=file --subdriver=raw 该域的XML定义将变为: <disk type='file' device='disk'> <driver name='qemu' type='raw'/> <source file='/home/cloud/vps_59/root.img'/> <target dev='vda' bus='virtio'/> </disk> <disk type='file' device='disk'> <driver name='file' type='raw'/> <source file='/home/cloud/vps_59/test.img'/> <target dev='vdd' bus='virtio'/> </disk> 如您所见,驱动程序名称错误,应该是driver name='qemu'现有vda磁盘。我尝试过,--drive=qemu但它表示不支持。 其次,一旦重启运行Ubuntu 10.04.4 LTS的虚拟机,我就只能“看到”新添加的驱动器。如何使驱动器“热插拔”?我希望虚拟机无需重新启动即可立即“看到”新驱动器。

1
将ZFS服务器托管为虚拟访客
此问题已从超级用户迁移,因为可以在服务器故障时回答。 迁移 7年前。 我还是ZFS的新手。我一直在使用Nexenta,但我正在考虑切换到OpenIndiana或Solaris 11 Express。现在,我正考虑将ZFS服务器虚拟化为ESXi,Hyper-V或XenServer中的客户机(我还没有确定哪个是虚拟机-我倾向于ESXi以支持VMDirectPath和FreeBSD)。 主要原因是看来我有足够的资源来轻松运行1-3个其他VM。通常是Windows Server。也许还有Linux / BSD VM。我希望虚拟化的ZFS服务器托管其他VM的所有数据,以便将它们的数据保存在与ZFS磁盘物理隔离的磁盘上(挂载为iscsi或nfs)。 该服务器当前具有一个AMD Phenom II,该内核具有6个总核(未锁定2个),16GB RAM(已最大化)和一个LSI SAS 1068E HBA,其中已连接(7个)1TB SATA II磁盘(在RAIDZ2上进行计划并具有热备用)。我也有(4)个32GB SATA II SSD连接到主板。我希望将其中两个SSD镜像到启动镜像(对于虚拟主机),而将其他两个SSD分别用于ZIL和L2ARC(对于ZFS VM guest虚拟机)。我愿意再添加两个磁盘来存储VM guest虚拟机,并将所有当前的七个磁盘分配为ZFS存储。注:主板并没有有IOMMU支持为880G不支持它,但我有一个890FX主板里面确实有IOMMU如果它使一个巨大的差异。 我的问题是: 1)这样做明智吗?我没有看到任何明显的不利因素(这使我想知道为什么没有人提到它)。我觉得我可能会做一个巨大的疏忽,而我不愿意承诺这样做,将所有数据移到另一个位置,只是想念我错过的一些细节。 2)ZFS虚拟客户机性能如何?我愿意降低性能,但我想,如果VM guest虚拟机具有对磁盘的完整磁盘访问权限,那么至少磁盘I / O性能将是微不足道的(与非虚拟化运行ZFS相比) 。任何人都可以从将ZFS服务器作为VM guest虚拟机托管的经验谈起吗?


3
在某些情况下,可以将“企业”驱动器安全地替换为近/中线吗?
在指定服务器时(例如,我假设许多不是存储专家的工程师),我通常会通过标准化最少1万个SAS驱动器(因此是“企业级,具有24x7占空比等)来存储“系统”数据(通常是OS,有时是应用程序),并保留使用7.2k中/近线驱动器来存储性能不太重要的非系统数据因子。所有这些都假设使用2.5英寸(SFF)磁盘,因为3.5英寸(LFF)磁盘仅与大容量,低IOP要求真正相关。 在没有大量非系统数据的情况下,我通常将其放置在与系统数据相同的磁盘/阵列上,这意味着服务器仅具有1万个SAS驱动器(通常为“一个大RAID10”类型)这些天的设置)。仅当非系统数据的大小很大时,我通常才考虑将其放在单独的7.2k中/近线磁盘阵列上,以降低成本/ GB。 这使我想知道:在某些情况下,是否可以将RAID10阵列中的那10k磁盘替换为7.2k磁盘,而不会造成严重的负面影响?换句话说,我有时会坚持至少1万个“企业”级磁盘来进行过度规范(并让硬件供应商满意),还是有充分理由始终坚持这种最低标准? 例如,对于典型的小公司(例如50个用户),使用一台充当具有虚拟机管理程序的服务器,并带有几个VM。该公司具有平均I / O模式,无特殊要求。典型的星期一至星期五9-5点办公室,备份每晚运行几个小时。这些VM可能是DC和文件/打印/应用服务器。该服务器具有一个RAID6阵列,该阵列带有6个磁盘,用于存储所有数据(系统数据和非系统数据)。在我的非专家眼中,看起来中/近线磁盘可能还不错。以HP磁盘为例: 工作负载:中线磁盘的额定工作负载小于40%。由于办公室每天仅开放9个小时,并且此期间的平均I / O不可能接近最大,因此工作量似乎不可能超过40%。即使晚上有几个小时的密集I / O进行备份,我猜它仍会低于40% 速度:尽管磁盘只有7.2k,但通过将其分布在六个磁盘上可以提高性能 因此,我的问题是:合理地放置至少1万个SAS驱动器,还是在许多情况下7.2万个中线/近线磁盘实际上足够用?如果是这样,我该如何衡量线路的位置并通过安全玩耍来避免成为无知的奴隶? 我的经验主要是使用HP服务器,因此上述内容可能会对HP有所偏见,但是我认为这些原则在很大程度上与供应商无关。

4
LSI CacheCade SSD存储分层的有效性如何?
LSI提供了CacheCade存储分层技术,该技术可将SSD设备用作读写缓存,以增强传统RAID阵列。 其他厂商也采用了类似的技术。HP SmartArray控制器具有其SmartCache。Adaptec具有MaxCache ... ... 更不用说许多基于软件的加速工具(sTec EnhanceIO,Velobit,FusionIO ioTurbine,Intel CAS,Facebook flashcache吗?)。 我来自ZFS背景,利用各种类型的SSD来处理读缓存(L2ARC)和写缓存(ZIL)职责。他们各自的工作量需要不同的特征;写缓存的低延迟和持久性。高读取容量。 由于CacheCade SSD可以用于写入和读取缓存,因此RAID控制器的板载NVRAM发挥什么作用? 当用作写缓存时,就写持久性而言,CacheCade SSD有什么危险?鼓励使用消费类SSD。 写入直接进入SSD还是首先到达控制器的缓存? 读取缓存算法的智能程度如何?我了解ZFS ARC和L2ARC的功能。是否对CacheCade分层过程有任何见解? 存在哪些度量标准来监视CacheCade设置的有效性?有没有一种方法可以观察缓存命中率或百分比?您怎么知道它是否真的有效? 我对LSI解决方案的意见和反馈感兴趣。有什么需要注意的吗?提示?

8
RAID-5:两个磁盘同时发生故障?
我们有一台运行CentOS的Dell PowerEdge T410服务器,其RAID-5阵列包含5个Seagate Barracuda 3 TB SATA磁盘。昨天系统崩溃了(我不知道到底有多准确,也没有任何日志)。 启动进入RAID控制器BIOS后,我发现在5个磁盘中,磁盘1被标记为“丢失”,磁盘3被标记为“降级”。我强行备份了磁盘3,并用新的硬盘驱动器(大小相同)替换了磁盘1。BIOS检测到此情况并开始重建磁盘1-但是它卡在%1上。纺纱进度指示器并未整夜保持稳定。完全冻结。 我在这里有什么选择?除了使用一些专业的数据恢复服务之外,还有什么方法可以尝试重建?这样两个硬盘如何同时发生故障?似乎是巧合。磁盘1是否有故障,结果磁盘3“不同步”?如果是这样,我是否可以使用任何实用工具将其“同步”取回?

8
允许第三方磁盘的服务器供应商
如前所述这里,戴尔已不再允许使用其最新的服务器上使用第三方磁盘。在这种情况下,他们不工作。这意味着,如果您购买其中一个硬盘盒,并想在以后升级存储,则可以从戴尔那里购买大量的磁盘。 戴尔刚刚给了我一个很强的理由将我的服务器业务推向其他地方。我的公司购买(而不是租赁)我们的服务器,并且通常将它们使用5年。我需要能够定期升级/重新利用存储,并且不想以高昂的价格锁定戴尔所拥有的任何库存。正如您将在以上链接的注释中看到的那样,惠普似乎正在做同样的事情。 我正在寻找可以提供3-5年保修的服务器供应商,并提供当日/次日上门服务,并允许我使用第三方磁盘。 有什么建议吗?

2
如何安全使用存储精简资源调配?
想要改善这篇文章吗?提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 我拥有的存储可以让我精简配置提供给客户的卷。这样安全吗?最佳做法是什么?

8
快照+ RAID是否算是一个很好的现场备份解决方案?
当我将快照和RAID与btrfs一起使用时,我想到的进行备份的两个主要理由似乎已得到解决。(这里所说的RAID是指RAID1或10) 意外删除数据:快照涵盖了这种情况 驱动器故障和位腐烂 完全失败:RAID涵盖了这种情况 驱动器返回错误数据:RAID + btrfs的错误纠正功能涵盖了这种情况 因此,作为现场备份解决方案,这似乎可以很好地工作,甚至不需要单独的数据存储设备! 但是,我听说RAID和快照都没有被认为是正确的备份,所以我想知道我是否错过了任何事情。 除了btrfs还不是一项成熟的技术之外,您能想到我错过的任何东西吗?还是我的想法正确,并且这是有效的现场备份解决方案?

5
快速启动服务器
我正在改变我们的DHCP / DNS工作原理。目前,我们有3个DNS服务器和一个DHCP框。它们都是虚拟机。 东西引导需要NFS(需要DNS)存在一个循环依赖性。因此,当我们重新启动内容时,事情可能会稍微变坏,直到DNS启动,然后重新启动某些服务。 我要做的是从SSD上运行一些低功耗服务器,可能是双核Atom或类似服务器,以便它们能够快速启动。我想使整个启动过程尽可能地接近瞬时。 理想情况下,我想使用Ubuntu 11.10或Debian 6作为操作系统。我对Gentoo或编译自己的内核不感兴趣。这需要我自己合理地支持。 除了SSD驱动器之外,我还可以采取哪些其他优化步骤来提高启动速度?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.