Commit Graph

925 Commits

Author SHA1 Message Date
Arda Güçlü
578ddde80e Add singular name for the rest of types 2022-11-18 12:21:13 +03:00
Arda Güçlü
0990ba1cc9 Introduce singularNameProvider for core types
This introduces `singularNameProvider`. This provider will be used
by core types to have their singular names are defined in discovery
endpoint. Thanks to that, core resources singular name always have
higher precedence than CRDs shortcuts or singular names.
2022-11-18 12:21:07 +03:00
Kubernetes Prow Robot
cc704f9778
Merge pull request #113375 from atiratree/PodHealthyPolicy-api
api: add unhealthyPodEvictionPolicy for PDBs
2022-11-11 04:02:10 -08:00
Filip Křepinský
a429797f2e api: add UnhealthyPodEvictionPolicy for PDBs 2022-11-10 23:25:42 +01:00
Takafumi Takahashi
87c1ca88d4 Add API and validation for CrossNamespaceVolumeDataSource 2022-11-09 20:58:25 +00:00
Michal Wozniak
c803892bd8 Enable the feature into beta 2022-11-09 09:02:40 +01:00
lojies
e2a4565a2b cleanup:Omit comparison with boolean constant 2022-11-09 09:54:41 +08:00
Andrew Sy Kim
2aee9b26f7 fix node address validation
Signed-off-by: Andrew Sy Kim <andrewsy@google.com>
2022-11-07 10:22:44 -05:00
kerthcet
04573fb8c9 Add api-side enablement tests for nodeInclusionPolicy when updating
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-11-04 15:11:08 +08:00
kerthcet
21dea23f56 Add api-side enablement tests for nodeInclusionPolicy
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-11-04 15:11:05 +08:00
Kubernetes Prow Robot
8c77820759
Merge pull request #113274 from Huang-Wei/kep-3521-A
[KEP-3521] Part 1: New Pod API .spec.schedulingGates
2022-11-03 21:24:25 -07:00
Wei Huang
7b6293b6b6
APIs, Validation and condition enforcements
- New API field .spec.schedulingGates
- Validation and drop disabled fields
- Disallow binding a Pod carrying non-nil schedulingGates
- Disallow creating a Pod with non-nil nodeName and non-nil schedulingGates
- Adds a {type:PodScheduled, reason:WaitingForGates} condition if necessary
- New literal SchedulingGated in the STATUS column of `k get pod`
2022-11-03 14:32:34 -07:00
Andy Voltz
29f4862ed8 Promote ServiceInternalTrafficPolicy to GA 2022-11-03 13:17:03 -04:00
Laszlo Janosi
82ce61afc7 KEP-1435 Mixed Protocol values in LoadBalancer Service GA
Removed the unit tests that test the cases when the MixedProtocolLBService feature flag was false - the feature flag is locked to true with GA
Added an integration test to test whether the API server accepts an LB Service with different protocols.
Added an e2e test to test whether a service which is exposed by a multi-protocol LB Service is accessible via both ports.
Removed the conditional validation that compared the new and the old Service definitions during an update - the feature flag is locked to true with GA.
2022-11-02 13:44:52 +02:00
Paco Xu
0b848bee4e pvc storage request warning for fractional byte value
- create or update
2022-10-21 16:15:55 +08:00
Jason Simmons
5a6acf85fa Align lifecycle handlers and probes
Align the behavior of HTTP-based lifecycle handlers and HTTP-based
probers, converging on the probers implementation. This fixes multiple
deficiencies in the current implementation of lifecycle handlers
surrounding what functionality is available.

The functionality is gated by the features.ConsistentHTTPGetHandlers feature gate.
2022-10-19 09:51:52 -07:00
Kubernetes Prow Robot
d754183866
Merge pull request #112163 from aojea/static_allocation_ga
graduate ServiceIPStaticSubrange to GA
2022-10-14 17:31:18 -07:00
Kubernetes Prow Robot
525280d285
Merge pull request #112643 from SergeyKanzhelev/removeDynamicKubeletConfig
remove DynamicKubeletConfig feature gate from the code
2022-10-12 01:33:00 -07:00
kerthcet
3ac1c4366f Optimize testcases arrangement
Signed-off-by: kerthcet <kerthcet@gmail.com>
2022-10-08 13:03:21 +08:00
Sergey Kanzhelev
39e49a91d7 remove DynamicKubeletConfig feature gate from the code 2022-09-23 23:14:19 +00:00
JunYang
1706de24d2 use klog.InfoS instead of klog.V(0).Info and log structured(registry part) 2022-09-22 14:59:43 +08:00
Antonio Ojea
c5a07b2e05 graduate ServiceIPStaticSubrange to GA 2022-09-02 07:13:18 +02:00
JunYang
2db4dea565 use klog.InfoS instead of klog.V(0).InfoS 2022-08-25 18:46:34 +08:00
Kubernetes Prow Robot
3e396dbac5
Merge pull request #111657 from aojea/hc_nodeport
document that services healthcheckNodePort is inmutable once set
2022-08-09 13:20:39 -07:00
Antonio Ojea
5ec9d4a530 doc services healthcheckNodePort is inmutable 2022-08-05 11:51:50 +02:00
Kubernetes Prow Robot
9ef16e7908
Merge pull request #108554 from pacoxu/bad-input-1
add deprecated warning for node beta labels in pv/sc/rc/csi storage capacity
2022-08-02 10:23:44 -07:00
Michal Wozniak
04fcbd721c Introduction of a pod condition type indicating disruption. Its reason field indicates the reason:
- PreemptionByKubeScheduler (Pod preempted by kube-scheduler)
- DeletionByTaintManager (Pod deleted by taint manager due to NoExecute taint)
- EvictionByEvictionAPI (Pod evicted by Eviction API)
- DeletionByPodGC (an orphaned Pod deleted by PodGC)PreemptedByScheduler (Pod preempted by kube-scheduler)
2022-08-02 11:12:16 +02:00
Sascha Grunert
584783ee9f
Partly remove support for seccomp annotations
We now partly drop the support for seccomp annotations which is planned
for v1.25 as part of the KEP:

https://github.com/kubernetes/enhancements/issues/135

Pod security policies are not touched by this change and therefore we
have to keep the annotation key constants.

This means we only allow the usage of the annotations for backwards
compatibility reasons while the synchronization of the field to
annotation is no longer supported. Using the annotations for static pods
is also not supported any more.

Making the annotations fully non-functional will be deferred to a
future release.

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2022-08-01 09:19:29 +02:00
Kubernetes Prow Robot
cf2800b812
Merge pull request #111402 from verb/111030-ec-ga
Promote EphemeralContainers feature to GA
2022-07-29 19:29:20 -07:00
Davanum Srinivas
a9593d634c
Generate and format files
- Run hack/update-codegen.sh
- Run hack/update-generated-device-plugin.sh
- Run hack/update-generated-protobuf.sh
- Run hack/update-generated-runtime.sh
- Run hack/update-generated-swagger-docs.sh
- Run hack/update-openapi-spec.sh
- Run hack/update-gofmt.sh

Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2022-07-26 13:14:05 -04:00
Lee Verberne
d238e67ba6 Remove EphemeralContainers feature-gate checks 2022-07-26 02:55:30 +02:00
Abirdcfly
00b9ead02c cleanup: remove duplicate import
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
2022-07-14 11:25:19 +08:00
Tim Hockin
55232e2ef7 Rename IPFamilyPolicyType => IPFamilyPolicy 2022-07-06 15:42:26 -07:00
Antonio Ojea
975a678ecf services strategy no longer depends on IPFamilies
since the refactor on the Service API registry, the strategy for
service no longer needs to keep information about the cluster
configuration and its ipFamilies.
2022-06-10 11:06:02 +02:00
Kubernetes Prow Robot
32c3fb3b78
Merge pull request #110227 from aojea/cleanup
Cleanup feature gate check for SelectorIndex
2022-05-26 14:09:55 -07:00
Antonio Ojea
410aaaa202 cleanup: remove check for GA feature gate 2022-05-26 13:26:49 +02:00
Kubernetes Prow Robot
68fc207cd9
Merge pull request #110027 from zlabjp/fix-ipallocator-metrics
Fix cluster IP allocator metrics
2022-05-25 11:48:31 -07:00
Paco Xu
234c33e8b8 deprecated node labels: make naming consistant and remove some unused args in funcs 2022-05-25 15:15:34 +08:00
Wojciech Tyczyński
b5550a3452 Cleanup portallocator/ipallocator interfaces 2022-05-23 12:19:24 +02:00
terloo
8d09083101 Unified v1/event NewREST function with other 2022-05-15 12:44:59 +08:00
Takashi Kusumi
187af7781a Fix cluster IP allocator metrics 2022-05-13 22:33:30 +09:00
Kubernetes Prow Robot
c50579afb1
Merge pull request #109873 from wojtek-t/migrate_repair_to_new_events
Migrate ipallocator and portallocator to new Events API
2022-05-11 05:01:14 -07:00
Takashi Kusumi
15fac8ab96 Fix ServiceIPStaticSubrange assigns duplicate IP addresses 2022-05-10 17:56:31 +09:00
Wojciech Tyczyński
f1d901861b Migrate ipallocator and portallocator to new Events API 2022-05-09 09:37:47 +02:00
Kubernetes Prow Robot
7af5a7bfc5
Merge pull request #109602 from lavalamp/remove-clustername
Finish clustername removal
2022-05-07 08:01:16 -07:00
Wojciech Tyczyński
1b72a0f5a7 Clean storage shutdown for allocators 2022-05-06 12:01:06 +02:00
Daniel Smith
331525670b Remove ClusterName 2022-05-05 20:12:50 +00:00
Paco Xu
3fbfd7eb1b add deprecated warning for node beta labels in pv/sc/rc/csi storage capacity
- (pv) deprecated label using warning for node affinity
- (storageclass)  deprecated node labels: allowedTopologies.matchLabelExpressions.key
- (CSIStorageCapacity) deprecated node labels
- (RuntimeClass) deprecated node labels
2022-05-04 15:01:13 +08:00
Kubernetes Prow Robot
cc2807c521
Merge pull request #109303 from wojtek-t/clean_storage_shutdown
Cleanup rest storage resources on shutdown
2022-05-03 19:30:57 -07:00
Wojciech Tyczyński
f62c14a9cc Extend StandardStorage with Destroy to implement rbac storage destroy 2022-04-19 15:59:13 +02:00
Wojciech Tyczyński
80060a502c Implement Destroy() method for all registries 2022-04-19 15:59:13 +02:00
Humble Chirammal
c74b393771 csi: add nodeExpandSecret support for CSI client
CSI spec 1.5 enhanced the spec to add optional secrets field to
NodeExpandVolumeRequest. This commit adds NodeExpandSecret to the
CSI PV source and also derive the expansion secret in csiclient to
send it out as part of the nodeexpand request.

