Commit Graph

42822 Commits

Author SHA1 Message Date
Kubernetes Prow Robot
bcd2ffbdc1 Merge pull request #104590 from Jiawei0227/anno
Add GA AnnStorageProvisioner annotation to PVC
2021-09-03 06:09:49 -07:00
Kubernetes Prow Robot
571a3f6f2f Merge pull request #103896 from july2993/read
Remove wrong comment
2021-09-02 21:27:49 -07:00
Kubernetes Prow Robot
295a8c1371 Merge pull request #104467 from khenidak/fix-104329
fix 104329: check for headless before trying to release the ClusterIPs
2021-09-02 10:55:39 -07:00
Kubernetes Prow Robot
0b4a793da2 Merge pull request #103941 from saschagrunert/seccomp-profile-root
Remove deprecated `--seccomp-profile-root`/`seccompProfileRoot` config
2021-09-02 08:52:57 -07:00
Kubernetes Prow Robot
2a88664ecc Merge pull request #104652 from MikeSpreitzer/add-resourcde-config
Introduce storagebackend.ConfigForResource
2021-09-02 04:00:10 -07:00
Kubernetes Prow Robot
a91cc9f040 Merge pull request #104715 from enj/enj/i/psa_before_psp
admission: run PodSecurity before PodSecurityPolicy
2021-09-01 16:56:08 -07:00
Mike Spreitzer
85bcd243aa Introduce storagebackend.ConfigForResource
This is a Config specialized for a GroupResource.
It will support generating new resource-specific metrics.
2021-09-01 16:54:26 -04:00
Monis Khan
b5ef684d90 admission: run PodSecurity before PodSecurityPolicy
This change fixes the order in which the PodSecurity and
PodSecurityPolicy admission plugins are run.  The old code intended
for PSA to run before PSP, but attempted to enforce that via
registration order (which is irrelevant).  Now PSA is correctly
executed before PSP to allow for audit and warning modes to be
exercised even in the presence of a deny PSP policy.

Signed-off-by: Monis Khan <mok@vmware.com>
2021-09-01 11:39:58 -04:00
Dave Chen
62b0579a40 Fix the key missing issue for structured log
Signed-off-by: Dave Chen <dave.chen@arm.com>
2021-09-01 10:43:10 +08:00
Kubernetes Prow Robot
eae38bbe9e Merge pull request #104668 from zc2638/fix/taint-toleration
modify non-uniform aliases
2021-08-31 13:16:32 -07:00
Sascha Grunert
46077e6be7 Remove deprecated --seccomp-profile-root/seccompProfileRoot configuration
The configuration is deprecated and targets removal for v1.23. Tests
cases have been changed as well.

Signed-off-by: Sascha Grunert <sgrunert@redhat.com>
2021-08-31 09:55:28 +02:00
Kubernetes Prow Robot
4615578137 Merge pull request #104633 from martinkennelly/update_sitp_feature_state
Update ServiceInternalTrafficPolicy feature state
2021-08-31 00:09:36 -07:00
zc
b33897f36d modify non-uniform aliases 2021-08-31 09:07:51 +08:00
Kubernetes Prow Robot
bb9e89d430 Merge pull request #104601 from thockin/patchAllocatedValues_port_reuse
Fix a small regression in Service updates
2021-08-30 15:31:13 -07:00
Kubernetes Prow Robot
bbbeceb6aa Merge pull request #104577 from smarterclayton/smaller_filter_master
kubelet: Admission must exclude completed pods and avoid races
2021-08-30 13:17:13 -07:00
Tim Hockin
73503a4936 Fix a small regression in Service updates
Prior to 1.22 a user could change NodePort values within a service
during an update, and the apiserver would allocate values for any that
were not specified.

Consider a YAML like:

```
apiVersion: v1
kind: Service
metadata:
  name: foo
spec:
  type: NodePort
  ports:
  - name: p
    port: 80
  - name: q
    port: 81
  selector:
    app: foo
```

When this is created, nodeport values will be allocated for each port.
Something like:

```
apiVersion: v1
kind: Service
metadata:
  name: foo
spec:
  clusterIP: 10.0.149.11
  type: NodePort
  ports:
  - name: p
    nodePort: 30872
    port: 80
    protocol: TCP
    targetPort: 9376
  - name: q
    nodePort: 31310
    port: 81
    protocol: TCP
    targetPort: 81
  selector:
    app: foo
```

If the user PUTs (kubectl replace) the original YAML, we would see that
`.nodePort = 0`, and allocate new ports.  This was ugly at best.

