Kubernetes: يتوقف وضع kube-proxy ipvs بعد بضع ساعات ، ويحتاج إلى إعادة تشغيل يدوي

تم إنشاؤها على ١٥ نوفمبر ٢٠١٨  ·  142تعليقات  ·  مصدر: kubernetes/kubernetes

الرجاء استخدام هذا النموذج أثناء الإبلاغ عن خطأ وتقديم أكبر قدر ممكن من المعلومات. قد يؤدي عدم القيام بذلك إلى عدم معالجة الخطأ الخاص بك في الوقت المناسب. شكر!

ما حدث : تمت الترقية من الإصدار 1.11.0 إلى الإصدار 1.12.2 ، والآن يتوقف kube-proxy ، عادةً في أقل من يوم

ما توقعت حدوثه : يجب أن يستمر في العمل

كيفية إعادة إنتاجه (بأدنى حد ممكن وبدقة قدر الإمكان) : ما عليك سوى تشغيل وكيل kube عادي في وضع ipvs. تتعطل عادة في أقل من يوم.

أي شيء آخر نحن بحاجة إلى معرفته؟ :

لقد أرسلت SIGABRT إلى عملية kube-proxy للحصول على تتبع المكدس ، والشيء الوحيد المثير للاهتمام هو أنه عندما يحدث الخطأ ، فإن goroutine 1 يقرأ من netlink ، بينما عندما أرسل SIGABRT والعملية ليست عالقة ، فإنها لا تقرأ من netlink.

Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: goroutine 1 [syscall]:
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: syscall.Syscall6(0x2d, 0x3, 0xc42081c000, 0x1000, 0x0, 0xc42083deb0, 0xc42083dea4, 0x40fb86, 0x7f2ab9788aa8, 0x0)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /usr/local/go/src/syscall/asm_linux_amd64.s:44 +0x5
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: syscall.recvfrom(0x3, 0xc42081c000, 0x1000, 0x1000, 0x0, 0xc42083deb0, 0xc42083dea4, 0x101ffffffffffff, 0x0, 0x1000)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /usr/local/go/src/syscall/zsyscall_linux_amd64.go:1665 +0xa6
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: syscall.Recvfrom(0x3, 0xc42081c000, 0x1000, 0x1000, 0x0, 0x1000, 0x0, 0x0, 0x16ad4c0, 0x1f4d508)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /usr/local/go/src/syscall/syscall_unix.go:252 +0xaf
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/vishvananda/netlink/nl.(*NetlinkSocket).Receive(0xc4204d3440, 0x0, 0x0, 0x0, 0x16ad4c0, 0x1f4d508)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/vishvananda/netlink/nl/nl_linux.go:613 +0x9b
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs.execute(0xc4204d3440, 0xc42083e150, 0x0, 0x1, 0x2, 0xc420423740, 0x1, 0x2)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs/netlink.go:219 +0xd3
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs.(*Handle).doCmdwithResponse(0xc420573990, 0xc420990750, 0x0, 0xc42003d501, 0xa, 0x10, 0xc420990701, 0xc42083e230, 0x118dd6b)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs/netlink.go:140 +0x20b
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs.(*Handle).doCmd(0xc420573990, 0xc420990750, 0x0, 0x1, 0x60000020fc6e0, 0xc420990750)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs/netlink.go:149 +0x48
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs.(*Handle).NewService(0xc420573990, 0xc420990750, 0x0, 0x0)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/docker/libnetwork/ipvs/ipvs.go:117 +0x43
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/util/ipvs.(*runner).AddVirtualServer(0xc42052a340, 0xc420b0e550, 0x1e, 0xc42083e3b8)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/util/ipvs/ipvs_linux.go:61 +0x60
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/proxy/ipvs.(*Proxier).syncService(0xc4201b3e00, 0xc420d53620, 0x21, 0xc420b0e550, 0xc420357901, 0x5, 0xc420d53620)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/proxy/ipvs/proxier.go:1454 +0x635
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/proxy/ipvs.(*Proxier).syncProxyRules(0xc4201b3e00)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/proxy/ipvs/proxier.go:803 +0x1081
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/proxy/ipvs.(*Proxier).(k8s.io/kubernetes/pkg/proxy/ipvs.syncProxyRules)-fm()
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/proxy/ipvs/proxier.go:395 +0x2a
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/util/async.(*BoundedFrequencyRunner).tryRun(0xc42042e3f0)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/util/async/bounded_frequency_runner.go:217 +0xb6
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/util/async.(*BoundedFrequencyRunner).Loop(0xc42042e3f0, 0xc4200b0120)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/util/async/bounded_frequency_runner.go:179 +0x211
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/pkg/proxy/ipvs.(*Proxier).SyncLoop(0xc4201b3e00)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/pkg/proxy/ipvs/proxier.go:589 +0x4e
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/cmd/kube-proxy/app.(*ProxyServer).Run(0xc4207f2000, 0xc4207f2000, 0x0)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/cmd/kube-proxy/app/server.go:568 +0x3dd
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/cmd/kube-proxy/app.(*Options).Run(0xc4201082c0, 0xc42063e230, 0x0)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/cmd/kube-proxy/app/server.go:238 +0x69
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/cmd/kube-proxy/app.NewProxyCommand.func1(0xc4200f2500, 0xc42063e230, 0x0, 0x7)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/cmd/kube-proxy/app/server.go:360 +0x156
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/spf13/cobra.(*Command).execute(0xc4200f2500, 0xc4200c4010, 0x7, 0x7, 0xc4200f2500, 0xc4200c4010)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/spf13/cobra/command.go:760 +0x2c1
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/spf13/cobra.(*Command).ExecuteC(0xc4200f2500, 0xc4205dc090, 0x16076a0, 0xc4207a7ee8)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/spf13/cobra/command.go:846 +0x30a
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: k8s.io/kubernetes/vendor/github.com/spf13/cobra.(*Command).Execute(0xc4200f2500, 0x1608b88, 0x20dcf40)
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]:         /workspace/anago-v1.12.2-beta.0.59+17c77c78982180/src/k8s.io/kubernetes/_output/dockerized/go/src/k8s.io/kubernetes/vendor/github.com/spf13/cobra/command.go:794 +0x2b
Nov 15 11:42:05 hex-48b-pm kube-proxy[5389]: main.main()

الأسطر الأخيرة التي تم تسجيلها كانت:

Nov 15 07:48:52 hex-48b-pm kube-proxy[5389]: I1115 07:48:52.392942    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.241:4059/TCP/10.125.2.26:4059
Nov 15 07:48:52 hex-48b-pm kube-proxy[5389]: I1115 07:48:52.392952    5389 graceful_termination.go:160] Trying to delete rs: 10.128.32.132:5432/TCP/10.125.2.13:6432
Nov 15 07:48:52 hex-48b-pm kube-proxy[5389]: E1115 07:48:52.392978    5389 graceful_termination.go:89] Try delete rs "10.128.32.132:5432/TCP/10.125.2.13:6432" err: Failed to delete rs "10.128.32.132:5432/TCP/10.125.2.13:6432", can't 
find the real server
Nov 15 07:48:52 hex-48b-pm kube-proxy[5389]: I1115 07:48:52.392985    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.32.132:5432/TCP/10.125.2.13:6432
Nov 15 07:48:52 hex-48b-pm kube-proxy[5389]: E1115 07:48:52.392992    5389 graceful_termination.go:183] Try flush graceful termination list err
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393147    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.156:8125/TCP/10.125.2.21:8125
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393260    5389 graceful_termination.go:89] Try delete rs "10.128.33.156:8125/TCP/10.125.2.21:8125" err: Failed to delete rs "10.128.33.156:8125/TCP/10.125.2.21:8125", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393272    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.156:8125/TCP/10.125.2.21:8125
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393281    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.142:6379/TCP/10.125.6.13:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393310    5389 graceful_termination.go:89] Try delete rs "10.128.33.142:6379/TCP/10.125.6.13:6379" err: Failed to delete rs "10.128.33.142:6379/TCP/10.125.6.13:6379", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393317    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.142:6379/TCP/10.125.6.13:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393327    5389 graceful_termination.go:160] Trying to delete rs: 10.128.34.237:6379/TCP/10.125.6.11:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393355    5389 graceful_termination.go:89] Try delete rs "10.128.34.237:6379/TCP/10.125.6.11:6379" err: Failed to delete rs "10.128.34.237:6379/TCP/10.125.6.11:6379", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393362    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.34.237:6379/TCP/10.125.6.11:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393371    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.200:5432/TCP/10.125.6.27:6432
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393397    5389 graceful_termination.go:89] Try delete rs "10.128.33.200:5432/TCP/10.125.6.27:6432" err: Failed to delete rs "10.128.33.200:5432/TCP/10.125.6.27:6432", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393404    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.200:5432/TCP/10.125.6.27:6432
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393412    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.228:6379/TCP/10.125.2.63:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393440    5389 graceful_termination.go:89] Try delete rs "10.128.33.228:6379/TCP/10.125.2.63:6379" err: Failed to delete rs "10.128.33.228:6379/TCP/10.125.2.63:6379", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393447    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.228:6379/TCP/10.125.2.63:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393455    5389 graceful_termination.go:160] Trying to delete rs: 10.128.34.247:5672/TCP/10.125.2.6:5672
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393482    5389 graceful_termination.go:89] Try delete rs "10.128.34.247:5672/TCP/10.125.2.6:5672" err: Failed to delete rs "10.128.34.247:5672/TCP/10.125.2.6:5672", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393489    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.34.247:5672/TCP/10.125.2.6:5672
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393497    5389 graceful_termination.go:160] Trying to delete rs: 10.128.35.47:4007/TCP/10.125.2.15:4007
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393523    5389 graceful_termination.go:89] Try delete rs "10.128.35.47:4007/TCP/10.125.2.15:4007" err: Failed to delete rs "10.128.35.47:4007/TCP/10.125.2.15:4007", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393530    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.35.47:4007/TCP/10.125.2.15:4007
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393538    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.241:4059/TCP/10.125.2.26:4059
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393563    5389 graceful_termination.go:89] Try delete rs "10.128.33.241:4059/TCP/10.125.2.26:4059" err: Failed to delete rs "10.128.33.241:4059/TCP/10.125.2.26:4059", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393571    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.241:4059/TCP/10.125.2.26:4059
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393578    5389 graceful_termination.go:160] Trying to delete rs: 10.128.32.132:5432/TCP/10.125.2.13:6432
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393605    5389 graceful_termination.go:89] Try delete rs "10.128.32.132:5432/TCP/10.125.2.13:6432" err: Failed to delete rs "10.128.32.132:5432/TCP/10.125.2.13:6432", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393613    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.32.132:5432/TCP/10.125.2.13:6432
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393621    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.252:6379/TCP/10.125.6.26:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393648    5389 graceful_termination.go:89] Try delete rs "10.128.33.252:6379/TCP/10.125.6.26:6379" err: Failed to delete rs "10.128.33.252:6379/TCP/10.125.6.26:6379", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393656    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.252:6379/TCP/10.125.6.26:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393664    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.237:6379/TCP/10.125.6.34:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393690    5389 graceful_termination.go:89] Try delete rs "10.128.33.237:6379/TCP/10.125.6.34:6379" err: Failed to delete rs "10.128.33.237:6379/TCP/10.125.6.34:6379", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393697    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.237:6379/TCP/10.125.6.34:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393704    5389 graceful_termination.go:183] Try flush graceful termination list err
Nov 15 07:50:52 hex-48b-pm kube-proxy[5389]: I1115 07:50:52.393838    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.156:8125/TCP/10.125.2.21:8125
Nov 15 07:50:52 hex-48b-pm kube-proxy[5389]: E1115 07:50:52.393940    5389 graceful_termination.go:89] Try delete rs "10.128.33.156:8125/TCP/10.125.2.21:8125" err: device or resource busy
Nov 15 07:50:52 hex-48b-pm kube-proxy[5389]: I1115 07:50:52.393957    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.142:6379/TCP/10.125.6.13:6379
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420734    5389 proxier.go:1496] Failed to list IPVS destinations, error: invalid argument
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420763    5389 proxier.go:809] Failed to sync endpoint for service: 10.128.33.156:8125/TCP, err: invalid argument
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420889    5389 proxier.go:1485] Failed to get IPVS service, error: Expected only one service obtained=0
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420903    5389 proxier.go:809] Failed to sync endpoint for service: 10.128.35.150:6379/TCP, err: Expected only one service obtained=0
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420950    5389 proxier.go:1455] Failed to add IPVS service "monitoring/extradata-inserter:": file exists
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420961    5389 proxier.go:812] Failed to sync service: 10.128.34.54:80/TCP, err: file exists
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.421886    5389 proxier.go:1544] Failed to add destination: 10.125.27.66:80, error: file exists

