堆栈溢出职业是这样的: user -> internet -> our fw -> nginx -> haproxy -> web farm FreeBSD是正在使用的操作系统 此框上没有防火墙或QoS nginx处理我们的SSL终止 haproxy处理负载平衡 nginx / haproxy每种方式都推动大约15 Mbps 在正常的操作过程中,nginx收到HTTP请求,完成它的工作,然后将请求转交给绑定到同一个盒子上的环回地址(127.0.0.1)的haproxy实例。 为了进行一些故障排除,我把haproxy实例移到了nginx运行的同一个接口上。 这会立即为所有请求增加100毫秒的延迟。 这个接口不是一个真正的物理接口,而是一个鲤鱼接口 。 任何人都可以向我解释为什么这是事实吗? 与包队列争用也许? 或者也许loopback总是更快,因为它是“软”? 我在这里错过了一些基本的东西,我希望有人会好好教育我。
在几乎每个FreeBSDnetworking调优文档中,我都可以find: # /boot/loader.conf net.inet.tcp.tcbhashsize=4096 这通常与一些无用的语句,如“TCP控制块散列表调整”或“将其设置为合理的值”配对。 man 4 tcp也没有太大的帮助: tcbhashsize Size of the TCP control-block hash table (read-only). This may be tuned using the kernel option TCBHASHSIZE or by setting net.inet.tcp.tcbhashsize in the loader(8). 我能find的唯一一个涉及这个神秘事物的文档是传输层下优化FreeBSD IP和TCP堆栈中的协议控制块查找小节,但其描述更多地是关于使用它的潜在瓶颈。 它似乎绑定到匹配新的TCP段到他们的侦听套接字,但我不知道如何。 什么是TCP控制块用于? 你为什么要设置其散列大小为4096或任何其他特定的数字?
我正在构build一个日志分析器服务,以开始主要监视我们的pfSense防火墙,XenServer虚拟机pipe理程序,FreeBSD / Linux服务器和Windows服务器。 互联网上有很多关于ELK堆栈的文档,以及如何使它工作得很好。 但我想以不同的方式使用它,但我不知道这是一个好的解决scheme还是浪费时间/磁盘空间。 我已经拥有了一台充当远程系统日志服务器的FreeBSD 10.2机器,我的理念是简单地将所有的日志集中在这台机器上,而系统日志服务器将logstash-forwarder的日志logstash-forwarder给ELK服务器。 我很清楚,这种方法会提高这个设置的磁盘需求,但另一方面,我只有一台机器安装了logstash-forwarder守护进程,这对我来说似乎很好。 但是谈论问题。 logstashparsing器将[host]与发送日志消息的服务器的主机名相匹配,并且在这种方法中,仅在ELK上的“server”show上显示远程syslog服务器。 我知道我可以自定义logstashconfiguration文件的设置,但我不知道(而且我没有经验知道),如果这只是一个简单的parsing器设置,如果将危及整个ELK的经验。 最后,我只是想了解一些关于我的日志架构的build议,以及它是否可行,或者如果我没有其他的select。 提前致谢,
从Solaris 10 ZFS v22复制到FreeBSD 8.3 ZFS v28是否安全? 有没有人使用ZFS的特定版本来完成这个工作?
我是BSD的新手。 我用最less的configuration安装了FreeBSD,所以没有安装软件包。 我试过pkg_add -r emacs ,该命令尝试安装许多X11相关的软件包(不确定,但看起来像)。 BSD端口网站上有这么多的端口,所以我很困惑什么适合我。 我正在寻找一个命令行界面的轻量级Emac。 我试图使用命令行唯一的环境。 所以GUI不是一个选项。
我最近购买了一台运行m0n0wall或者pfSense的服务器,但是从那以后我就知道这两款防火墙产品都是基于FreeBSD的版本,而这些版本在我的新服务器上还不兼容。 我购买的SuperMicro服务器具有双Intel 82574L千兆网卡,我想find一种方法来安装某种types的防火墙,通过使用GUI来简化防火墙pipe理。 我知道我可以简单地使用pf,但是因为我们想要一个GUI前端,我们有什么select? 我是否需要返回此服务器,并find销售较旧硬件的供应商,这些硬件是兼容的,还是可以使此硬件以某种方式工作?
我想用freebsd 9和zfsbuild立一个服务器。 我有一些旧的硬件(8 GB的RAM四核英特尔)躺在周围,我愿意购买两个或三个1 TB磁盘。 我也有一个dlink RAID服务器,里面有两个1TB的磁盘,我可能会停止使用,所以一旦我移动了它们的数据,这两个硬盘就可以在zfs服务器上使用了(目前约300MB在RAID 1)到新的服务器。 所以在开始的时候给我2到3个磁盘,一旦我成功地设置了zfs服务器并复制了数据,就可以移动到4或5个磁盘。 我的问题是如何最好地设置zfs池,以便我拥有最大的冗余和存储空间,在未来可以移动到2个或3个或更大的驱动器时可以使用。 所以我不在乎速度那么多,我猜测我的以太网(即使在1gb / s)将成为系统速度的决定性因素。 我目前的想法是购买2个新磁盘,使用条纹模式进行设置。 一旦我复制了我的dlink NAS中的所有数据,我将删除其中的一个驱动器,并将其添加到池中,使其成为新驱动器之一的镜像。 一旦arrays被重build,我会把另一个驱动器移到池中,这样它就映射到第二个新驱动器……在完成所有工作之后,我应该有相当于RAID 10的“条纹镜像”。 这是可能的,还是有更好的方式来设置呢? 同样,我的重点是最大冗余,维护(用较新/较大的驱动器交换旧驱动器,增加我的总池空间),可用存储空间和速度; 以该顺序。
freebsd-update命令在下载后打印更新条目。 但它more显示了他们。 所以我必须按一些空格才能继续。 有没有办法避免这种行为? 我想执行更新完全自动化的方式。
安装后有没有办法删除端口的构build依赖关系? 许多港口使用异国情调的工具来build造,这些工具不再用于港口build设和安装。
我想build立一个服务器(运行Debian或FreeBSD),通过sshfs从不同的客户端接收备份。 每个客户端应该能够读取和写入自己的备份数据,但不能读取任何其他客户端的数据。 我有以下想法:每个客户端通过公钥validation连接到[email protected]。 用户备份有一个特殊的authorized_keys文件,如下所示: command="internal-sftp" chroot="/backup/client-1/data" ssh-rsa (key1) command="internal-sftp" chroot="/backup/client-2/data" ssh-rsa (key2) command="internal-sftp" chroot="/backup/client-3/data" ssh-rsa (key3) etc… 这样做的好处是我不需要为每个客户端使用一个单独的用户,我可以很容易地用脚本自动生成authorized_keys文件。 只有一个问题: chroot=…不起作用。 OpenSSH的authorized_keys文件似乎没有ChrootDirectory(可在全局或匹配用户块中的/ etc / ssh / sshd_config中工作)的等效项。 有一个相当简单的方法来完成我想要使用OpenSSH? 也许用巧妙的方式使用command=…指令? 另外,还有其他的SFTP服务器可以做我想要的吗? 编辑 :为了更清楚我想实现什么:我想要几个客户端能够存储在我的服务器上的文件。 每个客户端都不应该能够看到其他客户端的文件。 而且我不想用几十个用户帐户来清理我的服务器,所以我想要一个易于pipe理的解决scheme,让客户共享一个用户帐户,并且仍然无法访问彼此的文件。