Commit Graph

111963 Commits

Author SHA1 Message Date
Jefftree
d74b6b2cfa fix dropped subresources
some subresources were not properly included in the array due to pointers becoming stale over a resize
2022-11-10 17:16:14 -08:00
Jefftree
c9b3488400 add aggregated /apis handler for genericapiserver
so that aggregated-apiservers can also take advantage. discovered by e2e tests with feature enabled
2022-11-10 17:16:12 -08:00
Alexander Zielenski
1550655336 fix aggregated discovery legacy fallback
due to redesign where we changed from new endpoint to /apis. The expected error was not also changed.

Caught by e2e tests when feature enabled. Should have been caught by unit test first but it was implemented without root /apis. Unit test also fixed
2022-11-10 15:39:20 -08:00
Kubernetes Prow Robot
b2c72feca8
Merge pull request #113693 from dashpole/apiserver_tracing_beta
Graduate API Server tracing to beta
2022-11-09 04:54:13 -08:00
Kubernetes Prow Robot
a14601a77f
Merge pull request #113753 from gnufied/fix-broken-e2e-csi-serial-readwrite-once
Fix broken readwriteOncePod serial tests
2022-11-09 03:50:24 -08:00
Kubernetes Prow Robot
70263d55b2
Merge pull request #113501 from pacoxu/fix-startReflector
kubelet: fix nil pointer in startReflector for standalone mode
2022-11-09 03:50:12 -08:00
Kubernetes Prow Robot
909af807ee
Merge pull request #113721 from wojtek-t/storage_standard_test_naming_2
Standardize naming in generic storage watcher tests
2022-11-09 01:40:24 -08:00
Kubernetes Prow Robot
1193a9abcb
Merge pull request #113485 from MikeSpreitzer/apf-borrowing
Add borrowing between priority levels in APF
2022-11-09 01:40:12 -08:00
Kubernetes Prow Robot
c288251818
Merge pull request #113599 from seans3/discovery-client-update
Aggregated discovery client
2022-11-09 00:08:24 -08:00
Kubernetes Prow Robot
8058e8eff8
Merge pull request #113171 from Jefftree/aggregated-discovery-generic
Aggregated discovery server changes
2022-11-09 00:08:12 -08:00
Kubernetes Prow Robot
18a78949bc
Merge pull request #113760 from alexzielenski/admission-listwatch-flake
fix possible race of listwatch in admission test
2022-11-08 23:04:23 -08:00
Kubernetes Prow Robot
b3c4fb1f78
Merge pull request #113751 from logicalhan/newDesc
clean up errors, ensure they log lines, improve documentation
2022-11-08 23:04:12 -08:00
Mike Spreitzer
feb4227788 apiserver: finish implementation of borrowing in APF
Also make some design changes exposed in testing and review.

Do not remove the ambiguous old metric
`apiserver_flowcontrol_request_concurrency_limit` because reviewers
though it is too early.  This creates a problem, that metric can not
keep both of its old meanings.  I chose the configured concurrency
limit.

Testing has revealed a design flaw, which concerns the initialization
of the seat demand state tracking.  The current design in the KEP is
as follows.

> Adjustment is also done on configuration change … For a newly
> introduced priority level, we set HighSeatDemand, AvgSeatDemand, and
> SmoothSeatDemand to NominalCL-LendableSD/2 and StDevSeatDemand to
> zero.

But this does not work out well at server startup.  As part of its
construction, the APF controller does a configuration change with zero
objects read, to initialize its request-handling state.  As always,
the two mandatory priority levels are implicitly added whenever they
are not read.  So this initial reconfig has one non-exempt priority
level, the mandatory one called catch-all --- and it gets its
SmoothSeatDemand initialized to the whole server concurrency limit.
From there it decays slowly, as per the regular design.  So for a
fairly long time, it appears to have a high demand and competes
strongly with the other priority levels.  Its Target is higher than
all the others, once they start to show up.  It properly gets a low
NominalCL once other levels show up, which actually makes it compete
harder for borrowing: it has an exceptionally high Target and a rather
low NominalCL.

I have considered the following fix.  The idea is that the designed
initialization is not appropriate before all the default objects are
read.  So the fix is to have a mode bit in the controller.  In the
initial state, those seat demand tracking variables are set to zero.
Once the config-producing controller detects that all the default
objects are pre-existing, it flips the mode bit.  In the later mode,
the seat demand tracking variables are initialized as originally
designed.

However, that still gives preferential treatment to the default
PriorityLevelConfiguration objects, over any that may be added later.

So I have made a universal and simpler fix: always initialize those
seat demand tracking variables to zero.  Even if a lot of load shows
up quickly, remember that adjustments are frequent (every 10 sec) and
the very next one will fully respond to that load.

Also: revise logging logic, to log at numerically lower V level when
there is a change.

Also: bug fix in float64close.

Also, separate imports in some file

Co-authored-by: Han Kang <hankang@google.com>
2022-11-08 21:51:44 -08:00
Kubernetes Prow Robot
20a9f7786a
Merge pull request #110907 from pacoxu/kubectl-apply
kubectl apply: warning that kubectl will ignores no-namespaced resource in future release with namespace specified and with default pruneAllowlist
2022-11-08 20:14:12 -08:00
Kubernetes Prow Robot
0f8fb9f916
Merge pull request #112593 from dashanji/patch-1
Delete the useless line
2022-11-08 19:04:13 -08:00
Kubernetes Prow Robot
e62cfabf93
Merge pull request #112050 from nilekhc/kms-hot-reload
Implements hot reload of the KMS `EncryptionConfiguration`
2022-11-08 17:24:12 -08:00
Paco Xu
7263aba71b kubectl-apply: add prune test cases for non-namespaced resources
Signed-off-by: Paco Xu <paco.xu@daocloud.io>
2022-11-09 08:34:59 +08:00
Kubernetes Prow Robot
3c025280c9
Merge pull request #111795 from lojies/addnamespaceforkubectlrollback
Remove specific command suggestion from kubectl rollout undo error message
2022-11-08 16:16:13 -08:00
Paco Xu
f3b49adadf kubectl apply: warning that in future release, prune will ignores no-namespaced resource if -n is not empty
Signed-off-by: Paco Xu <paco.xu@daocloud.io>
2022-11-09 07:43:03 +08:00
Sean Sullivan
b8fe2c7b80 Aggregated discovery client 2022-11-08 15:28:59 -08:00
Paco Xu
1b71dc77f2 linux: fix kubelet start unit test 2022-11-09 07:17:05 +08:00
Kubernetes Prow Robot
b4040b3b86
Merge pull request #113609 from haircommander/sandbox-metrics
kubelet: add support for broadcasting metrics from CRI
2022-11-08 15:08:26 -08:00
Kubernetes Prow Robot
d619f60e0f
Merge pull request #113442 from Huang-Wei/kep-3521-C
[KEP-3521] Part 3: Bug fixes, integration & E2E Test
2022-11-08 15:08:15 -08:00
David Ashpole
6e13cf69f6
embed component-base tracing configuration 2022-11-08 22:48:41 +00:00
Alexander Zielenski
91d0d48326 add aggregated discovery integration tests
Co-authored-by: Jeffrey Ying <jeffrey.ying86@live.com>
2022-11-08 14:44:50 -08:00
Alexander Zielenski
b64df605b4 add aggregated-apiservices to aggregated discovery
Co-authored-by: Jeffrey Ying <jeffrey.ying86@live.com>
2022-11-08 14:44:50 -08:00
Alexander Zielenski
1e3086bb80 add crds to aggregated discovery
Co-authored-by: Jeffrey Ying <jeffrey.ying86@live.com>
2022-11-08 14:44:50 -08:00
Alexander Zielenski
6e83f67505 add new aggregated resourcemanager to genericapiserver
Co-authored-by: Jeffrey Ying <jeffrey.ying86@live.com>
2022-11-08 14:44:49 -08:00
David Ashpole
4be473c774
promote TracingConfiguration to v1beta1 2022-11-08 22:44:07 +00:00
David Ashpole
fc3cec6bf3
graduate API Server tracing to beta 2022-11-08 22:44:07 +00:00
Alexander Zielenski
4e217159cf fix possible race in admission test of listwatch 2022-11-08 14:08:42 -08:00
Kubernetes Prow Robot
c61c3fc492
Merge pull request #113749 from jpbetz/fix-params-null
Fix params to be null instead of an empty map if paramRef is null
2022-11-08 13:51:42 -08:00
Kubernetes Prow Robot
429f1527a7
Merge pull request #113711 from andrewsykim/fieldmanager-logging
apiserver: use the correct error when logging errors updating managedFields
2022-11-08 13:51:35 -08:00
Kubernetes Prow Robot
86c535c0f8
Merge pull request #113486 from jkh52/uds-dial
egress_selector.go: hard cap UDS dial.
2022-11-08 13:51:27 -08:00
Kubernetes Prow Robot
d93ea2557f
Merge pull request #111908 from dengyufeng2206/new-test0818
spelling fix
2022-11-08 13:51:20 -08:00
Kubernetes Prow Robot
886da71e75
Merge pull request #111879 from sanwishe/etcd_compact_doc
fix etcd compaction doc
2022-11-08 13:51:12 -08:00
Kubernetes Prow Robot
694698ca38
Merge pull request #110485 from Octopusjust/k8s-pr
cidr_set.go :  fix several typo
2022-11-08 13:51:00 -08:00
Nilekh Chaudhari
761b7822fc
feat: implements kms encryption config hot reload
This change enables hot reload of encryption config file when api server
flag --encryption-provider-config-automatic-reload is set to true. This
allows the user to change the encryption config file without restarting
kube-apiserver. The change is detected by polling the file and is done
by using fsnotify watcher. When file is updated it's process to generate
new set of transformers and close the old ones.

Signed-off-by: Nilekh Chaudhari <1626598+nilekhc@users.noreply.github.com>
2022-11-08 21:47:59 +00:00
Han Kang
f61fcef706 go fmt
Change-Id: I631ef35f10e8434b5a6deccedab6158f7199faa3
2022-11-08 13:34:17 -08:00
Abu Kashem
172b27c80c apiserver: update borrowing parameters for apf bootstrap objects 2022-11-08 13:23:10 -08:00
Abu Kashem
424b23bb15 apiserver: fix defaulting for apf bootstrap configuration 2022-11-08 13:23:09 -08:00
Abu Kashem
284020cfdf apiserver: update API testdata at HEAD for flowcontrol 2022-11-08 13:23:08 -08:00
Abu Kashem
c5520d6ba2 apiserver: validate borrowing for flowcontrol API 2022-11-08 13:23:07 -08:00
Abu Kashem
ca949d5188 apiserver: set borrowing defaults for flowcontrol API 2022-11-08 13:22:59 -08:00
Abu Kashem
a76223f8da apiserver: add generated files for borrowing in flowcontrol 2022-11-08 13:16:44 -08:00
Abu Kashem
a7e84a4537 apiserver: add fields for borrowing in apf flowcontrol 2022-11-08 13:16:44 -08:00
Hemant Kumar
8cc30f5e0b Fix broken readwriteOncePod serial tests
These tests can't yet run in non-alpha clusters
2022-11-08 15:58:53 -05:00
Kubernetes Prow Robot
2f22404003
Merge pull request #113747 from thockin/safer-controller-init-map
Make static controller registration slightly safer
2022-11-08 12:43:25 -08:00
Kubernetes Prow Robot
e361272423
Merge pull request #113698 from dashpole/missing_apiserver_migration
Migrate another usage of utiltrace to component base tracing
2022-11-08 12:43:17 -08:00
Kubernetes Prow Robot
3a99a5954d
Merge pull request #113629 from andrewsykim/apiserver-identity-beta
Promote APIServerIdentity to Beta
2022-11-08 12:43:10 -08:00