Commit Graph

411 Commits

Author SHA1 Message Date
Aditi Sharma
5af10e9828 Migrate to structured logging
migrate pkg/kubelet/server to structured logging.

Signed-off-by: Aditi Sharma <adi.sky17@gmail.com>
2021-03-05 17:55:48 +05:30
Shintaro Murakami
fe7a862c2d Unify determination of whether a volume is ephemeral 2021-03-05 14:49:09 +09:00
pacoxu
cd54bd94e9 deprecate cAdvisor json metrics collected by Kubelet
- remove unused code for cadvisor json metrics collected

Signed-off-by: pacoxu <paco.xu@daocloud.io>
2021-03-02 15:36:21 +08:00
Benjamin Elder
56e092e382 hack/update-bazel.sh 2021-02-28 15:17:29 -08:00
Sri Saran Balaji Vellore Rajakumar
af05a7eca3 Refactor Kubelet Server to take kubeConfiguration instead of multiple fields 2021-02-11 16:15:35 -08:00
Sri Saran Balaji Vellore Rajakumar
51cdf4e97b Add support to disable /debug/pprof and /debug/flags/v endpoint
Co-authored-by: xiaofei.sun <sunxiaofei@kuaishou.com>
Co-authored-by: SaranBalaji90 <srisaranbalaji@gmail.com>
2021-02-11 15:56:53 -08:00
chenyw1990
db5de9169f pkg/kubelet/server: migrate to structured logs 2021-02-09 15:34:52 +08:00
Erik Wilson
a4037d2684
Fix cadvisor machine metrics
Signed-off-by: Ling Samuel <lingsamuelgrace@gmail.com>
2020-12-04 10:08:05 +08:00
Alexey Perevalov
a8b8995ef2 Implement TopologyInfo and cpu_ids in podresources
It covers deviceplugin & cpumanager.

It has drawback, since cpuset and all other structs including cadvisor's keep
cpu as int, but for protobuf based interface is better to have fixed
int.
This patch also introduces additional interface CPUsProvider, while
DeviceProvider might have been extended too.

Checkpoint not covered by unit test.

