Commit Graph

2462 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
dd649bb7ef
Merge pull request #91342 from mgugino-upstream-stage/evict-deleted-ok
Eviction: ignore PDBs if pods with DeletionTimestamp
2020-07-09 15:30:33 -07:00
Kubernetes Prow Robot
94a08e159a
Merge pull request #92387 from pohly/csi-storage-capacity
CSI storage capacity check
2020-07-09 00:04:59 -07:00
Chelsey Chen
e010436e2a Update conversion between ReportingController and Source.Component 2020-07-08 08:46:38 -04:00
Sascha Grunert
c3ba2d8b8b
Add seccomp GA version skew for pods
This adds a new conversion function to the pod strategy to handle the
seccomp version skew strategy:

https://github.com/kubernetes/enhancements/blob/master/keps/sig-node/20190717-seccomp-ga.mdversion-skew-strategy

Signed-off-by: Sascha Grunert <sgrunert@suse.com>
2020-07-06 16:06:24 +02:00
Paulo Gomes
8976e3620f
Add seccomp enforcement and validation based on new GA fields
Adds seccomp validation.

This ensures that field and annotation values must match when present.

Co-authored-by: Sascha Grunert <sgrunert@suse.com>
2020-07-06 09:13:25 +01:00
Patrick Ohly
9a66e8e1b5 CSIStorageCapacity: 'make update' 2020-07-03 21:54:14 +02:00
Patrick Ohly
1089954fa6 CSIStorageCapacity: CSIDriver.Spec.StorageCapacity field
This is needed to inform the Kubernetes pod scheduler whether it has
to check CSIStorageCapacity objects for available capacity.
2020-07-03 21:54:14 +02:00
Patrick Ohly
22aeb81e84 CSIStorageCapacity: CSIStorageCapacity API
This adds the CSIStorageCapacity API change for
https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/1472-storage-capacity-tracking
2020-07-03 21:54:14 +02:00
Kubernetes Prow Robot
1b871091b9
Merge pull request #91645 from chelseychen/event-api
Promote new Event API to v1
2020-07-02 04:16:46 -07:00
Kubernetes Prow Robot
94e1c54735
Merge pull request #92655 from BenTheElder/cleanup-some-owners
Cleanup some owners
2020-07-01 23:14:08 -07:00
Chelsey Chen
c90330d8f4 Auto generated changes 2020-07-01 10:50:34 -04:00
Chelsey Chen
75612c1746 Promote new Event API to v1 2020-07-01 10:50:28 -04:00
Benjamin Elder
2abc8afece eparis to emeritus 2020-06-30 09:50:44 -07:00
Benjamin Elder
960ef085e9 zmerlynn to emeritus 2020-06-30 09:43:59 -07:00
Kubernetes Prow Robot
2e12311d2e
Merge pull request #91606 from danwinship/service-ipallocator-cleanups
Service IPAllocator cleanups
2020-06-30 00:02:27 -07:00
Mark Janssen
e3a0ca2731 Fix staticcheck failures for pkg/registry/...
Errors from staticcheck:
pkg/registry/autoscaling/horizontalpodautoscaler/storage/storage_test.go:207:7: this value of err is never used (SA4006)
pkg/registry/core/namespace/storage/storage.go:256:5: options.OrphanDependents is deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both. +optional  (SA1019)
pkg/registry/core/namespace/storage/storage.go:257:11: options.OrphanDependents is deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both. +optional  (SA1019)
pkg/registry/core/namespace/storage/storage.go:266:5: options.OrphanDependents is deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both. +optional  (SA1019)
pkg/registry/core/namespace/storage/storage.go:267:11: options.OrphanDependents is deprecated: please use the PropagationPolicy, this field will be deprecated in 1.7. Should the dependent objects be orphaned. If true/false, the "orphan" finalizer will be added to/removed from the object's finalizers list. Either this field or PropagationPolicy may be set, but not both. +optional  (SA1019)
pkg/registry/core/persistentvolumeclaim/storage/storage_test.go:165:2: this value of err is never used (SA4006)
pkg/registry/core/resourcequota/storage/storage_test.go:202:7: this value of err is never used (SA4006)
pkg/registry/core/service/ipallocator/allocator_test.go:338:2: this value of other is never used (SA4006)
pkg/registry/core/service/portallocator/allocator_test.go:199:2: this value of other is never used (SA4006)
pkg/registry/core/service/storage/rest_test.go:1843:2: this value of location is never used (SA4006)
pkg/registry/core/service/storage/rest_test.go:1849:2: this value of location is never used (SA4006)
pkg/registry/core/service/storage/rest_test.go:3174:20: use net.IP.Equal to compare net.IPs, not bytes.Equal (SA1021)
pkg/registry/core/service/storage/rest_test.go:3178:20: use net.IP.Equal to compare net.IPs, not bytes.Equal (SA1021)
pkg/registry/core/service/storage/rest_test.go:3185:20: use net.IP.Equal to compare net.IPs, not bytes.Equal (SA1021)
pkg/registry/core/service/storage/rest_test.go:3189:20: use net.IP.Equal to compare net.IPs, not bytes.Equal (SA1021)
2020-06-21 17:23:42 +02:00
Kubernetes Prow Robot
342bcf55e8
Merge pull request #89937 from aojea/portAllocator2
portAllocator sync local data before allocate
2020-06-18 19:03:10 -07:00
Kubernetes Prow Robot
53f3699cf9
Merge pull request #89778 from cmluciano/cml/ingressv1
ingress: Add Ingress to v1 API and update backend to defaultBackend
2020-06-16 23:10:39 -07:00
Kubernetes Prow Robot
fbc78f53b7
Merge pull request #91590 from knight42/fix/repair-node-port
fix(service::repair): accept same nodePort with different protocols
2020-06-15 18:14:10 -07:00
knight42
136849728c
address comments 2020-06-13 09:30:20 +08:00
Kubernetes Prow Robot
9ccf6f7de7
Merge pull request #91818 from wojtek-t/remove_cachesize
Remove heuristic watchcache sizes
2020-06-10 22:43:24 -07:00
knight42
e0d125b046
fix(service::repair): accept same nodePort with different protocols
Signed-off-by: knight42 <anonymousknight96@gmail.com>
2020-06-10 23:35:07 +08:00
Kubernetes Prow Robot
d01cc01ab4
Merge pull request #91400 from danwinship/ipfamily-validation
service: fix IPFamily validation and defaulting problems
2020-06-08 17:55:18 -07:00
Kubernetes Prow Robot
04dec17d5b
Merge pull request #90342 from liggitt/scale-patch
patch scale subresources inside guaranteedupdate loop
2020-06-08 15:11:19 -07:00
wojtekt
5ceb53987b Remove heuristic watchcache sizes 2020-06-08 13:32:52 +02:00
Kubernetes Prow Robot
3f8bb1bf50
Merge pull request #91685 from liggitt/csr-v1
CertificateSigningRequest v1 API
2020-06-05 15:30:14 -07:00
Jordan Liggitt
a504445086 Generated files
Change-Id: I598d686849f4b97846757b227f5191bac031798b
2020-06-05 04:58:14 +00:00
Jordan Liggitt
e0f5cca410 Copy CSR v1beta1 to v1
* Remove prerelease tags
* Update copyright, package, imports to v1
* Remove signerName, usages, and condition status defaulting
2020-06-05 00:47:24 -04:00
Kubernetes Prow Robot
e422e9a3f4
Merge pull request #91595 from jpbetz/get-list-storage-options
Introduce GetOptions and ListOptions to storage interface
2020-06-03 12:18:11 -07:00
Joe Betz
4c99949ae6 Add GetOptions and ListOptions to storage interface 2020-06-03 10:21:38 -07:00
Kubernetes Prow Robot
84861d2102
Merge pull request #91558 from liggitt/csr-e2e
Add e2e coverage for the CertificateSigningRequest API, enable patch support for approval subresource
2020-06-02 06:28:15 -07:00
Kubernetes Prow Robot
5fb9e35e57
Merge pull request #90191 from liggitt/csr-status
CSR condition status, lastTransitionTime, versioned validation
2020-06-01 23:34:15 -07:00
Michael Gugino
dd49915c55 Eviction: ignore PDBs if pods with DeletionTimestamp
When using the eviction API, if a pod already has
a non-zero DeletionTimestamp, we don't need to check
PDBs as it has already been marked for deletion.
2020-06-02 01:06:45 -04:00
Dan Winship
f6dcc1c07e Minor tweak to IPv6 service IP allocation
The service allocator skips the "broadcast address" in the service
CIDR, but that concept only applies to IPv4 addressing.
2020-06-01 08:16:18 -04:00
Dan Winship
4a7c86c105 make test a bit more generic 2020-06-01 08:13:27 -04:00
Dan Winship
ddebbfd806 update for APIs being moved to utilnet
Several of the functions in pkg/registry/core/service/ipallocator were
moved to k8s.io/utils/net, but then the original code was never
updated to used to the vendored versions.

