小编Sco*_*ack的帖子

Snort 性能监控

使用 snort 2.8.6 版,我正在尝试收集应用程序性能统计信息,例如

  • 由于应用程序过载而未处理的数据包数
  • 处理层(预处理器、重组、模式匹配等)中的时间百分比
  • 处理的数据包数
  • 等等

我目前正在使用 perfmonitor 预处理器来转储性能统计数据,并通过 SNMP 调用绘制其中的一些值。关于这个预处理器的文档相当有限,并没有很好地解释字段的实际含义,或者计算数字的时间范围。

要获得这些类型的性能指标,哪些领域应该我在看和这些领域如何测量?

monitoring snort

11
推荐指数
1
解决办法
1720
查看次数

为什么有这么多 gettimeofday 调用?

为什么 PHP/Apache 组合会执行如此多的gettimeofday系统调用?即使很快,每个电话都是应该考虑的电话。

只是一个快速strace -c -p [apache2 process id],给出以下内容:

Process 22294 detached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 98.52    0.010000          51       196           poll
  1.48    0.000150           0     20752           gettimeofday
  0.00    0.000000           0        94         7 read
  0.00    0.000000           0        48           write
  0.00    0.000000           0        96        32 open
  0.00    0.000000           0        75           close
  0.00    0.000000           0         6           chdir
  0.00    0.000000           0       766           time
  0.00    0.000000           0         2           chmod
  0.00    0.000000           0        56 …
Run Code Online (Sandbox Code Playgroud)

php apache-2.2

11
推荐指数
1
解决办法
8843
查看次数

Django/Apache/mod_wsgi 站点上的高 CPU 负载

使用 Apache bench 在 AWS 小实例 (Ubuntu 10.04) 上对 django 1.21/Apache/mod_wsgi 配置进行负载测试时,在低并发请求下显示出极高的 CPU 负载(使用正常运行时间和 vmstat):

ab -c 5 -n 1000 "my_url"
Run Code Online (Sandbox Code Playgroud)

...导致此正常运行时间输出:

18:04:54 up 9 days, 16:54,  3 users,  load average: 5.33, 2.45, 1.91
Run Code Online (Sandbox Code Playgroud)

即使 Apache bench 并发值为 2,CPU 仍为 100%。我正在同一区域/区域中的不同 AWS 实例中运行 Apache bench。关于问题出在哪里的想法,或者我应该如何继续调试?

细节:

  • 出于绝望,我安装了一个带有简单“Hello World”视图(没有 DB 调用等)的 vanilla django 项目/应用程序。结果一样。所以我怀疑这是我的应用程序代码。
  • 在负载测试期间内存使用情况看起来不错。

这是负载测试之前/期间/之后的 vmstat 输出:

procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
0 …
Run Code Online (Sandbox Code Playgroud)

django mod-wsgi apache-2.2

10
推荐指数
1
解决办法
3868
查看次数

寻找适用于 Windows 的 NTP 服务器软件

我正在寻找适用于 Windows Server 2003/2008 的 NTP 服务器,最好是免费的。我们已经尝试过内置的 Windows 时间服务器,但是我们的测试确实表明它不是很准确,我们看到时差高达 500 毫秒。我们可以为我们的应用程序允许的最大时间差约为 100 毫秒。

现在我们已经使用了Meinberg NTPd for Windows。它工作得很好,但我们有一个大问题:如果客户端和服务器之间存在网络连接问题,则 ntp 服务器处于恐慌状态它不会给客户端一个新的时间,直到我们重新启动 ntp 服务。这是一个大问题,给我们带来了一些麻烦。它工作了好几个月,直到出现了一个我们没有注意到的网络问题,我们只在一周后时差已经 30 秒时才注意到它。在客户端上。

因此,请建议一些适用于 Windows 的替代 NTP 服务器。我做了谷歌,但我得到了很多不相关的搜索结果。

编辑: 到目前为止,ntpd Windows 版本非常准确,我想坚持下去。唯一的问题是网络断开后的“恐慌状态”。也许有些人在这里知道这是什么原因以及如何解决它。另外,我忘了提到我们有一个这样的服务器/客户端设置:

Server1 --> Server2 --> Server3 --> Client1 --> Client2 --> Client3

因此 Server2 从 Server1 获取时间,Server3 从 Server2 获取时间,而客户端从 Server3 获取时间。此外,还有直接连接到 Server2 的客户端。重要的是所有服务器和客户端都具有完全相同的时间(在 ~100 毫秒内)

现在 Server3 及其客户端出现网络问题。服务器运行 Windows 的 ntpd 端口,它充当 NTP 服务器和客户端。客户端将 Dimension4 作为 NTP 客户端。在网络问题之后,D4 中的错误消息是这样的(在我的脑海中,没有确切的错误消息):

