我想知道 tailf 是否可以生成阻塞 I/O,这会因日志记录而降低服务器响应速度。
例如。假设以下设置:
通过终端管理的 Debian 5.1 linux 服务器 (foo)(foo 托管在 EC2 上)。
Foo 运行多个应用程序,每个应用程序都写入自己的日志文件。例如,Apache httpd 到 /var/log/apache/access.log & Tomcat 5.5 到 /var/log/tomcat5.5/myApp.log。
如果我打开到 foo 的 ssh 连接(注意:Internet 链接、高延迟、上传速度相对较慢)并运行,tail -F /var/log/apache/access.log我无法达到内核阻止 httpd 写入此日志文件的情况,从而降低了 httpd 的性能,因为对每个线程强制执行等待?
为了给出一些数字,让我们假设 foo 每秒记录约 200kb 的日志数据,这些数据需要通过线路推送到 ssh 客户端。
另一个理论方面:如果 /var/log 文件系统设置在无限大小的 ram 上(记住:理论上)会发生什么,从而消除硬盘寻道时间?
第三方面,如果我从一个非常慢的链接打开 ssh 连接会发生什么(假设 foo 的流量形状为仅推送 5kb/s 上传)?
很想听听你们的想法。
感谢阅读,马克西姆。
我今天在我的 EC2 实例上发现了一些非常奇怪的东西;正如您在屏幕截图中看到的那样,“网络输入”上的峰值超出了之前发生的任何事情。关于如何检查一些日志以帮助我了解导致此峰值的原因有什么想法吗???
apache访问日志正常,没有比平时更多的请求...
截屏:

在设计网络拓扑时,有什么理由不应该依赖 LACP?我的意思是 L2切换到管理程序连接,因此它是 VM 聚合流量累积的地方。我们谈论的是 5 x 1 GbE LACP 绑定。
我和我的同事意见不一。他说:“为什么我们要为整个设置增加另一层开销?这只是另一个潜在的故障点。” 他对链路聚合总体上持怀疑态度。我认为 802.3ad 模式下的 linux 绑定驱动程序是可靠且不错的选择。
他还认为我们不需要它,因为我们的环境中永远不会有这么大的流量,简单的 1 GbE 就足够了。我们是高中,在我们的局域网中有大约 100 个 PC 客户端和大约 10 个服务器。
因此,当我们完全不知道天气是否需要 LACP 时,我们处于这种情况。一些关于网络流量的额外数据会很好,但我相信检索有意义的数字是具有挑战性的。所以最终更容易依靠直觉,只需说:“是的,我们想要 LACP,当然,因为流量。” 或“不,因为它不可靠而且我们不需要它。”
有什么建议?
我打算用它iptables来衡量我的互联网流量(灵感来自 Peter Krumins 的精彩文章http://www.catonmat.net/blog/traffic-accounting-with-iptables)。
用于测量流量的计算机当前将所有 LAN 流量转发到 Internet 和从 Internet 转发出去。
我试图找出所有传输的字节(上传+下载)都被计算在哪个链中。该filter FORWARD链是打开多个网站后唯一一个超过兆字节的链(如图所示17M)。似乎是下载(+ 可能是上传)。
但是下面的观察让我产生了怀疑:
me@computer:~$ sudo iptables -vL -t raw
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
me@computer:~$ sudo iptables -vL -t raw
Chain PREROUTING (policy ACCEPT 34 packets, 2244 bytes)
pkts bytes target …Run Code Online (Sandbox Code Playgroud) 我什至不确定这是否可能......另外,请原谅我对这个主题的无知。
我正在寻找的是“某种东西”,它允许我将所有到达主机 A 的 TCP 流量重定向到主机 B,但基于一些规则。
假设主机 A(中介)从域 X 的主机接收请求(假设一个简单的 HTTP 请求)。在这种情况下,它让它通过并由主机 A 本身处理。
现在,假设主机 A 收到来自域 Y 的主机的另一个 HTTP 请求,但这一次,由于一些可自定义的规则,主机 A 将所有流量重定向到主机 B,主机 B 能够像直接来一样处理它来自域 Y。而且,此时,主机 B 和域 Y 的主机都能够自由通信(当然,认为主机 A)。
注意:所有这些主机都在 Internet 上,而不是在 LAN 内。
如果解释不够清楚,请告诉我。
我通过带有自定义 linux 的 LinkSys 路由器连接。有什么方法可以查看此路由器是否记录我的网络流量、读取标头或其他内容?但是,我无法访问路由器。
我得到了一个 256k 调制解调器,用于为期 2 天的活动,以允许用户访问互联网。将有多个连接(我预计 30+)。我如何设置它以便它可以一次支持那么多连接或者有什么其他方法可以解决这个问题?
TLDR:我如何更深入地挖掘我的 Mac mini OSX 服务器以确定哪些进程消耗了如此多的带宽,或者所有入站流量来自哪里?
资源缓存开启,所有资源都被缩小或图像被粉碎,我们的页面比上个月的网站 (www.vulytrampolines.com) 消耗的带宽更少,我们的分析流量是相同的。
背景故事:我们有 2 台 mac mini 服务器运行我们的网站/登台/数据库等。自从从美国的专用服务器迁移到城市的托管地点后,我们的带宽消耗不知何故增加了四倍。两者之间有一个数据库复制过程设置,以及DNS和各种网站(例如大文件、数据库任务、内网包等在临时服务器上,网站和数据库在生产服务器上)
我们的临时服务器在3 天内有7GB 的入站流量。有谁知道如何检查入站流量来源,以查看 200k 连接处的入站流量的一致流可能来自哪里?我们不知道。我们根本不向它发送文件,唯一应该处于活动状态的是 SSH 和数据库复制过程。[见下文] 显示我们已经建立了大约 20 多个与 625 端口的 close_weight 连接和 30 多个 close_weight 连接。我们还不清楚这是如何发生的。netstat
令人讨厌的是,webstats 显示我们没有使用接近 11.66GB 的 HTTP 流量(它说我们在上个月使用了 22GB,但我们的出站流量记录为超过 100GB)。数据库统计数据表明,我们也没有使用足够的带宽来导致问题。
这是我们的登台服务器 venus1(几个星期以来一直是这样):

这是我们的生产服务器 venus2:

netstat -anp tcpvenus1 上的输出。大部分国外地址来自我们的工作IP地址。11211 是内存缓存。
tcp4 0 0 122.99.117.18.49712 204.93.223.143.80 ESTABLISHED
tcp4 0 0 122.99.117.18.11211 122.99.117.18.49711 ESTABLISHED
tcp4 0 0 122.99.117.18.49711 122.99.117.18.11211 ESTABLISHED
tcp4 0 52 122.99.117.18.22 59.167.152.67.56106 …Run Code Online (Sandbox Code Playgroud) 如果我通过 SSH 连接到服务器,监控网络的人可以看到哪些网络流量?例如,如果我在工作并通过 SSH 连接到服务器,网络管理员可以看到什么?他们是否只看到我连接的 IP 和端口,但所有数据本身都是加密的?如果我连接到一台服务器,然后通过 SSH 从该服务器连接到另一台服务器 - 流量是否可见,或者它看起来像第一台服务器的数据?
我想确保我是否连接到服务器,因为任何外部方都可以看到很少的流量。有什么办法可以隐藏我正在连接的 IP 吗?
更新 服务器 1 和服务器 2 都在我当前所在的网络的外部。这是否会改变我网络上的某个人可以看到从服务器 1 传出的内容?
我正在考虑在本地 Active Directory 域和远程(跨 WAN VPN)Active Directory 域之间建立一种单向信任关系。由于站点之间的带宽是有限的,我需要估计空闲时信任关系会产生多少额外的网络流量(即有多少带宽可以让它们在必要时保持“同步”),以及每个站点之间有多少额外的流量会话(如果有)。我不希望发生任何额外的使用,但我正在尝试简化用户管理。