إذا قمت بإعادة تشغيل kube-proxy (يدويًا ، لاف) ، فسيتم استعادة كل شيء ويعمل بشكل جيد. لكنها ستتعثر مرة أخرى في النهاية.

البيئة :

  • إصدار Kubernetes (استخدم kubectl version ): v1.12.2
  • مزود السحابة أو تكوين الأجهزة: المعدن العاري ، نظام لينكس 64 بت
  • نظام التشغيل (على سبيل المثال من / etc / os-release): Ubuntu 16.04.5 LTS
  • Kernel (على سبيل المثال uname -a ): 4.15.0-39 عام (ولكن احصل عليه أيضًا على النواة الأصلية 4.4)
  • أدوات التثبيت: ثنائي من https://storage.googleapis.com/kubernetes-release/release/v1.12.2/kubernetes-server-linux-amd64.tar.gz
  • الآخرين:


/ نوع الخطأ

areipvs kinbug sinetwork triagunresolved

التعليق الأكثر فائدة

تم دمج PR في جميع فروع الإصدار ، لذلك سيكون موجودًا في:

  • 1.11.7
  • 1.12.5
  • 1.13.2

ال 142 كومينتر

/ شبكة سيج

نفس الخطأ. الترقية من 1.11.1. كل شيء يصبح جيدًا باستثناء kube-proxy الذي يصبح غير مستقر ، وبعض الوقت لا يستطيع pod الوصول إلى svc على الرغم من أن نقاط النهاية الخاصة بهم جيدة .. ونفس دقة الاسم. لذلك أعتقد أنه قد يكون هناك خطأ مهم هنا.

/ ipvs المنطقة

gjcarneiro هل تحل هذه المشكلة؟

حسنًا ، لقد قمت بإعادة الكتلة إلى الوضع الافتراضي (iptables) ، ويبدو أنها مستقرة جدًا منذ ذلك الحين ...

@ kubernetes / sig-network-bugs

berlinsaint : تكرار الإشارات لتشغيل إشعار:
@ kubernetes / sig-network-bugs

ردًا على هذا :

@ kubernetes / sig-network-bugs

تعليمات للتفاعل معي باستخدام تعليقات العلاقات العامة متوفرة هنا . إذا كانت لديك أسئلة أو اقتراحات تتعلق بسلوكي ، فالرجاء رفع قضية ضد

نفس المشكلة ، كل من 1.12.2 و 1.13.0-beta1. @ m1093782566 @ Lion-Wei

gjcarneiro هل تقصد أنه في kernel 4.15 ، لديه نفس المشكلة؟

تضمين التغريدة

نفس المشكلة ، كلاهما 1.12.2 و 1.13.0-beta1. @ m1093782566 @ Lion-Wei

كم هو صندوق البريد الخاص بك ، تعرف عليه. .طفولي

تضمين التغريدة

نفس المشكلة ، كلاهما 1.12.2 و 1.13.0-beta1. @ m1093782566 @ Lion-Wei

كم هو صندوق البريد الخاص بك ، تعرف عليه. .طفولي

اضغط على الصورة الرمزية الخاصة بي لرؤية

أرى هذا أيضًا بشكل متكرر في نظام التسجيل المركزي الخاص بي:

  | Time | sys_name | log_lvl | tag | log_msg
  | November 27th 2018, 17:56:23.501 | k8lab2bs | 6 | kube.kube-system.kube-proxy | lw: remote out of the list: 10.12.12.1:443/TCP/10.12.100.133:6443
  | November 27th 2018, 17:56:23.500 | k8lab2bs | 6 | kube.kube-system.kube-proxy | Deleting rs: 10.12.12.1:443/TCP/10.12.100.133:6443
  | November 27th 2018, 17:56:23.497 | k8lab2bs | 6 | kube.kube-system.kube-proxy | Trying to delete rs: 10.12.12.1:443/TCP/10.12.100.133:6443

أنا أقوم بتشغيل الإصدار 1.12.3 (تثبيت جديد ، وليس ترقية).

تحية للجميع. شكرًا على التقرير ، سأجري بحثًا وسأحاول معرفة ما حدث ، وأي تقدم سأبلغه هنا.

إلى جانب ما حدث ، وهو أمر جيد اكتشافه ، لا أشعر بالثقة بشأن IPVS حتى يكون هناك رمز في مكان يكتشف ويعيد تعيين مقبس netlink المعطل. لأنه من خلال ما يمكنني تخمينه من السجلات والتتبعات ، فإن مقبس netlink يدخل في حالة معطلة وأن المهمة التي تقرأ / تكتب من / إليه ستتوقف إلى الأبد. أعتقد أن kube-proxy يحتاج إلى رمز يكتشف هذه المشكلة ، وإذا حدث ذلك ، فقم بإنشاء مقبس netlink جديد من البداية ، وربما إعادة تشغيل المهمة التي تتعامل معها. لكن ، لا ، أنا لا أتطوع ، لا أعرف حتى Go ، آسف.

لأنه من خلال ما يمكنني تخمينه من السجلات والتتبعات ، فإن مقبس netlink يدخل في حالة معطلة وأن المهمة التي تقرأ / تكتب من / إليه ستتوقف إلى الأبد.

لقد قمنا بترقية إصدار go netlink منذ بضعة أيام لدعم الإنهاء الجيد. كانت مكتبة netlink تعمل بشكل مستقر من قبل. لست متأكدًا مما إذا كان هذا هو السبب.

1.12.3 مع نفس الخطأ.
بعد تصفية سجل المعلومات ،
تنفيذ kubectl -n kube-system logs kube-proxy-29zh8|egrep ^E; kubectl -n kube-system logs kube-proxy-2pqdn|egrep ^E; kubectl -n kube-system logs kube-proxy-4xw8q|egrep ^E; kubectl -n kube-system logs kube-proxy-6j4bc|egrep ^E; kubectl -n kube-system logs kube-proxy-brbjb|egrep ^E; kubectl -n kube-system logs kube-proxy-r6cg2|egrep ^E; kubectl -n kube-system logs kube-proxy-rpl6t|egrep ^E;
وكل سجل عقدة الوكيل هو

bash E1129 01:01:10.862180 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 21:09:11.422553 1 proxier.go:1485] Failed to get IPVS service, error: Expected only one service obtained=0 E1129 21:09:11.422699 1 proxier.go:1116] Failed to sync endpoint for service: 172.17.0.1:31800/TCP, err: Expected only one service obtained=0 E1129 01:01:11.618125 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 01:01:11.905626 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:01:41.771596 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:02:11.923872 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:02:42.060658 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:03:12.326762 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:03:42.718417 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:04:12.859933 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:04:42.963527 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:05:13.078486 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:05:43.185141 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:06:13.303090 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:06:43.408582 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:07:13.550358 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:07:43.686235 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:08:13.786326 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:08:43.981764 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:09:14.188053 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:09:44.316316 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:10:14.440466 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:10:44.550092 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:11:14.658190 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:11:44.765396 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:12:14.975724 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:12:45.085632 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:13:15.317679 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:13:45.432469 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:14:15.689681 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:14:45.813565 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:15:33.434931 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:16:03.578017 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:16:33.709744 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:17:03.823325 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:17:33.935191 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:18:04.053183 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:18:34.248994 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:19:04.375946 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:19:34.552779 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:19:36.596182 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:19:47.433846 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:20:17.534206 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:20:47.682350 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:21:17.825175 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:21:47.942548 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:22:18.055820 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:22:48.149494 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:23:18.564985 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:23:48.678462 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:24:18.836217 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:24:48.991344 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:25:19.091032 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:25:49.187178 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:26:19.301770 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:26:49.425812 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:27:19.606711 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:27:49.721224 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:28:20.109117 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:28:50.211574 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:29:20.405007 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:29:50.507766 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:30:20.605471 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:30:50.702798 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:31:20.807400 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:31:50.903049 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:32:21.005618 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:32:51.106378 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:33:21.224447 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:33:51.354916 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:34:21.467898 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:34:51.583216 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:35:21.691099 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:35:51.797151 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:36:21.921057 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:36:52.083821 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:37:02.445737 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:37:07.427811 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:37:37.546362 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:38:07.651769 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:38:37.797858 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:39:08.064112 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:39:38.181089 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:40:08.282892 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:40:38.390167 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:41:08.508549 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:41:38.617921 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:42:08.728384 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:42:38.844074 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:43:08.973517 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:43:39.092095 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:44:09.202329 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:44:39.363721 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:45:09.476240 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:45:39.764944 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:46:09.894587 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:46:40.013388 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:47:10.127894 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:47:40.236119 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:48:10.397111 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:48:40.600084 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:49:10.877034 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:49:41.023593 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:50:11.149894 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:50:41.262320 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:51:11.410407 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:51:41.547057 1 proxier.go:1622] Failed to unbind service addr fe80::1c5d:70ff:fef2:e97b from dummy interface kube-ipvs0: error unbind address: fe80::1c5d:70ff:fef2:e97b from interface: kube-ipvs0, err: cannot assign requested address E1129 01:52:11.609974 1 proxier.go:1544] Failed to add destination: 172.31.200.9:443, error: file exists E1129 01:52:11.610088 1 graceful_termination.go:89] Try delete rs "10.96.0.1:443/TCP/172.31.10.38:6443" err: invalid argument E1129 01:52:11.616690 1 proxier.go:1485] Failed to get IPVS service, error: Expected only one service obtained=0 E1129 01:52:11.616767 1 proxier.go:1116] Failed to sync endpoint for service: 172.18.0.1:31645/TCP, err: Expected only one service obtained=0 E1129 01:01:12.181112 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 01:01:22.278474 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 01:01:21.459378 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 01:01:17.442316 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 20:10:17.955872 1 proxier.go:1455] Failed to add IPVS service "dev-fffrf/mysql-testportal:mysql": file exists E1129 20:10:17.955863 1 graceful_termination.go:89] Try delete rs "10.100.217.68:15004/TCP/192.100.143.225:15004" err: Failed to delete rs "10.100.217.68:15004/TCP/192.100.143.225:15004", can't find the real server E1129 20:10:17.955892 1 proxier.go:1119] Failed to sync service: 172.17.0.1:31645/TCP, err: file exists E1129 20:10:17.956412 1 proxier.go:1485] Failed to get IPVS service, error: invalid argument E1129 20:10:17.956417 1 graceful_termination.go:89] Try delete rs "10.96.0.1:443/TCP/172.31.10.38:6443" err: Failed to delete rs "10.96.0.1:443/TCP/172.31.10.38:6443", can't find the real server E1129 20:10:17.956426 1 proxier.go:1116] Failed to sync endpoint for service: 172.31.200.67:31645/TCP, err: invalid argument E1129 20:10:17.956448 1 graceful_termination.go:89] Try delete rs "10.101.1.98:5672/TCP/192.100.29.180:5672" err: invalid argument E1129 20:10:17.956547 1 graceful_termination.go:183] Try flush graceful termination list err E1129 01:01:17.484679 1 proxier.go:430] Failed to execute iptables-restore for nat: exit status 1 (iptables-restore: line 7 failed E1129 02:52:17.498135 1 graceful_termination.go:89] Try delete rs "10.96.0.1:443/TCP/172.31.10.38:6443" err: invalid argument E1129 02:52:17.498396 1 graceful_termination.go:183] Try flush graceful termination list err E1129 06:28:17.607394 1 graceful_termination.go:89] Try delete rs "10.96.0.1:443/TCP/172.31.10.38:6443" err: device or resource busy E1129 06:28:17.607513 1 graceful_termination.go:183] Try flush graceful termination list err E1129 10:02:17.718458 1 proxier.go:1544] Failed to add destination: 192.100.183.139:3306, error: file exists E1129 10:02:17.718606 1 proxier.go:1544] Failed to add destination: 192.100.183.152:8080, error: invalid argument

