Hi all,

I've got a weird bug in Kubernetes where an unclean shutdown of 
kube-apiserver sometimes causes kubelet to lose connectivity with 
kube-apiserver and then get stuck in a mode where it's unable to regain 
connectivity.  Looking at the running "stuck" kubelet process with strace I 
see it opening up a connection to kube-apiserver, sending and receiving 
some data, then close()ing the socket.  It's only open for about 5ms or 
so.  In the typical case the connection stays open indefinitely so I'm not 
sure what's causing it to get closed.

After attaching delve to the stuck process, it looks like 
net/http/transport.go is calling into net/http2/transport.go, but that 
returns an error of ErrNoCachedConn because we're 
using noDialClientConnPool and there are no cached connections.

I'm still trying to figure out how this is *supposed* to work, so that I 
can figure out what's going wrong.  The code comment says, "We let the 
HTTP/1.1 client dial and use its TLS connection instead."

Anyone have any pointers?  Is there any documentation on this?

Thanks,
Chris

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/de632279-bd99-4446-b719-38dbc2e189dfo%40googlegroups.com.

Reply via email to