我有服务器处理大量的networking数据包。 我已经看到证据表明CPU0上运行的用户空间进程在networking负载很高时会影响性能。 我很确定这涉及到中断处理,特别是对于networking设备。 因此,我正在尝试改变networking(eth)设备的亲和力,以testing我的假设,看看我能否提高性能。 我明白,为了改变IRQ亲和力,我必须改变/proc/irq/XXX/smp_affinity 。 当我改变该文件中的值时,我只能将中断处理从一个CPU移动到另一个CPU。 例如,在一个4核心系统中,我可以将该值设置为1,2,4或8,并且我看到中断分别从核心0,1,2和3(通过监视/proc/interrupts )移动。 但是,如果我将亲和力值设置为任意核心组合,那么在所有核心中都看不到中断。 他们始终坚持一个核心。 例如, 设置ff :使用CPU0 设置12 :使用CPU4 (因此,似乎只有使用最低指定核心) 我已经停止irqbalance守护进程的情况下,这是影响的事情(虽然我怀疑不是我的理解是, irqbalance会改变smp_affinity文件的值,我不明白这一点)。 我的问题是: 我如何在内核之间平衡中断? 这样做甚至有可能吗? NB我已经在2台机器上试了这个:在VBox中运行的2个虚拟机,2个内核,eth设备使用IO-APIC ; 具有4个内核(8个超线程)和使用PCI-MSI eth设备的Ubuntu真机。 作为一个奖励问题: 是否有可能平衡PCI中断? 从我所了解的情况来看, IO-APIC中断肯定是可能的。
我有一些连接有串行设备的系统; 当这些系统启动时,串行设备可能正在发送数据,所以GRUB看到这个,假设它是一个pipe理启动过程的请求,并且位于“select内核”菜单,直到有人手动连接到服务器并继续启动过程。 这显然不是最佳的。 我怎么能告诉GRUB在启动过程中忽略这个串口? 我目前有这在我的/boot/grub/menu.lst(作为摘录): serial –unit=1 –speed=115200 –word=8 –parity=no –stop=1 #terminal –timeout=5 serial console default=0 timeout=5 password –md5 <redacted> hiddenmenu title CentOS (2.6.32-642.3.31.el6.x86_64) root (hd0,0) kernel /vmlinuz-2.6.32-642.3.1.el6.x86_64 ro root=UUID=<blah> rd_NO_LUKS KEYBOARD_TYPE=pc KEYTABLE=us LANG=en_US.UTF-8 rd_NO_MD nodmraid SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_NO_LVM rd_NO_DM quiet console=tty0 memmap=4128M$4096M initrd /initramfs-2.6.32-642.3.1.el6.x86_64.img 我刚才添加了前两行,但是没有改变行为(即使第二行没有被注释掉)。 是否有可能阻止串行设备“挂起”启动过程,而不将超时设置为0? 额外的细节 使用terminal serial工作,但根本不显示grub菜单,这样可以防止我们在需要单个用户的情况下能够中断引导顺序。 使用terminal serial –timeout显示菜单,但挂起等待input。 使用terminal serial […]
安装程序/问题 假设公共Internet上的服务器的IP为185.48.117.176其中/proc/sys/net/ipv4/ip_forward=1且没有iptable-rules。 什么防止攻击者是 直接或 间接(通过另一台路由器) 连接到互联网从我的服务器作为她的路由器? (我知道,没有适当的伪装设置它的无用,因为这些回收不会被路由回来,但是它仍然可以被用于UDP泛滥攻击,其中不应该有响应包。 我试过的: 我试图添加一个路由(在我的客户端/攻击者机器上) route add 0.0.0.0 gw 185.48.117.176 在我添加了“假接口ip” ip address add dev wlan0 scope link 185.48.117.176 防止SIOCADDRT: Network is unreachable错误消息。 然后,我删除了“假接口IP”,所以路线停留。 但是,我仍然无法使用服务器作为路由,因为没有包到达那里(我试图捕获ICMP包使用tcpdump)。 在docker问题上的这篇文章中 ,似乎与networking是否支持第2层交换有关。 为什么是这样? 我错过了什么?
我想导出我的glusterfs卷与选项server.root-squash启用,以便客户端(我无法控制)不能在卷上作为根执行操作。 然而,作为pipe理员,我仍然希望能够以root身份(至less从服务器)访问文件,以便我可以更改权限并运行rsync。 使用NFS,如果我启用了root-squash,我仍然可以login到服务器并以root身份执行操作。 我怎样才能获得与gluster相同的结果?
我仍然是储存世界的新手。 我正在开发一个将我们的备份从Solaris迁移到Linux的项目。 作为其中的一部分,我已经将一台服务器重build为Linux(RHEL7),并且从2个Xyratex机架(24 + 6)中有两个根磁盘(每个300GB)和30个磁盘(每个3TB)。 其中一个Xyratex机架(带有24个磁盘的机架)configuration了多path。 而Linux内核通过每个path检测到每个共享驱动器一次, fdisk -l输出列出102个3TB磁盘(而不是实际的30个)。 $ fdisk -l | grep '3000.6 GB' | wc -l 102 其中有: 48是多path设备。 $ fdisk -l | grep '/dev/mapper/mpath*' | grep -v '3000.6' | wc -l 48 例如一个条目是: Disk /dev/mapper/mpathb: 3000.6 GB, 3000592982016 bytes, 5860533168 sectors 30个是实际的磁盘(24 + 6): Disk /dev/sdaa: 3000.6 GB, 3000592982016 bytes, 5860533168 […]
我最近发现我们的一台生产服务器(运行RHEL7)没有镜像的根磁盘。 所以,我们考虑使用mdraid镜像根磁盘的其中一个备用磁盘(有一些垃圾数据)。 我想这样做,而不会打扰服务器上的任何东西,因为它正在生产。 我正在检查如何使用mdraid来做到这一点,但找不到有用的东西。 有人可以让我知道如何使用mdraid与RAID 1镜像现有的根磁盘? 提前致谢。 -内存
如果我有两个或更多的networking接口,从虚拟和现实,因为它可以设置iptables规则影响所有这些接口? 例如:我有四个接口, eth0 , eth0:0 , eth1和loopback ,我想设置下面的规则: iptables -A INPUT -i eth0 -p tcp –dport 80 -j ACCEPT 这个规则将如何应用它接口eth0 , eth0:0 , eth1而不是在loopback应用它? 如果该规则适用于eth0也适用于eth0:0 。
我想使用下面的命令来允许使用libpcap软件包,而不用sudo(在debian系统上): sudo setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' /usr/bin/nodejs 我得到这个错误: Failed to set capabilities on file `/usr/bin/nodejs' (Invalid argument) The value of the capability argument is not permitted for a file. Or the file is not a regular (non-symlink) file 但是/usr/bin/nodejs不是符号链接: -rwxr-xr-x 1 root root 18M Jun 3 03:20 /usr/bin/nodejs USER@HOST:~$ which nodejs /usr/bin/nodejs 我的驱动器是这样安装的: USER@HOST:~$ cat /etc/fstab […]
SuperMicro MBD-X9DRD-EF主板上有服务器。 在一年的时间内,它在CentOS7上运行良好,一个CPU(Intel Xeon X6 E5-2620v2)和128 Gb(8×16 Gb)LVDDR(1600MHz Crucial ECC Reg RTL(PC3-12800))内存。 上个月,我们通过添加第二个CPU和额外的128 Gb内存来升级这个服务器,与现有的内存完全相同。 但是,在密集使用服务器(3-4天)之后,我们开始接收(经常)这样的错误: [root@GBserver log]# dmesg [614781.869098] EDAC sbridge MC1: HANDLING MCE MEMORY ERROR [614781.869104] EDAC sbridge MC1: CPU 6: Machine Check Event: 0 Bank 7: 8c00004000010090 [614781.869106] EDAC sbridge MC1: TSC 0 [614781.869108] EDAC sbridge MC1: ADDR 38126a6c40 [614781.869110] EDAC sbridge MC1: […]
我已经在hyper-V中configuration了CentOS-6.0 VM。 configuration多个IP并绑定到相同的networking适配器。 下面是创build的接口。 ifcfg-eth0 – 10.225.180.96 ifcfg-eth0:1 – 10.225.180.97 ifcfg-eth0:2 … … ifcfg-eth0:9 现在,我无法ping通或telnet到这些私有IP的内部任何端口(10.225.180.96,10.225.180.97 …)。 看到下面的图片。没有configurationiptable规则。 不知道或没有日志。 问题是什么… Telnet不响应