我在 LXC 容器上运行 openstack,我发现我的 LXC 容器网络非常慢,但从主机来看它非常快
主持人
[root@ostack-infra-01 ~]# time wget http://mirror.cc.columbia.edu/pub/linux/centos/7.5.1804/updates/x86_64/repodata/0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2
--2018-08-04 00:24:09-- http://mirror.cc.columbia.edu/pub/linux/centos/7.5.1804/updates/x86_64/repodata/0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2
Resolving mirror.cc.columbia.edu (mirror.cc.columbia.edu)... 128.59.59.71
Connecting to mirror.cc.columbia.edu (mirror.cc.columbia.edu)|128.59.59.71|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4515677 (4.3M) [application/x-bzip2]
Saving to: ‘0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2’
100%[===========================================================================================================================================>] 4,515,677 23.1MB/s in 0.2s
2018-08-04 00:24:09 (23.1 MB/s) - ‘0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2’ saved [4515677/4515677]
real 0m0.209s
user 0m0.008s
sys 0m0.014s
同一主机上的 LXC 容器
[root@ostack-infra-01 ~]# lxc-attach -n ostack-infra-01_neutron_server_container-fbf14420
[root@ostack-infra-01-neutron-server-container-fbf14420 ~]# time wget http://mirror.cc.columbia.edu/pub/linux/centos/7.5.1804/updates/x86_64/repodata/0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2
--2018-08-04 00:24:32-- http://mirror.cc.columbia.edu/pub/linux/centos/7.5.1804/updates/x86_64/repodata/0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2
Resolving mirror.cc.columbia.edu (mirror.cc.columbia.edu)... 128.59.59.71
Connecting to mirror.cc.columbia.edu (mirror.cc.columbia.edu)|128.59.59.71|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 4515677 (4.3M) [application/x-bzip2]
Saving to: ‘0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2’
100%[===========================================================================================================================================>] 4,515,677 43.4KB/s in 1m 58s
2018-08-04 00:26:31 (37.3 KB/s) - ‘0d7e660988dcc434ec5dec72067655f9b0ef44e6164d3fb85bda2bd1b09534db-primary.sqlite.bz2’ saved [4515677/4515677]
real 1m59.121s
user 0m0.002s
sys 0m0.361s
我没有为网络设置任何限制的任何奇特配置,我有其他主机工作正常且速度最高,您认为这里有什么问题
kernel version Linux ostack-infra-01 3.10.0-862.3.3.el7.x86_64 #1 SMP
CentOS 7.5
答案1
解决方案
主机有以下设置,它导致我的 dmesg 洪水泛滥,并出现大量内核错误堆栈。 (7 - 调试级别)。
[root@lxc ~]# cat /proc/sys/kernel/printk
7 4 1 3
我已将其更改为:
[root@lxc ~]# cat /proc/sys/kernel/printk
3 4 1 3
后来我发现我的iptables --checksum-fill
规则iptables
会生成大量校验和错误,从而导致内核堆栈错误进入dmesg
。