Signed-off-by: Humble Chirammal <hchiramm@redhat.com>
Signed-off-by: zhucan <zhucan.k8s@gmail.com>
2022-04-05 11:36:23 +08:00
Kubernetes Prow Robot
9fe98d8bab
Merge pull request #108736 from NetApp/any-volume-data-source-beta
Update AnyVolumeDataSource feature gate to beta
2022-03-29 17:35:25 -07:00
Ben Swartzlander
08948ca779 Update AnyVolumeDataSource feature gate to beta
Default to enabled
Fix validation of null-updates/patches when the "old" PVC was persisted by
an older version. Add upgrade integration tests written by liggitt.
2022-03-29 13:39:48 -04:00
Kubernetes Prow Robot
c239b406f0
Merge pull request #108929 from gnufied/move-expansion-feature-gate-ga
Move all volume expansion feature gates to GA
2022-03-25 18:08:16 -07:00
Kubernetes Prow Robot
e8e0fe9e87
Merge pull request #106792 from aojea/reserved_allocator
KEP-3070: Reserve Service IP Ranges For Dynamic and Static IP Allocation
2022-03-25 13:53:58 -07:00
Hemant Kumar
5e49fb067f Fix flexvolume online resizing tests 2022-03-25 12:52:49 -04:00
Hemant Kumar
ac6ef262df remove ExpandCSIVolume feature gate 2022-03-24 14:53:00 -04:00
Hemant Kumar
9343cce20b remove ExpandPersistentVolume feature gate 2022-03-24 10:02:47 -04:00
Patrick Ohly
edffc700a4 enhance and fix log calls
Some of these changes are cosmetic (repeatedly calling klog.V instead of
reusing the result), others address real issues:

- Logging a message only above a certain verbosity threshold without
  recording that verbosity level (if klog.V().Enabled() { klog.Info... }):
  this matters when using a logging backend which records the verbosity
  level.

- Passing a format string with parameters to a logging function that
  doesn't do string formatting.

All of these locations where found by the enhanced logcheck tool from
https://github.com/kubernetes/klog/pull/297.

In some cases it reports false positives, but those can be suppressed with
source code comments.
2022-03-24 11:13:50 +01:00
Kubernetes Prow Robot
bb67b5e9e8
Merge pull request #108717 from lavalamp/remove-clustername
Remove ClusterName
2022-03-23 22:31:33 -07:00
Kubernetes Prow Robot
9fbe66a486
Merge pull request #103516 from ykakarap/kubectl-subresources-apiserver
kubectl: apiserver changes to add --subresource support
2022-03-23 13:21:32 -07:00
Antonio Ojea
ec0881a920 feature gate for service IP allocation prioritized
Add feature gate ServiceIPStaticSubrange to enable a new strategy
in the Service IP allocators, so the IP range is is subdivided and
dynamic allocated addresses are allocated preferently from the
upper range.
2022-03-23 18:47:23 +01:00
Antonio Ojea
96d71f01eb new bitmap allocator with offset
Implement a new bitmap allocator using an allocation strategy that accepts
and offset and subdivides the range based on this offset, prioritizing the
upper range for dynamic allocation.
2022-03-23 17:58:37 +01:00
Daniel Smith
2831f9a343 remove unneeded references 2022-03-23 15:26:38 +00:00
Yuvaraj Kakaraparthi
801c39b478 kubectl: API changes to support --subresource in kubectl
Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
Co-authored-by: Nikhita Raghunath <nikitaraghunath@gmail.com>
Co-authored-by: Yuvaraj Kakaraparthi <kakaraparthy@vmware.com>
2022-03-23 11:19:58 +05:30
Xudong Liu
c8a6c7f338 promote load balancer class to GA
Signed-off-by: Xudong Liu <xudongliuharold@gmail.com>
2022-03-21 16:16:13 -07:00
Kubernetes Prow Robot
c2d2e66535
Merge pull request #106830 from pacoxu/StreamingProxyRedirects-remove
remove ValidateProxyRedirects and StreamingProxyRedirects
2022-03-04 14:19:53 -08:00
Kubernetes Prow Robot
77eb1a03df
Merge pull request #94637 from liggitt/namespace-before-admission
set/validate object namespace before admission
2022-02-23 14:35:58 -08:00
David Eads
0ec20f97d2 migrate more rest handlers to select by resource enablement 2022-02-22 12:07:43 -05:00
Abdullah Gharaibeh
8a1c70b48c Graduate PodAffinityNamespaceSelector to GA 2022-02-18 12:07:29 -05:00
Madhav Jivrajani
f0ef426238 Update tests to have namespace set in req context
* This updates tests that make requests that call
  into admission.
* For apiextensions-apiserver, the namespace is set
  to metav1.NamespaceNone since the CRD created and
  worked with is a cluster scoped CRD.
* For most tests in register/storage, the namespace
  is set to NamespaceDefault or NamespaceNone based
  on if the resource is cluster scoped (namespaces)
  or namespace scoped (pvs).
* Endpoints tests now have a namespace specified in
  the expected object - NamespaceDefault or other
  based on the test.