بالمناسبة. من أعلى سجلاتي ، يبدو أن kube-proxy لا يزال يواجه العديد من المشكلات مع iptables-response كل عقدتي هي UBUNTU 16.04 والتي لها إصدار iptable 1.6.0.
@ m1093782566 @ Lion-Wei

نرى هذا يحدث عند الترقية من 1.12.1. يجب أن يكون في دلتا 1.12.1 و 1.12.2.

تتعلق المشكلة بالإنهاء السلس وأعتقد أننا قد أصلحنا الخطأ في الإصدار 1.13.1.

@ m1093782566 هل سيتم نقل الإصلاح إلى السطر 1.12؟ الآن هذا يمنع إصلاح الأمان 1.12.3 بالنسبة لنا.

حصلت على نفس الشيء مع الترقية من 1.11.2 إلى 1.11.5.

@ m1093782566 هل يمكنك تقديم مزيد من المعلومات حول الإصلاح؟ سأكون مهتمًا بإلقاء نظرة على الالتزام.

هذا جنون جدًا ، لقد تعرضنا للعض بشدة في وقت سابق اليوم.

نرى هذا يحدث عند الترقية من 1.12.1. يجب أن يكون في دلتا 1.12.1 و 1.12.2.

حصلت على نفس الشيء مع الترقية من 1.11.2 إلى 1.11.5.

هل تم انتقاء الحشرة؟

يبدو هذا مثل العلاقات العامة التي تعمل على حل المشكلة: https://github.com/kubernetes/kubernetes/pull/71515

صحيح @ Quentin-M

نعم ، ربما يأتي هذا من الإصلاح في وظيفة delete (لا تتعلق حقًا بعنوان PR).

@ m1093782566 يمكنني إنشاء اختيار الكرز لـ 1.12. هل نريد دعم العلاقات العامة الكاملة أم الإصلاح فقط في وظيفة الحذف؟ (لتجنب تغيير السلوك مع تدفقات UDP في 1.12)

هل تم انتقاء الحشرة؟

@ Quentin-M يبدو أن الخطأ قد تم تقديمه بواسطة https://github.com/kubernetes/kubernetes/pull/66012 والذي تم اختياره بإصدارات 1.11.5 و 1.12.2:
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md#changelog -since-v1114
https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.12.md#other -notable-Changes-1

أعتقد أن كل # 71515 يجب أن يتم انتقاؤه. تم تقديم الإنهاء الجميل بشكل عام فقط وتم اختياره باستخدام # 66012 لذا فقد حدث تغيير السلوك بالفعل.

لا يزال k8s.gcr.io/kube-proxy:v1.13.1-beta.0 قديمًا في مجموعاتنا. 60٪ منهم عالقون في أقل من 24 ساعة. جرب 1.12.1 الآن.

@ Quentin-M: هل يمكنك التحقق من السجلات على kube-proxy والتأكد من اختفاء هذه الأنواع من الرسائل:

Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393664    5389 graceful_termination.go:160] Trying to delete rs: 10.128.33.237:6379/TCP/10.125.6.34:6379
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: E1115 07:49:52.393690    5389 graceful_termination.go:89] Try delete rs "10.128.33.237:6379/TCP/10.125.6.34:6379" err: Failed to delete rs "10.128.33.237:6379/TCP/10.125.6.34:6379", can't find the real server
Nov 15 07:49:52 hex-48b-pm kube-proxy[5389]: I1115 07:49:52.393697    5389 graceful_termination.go:93] lw: remote out of the list: 10.128.33.237:6379/TCP/10.125.6.34:6379
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420950    5389 proxier.go:1455] Failed to add IPVS service "monitoring/extradata-inserter:": file exists

كلاهما مرتبط بوظيفة الحذف الثابتة في العلاقات العامة. إذا اختفت هذه المشكلة وما زلت ترى المشكلة ، فإن هذا الإصلاح لا يكفي

أيضًا ، إذا كان كل شيء يعمل مع 1.12.1 ، فهناك احتمال قوي بأن تأتي المشكلة من الإنهاء الجيد (# 66012)

أعتقد أن لدي فكرة: أتساءل ماذا يحدث إذا حاولنا إضافة خادم حقيقي لا يزال في حالة إنهاء رشيق. في هذه الحالة ، يجب علينا فقط زيادة الوزن إلى 1 وإزالته من قائمة الإنهاء الرشيقة.

سأحاول اختبار هذا السيناريو في أقرب وقت ممكن (لكنه سيكون صعبًا لأنني في Kubecon الأسبوع المقبل)

@ الأسد وى ما رأيك؟

حسنًا ، خدش ذلك ، لقد اختبرت للتو وهي تعمل بشكل جيد. الكود المسؤول عنه هنا: https://github.com/kubernetes/kubernetes/blob/456c351e31517543e0686b2cadf21615d30a738f/pkg/proxy/ipvs/proxier.go#L1538 -L1542

في هذه الحالة ، تتم إزالة RS من قائمة gracefulDelete ومن IPVS RS. أتساءل عما إذا كان إعادة الوزن إلى 1 بدلاً من ذلك قد لا يكون أفضل

سأحاول أشياء أخرى بناءً على هذا الجزء من السجلات ، والذي يبدو أنه يشير إلى محاولة مزامنة نقاط النهاية لخدمة محذوفة

Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420734    5389 proxier.go:1496] Failed to list IPVS destinations, error: invalid argument
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420763    5389 proxier.go:809] Failed to sync endpoint for service: 10.128.33.156:8125/TCP, err: invalid argument
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420889    5389 proxier.go:1485] Failed to get IPVS service, error: Expected only one service obtained=0
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420903    5389 proxier.go:809] Failed to sync endpoint for service: 10.128.35.150:6379/TCP, err: Expected only one service obtained=0
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420950    5389 proxier.go:1455] Failed to add IPVS service "monitoring/extradata-inserter:": file exists
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.420961    5389 proxier.go:812] Failed to sync service: 10.128.34.54:80/TCP, err: file exists
Nov 15 07:51:22 hex-48b-pm kube-proxy[5389]: E1115 07:51:22.421886    5389 proxier.go:1544] Failed to add destination: 10.125.27.66:80, error: file exists

حسنًا بعد إجراء فحص سريع ، فإن الالتزام الذي يعمل على إصلاح مشكلة الحذف ليس في v1.13.1-beta.0 ولا في v1.14.0-alpha.0 الذي تم قطعه في 7 نوفمبر
أعتقد أنه سيكون في الإصدار 1.14 ألفا القادم والذي سيعتمد على الماجستير

سأقوم بإنشاء اختيار الكرز لـ 1.13 أيضًا

حصلت مشكلة في الترقية من 1.12.0 إلى 1.13.0 ، يبدو أنها مرتبطة بهذا ، ولكن ليس نفس الشيء.

لا يمكننا إصلاحه بالرجوع إلى iptables. ساعدني من فضلك.

لقد قمت بنشره على stackoverflow

حصلت على نفس الشيء في 1.11.5. تم الإرجاع مؤقتًا من ipvs إلى iptables.

نفس الشيء في 1.11.5. لا يمكن التراجع إلى 1.11.4 بسبب الثغرة الأمنية الموجودة فيه. اضطررت للتبديل إلى iptables. هل سيتم إصدار الإصلاح الخاص بهذا لـ 1.11.x؟

يمكنك التراجع عن kube-proxy على وجه التحديد دون أن تتأثر بالثغرة الأمنية.

@ Quentin-M نعم ، لقد صدم هذا الفكر في ذهني ، ولكن من ناحية أخرى ، إذا فعلت ذلك ، فلن يكون لدي إنهاء لطيف ، والذي كان موجودًا طوال الوقت مع iptables. لست متأكدًا من رغبة عملائنا في التغيير.

@ Quentin-M هل يعني أنه لن يكون هناك إصلاح لـ 1.11.x لمعالجة هذا الخطأ؟

emptywee قمت بإنشاء اختيار الكرز لـ 1.11: https://github.com/kubernetes/kubernetes/pull/71848
نأمل أن يتم دمجها قريبًا جدًا وستكون في 1.11.6

تم دمجه بالفعل في 1.12 (سيكون في 1.12.4 ) و 1.13 (سيكون في 1.13.1 )

