Commit Graph

43378 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
91ff1f9840 Merge pull request #101250 from evertrain/master
Bugfix: prevent daemon controller to adopt controller revisions of ot…
2021-11-10 09:19:26 -08:00
Kubernetes Prow Robot
b56dc43458 Merge pull request #106282 from bobbypage/cadvisor-v043
vendor: Bump cAdvisor to v0.43.0
2021-11-10 08:17:38 -08:00
Kubernetes Prow Robot
9b083c4226 Merge pull request #105773 from deepakkinni/2680_fgate_v1
PV controller changes to support PV Deletion protection finalizer
2021-11-10 05:33:26 -08:00
Kubernetes Prow Robot
0c6110e412 Merge pull request #106297 from thockin/svc-testlog-hush
Don't write fake logs to the real test log
2021-11-09 23:59:26 -08:00
Tim Hockin
049e158a8f Don't write fake logs to the real test log
This caused consternation as errors were logged but tests did not fail.
It was expected to log!
2021-11-09 22:56:34 -08:00
Kubernetes Prow Robot
5d60c8d857 Merge pull request #102393 from mengjiao-liu/fix-sysctl-regex
Upgrade preparation to verify sysctl values containing forward slashes by regex
2021-11-09 18:23:26 -08:00
David Porter
b6269ce5de kubelet: update cAdvisor usage for v0.43
* Change cAdvisor manager constructor
* Change call to adding AcceleratorUsageMetrics

Signed-off-by: David Porter <david@porter.me>
2021-11-09 17:09:12 -08:00
Kubernetes Prow Robot
8eda02ccbd Merge pull request #105968 from shivanshu1333/feature3/master/105841
Migrated scheduler files `comparer.go`, `dumper.go`, `node_tree.go` to structured logging
2021-11-09 13:59:47 -08:00
Kubernetes Prow Robot
a41d166a90 Merge pull request #105904 from mengjiao-liu/structured_logging_scheduler
Migrate assume_cache.go to structured logging
2021-11-09 11:28:00 -08:00
Shivanshu Raj Shrivastava
1a079d7b86 migrated comparer.go, dumper.go, node_tree.go to structured logging 2021-11-10 00:53:38 +05:30
Kubernetes Prow Robot
6ac2d8edc8 Merge pull request #105967 from shivanshu1333/feature2/master/105841
Migrated scheduler files `preemption.go`, `stateful.go`, `resource_allocation.go` to structured logging
2021-11-09 10:28:01 -08:00
Kubernetes Prow Robot
8e02b78873 Merge pull request #102534 from wangyysde/create-hpav2stable
Create HPA v2 Stable API
2021-11-09 10:27:48 -08:00
Kubernetes Prow Robot
376b2150d5 Merge pull request #105874 from cyclinder/Add_func_name_to_comment
fix some lint error
2021-11-09 08:29:47 -08:00
evertrain
a67f22c849 add ut for cluster-scoped controller case 2021-11-09 23:50:24 +08:00
Kubernetes Prow Robot
a9ad15c421 Merge pull request #105292 from ravisantoshgudimetla/podOS-field-kubelet
Pod os field kubelet
2021-11-09 06:19:47 -08:00
Kubernetes Prow Robot
927914dec7 Merge pull request #105969 from shivanshu1333/feature4/master/105841
Migrated scheduler file `cache.go` to structured logging
2021-11-09 02:05:39 -08:00
Kubernetes Prow Robot
d3ef2e393b Merge pull request #106058 from marosset/host-process-containers-beta
Move WindowsHostProcessContainers feature-gate to Beta
2021-11-08 19:59:39 -08:00
wangyysde
d2abddd909 rename v2beta2 to v2
Signed-off-by: wangyysde <net_use@bzhy.com>

Generation swagger.json.

Use v2 path for hpa_cpu_field.

run update-codegen.sh

