Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( HeaderTransferEncoding = "Transfer-Encoding" HeaderChunked = "chunked" )
Functions ¶
This section is empty.
Types ¶
type RequestInterceptor ¶
type RequestInterceptor struct {
// contains filtered or unexported fields
}
ReqRequestInterceptor intercepts http/https requests sent from the master, prometheus and metric server, setup proxy tunnel to kubelet, sends requests through the tunnel and sends responses back to the master
func NewRequestInterceptor ¶
func NewRequestInterceptor(udsSockFile string, cfg *tls.Config) *RequestInterceptor
NewRequestInterceptor creates a interceptor object that intercept request from kube-apiserver
func (*RequestInterceptor) ServeHTTP ¶
func (ri *RequestInterceptor) ServeHTTP(w http.ResponseWriter, r *http.Request)
ServeHTTP will proxy the request to the tunnel and return response from tunnel back to the client
type TunnelServer ¶
type TunnelServer interface {
Run() error
}
TunnelServermanages tunnels between itself and agents, receives requests from apiserver, and forwards requests to corresponding agents
func NewTunnelServer ¶
func NewTunnelServer( egressSelectorEnabled bool, interceptorServerUDSFile, serverMasterAddr, serverMasterInsecureAddr, serverAgentAddr string, serverCount int, tlsCfg *tls.Config, proxyClientTlsCfg *tls.Config, wrappers hw.HandlerWrappers, proxyStrategy string) TunnelServer
NewTunnelServer returns a new TunnelServer
Click to show internal directories.
Click to hide internal directories.