我们有一个负载平衡的几个 Web 服务器的设置。我们希望拥有某种所有 Web 服务器都可以访问的网络共享存储。它将用作存储用户上传的文件的地方。一切都在运行 Linux。
我们应该使用NFS、CIFS、SMB、fuse+sftp、fuse+ftp吗?网络文件共享协议有很多选择,很难选择一个。我们基本上只想在多台机器上永久安装这个共享。安全功能不是一个问题,因为除了安装它的服务器之外,它不会从任何地方访问网络。我们只希望它可靠、快速地工作。
我们应该使用哪一种?
我正在寻找一种诊断问题的方法,例如交换死亡,其中膨胀内存进程填满交换并杀死整个机器(例如 apache)。
我已经在使用 cacti,我可以设置 nagios(虽然宁愿不这样做)或 munin,但据我所知,他们无法记录单个程序的使用情况 - 只是整体状态。
我知道我可以每 30 秒将一个 >> 脚本滚动到某个文件,但我想看看是否已经存在现有的成熟解决方案。
同样,理想情况下它会:
进程名称不是也不应该提前知道 - 想法是让它监控然后查看顶级违规者。
我的系统是 Linux (OpenSUSE)。
嗨 Linux/UNIX 霸主,
对于 Linux 服务器上有多少上下文切换(每个处理器核心)是正常的,你们中有人有经验法则吗?
我在这里的大学提出了它,他在 8 核x86_64
机器上看到了 16K 。
以下是过去几天来自 sarface 的一些统计数据......
替代文字 http://src.autonomy.net.au/imagebin/81895e338fae67d3d205c09db44a81e6-Picture_10.png
要查看进程创建统计信息,请查看同一图表的对数视图...
替代文字 http://src.autonomy.net.au/imagebin/7481f7e52bead4effc90248fc23c72fe-Picture_11.png
而且8核都闷死了……
替代文字 http://src.autonomy.net.au/imagebin/0e94326652e977fd74edcd840f94200f-Picture_12.png
CS 与 IOwait(x10000 比例)
替代文字 http://src.autonomy.net.au/imagebin/a52a2a8a120394849c0da4045933e306-Picture_13.png
如果有人问,更多无用的信息..
在相同的硬件上,Xen 或 KVM 哪个更快?
我正在尝试采用一种虚拟化技术来工作,它可以提供最佳性能。
我在这里找到了一些关于该主题的基准测试:http : //virt.kernelnewbies.org/XenVsKVM
他们将 KVM 视为赢家,在性能上有显着差异——这与 KVM 是 2 类管理程序的想法背道而驰,根据定义,它应该比 1 类管理程序(如 Xen)慢——或者至少是网上的文章说。
关于这个主题的任何想法?
曾几何时,我构建了自己的 SQL 服务器,并且可以控制驱动器配置、RAID 级别等。传统的数据、日志、tempdb、备份分离建议(取决于预算!)始终是一个非常重要的部分SQL 服务器设计过程。
现在有了企业级 SAN,我只需为新 SQL 服务器请求特定数量的驱动器空间,分为用于数据、备份和文件共享的逻辑驱动器。当然让我的工作更轻松,但我的一部分感觉并不完全舒服,我无法真正窥视“幕后”,看看那里到底发生了什么。
我的理解是,SAN 团队不会以任何不同的方式配置不同“类型”的驱动器(优化数据驱动器以进行随机访问,而优化日志驱动器以进行流式写入)。其中一些可能取决于 SAN 产品本身(我们有 HP XP12000 和 HP XP24000),但我确信 HP 软件会进行各种动态性能配置(观察 IO 热点并动态重新配置以优化这些 LUN),这样应用程序团队和 DBA 就无需担心任何这些事情。关于“将所有服务器的负载分散到大量主轴上”之类的东西。
我的问题/讨论:
在不与 SAN 团队树敌的情况下,我如何让自己和应用程序开发人员放心,我们的 SQL 服务器不会受到配置不当的存储的困扰?只使用性能统计?其他基准,如sqlio?
如果我在这些 SAN 驱动器上进行负载测试,这是否真的为我提供了一个可靠的、可重复的衡量我们上线时将看到的内容?(假设 SAN 软件可能在不同的时间点以不同的方式“动态配置”。)
SAN 的某一部分(比如 Exchange 服务器)中的大量 IO 会影响我的 SQL 服务器吗?(假设他们没有为每个服务器提供专用磁盘,我被告知他们没有)
请求为不同功能的逻辑驱动器(数据 vs 日志 vs tempdb)分离逻辑驱动器在这里有帮助吗?SAN 会看到这些不同的 IO 活动并以不同的方式优化配置它们吗?
我们现在有点空间紧缩。应用程序团队被告知要修剪数据存档等。空间问题是否会导致 SAN 团队就如何配置可能影响服务器性能的内部存储(RAID 级别等)做出不同的决定?
感谢您的想法(在这个 SF 问题中简要讨论了类似的主题)
我正在运行这个命令:
pg_dumpall | bzip2 > cluster-$(date --iso).sql.bz2
Run Code Online (Sandbox Code Playgroud)
这需要太长时间。我用top
. bzip2 进程占用一个内核的大约 95% 和 postgres 的 5%。该wa
条目是低的。这意味着磁盘不是瓶颈。
我可以做些什么来提高性能?
也许让 bzip2 使用更多的内核。服务器有 16 个内核。
或者使用 bzip2 的替代品?
我可以做些什么来提高性能?
我写了一个错误的程序,它在 /tmp 下意外创建了大约 30M 的文件。(这个错误是几周前引入的,它每秒创建几个子目录。)我可以将 /tmp 重命名为 /tmp2,现在我需要删除这些文件。系统是 FreeBSD 10,根文件系统是 zfs。
与此同时,镜像中的一个驱动器出现问题,我已经更换了它。该驱动器有两个 120GB SSD 磁盘。
问题是:更换硬盘驱动器和重新同步整个阵列用了不到一个小时。删除文件 /tmp2 是另一回事。我写了另一个程序来删除文件,它每秒只能删除 30-70 个子目录。删除所有文件需要 2-4 天。
重新同步整个阵列需要一个小时,而从磁盘中删除需要 4 天,这怎么可能?为什么我的表现这么差?70 次删除/秒似乎非常非常糟糕的性能。
我可以手动删除 /tmp2 的 inode,但这不会释放空间,对吗?
这可能是 zfs 或硬盘驱动器的问题还是什么?
您如何确定 Linux 服务器的性能受 I/O 限制,也许更重要的是,哪个或哪些进程导致了问题?
我写了一个多线程软件,每天做一堆模拟。这是一个非常占用 CPU 的任务,我一直在云服务上运行这个程序,通常在每个核心 1GB 的配置上。
我正在运行CentOS 6.7,并/proc/cpuinfo
告诉我我的四个 VPS 内核是 2.5GHz。
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 63
model name : Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz
stepping : 2
microcode : 1
cpu MHz : 2499.992
cache size : 30720 KB
physical id : 3
siblings : 1
core id : 0
cpu cores : 1
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid …
Run Code Online (Sandbox Code Playgroud) performance ×10
linux ×4
benchmark ×1
centos ×1
centos6 ×1
file-server ×1
freebsd ×1
gzip ×1
io ×1
memory ×1
memory-usage ×1
monitoring ×1
postgresql ×1
sql-server ×1
swap ×1
tuning ×1
vps ×1
xen ×1
zfs ×1