Signed-off-by: Swati Sehgal <swsehgal@redhat.com>
Signed-off-by: Alexey Perevalov <alexey.perevalov@huawei.com>
2020-11-11 13:50:49 +03:00
Kubernetes Prow Robot
6e95025994
Merge pull request #92165 from RenaudWasTaken/v1-pod-resources
Graduate the Pod Resources API to G.A
2020-11-09 18:24:41 -08:00
Tim Allclair
a439bc5572
Remove --redirect-container-streaming functionality (#95935)
* Remove --redirect-container-streaming functionality

* Update bazel
2020-11-09 11:50:11 -08:00
Renaud Gaubert
817bf784d2 Kubelet now implements the V1 podresources API 2020-10-26 12:10:18 -07:00
Marek Siarkowicz
7d309e0104 Move Kubelet Summary API to staging repo 2020-09-22 18:23:28 +02:00
Renaud Gaubert
4eadf40448 Run gofmt
Signed-off-by: Renaud Gaubert <rgaubert@nvidia.com>
2020-09-15 06:22:44 -07:00
Renaud Gaubert
ba95a8c641 run hack/update-vendor.sh
Signed-off-by: Renaud Gaubert <rgaubert@nvidia.com>
2020-09-15 05:13:33 -07:00
Renaud Gaubert
60304452ff Move podresources api to k8s.io/kubelet/pkg/apis
Signed-off-by: Renaud Gaubert <rgaubert@nvidia.com>
2020-09-15 05:13:33 -07:00
RainbowMango
3c7caff44d remove deprecated kubelet endpoint /metrics/resource/v1alpha1 2020-08-28 09:16:56 +08:00
Jordan Liggitt
f33dc28094 generated: hack/update-hack-tools.sh && hack/update-vendor.sh 2020-07-25 16:45:02 -04:00
Renaud Gaubert
34dc785c0b Add the DisableAcceleratorUsageMetrics feature gate
Signed-off-by: Renaud Gaubert <rgaubert@nvidia.com>
2020-07-13 20:52:06 +00:00
David Ashpole
1f70708f6c update cAdvisor to v0.37.0 2020-07-09 10:23:10 -07:00
Sri Saran Balaji Vellore Rajakumar
05240c9218 Add support for disabling /logs endpoint in kubelet 2020-07-06 07:52:30 -07:00
Kubernetes Prow Robot
0e37bcce2c
Merge pull request #88385 from tallclair/node-reviews
Remove tallclair from some OWNERS files
2020-05-24 20:23:11 -07:00
Davanum Srinivas
0608e8be25
update bazel BUILD files
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-20 10:57:47 -04:00
Davanum Srinivas
5692926914
Move packages for slightly better UX for consumers
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-20 10:57:46 -04:00
Kubernetes Prow Robot
036fcda230
Merge pull request #89412 from coderanger/fix-kubelet-method-metrics
Apply the same style of fix as #87913 but for HTTP methods too.
2020-05-18 17:43:36 -07:00
Kubernetes Prow Robot
b170451caa
Merge pull request #90183 from dims/update-kubernetes-to-klog-v2
Update kubernetes to klog v2
2020-05-16 18:59:51 -07:00
Kubernetes Prow Robot
42fa1c081f
Merge pull request #88568 from RainbowMango/pr_cleanup_resource_metrics_ut
Clean up duplicate code and remove import cycle.
2020-05-16 16:09:36 -07:00
Davanum Srinivas
07d88617e5
Run hack/update-vendor.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:33 -04:00
Davanum Srinivas
442a69c3bd
switch over k/k to use klog v2
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:54:27 -04:00
Davanum Srinivas
9006b2db69
Fix for API change in cadvisor
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-05-16 07:53:03 -04:00
Tim Allclair
029a144ae9 Remove tallclair from some OWNERS files 2020-05-11 11:44:38 -07:00
Kubernetes Prow Robot
ba35704b51
Merge pull request #81443 from mikedanese/socks5
rest.Config: support configuring an explict proxy URL
2020-05-10 06:05:50 -07:00
Kubernetes Prow Robot
423c17d859
Merge pull request #90086 from rvillablanca/fix/handle-error-parseform
Handling error returned by request.Request.ParseForm()
2020-05-09 22:07:50 -07:00
Mike Danese
652a48d2e7 wire up proxier in spdy transport
and delete useless function
2020-05-07 09:13:58 -07:00
cici37
7f4d19167e Move pkg/util/configz to k8s.io/component-base 2020-04-29 12:17:25 -07:00
Aaron Crickenberger
a7af20922f use forbiddenPrefixes instead of allowedPrefixes 2020-04-28 08:41:36 -07:00
Aaron Crickenberger
f306a0dbb4 convert .import-restrictions to yaml
yaml has comments, so we can explain why we have certain rules or
certain prefixes

for those files that weren't already commented yaml, I converted them to
yaml and took a best guess at comments based on the PRs that introduced
or updated them
2020-04-28 08:41:36 -07:00
Rodrigo Villablanca
1014d307a5 After run ./hack/update-bazel.sh 2020-04-15 09:24:54 -04:00
Rodrigo Villablanca
ae603b8ef1 Add some testing 2020-04-13 12:47:07 -04:00
Rodrigo Villablanca
0972c9ba4d Improvements 2020-04-13 12:47:07 -04:00
Rodrigo Villablanca
a68482290d Handling error returned by request.Request.ParseForm() 2020-04-13 12:47:07 -04:00
Kubernetes Prow Robot
9441df3aad
Merge pull request #89808 from fuweid/close-resize-chan
remotecommand: close resize channel for notification
2020-04-06 13:47:46 -07:00
Wei Fu
d2b59f10c5 remotecommand: close resize channel for notification
Remotecommand package should notify executor by closing resizeChan.

Signed-off-by: Wei Fu <fuweid89@gmail.com>
2020-04-06 23:32:23 +08:00
Noah Kantrowitz
14969831e9 Apply the same style of fix as #87913 but for HTTP methods too.
Go does not validate HTTP methods beyond len!=0 and that they don't contain HTTP meta chars like a newline. Also to using string sets instead of maps.
2020-04-02 02:15:04 -07:00
Davanum Srinivas
a1bceb8915
add import restrictions
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-03-30 10:45:22 -04:00
Davanum Srinivas
765e926d35
Avoid using internal packages for streaming/ package
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2020-03-29 18:42:27 -04:00
RainbowMango
7b7c73bf87 Clean up duplicate code and remove import cycle. 2020-02-26 15:19:29 +08:00
Walter Fender
9802bfcec0 Add code to fix kubelet/metrics memory issue.
Bucketing url paths based on concept/handling.
Bucketing code placed by handling code to encourage usage.
Added unit tests.
Fix format.
2020-02-07 15:12:24 -08:00
Kubernetes Prow Robot
be26fbc638
Merge pull request #86282 from RainbowMango/pr_refactor_resource_endpoint
Refactor kubelet resource metrics
2020-01-14 02:23:09 -08:00
Ted Yu
906adbdfcd Require client / server protocols 2020-01-06 08:50:04 -08:00
RainbowMango
c394d821fd Deal with auto-generated files:
- Update bazel by hack/update-bazel.sh
2019-12-16 10:27:02 +08:00
RainbowMango
ecf5f7d749 Deprecated metrics under /metrics/resource/v1alpha1 2019-12-16 10:27:02 +08:00
RainbowMango
0db7074e1a Add new endpoint for resource metrics. 2019-12-16 10:26:54 +08:00
RainbowMango
214228f024 Remove the derprecated API RawRegister from stability framework 2019-11-19 18:56:09 +08:00
RainbowMango
159f56bf9b Deal with auto-generated files.
Update bazel by hack/update-bazel.sh
2019-11-08 20:21:48 +08:00
RainbowMango
2e8dcf7809 Migrate custom collector and mark metrics with ALPHA. 2019-11-08 20:19:37 +08:00
Kubernetes Prow Robot
f7d0e9b3f1
Merge pull request #84393 from wuyafang/remove_promhttp_from_kubelet
remove reference to promhttp in kubelet
2019-11-07 13:27:42 -08:00
Jordan Liggitt
297570e06a hack/update-vendor.sh 2019-11-06 17:42:34 -05:00
wuyafang
78d24f59dd remove reference to promhttp in kubelet 2019-10-26 09:10:33 +08:00
David Eads
ff689ce3de set backup value to ensure connections against kubelets eventually close 2019-10-16 13:39:14 -04:00
SataQiu
77f42c8108 eliminate direct references to prometheus 2019-10-04 21:33:34 +08:00
Kubernetes Prow Robot
b72d550672
Merge pull request #78563 from qingsenLi/k8s-190531
Delete the redundant define test
2019-09-26 01:25:10 -07:00
Jordan Liggitt
92eb072989 Propagate context to Authorize() calls 2019-09-24 11:14:54 -04:00
zhuangqh
057caf7fcf kubelet: refactor server containerLogs test to table driven test
Signed-off-by: zhuangqh <zhuangqhc@gmail.com>
2019-09-09 10:04:45 +08:00
Han Kang
3a50917795 migrate kubelet's metrics/probes & metrics endpoint to metrics stability framework 2019-08-28 11:16:38 -07:00
Tim Allclair
8a495cb5e4 Clean up error messages (ST1005) 2019-08-21 10:40:21 -07:00
Tim Allclair
e06912ca3e Clean up deprecated references 2019-08-21 10:40:21 -07:00
Tim Allclair
3f510c69f6 Remove dead code from pkg/kubelet/... 2019-08-21 10:40:21 -07:00
Kubernetes Prow Robot
59d29b67d9
Merge pull request #59484 from verb/debug-kubelet-1
Add support for Ephemeral Containers to the kubelet
2019-08-21 00:29:17 -07:00
Lee Verberne
ea212d5d49 Add support for ephemeral containers to the kubelet 2019-07-24 16:24:26 +00:00
Elana Hashman
e0b66c792b
Drop "pod_name" and "container_name" metric labels
These labels were deprecated in 1.14 (#69099) and should no longer be
used in metric queries.
2019-07-19 10:08:21 -07:00
Tim Allclair
72951efdaf Cleanup kubelet authz tests & make explicit 2019-07-18 13:35:11 -07:00
Dr. Stefan Schimanski
e848eaa566 apiserver: store httplog in context 2019-06-26 18:33:19 +02:00
Kubernetes Prow Robot
2dc0c01068
Merge pull request #78222 from humblec/volume_stats
Fix nil pointer dereference in metrics value calculator.
2019-06-17 04:36:11 -07:00
Kubernetes Prow Robot
6602f61596
Merge pull request #79002 from jiayingz/add-cadvisor-metrics
Enable cadvisor ProcessMetrics collecting.
2019-06-15 08:53:04 -07:00
Jiaying Zhang
edcfdc4cbf Enable cadvisor ProcessMetrics collecting. 2019-06-13 16:21:24 -07:00
qingsenLi
94e4f27725 Delete the redundant define test 2019-06-04 01:13:09 +08:00
Kubernetes Prow Robot
6b6bdc760a
Merge pull request #78504 from dashpole/deprecate_cadvisor_json
Add kubelet flag to disable cadvisor json apis, and mark it deprecrated
2019-06-01 04:44:55 -07:00
David Ashpole
785d40923a add kubelet flag to disable cadvisor json apis, and mark it deprecrated 2019-05-30 10:39:45 -07:00
Humble Chirammal
cada0270fe Fix nil pointer dereference in metrics value calculator.
The metrics structure passed to volume stat calculator
can contain real stats on subset of metrics fields. For example,
the metrics structure filled by a CSI driver can have
either INODES or BYTES filled, IOW it a valid return.
In such cases the volume stat calculator panic with below
trace:

0516 21:36:19.013143   14452 runtime.go:69] Observed a panic: "invalid memory address or nil pointer dereference" (runtime error: invalid memory address or nil pointer dereference)
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:76
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:65
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:51
/usr/local/go/src/runtime/panic.go:522
/usr/local/go/src/runtime/panic.go:82
/usr/local/go/src/runtime/signal_unix.go:390
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/api/resource/quantity.go:697
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/api/resource/quantity.go:685
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/kubelet/server/stats/volume_stat_calculator.go:144
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/kubelet/server/stats/volume_stat_calculator.go:125
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/pkg/kubelet/server/stats/volume_stat_calculator.go:65
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:152
/home/hchiramm/gopath/src/k8s.io/kubernetes/_output/local/go/src/k8s.io/kubernetes/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:153
/usr/local/go/src/runtime/asm_amd64.s:1337

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
2019-05-27 16:36:39 +05:30
Han Kang
2d48b3e81e add process start time metric to metric probes since they use counters 2019-05-16 08:19:29 -07:00
Haiyan Meng
4751f40319
Remove the host label from the kubelet http traffic metrics
Signed-off-by: Haiyan Meng <haiyanmeng@google.com>
2019-05-10 13:46:35 -07:00
Kubernetes Prow Robot
b7dc0124a0
Merge pull request #77379 from tedyu/http-stat-map
Use map to check whether stack trace is needed
2019-05-09 14:13:34 -07:00
Ted Yu
85fc089855 Use map to check whether stack trace is needed
Signed-off-by: Ted Yu <yute@vmware.com>
2019-05-08 14:31:50 -07:00
Ted Yu
fe6e50df3d Use map to check for long-running request
Signed-off-by: Ted Yu <yute@vmware.com>
2019-04-30 19:32:35 -07:00
Haiyan Meng
538cd87864
Add metrics to monitor the kubelet http server
Signed-off-by: Haiyan Meng <haiyanmeng@google.com>
2019-04-11 14:16:57 -07:00
Davanum Srinivas
33081c1f07
New staging repository for cri-api
Change-Id: I2160b0b0ec4b9870a2d4452b428e395bbe12afbb
2019-03-26 18:21:04 -04:00
Kubernetes Prow Robot
535064773a
Merge pull request #73946 from dashpole/prometheus_core_metrics
Add kubelet resource metrics v1alpha1 endpoint
2019-03-07 22:43:28 -08:00
David Ashpole
6051664c0f add kubelet prometheus resource metrics endpoint 2019-03-07 15:39:37 -08:00
Yu-Ju Hong
191666d6a3 Fix computing of cpu nano core usage
CRI runtimes do not supply cpu nano core usage as it is not part of CRI
stats. However, there are upstream components that still rely on such
stats to function. The previous fix was faulty because the multiple
callers could compete and update the stats, causing
inconsistent/incoherent metrics. This change, instead, creates a
separate call for updating the usage, and rely on eviction manager,
which runs periodically, to trigger the updates. The caveat is that if
eviction manager is completley turned off, no one would compute the
usage.
2019-03-05 09:25:40 -08:00
Kubernetes Prow Robot
272d78f1d9
Merge pull request #73966 from alculquicondor/fix/lint-kubelet-server
Fix lint on pkg/kubelet/server/...
2019-02-25 20:27:48 -08:00
Kubernetes Prow Robot
2f2945732b
Merge pull request #69099 from ehashman/issue-66790
Rename cadvisor metric labels to match instrumentation guidelines
2019-02-22 14:56:01 -08:00
Aldo Culquicondor
e61cd68bf3 Fix lint on pkg/kubelet/server/... 2019-02-21 10:31:41 -05:00
xichengliudui
5aa58efe07 Fix golint failures
update pull request
2019-02-12 07:14:57 -05:00
Elana Hashman
3539e89af2 Rename labels to match instrumentation guidelines
For the next release, we include both sets of labels for pods and
containers: "container_name" and "container", "pod_name" and "pod".
In future releases, the "*_name" metrics will be deprecated.
2019-01-28 12:36:20 -05:00
Marek Counts
1739e343a8 autogen files
all the autogen files that got updated due to the changes to move logs.
2019-01-17 09:16:36 -05:00
Marek Counts
ba81a5409a move logs into component-base
all the code changes to move move /apiserver/pkg/util/logs into /component-base/logs
2019-01-17 09:16:21 -05:00
David Ashpole
54e581930c fix node and kubelet start times 2018-12-05 15:07:52 -08:00
David Ashpole
630cb53f82 add kubelet grpc server for pod-resources service 2018-11-15 09:43:20 -08:00
Davanum Srinivas
954996e231
Move from glog to klog
- Move from the old github.com/golang/glog to k8s.io/klog
- klog as explicit InitFlags() so we add them as necessary
- we update the other repositories that we vendor that made a similar
change from glog to klog
  * github.com/kubernetes/repo-infra
  * k8s.io/gengo/
  * k8s.io/kube-openapi/
  * github.com/google/cadvisor
- Entirely remove all references to glog
- Fix some tests by explicit InitFlags in their init() methods

Change-Id: I92db545ff36fcec83afe98f550c9e630098b3135
2018-11-10 07:50:31 -05:00