In 1.22 we fixed this to not allocate new values if we still had the old
values, but instead re-assign them.  Net new ports would still be seen
as `.nodePort = 0` and so new allocations would be made.

This broke a corner case as follows:

Prior to 1.22, the user could PUT this YAML:

```
apiVersion: v1
kind: Service
metadata:
  name: foo
spec:
  type: NodePort
  ports:
  - name: p
    nodePort: 31310 # note this is the `q` value
    port: 80
  - name: q
    # note this nodePort is not specified
    port: 81
  selector:
    app: foo
```

The `p` port would take the `q` port's value.  The `q` port would be
seen as `.nodePort = 0` and a new value allocated.  In 1.22 this results
in an error (duplicate value in `p` and `q`).

This is VERY minor but it is an API regression, which we try to avoid,
and the fix is not too horrible.

This commit adds more robust testing of this logic.
2021-08-30 12:42:17 -07:00
Kubernetes Prow Robot
d5cf549376 Merge pull request #104160 from pacoxu/AllowLongNodeID-true
set AllowLongNodeID to true by default since 1.23
2021-08-30 08:17:05 -07:00
Kubernetes Prow Robot
7282c2002e Merge pull request #99273 from yangjunmyfm192085/run-test20
Structured Logging migration:modify Scheduler part logs.
2021-08-30 05:56:54 -07:00
JunYang
93047824f7 Structured Logging migration:modify Scheduler part logs.
Signed-off-by: JunYang <yang.jun22@zte.com.cn>
2021-08-29 20:17:08 +08:00
Kubernetes Prow Robot
909c3db3ab Merge pull request #104559 from Huang-Wei/cleanup-json-tag
sched: remove unneeded json tags in unversioned API objs
2021-08-27 18:38:52 -07:00
Kubernetes Prow Robot
cd63952f13 Merge pull request #95885 from jiahuif/refactor/controller-manager
refactor: controller manager: InitFunc and base controller interface.
2021-08-27 15:40:52 -07:00
Kubernetes Prow Robot
fca3175df7 Merge pull request #104231 from astraw99/fix_unified_workers
Unify controller worker num param `threadiness` to `workers`
2021-08-27 09:34:05 -07:00
Martin Kennelly
da78eb5d8a Update ServiceInternalTrafficPolicy feature state
Feature state is beta in v1.22.0.

Signed-off-by: Martin Kennelly <mkennell@redhat.com>
2021-08-27 16:55:47 +01:00
Jiawei Wang
8de0f11946 Add GA AnnStorageProvisioner annotation to PVC
This PR adds GA AnnStorageProvisioner annotation to
a PVC if the PVC requires dynamic provisioning. This
also deprecates the beta AnnStorageProvisioner annotation
and it will be removed in a later release.
2021-08-26 12:46:47 -07:00
Kubernetes Prow Robot
c262d09bb7 Merge pull request #104604 from wojtek-t/fix_secret_manager_2
Don't prematurely close reflectors in case of slow initialization in watch based manager
2021-08-26 06:11:23 -07:00
wojtekt
515106b795 Don't prematurely close reflectors in case of slow initialization in watch based manager 2021-08-26 11:34:24 +02:00
Kubernetes Prow Robot
cbd0611d49 Merge pull request #104528 from kolyshkin/runc-1.0.2
vendor: bump runc to 1.0.2
2021-08-25 18:17:23 -07:00
Paco Xu
4cb7479312 set AllowLongNodeID to true by default since 1.23 2021-08-26 08:30:42 +08:00
Kubernetes Prow Robot
2f6b9166d7 Merge pull request #104039 from YanzhaoLi/extract-containerdid-from-various-cgrouppath
Get containerID from systemd-style cgroupPath in cri_stats_provider
2021-08-25 17:05:22 -07:00
Jiahui Feng
8f5771d243 use common controller interface in KCM. 2021-08-25 13:29:03 -07:00
Clayton Coleman
a2ca66d280 kubelet: Admission must exclude completed pods and avoid races
Fixes two issues with how the pod worker refactor calculated the
pods that admission could see (GetActivePods() and
filterOutTerminatedPods())

First, completed pods must be filtered from the "desired" state
for admission, which arguably should be happening earlier in
config. Exclude the two terminal pods states from GetActivePods()

Second, the previous check introduced with the pod worker lifecycle
ownership changes was subtly wrong for the admission use case.
Admission has to include pods that haven't yet hit the pod worker,
which CouldHaveRunningContainers was filtering out (because the
pod worker hasn't seen them). Introduce a weaker check -
IsPodKnownTerminated() - that returns true only if the pod is in
a known terminated state (no running containers AND known to pod
worker). This weaker check may only be called from components that
need admitted pods, not other kubelet subsystems.

This commit does not fix the long standing bug that force deleted
pods are omitted from admission checks, which must be fixed by
having GetActivePods() also include pods "still terminating".
2021-08-25 13:31:02 -04:00
Kubernetes Prow Robot
296991f697 Merge pull request #104518 from dntosas/scheduler-remove-deprecated-metric
[scheduler] Remove deprecated volumeSchedulingLatency metric
2021-08-25 03:08:39 -07:00
Wei Huang
2c3a196aa4 sched: remove unneeded json tags in unversioned API objs 2021-08-24 15:47:34 -07:00
Stephen Augustus
481cf6fbe7 generated: Run hack/update-gofmt.sh
Signed-off-by: Stephen Augustus <foo@auggie.dev>
2021-08-24 15:47:49 -04:00
Kubernetes Prow Robot
d64e918785 Merge pull request #104541 from sanposhiho/cleanup/scheduler/NumUnschedulablePods-isnt-used
Clean up: delete NumUnschedulablePods because it's no longer in use
2021-08-24 10:37:26 -07:00
Kubernetes Prow Robot
4e832a7db9 Merge pull request #103630 from mysunshine92/controller_util-annotation
Modify the wrong comment for controller_util.go
2021-08-24 10:37:14 -07:00
sanposhiho
b7dd0a7660 Clean up: delete NumUnschedulablePods because it's no longer in use 2021-08-24 17:34:05 +09:00
Kir Kolyshkin
c06a851042 pkg/kubelet/cm: use SkipFreezeOnSet
This is a knob added by runc 1.0.2 specifically for kubernetes,
which tells runc/libcontainer/cgroups/systemd v1 manager to not
freeze the cgroup in Set().

We set this knob here because this code is only used for pods
(rather than containers) management, and in this place we create or
update the pod cgroup with no device limits set, so we can skip the
freeze.

If this knob is not set, libcontainer's cgroup v1 manager tries to
figure out whether the freeze is needed or not, but it's a somewhat
expensive check to perform, thus the knob is a shortcut.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2021-08-23 13:41:51 -07:00
Kubernetes Prow Robot
358e509863 Merge pull request #103545 from thockin/rest-create-deepcopy
REST: Document mutable inputs on Create() and fix tests
2021-08-23 11:48:22 -07:00
dntosas
cd795fa2eb [scheduler] Remove deprecated volumeSchedulingLatency metric
As part of https://github.com/kubernetes/kubernetes/pull/100720 we
backported fix on existing releases and in this commit we completely
remove the deprecated metric from master branch.

Signed-off-by: dntosas <ntosas@gmail.com>
2021-08-23 15:18:16 +03:00
wangyamei
c128411815 fix typo: Modify PodTrackingWithFinalizers to JobTrackingWithFinalizers 2021-08-23 15:38:30 +08:00
Tim Hockin
75dea6b8bc Service REST: Use DeepCopy() on Create() and fix tests 2021-08-22 11:59:33 -07:00
Khaled (Kal) Henidak
2f9cd08831 fix 104329: check for headless before trying to release the ClusterIPs 2021-08-20 22:03:42 +00:00
Antonio Ojea
0cd75e8fec run hack/update-netparse-cve.sh 2021-08-20 10:42:09 +02:00
Kubernetes Prow Robot
df51e4e63e Merge pull request #100720 from dntosas/scheduler-metrics-fix-buckets
[volumeScheduling/metrics] Fix buckets initialization
2021-08-19 18:47:24 -07:00
Lars Ekman
25453708ea Remove pkg/utils/slice from kube-proxy 2021-08-19 06:48:27 +02:00
Kubernetes Prow Robot
8dbc33d649 Merge pull request #101081 from rphillips/add_graceful_shutdown_event
kubelet: add graceful shutdown events
2021-08-17 22:08:08 -07:00
Kubernetes Prow Robot
f805f5588b Merge pull request #104416 from liggitt/go117-certificates
Update unit tests to handle go1.17 certificate parsing error messages
2021-08-17 17:04:07 -07:00
Kubernetes Prow Robot
a779c58b16 Merge pull request #104330 from liggitt/defaulter-package
Change defaulter-gen input to package import path
2021-08-17 11:42:18 -07:00
Kubernetes Prow Robot
07b7afefbf Merge pull request #103862 from tanjing2020/cleancode
Replace 'x.Sub(time.Now())' with 'time.Until(x)'
2021-08-17 11:42:01 -07:00