服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

高IO负载导致rrdgraph生成失败

我们有一个4核心的CPU生产系统,它有很多的cronjobs,拥有恒定的proc队列和一般的负载约1.5。 在晚上,我们用postgres做一些IO密集的东西。 我们生成一个显示负载/内存使用情况(rrd-updates.sh)的图表,有时在高IO负载情况下“失败”。 这几乎每天都在发生,但并不是每个高IO情况都会发生。 我的“正常”解决scheme将是好的和离子postgres的东西,并增加graphics生成的prio。 但是,这仍然失败。 图生成是与鸡群的半线程certificate。 我logging了执行时间,对于graphics生成,在高IO负载期间高达5分钟,似乎导致长达4分钟的丢失图。 时间框架与postgres活动完全匹配(这有时也会发生在白天,虽然不是那么经常),离开postgres(c1 N6 graph_cron vs C2 N3 postgres),在postgres之上(-5 graph_cron vs 10 postgres )没有解决这个问题。 假设没有收集数据,额外的问题是离子/好点子仍然不工作。 即使有90%的IOwait和100的负载,我仍然可以使用数据生成命令,而不会超过5秒的延迟(至less在testing中)。 可悲的是我还没有能够在testing中重现这一点(只有虚拟化的开发系统) 版本: 内核2.6.32-5-686-bigmem Debian Squeeze rrdtool 1.4.3硬件:硬件RAID1中带有LVM的SAS 15K RPM HDD mount选项: ext3和rw,errors = remount-ro 调度程序: CFQ crontab中: * * * * * root flock -n /var/lock/rrd-updates.sh nice -n-1 ionice -c1 -n7 /opt/bin/rrd-updates.sh Oetiker在github上为rrdcache似乎有一个可能相关的BUG: […]

如何消除Internet Explorer中的“多个附件可以使用”提示?

我在这里描述的问题与组策略Internet Explorer中的问题相同,附加列表不起作用 ,但我提供了更多的细节和故障排除步骤,所以我认为值得重新提问。 我pipe理许多运行Windows 8.1的计算机。 我在这些机器上安装的几个软件包都具有用于Internet Explorer的关联附件。 Internet Explorer的默认行为是提示用户在加载项安装后第一次运行Internet Explorer时启用加载项。 由于我是安装附加组件的人员,而且由于我pipe理这些机器,因此我希望这些附加组件在默认情况下处于启用状态,并且我不希望提示用户。 但是,如果需要,我希望用户保留禁用附加软件以进行故障排除的function,并且如果用户被授予了安装软件的权限,我希望他/她能够获得任何附加软件安装,我不知道。 根据微软的文档 ,这可以通过组策略设置。 (请注意,在“ 计算机configuration\pipe理模板\ Windows组件\ Internet Explorer”下自动激活新安装的加载项设置会打开没有提示的任何附加组件 ,因此它不符合我上面所述的要求。 ) 看起来像这样的设置应该做我想要的是在计算机configuration\pipe理模板\ Windows组件\ Internet Explorer \安全function\加载项pipe理下的加载项列表 。 从MSDN引用: 使用CLSID和pipe理模板来pipe理组策略对象 因为每个加载项都有一个类ID(CLSID),所以可以使用组策略和pipe理模板来启用和禁用特定的加载项。 pipe理加载项 获取要启用或禁用的加载项的CLSID: 打开Internet Explorer,单击工具 ,然后单击pipe理加载项 。 select您想要更改的加载项,然后右键单击“ 更多信息” 。 单击复制 ,然后closurespipe理加载项和Internet Explorer。 从复制的信息中,只select并复制Class ID值。 打开组策略pipe理编辑器并转到计算机configuration\策略\pipe理模板\ Windows组件\ Internet Explorer \安全function\附加组件pipe理 。 -要么- 打开本地组策略编辑器,然后转到计算机configuration\pipe理模板\ Windows组件\ Internet Explorer […]

为什么我的Web服务器在高负载下丢失TCP重置连接?

我有一个小的VPS设置与Nginx。 我想尽可能地挤出更多的性能,所以我一直在尝试优化和负载testing。 我使用Blitz.io通过获取一个小的静态文本文件进行负载testing,并运行到一个奇怪的问题,其中服务器似乎发送TCP重置,一旦同时连接的数量达到大约2000.我知道这是一个非常数量巨大,但是从使用htop服务器的CPU时间和内存还是有很多余地的,所以我想弄清楚这个问题的来源,看看能不能更进一步。 我在2GB的Linode VPS上运行Ubuntu 14.04 LTS(64位)。 我没有足够的声望直接发布此图表,因此这里是Blitz.io图表的链接: 以下是我已经做的尝试,找出问题的根源: nginxconfiguration值worker_rlimit_nofile被设置为8192 对于root和www-data用户(在nginx中运行的),在/etc/security/limits.conf中将nofile设置为64000 没有任何迹象表明/var/log/nginx.d/error.log有任何错误(通常,如果你正在运行文件描述符限制,nginx将打印错误消息这样说) 我有ufw设置,但没有速度限制规则。 ufw日志表明什么都没有被阻止,我已经尝试禁用ufw与相同的结果。 /var/log/kern.log中没有指示性错误 /var/log/syslog中没有指示性错误 我已经将以下值添加到/etc/sysctl.conf ,并将它们与sysctl -p一起加载,但没有任何效果: net.ipv4.tcp_max_syn_backlog = 1024 net.core.somaxconn = 1024 net.core.netdev_max_backlog = 2000 有任何想法吗? 编辑:我做了一个新的testing,斜坡到一个非常小的文件(只有3个字节)的3000个连接。 这里是Blitz.io图: 再次,根据闪电战所有这些错误是“TCP连接重置”错误。 这是Linode带宽图。 请记住,这是一个5分钟的平均值,所以低通滤波了一下(瞬时带宽可能要高得多),但仍然没有什么: 中央处理器: I / O: 接近testing结束时的htop : 我还捕获了一些使用tcpdump在一个不同的(但类似的)testing的stream量,开始捕获时,错误开始进入: sudo tcpdump -nSi eth0 -w /tmp/loadtest.pcap -s0 port 80 如果有人想看看这个文件(〜20MB),请点击这里: https : //drive.google.com/file/d/0B1NXWZBKQN6ETmg2SEFOZUsxV28/view ?usp […]