تم دمج أداة اختيار الكرز للتو في 1.11 أيضًا
نحتاج فقط إلى انتظار إصدارات التصحيح التالية في الفروع الثلاثة (ولكن إذا كنت ترغب في اختبارها قبل أن أتمكن بسهولة من إنشاء بناء وكيل kube مخصص (أو حتى أسهل ، صورة عامل إرساء hyperkube مع التصحيح)

شكرا جزيلا لك lbernail ! سيكون من الجيد الحصول على صورة عامل ميناء متاحة للجمهور! أنا أحب اختباره!

تم اختيار الإصلاح بالفعل إلى v1.11 و v1.12 و v1.13.

هل تسمح من فضلك باختبارهم حتى نتمكن من إغلاق هذه المشكلة.

@ m1093782566 أنا أختبر هذا. راجع للشغل ، متى سينشر المجتمع الإصدار الصغير لهذا؟

شكرًا berlinsaint ، واسمحوا لي بنتيجة الاختبار.

متى سينشر المجتمع الإصدار الصغير لهذا؟

سيتم نشر الإصدار الصغير الجديد مع الإصلاح في أقل من أسبوعين.

emptywee : ذا : lbernail/hyperkube:v1.12.4-beta.1
دعنا نرى كيف يعمل معك!

lbernail ، هل من المقبول استخدامه مع كل شيء آخر في v1.11.5؟ أم يجب أن أقوم بإدخال مجموعة kubernetes الخاصة بي إلى الإصدار 1.12.4 أولاً؟ على أي حال ، شكرا جزيلا!

emptywee نعم يجب أن يعمل بدون أي مشكلة (لقد قمت بتشغيل kube-proxy 1.11 على 1.10 مجموعات لعدة أشهر)

يمكنني أيضًا إنشاء 1.11 لاحقًا اليوم

lbernail نعم ، سيكون من الجيد الحصول على صورة من نفس إصدار الإصدار.

emptywee هنا تذهب: lbernail/hyperkube:v1.11.6-beta.1

@ m1093782566lbernail بعد obversation ليلة واحدة، هل مخالفاتها متزامنة سجل خطأ لم تشهد بعد الآن، في حين
يحدث مرة واحدة على الأقل قبل ليلة واحدة. لكن ما زلت بحاجة إلى مزيد من الوقت للتحقق من ذلك ، شكرًا جزيلاً ، لقد أزعجني ذلك لفترة طويلة.

سأبدأ الاختبار غدًا على 1.11 وسأعطيه بضعة أيام أيضًا.

lbernail لقد lbernail/hyperkube:v1.11.6-beta.1 (شكرًا على ذلك!)
اعتقدنا على الفور أن الأمور قد تم إصلاحها ، حيث توقفنا عن رؤية رسائل السجل can't find the real server . ومع ذلك ، بعد يوم ونصف ، نشهد مشكلات في إدخالات IPvs التي لا معنى لها في عقد المجموعة 3/6.
هذه هي إدخالات ipvs لخدمة ما على عقدة كتلة مقطوعة.
قبل إعادة تشغيل kube-proxy:

-A -t 10.230.65.211:9494 -s rr
-a -t 10.230.65.211:9494 -r 10.230.158.10:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.158.57:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.213.245:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.216.170:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.216.180:9494 -m -w 0
-a -t 10.230.65.211:9494 -r 10.230.222.151:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.222.158:9494 -m -w 0
-a -t 10.230.65.211:9494 -r 10.230.222.160:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.226.82:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.226.85:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.226.117:9494 -m -w 0
-a -t 10.230.65.211:9494 -r 10.230.242.229:9494 -m -w 1

بعد إعادة تشغيل kube-proxy:

-A -t 10.230.65.211:9494 -s rr
-a -t 10.230.65.211:9494 -r 10.230.158.36:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.213.236:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.216.129:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.216.163:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.226.84:9494 -m -w 1
-a -t 10.230.65.211:9494 -r 10.230.226.124:9494 -m -w 1

lbernailbjornryden كان هذا هو سبب دخولي إلى هذا الموضوع عندما قمت بالتبديل إلى IPVS على 1.11.5. في اليوم التالي وجدت خدمات يمكن الوصول إليها ، لذلك اعتقدت أن kube-proxy قد توقف ولن يقوم بتحديث إدخالات الخدمات.
هذا فقط لإعلامك بأنني واجهت مشكلة مماثلة (عناوين IP خاطئة في جدول ipvs) مع v1.11.5 من kube-proxy.

bjornryden خبر

حقيقة أن الخلفيات الخلفية لا يتم تحديثها بشكل صحيح أمر غريب لأن الإنهاء الجميل لا يجب أن يؤثر على نقاط النهاية الجديدة (إذا كانت بعض نقاط النهاية القديمة لا تزال موجودة على سبيل المثال ، سأكون أقل دهشة)

هل يمكنك مشاركة سجلات kube-proxy ذات الصلة بالخدمة 10.230.65.211:9494 ؟

أيضًا ، هل هناك أي سلوك خاص مع هذه الخدمة / النشر؟ (على سبيل المثال ، هل يتم تحديث البودات بشكل متكرر أو خلف HPA؟)

لذلك تم تشغيله لمدة يومين في مجموعة المختبرات الخاصة بي مع صورة 1.11.6-beta.1 بواسطة lbernail في وضع ipvs.
جيد حتى الآن ، لم يتم تعليقه ويستمر في تحديث إدخالات ipvs.

ملاحظة واحدة غريبة بالرغم من ذلك:

lvdkbm501 ~ # ipvsadm -L -n -t 10.158.9.61:443
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.158.9.61:443 rr
  -> 10.158.128.28:8443           Masq    1      0          0         
  -> 10.158.130.24:8443           Masq    1      0          0         
lvdkbm501 ~ # ipvsadm -L -n -t 10.158.9.61:443
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.158.9.61:443 rr
  -> 10.158.128.28:8443           Masq    1      0          0         
lvdkbm501 ~ # ipvsadm -L -n -t 10.158.9.61:443
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.158.9.61:443 rr
  -> 10.158.128.28:8443           Masq    1      0          0         
lvdkbm501 ~ # ipvsadm -L -n -t 10.158.9.61:443
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.158.9.61:443 rr
  -> 10.158.128.28:8443           Masq    1      0          0         
  -> 10.158.128.28:8443           Masq    1      0          0         
lvdkbm501 ~ # ipvsadm -L -n -t 10.158.9.61:443
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  10.158.9.61:443 rr
  -> 10.158.128.28:8443           Masq    1      0          0         
  -> 10.158.129.28:8443           Masq    1      0          0         

يُظهر الاستدعاء الأول لـ ipvsadm الحالة الأولية قبل أن أحذف أحد البودات الخاصة بالخدمة. يظهر عدد قليل بعد ذلك أن إدخالاً واحدًا قد اختفى ، حيث تم حذف الكبسولة. ومع ذلك ، لا أعرف ما إذا كان من المفترض أن يكون الأمر كذلك ، لكنه أنشأ إدخالًا ثانيًا بعنوان IP نفسه مثل الكبسولة التي تركت. ثم تم تحديثه إلى IP الصحيح للحجرة الجديدة التي ظهرت لتحل محل تلك المحذوفة.

بخلاف ذلك لا بأس. لكن مجموعة المختبر ليست مشغولة مثل المجموعات الأخرى. لقد جعلني التعليق من

emptywee أفترض أن البود المحذوف كان 10.158.130.24 . انا لا افهم هذا:

TCP  10.158.9.61:443 rr
  -> 10.158.128.28:8443           Masq    1      0          0         
  -> 10.158.128.28:8443           Masq    1      0          0 

امتلاك نفس الخادم الحقيقي مرتين لا معنى له. هل يمكنك إعادة إنتاجه؟

يجب أن يكون السلوك الطبيعي عند حذف البودات:

  • إذا لم تكن هناك اتصالات بهذا الكبسولة ، فقم بإزالة RS
  • إذا كانت هناك اتصالات ، فاضبط الوزن على 0 (تستمر الاتصالات القائمة ، ولا توجد اتصالات جديدة)
  • كل دقيقة تحقق من كل نقاط البيع ذات الوزن 0 (هذا هو الغرض من قائمة الإنهاء المبهجة) وقم بإزالة تلك التي ليس لديها اتصالات بعد الآن

lbernail صحيح. كان للجراب المحذوف عنوان IP هذا. ونعم ، بدا الأمر أيضًا غريبًا بالنسبة لي. سأحاول التكاثر عندما تسنح لي الفرصة. هل تريد مني زيادة الإسهاب في السجل إذا كنت قادرًا على إعادة إنتاج نفس السلوك؟ إذا كانت الإجابة نعم ، إلى أي مستوى؟

emptywee : سيكون شكرًا عظيمًا ، يجب أن يمنحنا --v=5 الكثير من المعلومات
الشيء الرئيسي هو أنني لا أعتقد حتى أن RS يمكن أن تظهر مرتين في VS في IPVS (لم أر ذلك مطلقًا). أي نواة تقوم بتشغيلها؟

lbernail سيعمل على --v = 5 وسيحاول إعادة الإنتاج ، ربما في وقت ما خلال عطلة نهاية الأسبوع.

أنا على CoreOS مستقر:

image

4.14 حديث جدًا ، لذا سأفاجأ إذا كانت هناك مشكلة IPVS
سأحاول التركيز على الكتلة مع الإصدار المصحح لمعرفة ما إذا كان يمكنني إعادة إنتاج المشكلة من

lbernail للأسف ، لم أتمكن من إعادة إنتاج سلوك تكرار إدخال ipvs الذي رأيته مرة واحدة فقط. حاولت عدة مرات بخدمات مختلفة. ومع ذلك ، لم أر أي إدخال بوزن 0 ، ولكن يمكن تفسير ذلك من خلال حقيقة أن القرون التي أحذف خروجها بسرعة كبيرة. أيضًا ، كان kube-proxy مستجيبًا بعد التشغيل لأكثر من 5 أيام. قد أجربها مرة أخرى بالطريقة الأكثر انشغالًا هنا.

ردًا على @

يتم تعيين الوزن على 0 فقط إذا كانت بعض ActiveConn أو InActiveConn. لرؤيتها ببساطة افتح اتصالاً طويل الأمد بخدمة ما قبل حذف البود المرتبط (على سبيل المثال باستخدام telnet)

5 أيام من الاستقرار أخبار جيدة! أخبرنا كيف تسير الأمور عندما / إذا حاولت على مجموعة أكثر انشغالًا

لدي بعض التحسينات الصغيرة على الطريق:

أيضًا ، تم إصدار 1.11.6 و 1.12.4 و 1.13.1 وتحتوي على الإصلاح في وظيفة الحذف

كتبت قصيرة المادة حول هذه القضية خلال عطلة نهاية الاسبوع /. سأحرص على تحديثه بالإصدار الثابت!

lbernail بالتأكيد ، سأفعل! هل صورتك لـ hyperkube هي نفسها التي تم إصدارها كـ 1.11.6؟ لقد قمت بتثبيت صورتك لـ kube-proxy فقط في المجموعة الأكثر انشغالًا وتحولت إلى ipvs مرة أخرى للاختبار. هل تريد مني استخدام الرسمية؟

emptywee صورتي و 1.11.6 هي نفسها في الأساس: لقد قمت ببنائها من رئيس فرع الإصدار 1.11 قبل أيام قليلة من الإصدار الرسمي ، لذا فإن الاختلاف هو بضعة التزامات على الأكثر ، لا يتضمن أي منها IPVS. لذلك لا أعتقد أن الأمر يستحق مجهود تحديث مجموعتك مرة أخرى

أخبار سيئة: (لقد أخفق وكيل kube للتو في تحديث خلفيات IPvs. العودة إلى iptables وجمع السجلات. كان يعمل kube-proxy مع --v=5 flag.

lbernail إذن ، لست متأكدًا من مقدار السجلات المطلوبة ، لكننا واجهنا مشكلة في بعض الخدمات ، والتي لم يتم تحديث عناوين IP الخلفية الخاصة بها. ومع ذلك ، تخبرنا السجلات أنه يتم تحديث نقاط النهاية بشكل صحيح:

$ cat kube-proxy-issue.log | egrep -e 'c-qa4/ycsdtleuk|10.148.191.69|10.148.192.14|10.148.183.70|10.148.184.67'
I1217 19:12:52.849863       1 graceful_termination.go:160] Trying to delete rs: 10.148.6.202:80/TCP/10.148.192.14:8080
I1217 19:12:52.849948       1 graceful_termination.go:173] Deleting rs: 10.148.6.202:80/TCP/10.148.192.14:8080
I1217 19:12:52.850000       1 graceful_termination.go:160] Trying to delete rs: 10.148.6.202:80/TCP/10.148.191.69:8080
I1217 19:12:52.850069       1 graceful_termination.go:173] Deleting rs: 10.148.6.202:80/TCP/10.148.191.69:8080
I1217 19:12:53.425438       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 19:13:00.501203       1 ipset.go:140] Successfully delete legacy ip set entry: 10.148.191.69,tcp:8080,10.148.191.69 from ip set: KUBE-LOOP-BACK
I1217 19:13:00.543691       1 ipset.go:140] Successfully delete legacy ip set entry: 10.148.192.14,tcp:8080,10.148.192.14 from ip set: KUBE-LOOP-BACK
I1217 19:13:06.916777       1 service.go:309] Adding new service port "c-qa4/ycsdtleuk:http" at 10.148.6.202:80/TCP
I1217 19:13:08.345142       1 proxier.go:1465] Adding new service "c-qa4/ycsdtleuk:http" 10.148.6.202:80/TCP
I1217 19:13:13.939763       1 ipset.go:148] Successfully add entry: 10.148.191.69,tcp:8080,10.148.191.69 to ip set: KUBE-LOOP-BACK
I1217 19:13:14.002663       1 ipset.go:148] Successfully add entry: 10.148.192.14,tcp:8080,10.148.192.14 to ip set: KUBE-LOOP-BACK
I1217 19:27:53.485483       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 19:27:53.485526       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 19:42:53.388638       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 19:42:53.388673       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 19:57:53.643829       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 19:57:53.644032       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:12:53.541080       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:12:53.541129       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:27:53.368129       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:27:53.368306       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:42:53.539517       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:42:53.539542       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:57:53.624320       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 20:57:53.624371       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:12:53.630561       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:12:53.630585       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:26:20.897397       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:26:20.897463       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:26:46.630013       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:26:46.630084       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:26:57.995544       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.191.69:8080 10.148.192.14:8080]
I1217 21:26:57.995657       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.191.69:8080 10.148.192.14:8080]
I1217 21:27:24.296606       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080 10.148.191.69:8080 10.148.192.14:8080]
I1217 21:27:53.678172       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080 10.148.191.69:8080 10.148.192.14:8080]
I1217 21:28:21.517538       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080 10.148.191.69:8080]
I1217 21:28:21.595632       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080]
I1217 21:42:53.491595       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080]
I1217 21:57:53.492214       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080]
I1217 22:05:45.760620       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080]
I1217 22:06:24.890429       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080]
I1217 22:07:15.463144       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.183.68:8080]
I1217 22:07:43.201415       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080]
I1217 22:08:18.268005       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080]
I1217 22:08:58.774066       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.192.70:8080]
I1217 22:12:53.528515       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.192.70:8080]
I1217 22:27:53.522197       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.192.70:8080]
I1217 22:29:20.396794       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.192.70:8080]
I1217 22:29:43.994895       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.192.70:8080]
I1217 22:29:54.382253       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.183.70:8080 10.148.192.70:8080]
I1217 22:30:17.895084       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.183.70:8080 10.148.184.67:8080 10.148.192.70:8080]
I1217 22:31:45.791871       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.134.231:8080 10.148.183.70:8080 10.148.184.67:8080]
I1217 22:31:45.855011       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.70:8080 10.148.184.67:8080]
I1217 22:42:53.652587       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.70:8080 10.148.184.67:8080]
I1217 22:57:53.509372       1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.70:8080 10.148.184.67:8080]