(utilnet's version of RangeSize does not have the IPv6 special case
that the original code did, so we need to move that to
NewAllocatorCIDRRange now.)
2020-05-30 17:40:02 -04:00
Kubernetes Prow Robot
d1586ea3f9
Merge pull request #91502 from deads2k/dyn-audit-removal-00
remove --feature-gates=DynamicAuditing
2020-05-29 11:56:20 -07:00
Kubernetes Prow Robot
825eb77c88
Merge pull request #83906 from mgugino-upstream-stage/pdb-exclude-pending
Allow deletion of pending pods when using PDBS
2020-05-29 11:55:34 -07:00
Jordan Liggitt
e11404ac1f Add patch support for certificatesigningrequests/approval 2020-05-29 11:50:44 -04:00
Jordan Liggitt
7049149181 Generated files 2020-05-28 16:53:23 -04:00
Michael Gugino
047b0cee71 Quit retrying early with user supplied resourceVersion
This commit also updates tests and comments.
2020-05-28 16:14:45 -04:00
Jordan Liggitt
aed0621f2e Plumb version info to validation, separate main/status/approval validation 2020-05-28 12:20:40 -04:00
David Eads
e857adbdfd remove-api 2020-05-27 16:58:05 -04: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
Clayton Coleman
c6b833ac3c service: fix IPFamily validation and defaulting problems
If the dual-stack flag is enabled and the cluster is single stack IPv6,
the allocator logic for service clusterIP does not properly handle rejecting
a request for an IPv4 family. Return a 422 Invalid on the ipFamily field
when the dual stack flag is on (as it would when it hits beta) and the
cluster is configured for single-stack IPv6.

The family is now defaulted or cleared in BeforeCreate/BeforeUpdate,
and is either inherited from the previous object (if nil or unchanged),
or set to the default strategy's family as necessary. The existing
family defaulting when cluster ip is provided remains in the api
section. We add additonal family defaulting at the time we allocate
the IP to ensure that IPFamily is a consequence of the ClusterIP
and prevent accidental reversion. This defaulting also ensures that
old clients that submit a nil IPFamily for non ClusterIP services
receive a default.

To properly handle validation, make the strategy and the validation code
path condition on which configuration options are passed to service
storage. Move validation and preparation logic inside the strategy where
it belongs. Service validation is now dependent on the configuration of
the server, and as such ValidateConditionService needs to know what the
allowed families are.
2020-05-23 11:08:19 -04:00
Christopher M. Luciano
2b091f60ca
ingress: Add Ingress to v1 API and update backend to defaultBackend
ingress: use new serviceBackend split

ingress: remove all v1beta1 restrictions on creation

This change removes creation and update restrictions enforced by
k8s 1.18 for not allowing resource backends.

Paths are no longer
required to be valid regex and a PathType is now user-specified
and no longer defaulted.

Also remove all TODOs in staging/net/v1 types

Signed-off-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2020-05-22 11:57:41 -04:00
Kubernetes Prow Robot
fdbb960354
Merge pull request #90934 from iobuf/cronjob
CronJob: cleanup legacy ScheduledJob vars,docs
2020-05-19 20:35:11 -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
David Eads
4522141f0a reduce complexity in pdb refactor 2020-05-14 15:25:59 -04:00
Kubernetes Prow Robot
77a86a52c0
Merge pull request #91034 from liggitt/ingress-validation
Ingress validation
2020-05-12 21:01:11 -07:00
Jordan Liggitt
8f7b8105a1 Remove ingress regex path requirement 2020-05-12 15:38:15 -04:00
Michael Gugino
9f80e7a6f8 Allow deletion of pending pods when using PDBS
Currently, if you have a PDB set, it is possible for
a pod stuck in pending state to be prevented from
deletion even though there are in fact enough healthy
replicas.

This commit allows pods in Pending state to be removed.

This commit also adds associated unit tests.

related-bug: #80389
2020-05-12 12:44:05 -04:00
Tim Allclair
029a144ae9 Remove tallclair from some OWNERS files 2020-05-11 11:44:38 -07:00
Zhou Peng
b33e202397 CronJob: cleanup legacy ScheduledJob vars,docs
Signed-off-by: Zhou Peng <p@ctriple.cn>
2020-05-10 00:45:21 +08:00
Kubernetes Prow Robot
68ade56a47
Merge pull request #90534 from apelisse/mutatinggcfields-fieldmanager
Changes to ManagedFields is not mutation for GC
2020-05-09 07:23:50 -07:00
Jordan Liggitt
23e9fb1bb5 Fix podIP validation 2020-04-30 19:49:45 -04:00
Antoine Pelisse
89b68bacf1 Changes to ManagedFields is not mutation for GC 2020-04-29 09:29:43 -07:00
Kubernetes Prow Robot
43cd2ff239
Merge pull request #89549 from happinesstaker/sa-rotate
Monitoring safe rollout of time-bound service account token.
2020-04-22 17:01:58 -07:00
Jiajie Yang
ae0e52d28c Monitoring safe rollout of time-bound service account token. 2020-04-22 11:59:16 -07:00
Jie Shen
363bb39142
Use utils.net to parse ports instead of atoi (#89120) 2020-04-21 20:55:52 -07:00
Jordan Liggitt
dab2a830da Fix conflicts patching scale subresources 2020-04-21 16:36:24 -04:00
Antonio Ojea
e3df13439a fix service allocation concurrency issues
The service allocator is used to allocate ip addresses for the
Service IP allocator and NodePorts for the Service NodePort
allocator. It uses a bitmap backed by etcd to store the allocation
and tries to allocate the resources directly from the local memory
instead from etcd, that can cause issues in environment with
high concurrency.

It may happen, in deployments with multiple apiservers, that the
resource allocation information is out of sync, this is more
sensible with NodePorts, per example:

1. apiserver A create a service with NodePort X
2. apiserver B deletes the service
3. apiserver A creates the service again

If the allocation data of apiserver A wasn't refreshed with the
deletion of apiserver B, apiserver A fails the allocation because
the data is out of sync. The Repair loops solve the problem later,
but there are some use cases that require to improve the concurrency
in the allocation logic.

We can try to not do the Allocation and Release operations locally,
and try instead to check if the local data is up to date with etcd,
and operate over the most recent version of the data.
2020-04-20 09:50:00 +02:00
Antonio Ojea
cb87793d57 Add unit test to portallocator storage
Add unit test for the portallocator storage based on
the ipallocator ones.

pkg/registry/core/service/ipallocator/storage/storage_test.go
2020-04-20 09:49:59 +02:00
Kubernetes Prow Robot
cc75cd5aba
Merge pull request #90036 from MikeSpreitzer/fix-psh-name
Regularize name of PostStartHook injecting APF config objects
2020-04-11 19:07:47 -07:00
Kubernetes Prow Robot
ee6b88ddf9
Merge pull request #90000 from SataQiu/staging-scheduler-20200409
scheduler: remove direct import to pkg/master/ports
2020-04-11 10:46:01 -07:00
Kubernetes Prow Robot
7f1641b8b2
Merge pull request #89914 from SataQiu/dual-stack-20200407
Dual-stack: fix the bug that isValidAddress only checks the first IP even a Pod has more than one address
2020-04-11 09:25:48 -07:00
SataQiu
41d3e44a2f scheduler: remove direct import to pkg/master/ports
Signed-off-by: SataQiu <1527062125@qq.com>
2020-04-11 13:56:53 +08:00
Mike Spreitzer
3501f7c470 Regularize the name of the post-start-hook that injects APF config objects
Name it analogously to its companion that launches the consumer of
APF config objects.
2020-04-09 20:59:56 -04:00
SataQiu
e71f84b1c4 dual-stack: fix the bug that isValidAddress only checks the first IP even a Pod has more than one address
Signed-off-by: SataQiu <1527062125@qq.com>
2020-04-09 16:17:34 +08:00
Artur Gadelshin
3ab5ea09ed Fix goling issues for pkg/registry/apps 2020-04-08 23:12:29 +02:00
Kubernetes Prow Robot
b215be875c
Merge pull request #89530 from tklauser/use-bits-onescount
Use OnesCount8 from math/bits to implement countBits
2020-04-02 21:40:13 -07:00
SataQiu
b66fd46cd5 fix the bug that Service clusterIP does not respect specified ipFamily
Signed-off-by: SataQiu <1527062125@qq.com>
2020-03-29 17:19:52 +08:00
Tobias Klauser
811f9d8abf Use OnesCount8 from math/bits to implement countBits
This allows to drop the bitCounts table. Also, bits.OnesCount8 can be
intrinsified to a single instruction on several GOARCHes.
2020-03-26 16:58:48 +01:00
Shihang Zhang
b56da85a77 sync api/v1/pod/util with api/pod/util and remove DefaultContainers 2020-03-24 16:42:32 -07:00
Kubernetes Prow Robot
d20b6cd44d
Merge pull request #89252 from odinuge/hugepages-relax-node-validation
Relax huge page node validation
2020-03-23 13:52:47 -07:00
Kubernetes Prow Robot
ede025af1b
Merge pull request #89232 from apelisse/test-apply-status
Use discovery to test apply all status
2020-03-20 03:52:36 -07:00
Antoine Pelisse
dfe1703ffa Do not reset managedFields in status update strategy 2020-03-19 09:58:46 -07:00
Odin Ugedal
19f0519b2d
Relax huge page node validation
A relaxed version was added in 1.18, and this will disable the
validation all together.
2020-03-19 14:09:13 +01:00
Kubernetes Prow Robot
34f03ae9d4
Merge pull request #89001 from SataQiu/cleanup-20200310
Use utilnet.GetIndexedIP instead of replicating the function locally
2020-03-18 22:23:25 -07:00
Jordan Liggitt
96fadf9ed2 Define default table converters for missing resources 2020-03-10 15:22:37 -04:00
SataQiu
776fa5e76f use utilnet.GetIndexedIP instead of replicating the function locally 2020-03-10 18:03:53 +08:00
Christian Huffman
c6fd25d100 Updated CSIDriver references 2020-03-06 08:21:26 -05:00
Kubernetes Prow Robot
5708511499
Merge pull request #88708 from mikedanese/deleteopts
Migrate clientset metav1.DeleteOpts to pass-by-value
2020-03-05 23:09:23 -08:00
Mike Danese
c58e69ec79 automated refactor 2020-03-05 14:59:46 -08:00
Ted Yu
af0e1319c3 Allow container visitor to operate on selected container types
Signed-off-by: Ted Yu <yuzhihong@gmail.com>
2020-03-05 11:48:00 -08:00
Rob Scott
f38904d6f4
Adding PathType to Ingress
Co-authored-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2020-03-03 11:11:16 -08:00
Rob Scott
132d2afca0
Adding IngressClass to networking/v1beta1
Co-authored-by: Christopher M. Luciano <cmluciano@us.ibm.com>
2020-03-01 18:17:09 -08:00
James Munnelly
a983356caa Add signerName field to CSR resource spec
Signed-off-by: James Munnelly <james.munnelly@jetstack.io>
2020-02-27 10:17:55 +00:00
Kubernetes Prow Robot
86141c0cce
Merge pull request #88503 from robscott/app-protocol
Adding AppProtocol to Service and Endpoints Ports
2020-02-26 00:20:40 -08:00
Rob Scott
6a33727632
Adding AppProtocol to Service and Endpoints Ports 2020-02-25 17:42:34 -08:00
Kubernetes Prow Robot
851efa8a34
Merge pull request #84051 from bart0sh/PR0079-multiple-sizes-hugepages
Implement support for multiple sizes huge pages
2020-02-25 14:40:27 -08:00
taesun_lee
d578c02975 Fix pkg/registry typos in some error message, variable names etc
error message : differerence -> difference
comment : Ingresss -> Ingress
comment : ObjeceMeta -> ObjectMeta
test case name meta : selectpor -> selector
variable name : secondaryRegistery -> secondaryRegistry
variable name : autosclaerOut -> autoscalerOut
2020-02-25 15:45:20 +09:00
Ed Bartosh
0eb65bd7da Implement support for multiple sizes huge pages
This implementation allows Pod to request multiple hugepage resources
of different size and mount hugepage volumes using storage medium
HugePage-<size>, e.g.

spec:
  containers:
    resources:
      requests:
        hugepages-2Mi: 2Mi
        hugepages-1Gi: 2Gi
    volumeMounts:
      - mountPath: /hugepages-2Mi
        name: hugepage-2mi
      - mountPath: /hugepages-1Gi
        name: hugepage-1gi
    ...
  volumes:
    - name: hugepage-2mi
      emptyDir:
        medium: HugePages-2Mi
    - name: hugepage-1gi
      emptyDir:
        medium: HugePages-1Gi

NOTE: This is an alpha feature.
      Feature gate HugePageStorageMediumSize must be enabled for it to work.
2020-02-19 18:15:40 +02:00
Mike Spreitzer
b142868eaf Version the API Priority and Fairness FieldManager values 2020-02-14 13:50:11 -05:00
Kubernetes Prow Robot
77e8c75f32
Merge pull request #87754 from MikeSpreitzer/apf-filter5
Add twice refactored filter and config consumer for API Priority and Fairness
2020-02-13 16:54:46 -08:00
Kubernetes Prow Robot
bd1042080f
Merge pull request #81678 from verb/debug-list
Add ephemeral containers to streamLocation name suggestions
2020-02-12 21:36:35 -08:00
Kubernetes Prow Robot
f7eafa1a83
Merge pull request #86896 from yutedz/copy-into-err
Return the error from copyInto
2020-02-12 13:54:51 -08:00
Lee Verberne
cc32702e8f Add ephemeral containers to streamLocation name suggestions
This combines container names into a single list because separating them
into a long, variable length string isn't particularly useful in the
context of an streaming error message.
2020-02-12 14:49:42 +01:00
Kubernetes Prow Robot
17a6248f76
Merge pull request #87939 from shaloulcy/pod_storage_indexer
add indexer for pod storage
2020-02-11 23:15:22 -08:00