服务器响应:服务器处于恐慌状态(无法同步时钟)

我通读了 ntpd 文档,唯一提到的“恐慌”是时差为 10000 秒,这将导致退出 ntpd 服务器,但事实并非如此。还有一个“-g”命令行开关来禁用紧急退出,但它已经被默认设置了。 …

ntp

8
推荐指数
1
解决办法
4万
查看次数

如何确定我可能有多少贝壳深?

我想知道我是否递归调用了 shell,有没有一种简单的方法可以找出来?是否有特定于外壳的解决方案?我正在使用 bash。

scripting bash

7
推荐指数
2
解决办法
385
查看次数

将托管 VPS 服务器迁移到我自己的服务器

是否可以将整个 VPS 主机直接复制到我自己的服务器?

我目前的 VPS 在美国,从/到丹麦的响应时间让我很烦恼。在我切换到 VPS 之前,我以前有自己的服务器,运行 FreeBSD。为了快速简便的操作,我想知道是否可以制作 VPS 的磁盘映像,然后将其解压缩到我放置在丹麦工作场所的服务器中。

vps migration disk-image

7
推荐指数
1
解决办法
3195
查看次数

10GE网络:还是贵得要命?有什么选择吗?

我正在构建家庭集群,我将有大约 16 个节点可以使用 1G 端口,但我希望在文件服务器和中央节点上有 10GE。这都是本地的,所以不需要超过 3-5m 的电缆。当然,我想花尽可能少的钱(不会花费超过整个集群成本):-)

我有哪些选择?

  1. 传统解决方案是采用一些 24-48 端口的 1GE 交换机,并通过 4-8 条聚合链路连接到文件/中央节点。我猜这会起作用,成本是可以接受的,但我不确定使用那么多聚合链接是否可以。当然,在需要时很难将带宽加倍...... :-D
  2. 带有多个 10GE 上行链路“端口”的交换机。据我所知,它们都需要成本大约 1000 美元的模块,所以我需要 4 个 10G 模块和 2 个 10GE 卡......闻起来像超过 5000 美元+......
  3. 直接通过2个10G卡连接文件和中心节点,并在文件服务器上放置4个四端口1GE网卡。我节省了 2 个 10G 模块和一个交换机,文件服务器将不得不进行数据包路由,但它仍然会剩下很多 CPU :-)
  4. 还有其他选择吗?无限带宽?
  5. MyriNet 适配器工作正常吗?我想没有更便宜的选择吗?
  6. 嗯...废文件服务器,把它全部放在中心节点上,并为每个节点提供专用的 1GE 端口...这很可悲...

10gbethernet

7
推荐指数
1
解决办法
1137
查看次数

如何在linux系统中找到“增长”的文件

我有一个不断丢失磁盘空间的服务器,所以我认为一定有一些我不知道的日志。

找到大小不断增加的文件的好方法是什么?

linux logging

7
推荐指数
3
解决办法
2万
查看次数

通过第三台机器的 SSH

Local Computer (Fedora)  --SSH-->  Server1  --SSH-->  Server2
Run Code Online (Sandbox Code Playgroud)

在我工作的某些环境中,我们必须使用“跳转框”,您可以通过 ssh 连接到一台服务器,以便到达另一台服务器。有没有一种快速的方法可以做到这一点,也许是通过编辑 ~/.ssh/config,这样每当我从本地计算机 ssh 到 Server2 时,它都会自动创建到 Server1 的必要连接?我可以设置密钥,以便在必要时不会提示我输入 Server1 的密码。

linux ssh ssh-tunnel

7
推荐指数
2
解决办法
1280
查看次数

仅在发生更改时才执行复制和设置

对于 Ansible,我有一个角色来设置时区并填充 (Ubuntu) 基本系统的设置,

- name: set timezone
  copy: content='Europe/Berlin'
        dest=/etc/timezone
        owner=root
        group=root
        mode=0644
        backup=yes

- name: update timezone
  command: dpkg-reconfigure --frontend noninteractive tzdata
Run Code Online (Sandbox Code Playgroud)

这两个命令无论如何都会执行。这意味着当 Ansible 为同一个目标运行两次时,changed=2结果摘要中仍然会得到一个,

default                    : ok=41   changed=2    unreachable=0    failed=0
Run Code Online (Sandbox Code Playgroud)

理想情况下,一切都应该ok在第二次运行中。

虽然我猜测update timezone应该对 有某种依赖set timezone,但我不太确定如何最好地实现这一点。

ubuntu deployment provisioning timezone ansible

7
推荐指数
1
解决办法
1万
查看次数