使用 snort 2.8.6 版,我正在尝试收集应用程序性能统计信息,例如
我目前正在使用 perfmonitor 预处理器来转储性能统计数据,并通过 SNMP 调用绘制其中的一些值。关于这个预处理器的文档相当有限,并没有很好地解释字段的实际含义,或者计算数字的时间范围。
要获得这些类型的性能指标,哪些领域应该我在看和这些领域如何测量?
为什么 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) 使用 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。关于问题出在哪里的想法,或者我应该如何继续调试?
细节:
这是负载测试之前/期间/之后的 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) 我正在寻找适用于 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”命令行开关来禁用紧急退出,但它已经被默认设置了。 …
我想知道我是否递归调用了 shell,有没有一种简单的方法可以找出来?是否有特定于外壳的解决方案?我正在使用 bash。
是否可以将整个 VPS 主机直接复制到我自己的服务器?
我目前的 VPS 在美国,从/到丹麦的响应时间让我很烦恼。在我切换到 VPS 之前,我以前有自己的服务器,运行 FreeBSD。为了快速简便的操作,我想知道是否可以制作 VPS 的磁盘映像,然后将其解压缩到我放置在丹麦工作场所的服务器中。
我正在构建家庭集群,我将有大约 16 个节点可以使用 1G 端口,但我希望在文件服务器和中央节点上有 10GE。这都是本地的,所以不需要超过 3-5m 的电缆。当然,我想花尽可能少的钱(不会花费超过整个集群成本):-)
我有哪些选择?
我有一个不断丢失磁盘空间的服务器,所以我认为一定有一些我不知道的日志。
找到大小不断增加的文件的好方法是什么?
Local Computer (Fedora) --SSH--> Server1 --SSH--> Server2
Run Code Online (Sandbox Code Playgroud)
在我工作的某些环境中,我们必须使用“跳转框”,您可以通过 ssh 连接到一台服务器,以便到达另一台服务器。有没有一种快速的方法可以做到这一点,也许是通过编辑 ~/.ssh/config,这样每当我从本地计算机 ssh 到 Server2 时,它都会自动创建到 Server1 的必要连接?我可以设置密钥,以便在必要时不会提示我输入 Server1 的密码。
对于 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,但我不太确定如何最好地实现这一点。
apache-2.2 ×2
linux ×2
10gbethernet ×1
ansible ×1
bash ×1
deployment ×1
disk-image ×1
django ×1
logging ×1
migration ×1
mod-wsgi ×1
monitoring ×1
ntp ×1
php ×1
provisioning ×1
scripting ×1
snort ×1
ssh ×1
ssh-tunnel ×1
timezone ×1
ubuntu ×1
vps ×1