ولكن عندما راجعته باستخدام ipvsadm ، كان لا يزال يُظهر الأولين: 10.148.191.69:8080 10.148.192.14:8080

في حين أن kubectl -n c-qa4 describe svc ycsdtleuk كان يقول أن نقاط النهاية هي 10.148.183.70:8080 10.148.184.67:8080 ، وفي المربعات الأخرى تم تحديث إدخالات ipvs لنفس الخدمة بشكل صحيح.

$ kubectl -n c-qa4 describe svc ycsdtleuk
Name:              ycsdtleuk
Namespace:         c-qa4
Labels:            country=uk
                   env=qa
                   run=ycsdtleuk
                   stack=c
                   track=4
Annotations:       run: ycsdtleuk
Selector:          load-balancer-ycsdtleuk=true
Type:              ClusterIP
IP:                10.148.6.202
Port:              http  80/TCP
TargetPort:        8080/TCP
Endpoints:         10.148.183.70:8080,10.148.184.67:8080
Session Affinity:  None
Events:            <none>

كنت أنظر في الأساس إلى ما يلي في صندوقين في نفس الوقت:

(incorrect ipvs config)
rnqkbm401 ~ # ipvsadm -L -t 10.148.6.202:80
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  rnqkbm401:http rr
  -> 10.148.191.69:http-alt       Masq    1      0          0
  -> 10.148.192.14:http-alt       Masq    1      0          0
(correct ipvs config)
rnqkbw401 ~ # ipvsadm -L -t 10.148.6.202:80
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  rnqkbw401:http rr
  -> 10.148.183.70:http-alt       Masq    1      0          0
  -> 10.148.184.67:http-alt       Masq    1      0          0

لا توجد رسالة خطأ واضحة أو أي شيء صراخ يشير إلى أي علامات على وجود مشكلة في أي مكان. يمكنني إرسال ملف السجل الكامل (18 مليونًا غير مضغوط) إليك مباشرةً ، إذا كنت ترغب في ذلك.

قصة قصيرة طويلة: يبدو الأمر كما لو أن الجزء الذي يستمع إلى تغييرات الخدمات يعمل بشكل جيد ، لكن الجزء الذي يتفاعل مع وحدة ipvs ليس كذلك. لا أرى حتى أنه كان يحاول حذف عنواني IP الأوليين بمجرد إضافتهما. شيء ما عالق في مكان ما.

emptywee أشكرك على التقرير المفصل. لا شيء غريب في هذه السجلات.

الأمر المثير للدهشة هو أن syncProxyRules يتم تشغيله على الأقل كل 30 ثانية (افتراضيًا) ويجب التوفيق بين خوادم IPVS الحقيقية ونقاط النهاية. يستدعي syncEndpoints والذي يؤدي إلى تشغيل AddRealServer و ipvsHandle.NewDestination

يحدث كل هذا قبل حذف نقاط النهاية القديمة ، لذا لا ينبغي أن يتأثر الإنهاء السلس

هل يمكن أن ترسل لي السجلات الكاملة حتى أتمكن من رؤية ما يحدث بالضبط بين 21:26 و 21:29 ؟

سؤالان إضافيان:

  • تأثر وكيل kube واحد ، أليس كذلك؟
  • تأثرت خدمة واحدة (هل استمرت الخدمة الأخرى في التحديث بشكل طبيعي؟)

في المرة القادمة ، حاول إرسال SIGABRT إلى العملية ، بحيث تطبع حالات المهام.

عندما واجهت المشكلة ، كان دائمًا يفعل شيئًا داخل libnetwork/ipvs/netlink.go ، مما يقودني للشك في أن استدعاء نظام netlink قد توقف لسبب ما.

آسف على غيابي ، ولكن في عطلة نهاية الأسبوع ثم اضطررنا إلى التركيز على الرجوع إلى iptables لإعدادنا.

بالنظر إلى السجلات المطلوبة للخدمة ، lbernail ، لدينا الكثير من هذه:

I1214   11:48:44.889081       1   graceful_termination.go:160] Trying to delete rs:   172.17.0.1:31663/TCP/10.230.213.204:9300
I1214 11:48:44.889099       1 graceful_termination.go:173]   Deleting rs: 172.17.0.1:31663/TCP/10.230.213.204:9300
I1214 11:48:44.889113       1 graceful_termination.go:160] Trying   to delete rs: 172.17.0.1:31663/TCP/10.230.226.83:9300
I1214 11:48:44.889130       1 graceful_termination.go:173]   Deleting rs: 172.17.0.1:31663/TCP/10.230.226.83:9300
...

لقد رأينا أيضًا هذه:

I1214 12:15:44.920364       1 graceful_termination.go:160] Trying to delete rs: 10.230.65.211:9494/TCP/10.230.226.124:9494
I1214 12:15:44.920489       1 graceful_termination.go:173] Deleting rs: 10.230.65.211:9494/TCP/10.230.226.124:9494
I1214 12:15:44.920512       1 graceful_termination.go:93] lw: remote out of the list: 10.230.65.211:9494/TCP/10.230.226.124:9494

مثلما أفاد آخرون ، حدث هذا فقط في بعض العقد. بحلول الوقت الذي وجدت فيه المشكلة ، كان لدينا 3 عقد عنقودية معطلة لهذه الخدمة المحددة.

تضمين التغريدة ها هي القطعة المطلوبة من السجلات ، لقد قمت بتضمين قطعة بدء التشغيل أيضًا: https://gist.github.com/emptywee/6f7e9c9e43f10288950d1d8420c038f0

اسمحوا لي أن أعرف إذا كنت بحاجة إلى الملف بأكمله. إذا كانت الإجابة بنعم ، فأين تريد مني إرسالها أو تحميلها إليه.

للإجابة على أسئلتكم:

  1. تحتوي المجموعة على أكثر من 60 عقدة ، لقد تحققت من عدد قليل من العقد الأخرى ، وكان إدخال ipvs صحيحًا. لست متأكدا من جميع الإدخالات بالرغم من ذلك. ولكن في العقدة الرئيسية ، من خلال توجيه كل حركة المرور إلى الخدمات ، لم يتم تحديث خدمتين على الأقل بشكل صحيح. قد يكون هناك المزيد ، ولكن بمجرد أن بدأنا في تلقي شكاوى من العملاء ، سمعنا على الفور عن عدم إمكانية الوصول إلى خدمتين. لقد جمعت السجلات وأعدت تشغيل kube-proxy لتقليل التأثير. لقد قارنت حالة إدخالات ipvs على تلك العقدة الرئيسية وأحد العقد العاملة كجزء من استكشاف الأخطاء وإصلاحها وأدركت أنها مختلفة. هناك احتمال أن يكون للعقد الأخرى إدخالات مختلفة لم يتم تحديثها بشكل صحيح ، ولكن نظرًا لعدم مرور حركة المرور عبرها ، لم نلاحظ أي تأثير.

  2. لا ، تأثرت خدمتان على الأقل. ربما أكثر ، لكني لم أتحقق من ذلك.