Signed-off-by: wangyysde <net_use@bzhy.com>
2021-11-09 10:34:54 +08:00
wangyysde
f5c75813e3 just copy v2beta2 to v2
Signed-off-by: wangyysde <net_use@bzhy.com>
2021-11-09 08:19:33 +08:00
ravisantoshgudimetla
889d45d3fb [kubelet] Reject pods with OS field mismatch
Once kubernetes#104613 and kubernetes#104693
merge, we'll have OS field in pod spec. Kubelet should start rejecting pods
where pod.Spec.OS and node's OS(using runtime.GOOS) won't match
2021-11-08 19:18:15 -05:00
Tim Hockin
731dc8cf74 Fix regression in kube-proxy (#106214)
* Fix regression in kube-proxy

Don't use a prepend() - that allocates.  Instead, make Write() take
either strings or slices (I wish we could express that better).

* WIP: switch to intf

* WIP: less appends

* tests and ipvs
2021-11-08 15:14:49 -08:00
Kubernetes Prow Robot
cda360c59f Merge pull request #104613 from ravisantoshgudimetla/reconcile-labels
[kubelet]: Reconcile OS and arch labels periodically
2021-11-08 14:15:19 -08:00
Kubernetes Prow Robot
0940dd6fc4 Merge pull request #106163 from aojea/conntrack_readiness
kube-proxy consider endpoint readiness to delete UDP stale conntrack entries
2021-11-08 13:11:44 -08:00
Kubernetes Prow Robot
8b463cd141 Merge pull request #105406 from marosset/kubelet-metrics-for-host-process-containers
Adding kubelet metrics for started and failed to start HostProcess containers
2021-11-08 13:11:20 -08:00
Deepak Kinni
bfd5f23a0b PV controller changes to support PV Deletion protection finalizer
Signed-off-by: Deepak Kinni <dkinni@vmware.com>
2021-11-08 10:35:58 -08:00
Shivanshu Raj Shrivastava
f4aad52885 migrated preemption.go, stateful.go, resource_allocation.go to structured logging 2021-11-08 22:52:47 +05:30
Kubernetes Prow Robot
33de444861 Merge pull request #103095 from haircommander/podAndContainerStatsFromCRI-feature-gate
Kubelet: implement support for podAndContainerStatsFromCRI
2021-11-07 18:26:53 -08:00
Shivanshu Raj Shrivastava
bb31040f06 migrate cache.go to structured logging 2021-11-07 19:20:39 +05:30
Kubernetes Prow Robot
d92a443ca7 Merge pull request #106102 from alculquicondor/delete-pod-tombstone
Ensure deletion of pods in queues and cache
2021-11-06 10:52:51 -07:00
Kubernetes Prow Robot
bdb9c0824c Merge pull request #106158 from thockin/kp-cleanup
kube-proxy iptables code clarity cleanups
2021-11-05 17:20:51 -07:00
ravisantoshgudimetla
21c5c2ec5c [kubelet][podadmission]: Validate and reject pods with mismatching labels 2021-11-05 18:47:43 -04:00
ravisantoshgudimetla
02c1bac0b6 [kubelet]: Sync label periodically 2021-11-05 18:47:43 -04:00
Kubernetes Prow Robot
6d9008b1b0 Merge pull request #105934 from jsafrane/dont-ignore-selinux
Don't guess SELinux support on error
2021-11-05 12:44:51 -07:00
Tim Hockin
f662170ff7 kube-proxy: make iptables buffer-writing cleaner 2021-11-05 12:28:19 -07:00
Tim Hockin
f558554ce0 kube-proxy: minor cleanup
Get rid of overlapping helper functions.
2021-11-05 12:28:19 -07:00
Antonio Ojea
909925b492 kube-proxy: fix stale detection logic
The logic to detect stale endpoints was not assuming the endpoint
readiness.

We can have stale entries on UDP services for 2 reasons:
- an endpoint was receiving traffic and is removed or replaced
- a service was receiving traffic but not forwarding it, and starts
to forward it.

Add an e2e test to cover the regression
2021-11-05 20:14:56 +01:00
Kubernetes Prow Robot
cb040e5097 Merge pull request #106030 from danwinship/session-affinity-readiness
misc iptables proxy fixes
2021-11-05 11:39:21 -07:00
Manu Gupta
79a51090f9 fix: 81134: fix unsafe json for ReleaseControllerRevision (#104049)
* fix: 81134: fix unsafe json for ReleaseControllerRevision

1. Ensures that ReleaseControllerRevision returns a proper json by
marshalling an object into bytes. Otherwise, it returns an error.

2. Also, refactors the code to commonize the merge type
   GenerateDeleteOwnerRefStrategicMergeBytes that returns a byte and is
   used across ReleasePod, ReleaseControllerRevison
   ReleaseReplicaSet.

* Move GeneratePatchBytesForDelete to controller_ref_manager
2021-11-05 06:33:52 -07:00
Kubernetes Prow Robot
ed42bbd722 Merge pull request #106126 from soltysh/remove_old_cronjob
Remove old cronjob controller
2021-11-04 20:35:53 -07:00
Mark Rossetti
ef324d6bbd Adding kubelet metrics for started and failed to start HostProcess containers
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2021-11-04 14:39:57 -07:00
Dan Winship
229ae58520 proxy/iptables: fix all-vs-ready endpoints a bit
Filter the allEndpoints list into readyEndpoints sooner, and set
"hasEndpoints" based (mostly) on readyEndpoints, not allEndpoints (so
that, eg, we correctly generate REJECT rules for services with no
_functioning_ endpoints, even if they have unusable terminating
endpoints).

Also, write out the endpoint chains at the top of the loop when we
iterate the endpoints for the first time, rather than copying some of
the data to another set of variables and then writing them out later.
And don't write out endpoint chains that won't be used

Also, generate affinity rules only for readyEndpoints rather than
allEndpoints, so affinity gets broken correctly when an endpoint
becomes unready.
2021-11-04 16:32:08 -04:00
Dan Winship
3679639cf1 proxy/iptables: Remove a no-op check
There was code to deal with endpoints that have invalid/empty IP
addresses, but EndpointSlice validation already ensures that these
can't exist.
2021-11-04 16:32:08 -04:00
Dan Winship
6ab3dc6875 proxy/iptables: Add more stuff to the unit test
The external traffic policy terminating endpoints test was testing
LoadBalancer functionality against a NodePort service with no
nodePorts (or loadBalancer IPs). It managed to test what it wanted to
test, but it's kind of dubious (and we probably _shouldn't_ have been
generating the rules it was looking for since there was no way to
actually reach the XLB chains). So fix that.

Also make the terminating endpoints test use session affinity, to add
more testing for that. Also, remove the multiple copies of the same
identical Service that is used for all of the test cases in that test.

Also add a "Cluster traffic policy and no source ranges" test to
TestOverallIPTablesRulesWithMultipleServices since we weren't really
testing either of those.

Also add a test of --masquerade-all.
2021-11-04 16:32:08 -04:00
Dan Winship
22a951c096 proxy/iptables: Fix TestOnlyLocalNodePortsNoClusterCIDR
The test got broken to not actually use "no cluster CIDR" when
LocalDetector was implemented (and the old version of the unit test
didn't check enough to actually notice this).
2021-11-04 16:32:08 -04:00
Dan Winship
799c222c84 proxy/iptables: test that we create a consistent set of iptables rules 2021-11-04 16:32:08 -04:00
Dan Winship
9403bfb178 proxy/iptables: Misc improvements to unit test
The original tests here were very shy about looking at the iptables
output, and just relied on checks like "make sure there's a jump to
table X that also includes string Y somewhere in it" and stuff like
that. Whereas the newer tests were just like, "eh, here's a wall of
text, make sure the iptables output is exactly that". Although the
latter looks messier in the code, it's more precise, and it's easier
to update correctly when you change the rules. So just make all of the
tests do a check on the full iptables output.

(Note that I didn't double-check any of the output; I'm just assuming
that the output of the current iptables proxy code is actually
correct...)

Also, don't hardcode the expected number of rules in the metrics
tests, so that there's one less thing to adjust when rules change.

Also, use t.Run() in one place to get more precise errors on failure.
2021-11-04 16:32:06 -04:00
Dan Winship
a1a12ca1da proxy/iptables: Improve the sorting logic in TestOverallIPTablesRulesWithMultipleServices
The test was sorting the iptables output so as to not depend on the
order that services get processed in, but this meant it wasn't
checking the relative ordering of rules (and in fact, the ordering of
the rules in the "expected" string was wrong, in a way that would
break things if the rules had actually been generated in that order).

Add a more complicated sorting function that sorts services
alphabetically while preserving the ordering of rules within each
service.
2021-11-04 16:31:16 -04:00
Dan Winship
08680192fb proxy/iptables: Fix sync_proxy_rules_iptables_total metric
It was counting the number of lines including the "COMMIT" line at the
end, so it was off by one.
2021-11-04 16:30:12 -04:00
Kubernetes Prow Robot
dc93951ad0 Merge pull request #106090 from pohly/log-v-flags
component-base: move v/vmodule/log-flush-frequency into LoggingConfiguration
2021-11-04 12:34:34 -07:00
Kubernetes Prow Robot
2af34cf54d Merge pull request #105940 from dobsonj/kep-1682-ga
Move CSIVolumeFSGroupPolicy feature to GA
2021-11-04 12:34:23 -07:00