我是一个代码猴子,越来越多地为我的小公司承担系统管理员的职责。我的代码就是我们的产品,而且我们越来越多地提供与 SaaS 相同的应用程序。
大约 18 个月前,我将我们的服务器从一家以优质托管为中心的供应商转移到了 IV 级数据中心的准系统机架推进器。(字面意思是在街对面。)这个人自己做的事情更多——比如网络、存储和监控。
作为重大举措的一部分,为了取代我们从托管公司租用的直连存储,我构建了一个基于 SuperMicro 机箱、3ware RAID 卡、Ubuntu 10.04、两打 SATA 磁盘、DRBD 和 . 三篇博文详细记录了这一切:构建和测试新的 9TB SATA RAID10 NFSv4 NAS:第一部分、第二部分和第三部分。
我们还设置了一个 Cacit 监控系统。最近,我们添加了越来越多的数据点,例如 SMART 值。
我不能这样做这一切,而不真棒 挤入 在 ServerFault。这是一次有趣且有教育意义的经历。我的老板很高兴(我们节省了大量的美元),我们的客户很高兴(存储成本下降),我很高兴(有趣,有趣,有趣)。
直到昨天。
午饭后一段时间,我们开始从我们的应用程序(一个按需流媒体 CMS)收到性能缓慢的报告。大约在同一时间,我们的 Cacti 监控系统发送了大量电子邮件。一个更有说服力的警报是 iostat await 的图表。

性能变得如此下降以至于 Pingdom 开始发送“服务器关闭”通知。整体负载适中,没有流量高峰。
在登录应用服务器、NAS 的 NFS 客户端后,我确认几乎所有东西都在经历高度间歇性和超长的 IO 等待时间。一旦我跳到主要 NAS 节点本身,在尝试导航问题阵列的文件系统时,同样的延迟很明显。
是时候进行故障转移了,一切顺利。在 20 分钟内,一切都被确认备份并完美运行。
在任何和所有系统故障后,我都会进行事后分析以确定故障原因。我做的第一件事是 ssh 回到盒子里并开始查看日志。它完全离线。是时候去数据中心旅行了。硬件复位,备份并运行。
在/var/syslog我发现这个可怕的条目:
Nov …Run Code Online (Sandbox Code Playgroud) 作为 Opteron 处理器系列的测试,我购买了带有 HP Smart Array P410i 控制器的 HP DL385 G7 6128 - 无内存。
该机器具有 20GB ram
2x146GB 15k rpm SAS + 2x250GB SATA2,均采用 Raid 1 配置。
我运行 Vmware ESXi 4.1。
问题:
即使只有一台虚拟机,尝试过Linux 2.6/Windows server 2008/Windows 7,虚拟机感觉真的很慢。在 Windows 7 中,vmware 转换器安装甚至超时。SATA盘和SAS盘都试过,SATA盘几乎不可用,而SAS盘感觉极慢。
我在基础架构客户端中看不到很多磁盘活动,但我一直没有寻找原因,甚至没有尝试过诊断,因为我觉得这要么是因为廉价的 raid 控制器 - 要么只是因为缺乏对它的记忆。
尽管存在问题,我还是继续安装了一个提供关键功能的虚拟机,因此将其关闭并运行诊断并不容易。
非常想知道你们对它有什么看法,它更有可能是控制器/磁盘的问题还是由于预算组件而导致性能低下?
提前致谢,
希望有人能指出我遇到的一些 iSCSI 性能问题的正确方向。我在较旧的 ProLiant DL360 G5 上运行 Openfiler 2.99。双 Xeon 处理器、6GB ECC RAM、英特尔千兆服务器网卡、SAS 控制器和 RAID 5 中的 3 个 10K SAS 驱动器。当我直接从盒子运行一个简单的写测试时,性能非常好:
[root@localhost ~]# dd if=/dev/zero of=tmpfile bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 4.64468 s, 226 MB/s
Run Code Online (Sandbox Code Playgroud)
因此,我创建了一个 LUN,将其连接到另一个运行 ESXi 5.1(Core i7 2600k、16GB RAM、英特尔千兆服务器网卡)的机器上,并创建了一个新的数据存储。一旦我创建了数据存储,我就能够创建并启动一个运行 CentOS 的虚拟机,它有 2GB 的 RAM 和 16GB 的磁盘空间。操作系统安装得很好,我可以使用它,但是当我在 VM 中运行相同的测试时,我得到了截然不同的结果:
[root@localhost ~]# dd if=/dev/zero of=tmpfile bs=1M count=1000
1000+0 records in
1000+0 records out
1048576000 bytes (1.0 GB) copied, 26.8786 …Run Code Online (Sandbox Code Playgroud) hp-proliant ×2
hard-drive ×1
hardware ×1
hp ×1
iscsi ×1
openfiler ×1
performance ×1
sas ×1
sata ×1
storage ×1
vmware-esxi ×1