شيئان مثيران للاهتمام من السجلات:

  • لا تتم معالجة I1217 21:26:57.995657 1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.191.69:8080 10.148.192.14:8080] بواسطة IPVS مطلقًا ولكن لا يوجد خطأ لأنك تحتفظ بـ RS القديمة (لا يمكننا التأكد من أن إضافة RS لا ينتج عنها سجل)
  • I1217 21:28:21.517538 1 endpoints.go:234] Setting endpoints for "c-qa4/ycsdtleuk:http" to [10.148.183.68:8080 10.148.187.41:8080 10.148.191.69:8080] لا يقوم بتشغيل استدعاء الحذف لـ 10.148.192.14:8080 (يجب أن يكون لدينا سجلات هناك)

emptywee هل كان IPVS يعمل لصالحك قبل الإنهاء الجميل أم كنت تستخدم iptables؟

@ m1093782566 / @ Lion-Wei أي فكرة عما يمكن أن يحدث هنا؟

lbernail لقد انتظرنا حتى نقوم بالترقية إلى 1.11 للتبديل إلى ipvs (أعتقد أنه عندما حدث إصدار GA لهذه الميزة) وقمنا بالترقية مباشرة إلى 1.11.5 وكانت محاولتنا الأولى لبدء استخدام ipvs.

emptywee : سأضيف المزيد من سجلات مستوى المعلومات لمحاولة تحديد المشكلة. هل يمكنك تشغيل نسخة مطولة أكثر لبضع ساعات؟ (أتفهم تمامًا ما إذا كنت لا تفضل ذلك ، لكنني لم أتمكن من التكاثر من جانبي بعد)

نحن نستخدم IPVS منذ مايو ولم نواجه مشكلات في 1.12.1 و 1.11.1.

لقد رأينا أيضًا أن هذا يحدث في العديد من العقد ، ولكن ليس كل العقد ، بعد الترقية إلى 1.12.3. توقفت العقد المتأثرة عن تحديث IPVS بعد بضع ساعات من الترقية ، ولكن ليس بطريقة منسقة يمكنني تمييزها.

شيء واحد يجب ملاحظته هو أن kube-proxy توقف أيضًا عن التسجيل تمامًا في ذلك الوقت ، لذلك يبدو أنه توقف تمامًا.

ملف سجل يوضح أنه يتعطل ، وتفريغ goroutine بعد SIGQUIT (منقح قليلاً)

يُظهر ملف سجل

يمكنك القول أن هناك خطأ منطقيًا يتسبب في تفاعلات كثيرة جدًا مع مقبس netlink. ولكن إذا لم يكن الاتصال مع netlink قويًا ، فسوف تتعطل IPvs في النهاية. إذا تم إصلاح الخطأ المنطقي ، فقد يستغرق الأمر وقتًا أطول للوصول إلى هذه الحالة ، لكن هذا لا يعني أنه لا يمكن أن يحدث مع الوقت الكافي.

لهذا السبب أنصح بالحصول على نوع من المهلة في تفاعلات netlink ؛ إذا انتهت مهلة العملية ، أغلق مقبس netlink وافتح مقبسًا جديدًا تلقائيًا ، كآلية استرداد.

matthiasr ، حسنًا ، هذه أخبار جيدة (لقد استخدمنا أيضًا IPVS لأكثر من 6 أشهر دون أي مشكلة ولكن لم يتم تحديث الإصدارات باستخدام الإنهاء الرائع في أكثر مجموعاتنا ازدحامًا حتى الآن)

يبدو أننا قد يكون لدينا مأزق في مكان ما

lbernail بينما من المرهق بعض الشيء تبديل المجموعة بأكملها إلى ipvs ، إذا كان هذا سيساعد في تصحيح هذه المشكلة ، فأنا معطل. أخبرني باسم الصورة التي يجب استخدامها وسأفعل كل ما في وسعي لمساعدتك في ذلك.

لقد عدنا إلى IPVS في 1.11.6 لمعرفة ما إذا كان بإمكاننا إعادة إنشاء مشكلتنا. تم ضبط التسجيل على 5 وتشغيل بعض الأنشطة في المجموعة خلال الأيام القادمة. لن أعمل غدًا ، لكنني سأظهر على الإنترنت لمعرفة ما إذا كانت هناك صورة ذات تسجيل متزايد يجب أن أتغير إليه.

@ matthiasr : هناك مشكلة بالتأكيد 1.12.3 (انظر بقية هذا الموضوع). يتم حل جزء منه في 1.12.4 . سوف تحصل على أخطاء أقل بكثير في السجلات. يجب أن تختفي كل هذه: Failed to add destination: 10.zz.yy.xx, error: file exists

ما زلنا نواجه مشكلة حيث يبدو أن kube-proxy يتعطل لم يعد يقوم بتحديث الخوادم الحقيقية.
نظرت في الأمر أكثر قليلاً:

  • من emptywee ، يبدو أنه بعد بدء المشكلة ، لا نرى أي سجلات من proxier.go أو ipset.go أو graceful_termination.go ، والذي يبدو أنه يشير إلى أننا عالقون في مكان ما. emptywee هل يمكنك التحقق مما إذا كان لديك سجلات لهذه الملفات بعد الساعة 21:30؟
  • في التفريغ الروتيني go ، هناك نوعان من syscall المتلقين على مأخذ netlink. لذلك يمكن أن يكون لدينا مشكلة هناك. بالإضافة إلى ذلك ، لدعم إنهاء رشيقة تمت ترقية libnetwork / ipvs لذا ربما تغير السلوك. ومع ذلك ، يبدو أن كود libnetwork يقوم بتعيين مهلات الإرسال / rcv على مقبس netlink (وإذا كان عالقًا ، يجب أن نرى عدد الدقائق التي مرت عليه): https://github.com/docker/libnetwork/blob/a9cd636e37898226332c439363e2ed0ea185ae92/ipvs /ipvs.go#L77 -L105

من المثير للاهتمام أن الإصدار الجديد من libnetwork فقط لديه مهلات netlink:

تمت ترقية libnetwork في جميع فروع الإصدار (1.11 و 1.12 و 1.13) للسماح بالإنهاء الجميل. انتقلنا من: ba46b928444931e6865d8618dc03622cac79aa6f إلى a9cd636e37898226332c439363e2ed0ea185ae92

في الإصدار الأقدم ، كان الكود: https://github.com/docker/libnetwork/blob/ba46b928444931e6865d8618dc03622cac79aa6f/ipvs/ipvs.go#L65 -L87

الاختلافات الوحيدة في كود IPVS في libnetwork بين هذين العملين هي:

  • إدخال المهلة
  • إضافة ActiveConnections و InactiveConnections إلى Destination (والتي كانت مطلوبة للإنهاء الآمن)

أتساءل عما إذا كان هذا قد يكون مرتبطًا.

بعد وضع المزيد من الأفكار حول هذه المسألة ، أعتقد أنها تأتي من حقيقة أن لدينا الآن اثنين من goroutines يستخدمان نفس مقبس netlink (لأن gracefulTerminationManager يعمل في goroutine الخاص به ويشترك في واجهة المستخدم مع الوكيل).

ربما يمكننا إضافة كائن المزامنة (mutex) في جميع المكالمات في pkg/util/ipvs/ipvs_linux.go للتأكد من أن goroutine واحد يستخدم مقبس netlink في أي وقت.

@ m1093782566 ما رأيك؟

lbernail لا ، لا توجد إدخالات من هذه الملفات في أي مكان بعد الساعة 21:30.
فيما يلي آخر إدخالات لملفات مختلفة:

آخر إدخالات من graceful_termination.go

$ cat kube-proxy-issue.log | grep 'graceful_termination.go' | tail
I1217 21:18:20.757262       1 graceful_termination.go:66] Adding rs 10.148.11.105:8080/TCP/10.148.174.35:8081 to graceful delete rsList
I1217 21:18:52.267340       1 graceful_termination.go:160] Trying to delete rs: 10.148.0.145:80/TCP/10.148.188.28:8080
I1217 21:18:52.267456       1 graceful_termination.go:173] Deleting rs: 10.148.0.145:80/TCP/10.148.188.28:8080
I1217 21:18:52.267638       1 graceful_termination.go:160] Trying to delete rs: 10.148.0.145:80/TCP/10.148.145.194:8080
I1217 21:18:52.267755       1 graceful_termination.go:173] Deleting rs: 10.148.0.145:80/TCP/10.148.145.194:8080
I1217 21:18:52.405770       1 graceful_termination.go:160] Trying to delete rs: 10.148.0.145:80/TCP/10.148.188.28:8081
I1217 21:18:52.405906       1 graceful_termination.go:173] Deleting rs: 10.148.0.145:80/TCP/10.148.188.28:8081
I1217 21:18:52.406052       1 graceful_termination.go:160] Trying to delete rs: 10.148.0.145:80/TCP/10.148.145.194:8081
I1217 21:18:52.406156       1 graceful_termination.go:173] Deleting rs: 10.148.0.145:80/TCP/10.148.145.194:8081
I1217 21:18:53.240664       1 graceful_termination.go:160] Trying to delete rs: 10.148.11.105:8080/TCP/10.148.174.35:8081

آخر إدخالات من proxier.go:

$ cat kube-proxy-issue.log | grep 'proxier.go' | tail
I1217 21:18:52.570282       1 proxier.go:1023] Port "nodePort for kube-system/kube-dns:dns-tcp" (:30054/tcp) was open before and is still needed
I1217 21:18:52.663609       1 proxier.go:1023] Port "nodePort for ingress-nginx/ingress-nginx:http" (:31513/tcp) was open before and is still needed
I1217 21:18:53.241144       1 proxier.go:1465] Adding new service "c-qa4/yardchange-ws:http" 10.148.1.136:80/TCP
E1217 21:18:53.241277       1 proxier.go:1467] Failed to add IPVS service "c-qa4/yardchange-ws:http": file exists
E1217 21:18:53.241350       1 proxier.go:821] Failed to sync service: 10.148.1.136:80/TCP, err: file exists
I1217 21:18:53.241624       1 proxier.go:1465] Adding new service "c-qa4/receiving-ws-v2-uk:http-admin" 10.148.13.141:8080/TCP
E1217 21:18:53.241723       1 proxier.go:1467] Failed to add IPVS service "c-qa4/receiving-ws-v2-uk:http-admin": file exists
E1217 21:18:53.241761       1 proxier.go:821] Failed to sync service: 10.148.13.141:8080/TCP, err: file exists
E1217 21:18:53.242506       1 proxier.go:1496] Failed to get IPVS service, error: Expected only one service obtained=0
E1217 21:18:53.242558       1 proxier.go:818] Failed to sync endpoint for service: 10.148.11.84:8080/TCP, err: Expected only one service obtained=0

آخر إدخالات من ipset.go:

$ cat kube-proxy-issue.log | grep 'ipset.go' | tail
I1217 21:17:14.768694       1 ipset.go:148] Successfully add entry: 10.148.134.229,tcp:8080,10.148.134.229 to ip set: KUBE-LOOP-BACK
I1217 21:17:14.774040       1 ipset.go:148] Successfully add entry: 10.148.134.229,tcp:8081,10.148.134.229 to ip set: KUBE-LOOP-BACK
I1217 21:17:26.643709       1 ipset.go:148] Successfully add entry: 10.148.172.59,tcp:8080,10.148.172.59 to ip set: KUBE-LOOP-BACK
I1217 21:17:26.648504       1 ipset.go:148] Successfully add entry: 10.148.172.59,tcp:8081,10.148.172.59 to ip set: KUBE-LOOP-BACK
I1217 21:17:31.049667       1 ipset.go:148] Successfully add entry: 10.148.136.14,tcp:8080,10.148.136.14 to ip set: KUBE-LOOP-BACK
I1217 21:17:31.053901       1 ipset.go:148] Successfully add entry: 10.148.136.14,tcp:8081,10.148.136.14 to ip set: KUBE-LOOP-BACK
I1217 21:18:18.920550       1 ipset.go:140] Successfully delete legacy ip set entry: 10.148.181.11,tcp:8080,10.148.181.11 from ip set: KUBE-LOOP-BACK
I1217 21:18:18.924752       1 ipset.go:140] Successfully delete legacy ip set entry: 10.148.181.11,tcp:8081,10.148.181.11 from ip set: KUBE-LOOP-BACK
I1217 21:18:21.232725       1 ipset.go:140] Successfully delete legacy ip set entry: 10.148.174.35,tcp:8080,10.148.174.35 from ip set: KUBE-LOOP-BACK
I1217 21:18:21.237619       1 ipset.go:140] Successfully delete legacy ip set entry: 10.148.174.35,tcp:8081,10.148.174.35 from ip set: KUBE-LOOP-BACK

أنهوا جميعًا التسجيل في حوالي الساعة 21:18 ... هل يعطي ذلك أي أدلة؟

emptywee نعم أنها تؤكد الفرضية القائلة بأن لدينا الجمود بين البلدين goroutines تقاسم مأخذ netlink. كلاهما عالق في انتظار تلقي الرسائل ويستمر في إعادة المحاولة دون نجاح (نظرًا لانتهاء مهلة استلام الثلاثة).

سأحاول التحقق من صحة الفرضية وسأبدأ العمل على الإصلاح بأسرع ما يمكن

لقد وضعت 1.12.4 على مجموعة اختبار وبدأت في إعادة نشر أحد التطبيقات ، والذي أعاد إنتاج المشكلة في 1.5 ساعة ، لذلك أعتقد أنني سأكون قادرًا على اختبار إصلاح محتمل بشكل موثوق إلى حد ما.

هناك مرة أخرى 2 goroutines (1 و 107) معلقة على netlink Receive.

لدي إصلاح محتمل للخلل ، الكود متاح هنا: https://github.com/DataDog/kubernetes/commit/9121f0122d805f55f85f42d26c294898fe29a92f
الفكرة هي حماية جميع مكالمات netlink باستخدام كائن المزامنة لتفادي الجمود. لست متأكدًا من أن هذا هو الحل الأفضل ولكنه قد يحل المشكلة (وإذا نجح ، تأكد من أننا حددنا الخطأ).

إذا كنت تريد / يمكنك اختباره ، فقد قمت بإنشاء صورتين مع الإصلاح:

إذا قمت بإجراء الاختبار ، فأخبرنا إذا كان يعمل أم لا ، فيرجى مشاركة السجلات المثيرة للاهتمام وإلقاء نظرة على goroutines لمعرفة ما إذا كان البعض يبدو عالقًا في مكالمات netlink.

(لقد أجريت بعض الاختبارات على جانبي ولكني اقتصرت على مجموعة صغيرة)

قد أجربها يوم الاثنين ، 24 ديسمبر!

منحها الذهاب اليوم. سيتم الإبلاغ عن النتائج ، إن وجدت.

هذا خطأ. لقد تحولت إلى وضع iptables.

لقد قمت أيضًا بالترقية إلى الإصدار التجريبي وبدأت اختبارات التحميل مرة أخرى قريبًا. عادة ما نكسر بسرعة (أقل من يوم) وبشكل متسق ... الأصابع متقاطعة.

@ li-sen خطأ بالتأكيد. نحن نعمل عليه

emptywee و bjornryden شكرًا جزيلاً على الاختبار!

lbernail من دواعي سروري! لقد مر حوالي يومين منذ أن أطلقت kube-proxy مع صورة 1.11.7-beta.1. لم يعلق علينا بعد. أستطيع أن أرى proxier.go وغيره من goroutines لا يزالون على قيد الحياة ويتم الطباعة على السجلات. سأمنحه مزيدًا من الوقت لأن اليومين الماضيين كانا بطيئًا وهادئًا حقًا ، ولم تكن هناك عمليات نشر كثيرة. في كلتا الحالتين ، لدي شعور بأن عناصر المزامنة التي

سوف أقوم بتحديث هذه المشكلة / الموضوع بنهاية الأسبوع.

تضمين التغريدة

هل تسمح من فضلك برفع العلاقات العامة لإصلاح هذه المشكلة؟

/ إعادة الفتح
(لمراقبة التعليقات من الاختبارات وقبل إنشاء اختيارات الكرز إذا كان كل شيء يعمل بشكل جيد)

lbernail : لا يمكنك إعادة فتح مشكلة / العلاقات العامة إلا إذا قمت بتأليفها أو كنت متعاونًا.

ردًا على هذا :

/ إعادة الفتح
(لمراقبة التعليقات من الاختبارات وقبل إنشاء اختيارات الكرز إذا كان كل شيء يعمل بشكل جيد)

تعليمات للتفاعل معي باستخدام تعليقات العلاقات العامة متوفرة هنا . إذا كانت لديك أسئلة أو اقتراحات تتعلق بسلوكي ، فالرجاء رفع قضية ضد

@ m1093782566 هل يمكنك إعادة فتح المشكلة حتى نتأكد تمامًا من إصلاحها؟

لدي نفس مشكلة Kube-proxy ipvs ، الإصدار 1.12.3.
الخوادم الحقيقية خاطئة ولا يمكن لـ Kube-proxy تحديث قواعد IPvs.

إليك آخر السجلات وهي عالقة هنا ، ولم تعد تطبع سجلات جديدة بعد الآن.

27 23:31:24.113927       1 graceful_termination.go:93] lw: remote out of the list: 10.96.0.1:443/TCP/10.6.40.32:6443
E1227 23:31:24.113935       1 graceful_termination.go:183] Try flush graceful termination list err
I1227 23:32:24.114182       1 graceful_termination.go:160] Trying to delete rs: 10.96.0.1:443/TCP/10.6.40.32:6443
E1227 23:32:24.114316       1 graceful_termination.go:89] Try delete rs "10.96.0.1:443/TCP/10.6.40.32:6443" err: Failed to delete rs "10.96.0.1:443/TCP/10.6.40.32:6443", can't find the real server
I1227 23:32:24.114332       1 graceful_termination.go:93] lw: remote out of the list: 10.96.0.1:443/TCP/10.6.40.32:6443
I1227 23:32:24.114348       1 graceful_termination.go:160] Trying to delete rs: 10.96.0.1:443/TCP/10.6.40.33:6443
I1227 23:32:24.114397       1 graceful_termination.go:160] Trying to delete rs: 10.6.40.25:32444/TCP/10.244.20.41:32444
E1227 23:32:24.114446       1 graceful_termination.go:183] Try flush graceful termination list err
I1227 23:33:24.114853       1 graceful_termination.go:160] Trying to delete rs: 10.96.0.1:443/TCP/10.6.40.32:6443
E1227 23:33:24.115043       1 graceful_termination.go:89] Try delete rs "10.96.0.1:443/TCP/10.6.40.32:6443" err: Failed to delete rs "10.96.0.1:443/TCP/10.6.40.32:6443", can't find the real server
I1227 23:33:24.115106       1 graceful_termination.go:93] lw: remote out of the list: 10.96.0.1:443/TCP/10.6.40.32:6443
I1227 23:33:24.115128       1 graceful_termination.go:160] Trying to delete rs: 10.96.0.1:443/TCP/10.6.40.33:6443

VincentFF : هناك

  • عمليات الحذف الفاشلة: ثابتة في 1.12.4
  • يتعطل kube-proxy بسبب الجمود (وهي المشكلة التي تصفها): نأمل أن يتم إصلاحها مع العلاقات العامة من الأمس. نحن في انتظار ردود الفعل من emptywee و bjornryden الذين يختبرون التصحيح حاليًا. بمجرد أن نحصل على تأكيد بأن المشكلة لم تعد موجودة ، سأقوم بإنشاء الكرز لـ 1.13 و 1.12 و 1.11 (إذا نجح التصحيح ، فمن المحتمل أن يتم دمجه في جميع الفروع في بداية الأسبوع المقبل وسيكون جزءًا من إصدارات التصحيح التالية)

أقوم أيضًا بإعادة تشغيل تجربتي https://github.com/kubernetes/kubernetes/issues/71071#issuecomment -449402484 مرة أخرى ، مع إعادة التصحيح إلى 1.12.4. سوف يقدم تقريرا!

لم نواجه أية مشكلات في الوصول إلى الخدمات أثناء تشغيل kube-proxy (وما زال) يعمل في وضع IPVS ولدينا عدد غير قليل من عمليات النشر والتغييرات على الخدمات. حتى الآن أقول إن التصحيح يعمل بشكل جيد بالنسبة لنا.

lbernail عمل رائع في

حسنًا ، دعنا ننتظر حتى يوم الاثنين حتى نحصل أيضًا على تعليقات من matthiasr و bjornryden (أريد تجنب التسرع في اختيار الكرز والتأكد من أن لدينا حلًا نظيفًا هذه المرة)

lbernail أخبار سارة ، شكرًا

لا توجد مشاكل بعد أكثر من 12 ساعة على 1.12.4 مع https://github.com/DataDog/kubernetes/commit/9121f0122d805f55f85f42d26c294898fe29a92f - بدون ذلك حصلت على قفل في 1.5 ساعة ، لذلك يبدو هذا جيدًا جدًا!

lbernail لدي سؤال آخر من فضلك. إذا كان التصحيح التالي هو الإصدار 1.12.5؟
إذا قمت للتو بترقية kube-proxy إلى 1.12.5 ، فإن الوحدات الأخرى (apiserver و kubelet و controller-manager و Scheduler ...) تحافظ على 1.12.3 ، فهل هذا جيد؟ أو يجب علي ترقية جميع الوحدات؟

VincentFF آمل أن يصل إلى 1.12.5 نعم. يمكنك تشغيل kube-proxy 1.12.5 مع وحدات أخرى تعمل بـ 1.12.3 ، لا مشكلة

تحديث: بعد 24 ساعة ، لا توجد مشاكل حتى الآن ، أوقف تجربتي الآن وأعتبرها ناجحة بالكامل. نتطلع إلى 1.12.5!

