mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-13 22:05:59 +00:00
apply public endpoint filter only for kubelet-readonly
Signed-off-by: Benedikt Bongartz <bongartz@klimlive.de>
This commit is contained in:
parent
099eba784b
commit
c823a21a7a
@ -160,7 +160,12 @@ func ListenAndServeKubeletServer(
|
|||||||
address := netutils.ParseIPSloppy(kubeCfg.Address)
|
address := netutils.ParseIPSloppy(kubeCfg.Address)
|
||||||
port := uint(kubeCfg.Port)
|
port := uint(kubeCfg.Port)
|
||||||
klog.InfoS("Starting to listen", "address", address, "port", port)
|
klog.InfoS("Starting to listen", "address", address, "port", port)
|
||||||
handler := NewServer(host, resourceAnalyzer, auth, tp, kubeCfg)
|
handler := NewServer(host, resourceAnalyzer, auth, kubeCfg)
|
||||||
|
|
||||||
|
if utilfeature.DefaultFeatureGate.Enabled(features.KubeletTracing) {
|
||||||
|
handler.InstallTracingFilter(tp)
|
||||||
|
}
|
||||||
|
|
||||||
s := &http.Server{
|
s := &http.Server{
|
||||||
Addr: net.JoinHostPort(address.String(), strconv.FormatUint(uint64(port), 10)),
|
Addr: net.JoinHostPort(address.String(), strconv.FormatUint(uint64(port), 10)),
|
||||||
Handler: &handler,
|
Handler: &handler,
|
||||||
@ -193,7 +198,11 @@ func ListenAndServeKubeletReadOnlyServer(
|
|||||||
port uint,
|
port uint,
|
||||||
tp oteltrace.TracerProvider) {
|
tp oteltrace.TracerProvider) {
|
||||||
klog.InfoS("Starting to listen read-only", "address", address, "port", port)
|
klog.InfoS("Starting to listen read-only", "address", address, "port", port)
|
||||||
s := NewServer(host, resourceAnalyzer, nil, tp, nil)
|
s := NewServer(host, resourceAnalyzer, nil, nil)
|
||||||
|
|
||||||
|
if utilfeature.DefaultFeatureGate.Enabled(features.KubeletTracing) {
|
||||||
|
s.InstallTracingFilter(tp, otelrestful.WithPublicEndpoint())
|
||||||
|
}
|
||||||
|
|
||||||
server := &http.Server{
|
server := &http.Server{
|
||||||
Addr: net.JoinHostPort(address.String(), strconv.FormatUint(uint64(port), 10)),
|
Addr: net.JoinHostPort(address.String(), strconv.FormatUint(uint64(port), 10)),
|
||||||
@ -270,7 +279,6 @@ func NewServer(
|
|||||||
host HostInterface,
|
host HostInterface,
|
||||||
resourceAnalyzer stats.ResourceAnalyzer,
|
resourceAnalyzer stats.ResourceAnalyzer,
|
||||||
auth AuthInterface,
|
auth AuthInterface,
|
||||||
tp oteltrace.TracerProvider,
|
|
||||||
kubeCfg *kubeletconfiginternal.KubeletConfiguration) Server {
|
kubeCfg *kubeletconfiginternal.KubeletConfiguration) Server {
|
||||||
|
|
||||||
server := Server{
|
server := Server{
|
||||||
@ -284,9 +292,6 @@ func NewServer(
|
|||||||
if auth != nil {
|
if auth != nil {
|
||||||
server.InstallAuthFilter()
|
server.InstallAuthFilter()
|
||||||
}
|
}
|
||||||
if utilfeature.DefaultFeatureGate.Enabled(features.KubeletTracing) {
|
|
||||||
server.InstallTracingFilter(tp)
|
|
||||||
}
|
|
||||||
server.InstallDefaultHandlers()
|
server.InstallDefaultHandlers()
|
||||||
if kubeCfg != nil && kubeCfg.EnableDebuggingHandlers {
|
if kubeCfg != nil && kubeCfg.EnableDebuggingHandlers {
|
||||||
server.InstallDebuggingHandlers()
|
server.InstallDebuggingHandlers()
|
||||||
@ -340,8 +345,8 @@ func (s *Server) InstallAuthFilter() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// InstallTracingFilter installs OpenTelemetry tracing filter with the restful Container.
|
// InstallTracingFilter installs OpenTelemetry tracing filter with the restful Container.
|
||||||
func (s *Server) InstallTracingFilter(tp oteltrace.TracerProvider) {
|
func (s *Server) InstallTracingFilter(tp oteltrace.TracerProvider, opts ...otelrestful.Option) {
|
||||||
s.restfulCont.Filter(otelrestful.OTelFilter("kubelet", otelrestful.WithTracerProvider(tp), otelrestful.WithPublicEndpoint()))
|
s.restfulCont.Filter(otelrestful.OTelFilter("kubelet", append(opts, otelrestful.WithTracerProvider(tp))...))
|
||||||
}
|
}
|
||||||
|
|
||||||
// addMetricsBucketMatcher adds a regexp matcher and the relevant bucket to use when
|
// addMetricsBucketMatcher adds a regexp matcher and the relevant bucket to use when
|
||||||
|
@ -37,7 +37,6 @@ import (
|
|||||||
cadvisorapiv2 "github.com/google/cadvisor/info/v2"
|
cadvisorapiv2 "github.com/google/cadvisor/info/v2"
|
||||||
"github.com/stretchr/testify/assert"
|
"github.com/stretchr/testify/assert"
|
||||||
"github.com/stretchr/testify/require"
|
"github.com/stretchr/testify/require"
|
||||||
oteltrace "go.opentelemetry.io/otel/trace"
|
|
||||||
v1 "k8s.io/api/core/v1"
|
v1 "k8s.io/api/core/v1"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/types"
|
"k8s.io/apimachinery/pkg/types"
|
||||||
@ -371,7 +370,6 @@ func newServerTestWithDebuggingHandlers(kubeCfg *kubeletconfiginternal.KubeletCo
|
|||||||
fw.fakeKubelet,
|
fw.fakeKubelet,
|
||||||
stats.NewResourceAnalyzer(fw.fakeKubelet, time.Minute, &record.FakeRecorder{}),
|
stats.NewResourceAnalyzer(fw.fakeKubelet, time.Minute, &record.FakeRecorder{}),
|
||||||
fw.fakeAuth,
|
fw.fakeAuth,
|
||||||
oteltrace.NewNoopTracerProvider(),
|
|
||||||
kubeCfg,
|
kubeCfg,
|
||||||
)
|
)
|
||||||
fw.serverUnderTest = &server
|
fw.serverUnderTest = &server
|
||||||
|
Loading…
Reference in New Issue
Block a user