Signed-off-by: Madhav Jivrajani <madhav.jiv@gmail.com>
2022-02-17 00:13:34 -05:00
Wojciech Tyczyński
7314286efd Fix validation of event updates 2022-02-10 20:01:45 +01:00
Jordan Liggitt
19d71bb5d5 Validate and populate metadata fields in token request 2022-02-09 14:05:53 -05:00
Jyoti Mahapatra
a1b52fb17a
extend sa token if audience is apiserver (#105954)
Signed-off-by: Jyoti Mahapatra <jyotima@amazon.com>
2022-01-31 16:01:52 -08:00
Tim Hockin
e927ce85b6 service REST: Call Decorator(old) on update path
This is causing a bug when upgrading from older releases to 1.23 because
of Service's maybe-too-clever default-on-read logic.

Service depends on `Decorator()` to be called upon read, to
back-populate old saved objects which do not have `.clusterIPs[]` set.
This works on read, but the cache saves the pre-decorated type (as it is
documented)

In 1.23, this code was refactored and it seems some edge-case handling
was inadvertently removed (I have not confirmed exactly what happened).

Test by aojea
2022-01-30 11:25:17 -08:00
Paco Xu
df81521d88 remove unused parameter: intercceptRedirects & RequireSameHostRedirects 2022-01-28 10:31:51 +08:00
Jordan Liggitt
c0af728f43 Handle invalid selectors properly 2022-01-14 12:11:02 -05:00
Andrew Sy Kim
f68f478e66 core/v1: update unit tests to not expect internalTrafficPolicy when Service Type=ExternalName
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2022-01-04 14:48:04 -05:00
Andrew Sy Kim
438b90fbc4 core/v1: drop Service spec.internalTrafficPolicy on read when type is ExternalName
Signed-off-by: Andrew Sy Kim <kim.andrewsy@gmail.com>
2022-01-04 14:36:19 -05:00
Lars Ekman
1ef96752da Mark ServiceLBNodePortControl as GA 2021-12-16 16:48:58 +01:00
Davanum Srinivas
497e9c1971
Cleanup OWNERS files (No Activity in the last year)
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-12-15 10:34:02 -05:00
Davanum Srinivas
9405e9b55e
Check in OWNERS modified by update-yamlfmt.sh
Signed-off-by: Davanum Srinivas <davanum@gmail.com>
2021-12-09 21:31:26 -05:00
Mengjiao Liu
f3c37c2c82 Remove feature gate NamespaceDefaultLabelName 2021-12-07 16:51:17 +08:00
Paco Xu
15558d6972 remove ValidateProxyRedirects and StreamingProxyRedirects in 1.24 2021-12-06 14:47:06 +08:00
Hanna Lee
07a883d8e6 Remove //lint:ignore pragmas that aren't being used anymore 2021-11-17 08:56:54 +01:00
Hanna Lee
0f3836dcc5 Ignore deprecation warnings with //nolint:staticcheck 2021-11-17 08:55:57 +01:00
Hemant Kumar
63fffd37b1 Implement API changes necessary for recovery from resize failure 2021-11-15 18:39:30 -05:00
Dan Williams
a04997e1a1 pod/storage: remove always-empty 'oldMachine' in setPodHostAndAnnotations()
There's only one caller of setPodHostAndAnnotations() and it always
passes an empty 'oldMachine'.

Signed-off-by: Dan Williams <dcbw@redhat.com>
2021-11-11 16:29:20 -06:00
Kubernetes Prow Robot
3128afa69a
Merge pull request #106296 from thockin/svc-logging-cleanup
Clean up some service logging
2021-11-10 11:51:38 -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
Tim Hockin
26db11f3dc Clean up some service logging
This is a holdover from previous work.  It is not complete, but it
should be incrementally better.
2021-11-09 22:46:22 -08:00
Kubernetes Prow Robot
23df2b97f7
Merge pull request #105302 from ml-/fix-typos
fix multiple typos in go files
2021-11-03 03:20:58 -07:00
Ruochen Xu
6cc9bedfab add condition pre-check for pod uid and pod resource version in bind api 2021-11-02 09:51:15 +08:00
ml
a2441a256b fix multiple typos 2021-10-29 21:43:52 +02:00
Patrick Ohly
a8c930ef46 generic ephemeral volume: graduation to GA
The feature gate gets locked to "true", with the goal to remove it in two
releases.

All code now can assume that the feature is enabled. Tests for "feature
disabled" are no longer needed and get removed.

Some code wasn't using the new helper functions yet. That gets changed while
touching those lines.
2021-10-11 20:54:20 +02:00
Tom Payne
21755f9ec0 Speed up counting of bits in allocator
Benchmark:

goos: linux
goarch: amd64
pkg: k8s.io/kubernetes/pkg/registry/core/service/allocator
cpu: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz

Before:

BenchmarkCountBits-8     9459236               140.4 ns/op

After:

BenchmarkCountBits-8    140667842                9.541 ns/op
2021-10-01 17:09:56 +02:00
Tom Payne
125312a8cf Add extra test and benchmark for count bits 2021-10-01 17:08:36 +02:00
Khaled Henidak (Kal)
a53e2eaeab
move IPv6DualStack feature to stable. (#104691)
* kube-proxy

* endpoints controller

* app: kube-controller-manager

* app: cloud-controller-manager

* kubelet

* app: api-server

* node utils + registry/strategy

* api: validation (comment removal)

* api:pod strategy (util pkg)

* api: docs

* core: integration testing

* kubeadm: change feature gate to GA

* service registry and rest stack

* move feature to GA

* generated
2021-09-24 16:30:22 -07:00
Tim Hockin
52f54ce90d Svc REST: clean up defaultOnRead to be consistent
Headless+selectorless -> RequireDualStack

Headless+selector -> SingleStack

Add test cases to cover this and ExternalName and dual-stack init (which
I think can never trigger, but best to be safe).
2021-09-16 11:17:45 -07:00