حسنًا ، هذه أخبار جيدة جدًا. سأقوم بإنشاء اختيار الكرز لجميع الفروع من أجل الحصول على الإصلاح في الإصدارات الرسمية في أقرب وقت ممكن.
شكرا جزيلا لمشاركتك في المساعدة في حل المشكلة والاختبار!

يمكنني الانضمام إلى جوقة الممتحنين السعداء. 4 أيام من حدوث أي مشكلة.

شكرًا جزيلاً لجميع المشاركين ، وخاصةlbernail. سنه جديده سعيده!

أقوم بإنشائه ونشره لاختبار البيئة ، أكثر من 24 ساعة ليس لديهم مشاكل. سنه جديده سعيده.

مرحبا ، حسدتي
نظام التشغيل Ubuntu 16.04.4 LTS
إصدار Kubernetes (استخدم إصدار kubectl): v1.13.0
مزود السحابة أو تكوين الأجهزة: المعدن العاري ، نظام لينكس 64 بت
نواة 4.4.0-75 عام

نفس الخطأ:

I0101 22: 20: 09.742898 267576 graceful_termination.go: 160] محاولة حذف rs: 10.200.198.70:9090/TCP/172.200.101.32:9090
E0101 22: 20: 09.742975 267576 proxier.go: 1519] فشل الحصول على خدمة IPVS ، الخطأ: توقع الحصول على خدمة واحدة فقط = 0
E0101 22: 20: 09.743036 267576 proxier.go: 843] فشل مزامنة نقطة النهاية للخدمة: 10.200.36.192:80/TCP ، خطأ: توقع الحصول على خدمة واحدة فقط = 0

أحتاج إلى إعادة تشغيل kube-proxy لإصلاحه

@ daigong

daigong : الإصلاح الكامل سيكون بالفعل بـ 1.13.2 (يعتمد ذلك على مدى سرعة دمج # 72426)

تضمين التغريدة
شكرًا ، أنا استخدم # 72426 لاختبار هذا الخطأ

كل شيء على ما يرام الآن

تم دمج PR في جميع فروع الإصدار ، لذلك سيكون موجودًا في:

  • 1.11.7
  • 1.12.5
  • 1.13.2

تضمين التغريدة

نفس المشكلة ، كلاهما 1.12.2 و 1.13.0-beta1. @ m1093782566 @ Lion-Wei

كم هو صندوق البريد الخاص بك ، تعرف عليه. .طفولي

نفسه

أي فرصة لبناء جديد في v1.11.x؟

لقد قمت بتحديث صفحات الإصدارات كل ساعة تقريبًا خلال اليومين الماضيين على أمل ظهور 1.12.5 حتى أتمكن من تصحيح هذا الخطأ في مجموعات متعددة. :-)

verwilst هاها ، نفس الشيء ، لا يمكن أن تنتظر إصدار v1.11.7 لترقية مجموعات الإنتاج الحالية. و v1.12.5 أيضًا لبدء الترقية في بيئة منخفضة.

لقد قمت بتحديث صفحات الإصدارات كل ساعة تقريبًا خلال اليومين الماضيين على أمل ظهور 1.12.5 حتى أتمكن من تصحيح هذا الخطأ في مجموعات متعددة. :-)

هنا :- P.

لقد قمت بتحديث صفحات الإصدارات كل ساعة تقريبًا خلال اليومين الماضيين على أمل ظهور 1.12.5 حتى أتمكن من تصحيح هذا الخطأ في مجموعات متعددة. :-)

هنا :- P.

لماذا لا يوجد لـ 1.11؟ :(

هل تم إصلاح هذا الخطأ في 1.11.7؟ لم أر أي ملاحظات الإصدار.

نعم إنه https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.11.md#v1117 :

Fix race condition introduced by graceful termination which can lead to a deadlock in kube-proxy (#72361, @lbernail)

نعم ، لقد نسيت إضافة "IPVS" في مذكرة الإصدار في العلاقات العامة ، آسف لذلك
دعنا نعرف ما إذا كان يعمل بشكل جيد الآن! (سنترك المشكلة مفتوحة لأسابيع فقط في حالة)

لم نواجه أية مشكلات منذ الترقية إلى 1.12.5 🎉

أخبار رائعة!

@ m1093782566 ، thockin أعتقد أنه يمكننا إغلاق هذه المشكلة (لا توجد تقارير جديدة في حوالي شهرين)

كمرجع ، يؤثر الخطأ على الإصدارات الأولية مع الإنهاء السهل:

  • 1.11.5 - 1.11.6
  • 1.12.2 - 1.12.4
  • 1.13.0 - 1.13.1

الإصلاح موجود بعد:

  • 1.11.7
  • 1.12.5
  • 1.13.2

/أغلق

@ m1093782566 : إغلاق هذه القضية.

ردًا على هذا :

/أغلق

تعليمات للتفاعل معي باستخدام تعليقات العلاقات العامة متوفرة هنا . إذا كانت لديك أسئلة أو اقتراحات تتعلق بسلوكي ، فالرجاء رفع قضية ضد

هل يمكننا إعادة الفتح؟ نشهد هذه المشكلة في 1.12.7.

نعم ، نحن نرى المشكلات في 1.12.9 أيضًا

هل أنت متأكد من أنها نفس المشكلة؟
هل يمكنك نشر سجلات مثيل kube-proxy؟

آسف ، ربما كان تنبيهًا كاذبًا ... نرى أن هذه السجلات وليست نفس الخطأ

I0709 11:59:48.640888       1 graceful_termination.go:160] Trying to delete rs: 192.168.240.51:80/TCP/172.30.71.181:5050
I0709 11:59:48.640304       1 graceful_termination.go:93] lw: remote out of the list: 192.168.240.51:80/TCP/172.30.106.125:5050

لسبب ما ، عندما تكون الكتلة قيد التحميل ، لا يمكنها التوجيه إلى بعض عناوين IP الخاصة بخدمة الكتلة. ما زلنا غير متأكدين مما إذا كانت مشكلة IPVS.

ربما يستغرق انتشار نقطة النهاية وقتًا إذا تم تحميل الخادم بشكل زائد؟

الرسائل رسائل عادية على مستوى المعلومات:
https://github.com/kubernetes/kubernetes/blob/master/pkg/proxy/ipvs/graceful_termination.go#L94

https://github.com/kubernetes/kubernetes/blob/master/pkg/proxy/ipvs/graceful_termination.go#L161

يمكنني تأكيد نفس السجل في 1.14.4. متى يخرج هذا السجل؟

I0712 01:34:49.925012       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.1:443/TCP/10.0.22.42:443
I0712 01:34:49.925057       1 graceful_termination.go:175] Deleting rs: 11.3.0.1:443/TCP/10.0.22.42:443
I0712 01:35:11.907742       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.10:53/TCP/11.2.5.13:53
I0712 01:35:11.907874       1 graceful_termination.go:175] Deleting rs: 11.3.0.10:53/TCP/11.2.5.13:53
I0712 01:35:11.908006       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.10:53/UDP/11.2.5.13:53
I0712 01:35:11.908059       1 graceful_termination.go:175] Deleting rs: 11.3.0.10:53/UDP/11.2.5.13:53
I0712 01:35:21.992487       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.10:53/TCP/11.2.4.11:53
I0712 01:35:21.992594       1 graceful_termination.go:175] Deleting rs: 11.3.0.10:53/TCP/11.2.4.11:53
I0712 01:35:21.992784       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.10:53/UDP/11.2.4.11:53
I0712 01:35:21.992858       1 graceful_termination.go:175] Deleting rs: 11.3.0.10:53/UDP/11.2.4.11:53
I0712 01:36:29.411592       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.199:44134/TCP/11.2.0.5:44134
I0712 01:36:29.411660       1 graceful_termination.go:175] Deleting rs: 11.3.0.199:44134/TCP/11.2.0.5:44134
I0712 01:36:29.534158       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.17:8085/TCP/11.2.0.3:8085
I0712 01:36:29.534394       1 graceful_termination.go:175] Deleting rs: 11.3.0.17:8085/TCP/11.2.0.3:8085
I0712 01:36:50.745469       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.1:443/TCP/10.0.22.162:443
I0712 01:36:50.745508       1 graceful_termination.go:172] Not deleting, RS 11.3.0.1:443/TCP/10.0.22.162:443: 0 ActiveConn, 12 InactiveConn
I0712 01:37:37.475724       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.1:443/TCP/10.0.22.162:443
I0712 01:37:37.475841       1 graceful_termination.go:172] Not deleting, RS 11.3.0.1:443/TCP/10.0.22.162:443: 0 ActiveConn, 4 InactiveConn
I0712 01:38:37.475956       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.1:443/TCP/10.0.22.162:443
I0712 01:38:37.476201       1 graceful_termination.go:172] Not deleting, RS 11.3.0.1:443/TCP/10.0.22.162:443: 0 ActiveConn, 4 InactiveConn
I0712 01:39:37.476324       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.1:443/TCP/10.0.22.162:443
I0712 01:39:37.476585       1 graceful_termination.go:175] Deleting rs: 11.3.0.1:443/TCP/10.0.22.162:443
I0712 01:39:37.476628       1 graceful_termination.go:94] lw: remote out of the list: 11.3.0.1:443/TCP/10.0.22.162:443
I0712 01:40:36.883345       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.245:5473/TCP/10.0.22.25:5473
I0712 01:40:36.883566       1 graceful_termination.go:175] Deleting rs: 11.3.0.245:5473/TCP/10.0.22.25:5473
I0712 01:40:36.886079       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.17:8085/TCP/11.2.1.3:8085
I0712 01:40:36.886310       1 graceful_termination.go:175] Deleting rs: 11.3.0.17:8085/TCP/11.2.1.3:8085
I0712 01:40:46.927450       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.245:5473/TCP/10.0.22.191:5473
I0712 01:40:46.927525       1 graceful_termination.go:175] Deleting rs: 11.3.0.245:5473/TCP/10.0.22.191:5473
I0712 01:40:56.968884       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.245:5473/TCP/10.0.22.75:5473
I0712 01:40:56.968936       1 graceful_termination.go:175] Deleting rs: 11.3.0.245:5473/TCP/10.0.22.75:5473
I0712 01:41:16.747362       1 graceful_termination.go:161] Trying to delete rs: 11.3.0.1:443/TCP/10.0.23.45:443

هذه مجرد سجلات معلومات:

  • Trying to delete rs : جراب خلفي تمت إزالته ، محاولة حذفه. إذا كان يحتوي على اتصالات موجودة ، فاجعله يدخل إنهاءًا رشيقًا ، وإلا احذف المعرف
  • Deleting rs : لا يوجد اتصال بين الواجهة الخلفية ، مما يؤدي إلى إزالتها من IPVS

andrewsykim ربما يمكننا الآن تقليل مستوى هذه السجلات بحيث تظهر فقط فوق v = 5 على سبيل المثال؟

في https://github.com/kubernetes/kubernetes/pull/78395 صدمنا مستوى السجل من v = 0 إلى v = 2 ، أعتقد أن v = 5 منطقي. https://github.com/kubernetes/kubernetes/pull/80100 للتحديث

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات