Commit Graph

109744 Commits

Author SHA1 Message Date
Sarvesh Rangnekar
5b801ba9f9 Introduce MultiCIDRRangeAllocator
MultiCIDRRangeAllocator is a new Range Allocator which makes using
multiple ClusterCIDRs possible. It consists of two controllers, one for
reconciling the ClusterCIDR API objects and the other for allocating
Pod CIDRs to the nodes.

The allocation is based on the rules defined in
https://github.com/kubernetes/enhancements/tree/master/keps/sig-network/2593-multiple-cluster-cidrs
2022-08-06 00:10:39 +00:00
Sarvesh Rangnekar
02d944d046 Add a priority queue to implement MultiCIDR tie-breaks
The Priority is determined as follows:
P0: ClusterCIDR with higher number of matching labels has highest
priority.
P1: ClusterCIDR having cidrSet with fewer allocatable Pod CIDRs has
higher priority.
P2: ClusterCIDR with a PerNodeMaskSize having fewer IPs has higher
priority.
P3: ClusterCIDR having label with lower alphanumeric value has higher
priority.
P4: ClusterCIDR with a cidrSet having a smaller IP address value has
higher priority.
2022-08-05 01:06:43 +00:00
Sarvesh Rangnekar
b6392a4b07 Add cidrset to support multiple CIDRs
Add a new cidrset named `multicidrset` which extends the current
cidrset mechanism to track allocatable Pod and Service CIDRs.
multicidrset stores the info about allocated CIDRs in a Map as opposed
to the current cidrset implementation where it is stored in a bitmap.
2022-08-05 01:06:43 +00:00
Sarvesh Rangnekar
0ee3719d0b Add describer and printer for ClusterCIDR API 2022-08-05 01:06:42 +00:00
Sarvesh Rangnekar
299724d099 Auto generate code for ClusterCIDR API 2022-08-05 01:06:35 +00:00
Sarvesh Rangnekar
7093b10416 Introduce networking/v1alpha1 api, ClusterCIDR type
Introduce networking/v1alpha1 api group.

Add `ClusterCIDR` type to networking/v1alpha1 api group, this type
will enable the NodeIPAM controller to support multiple ClusterCIDRs.
2022-08-05 00:54:00 +00:00
Kubernetes Prow Robot
51ea7b2169
Merge pull request #111523 from wongma7/e2epvcns
Fix missing format string PVC namespace
2022-08-02 10:23:56 -07: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
Kubernetes Prow Robot
70dcb0f129
Merge pull request #111618 from Jiawei0227/flocker
cleanup: Remove flocker volume plugins from k8s codebase
2022-08-02 09:16:16 -07:00
Kubernetes Prow Robot
c718f64b3f
Merge pull request #111507 from mborsz/compr
Add flag to disable compression for local traffic
2022-08-02 09:16:08 -07:00
Kubernetes Prow Robot
c396744a6a
Merge pull request #110688 from jsafrane/test-iscsi
Fix iSCSI over ipv6
2022-08-02 09:15:56 -07:00
Kubernetes Prow Robot
3051cb2ba1
Merge pull request #108624 from ialidzhikov/cleanup/service-account-api-audiences
apiserver: Remove the deprecated `--service-account-api-audiences` flag
2022-08-02 09:15:44 -07:00
Kubernetes Prow Robot
0d46dc1f46
Merge pull request #111619 from Jiawei0227/quobyte
cleanup: Remove quobyte volume plugins from k8s codebase
2022-08-02 08:09:57 -07:00
Kubernetes Prow Robot
fa202f1483
Merge pull request #110959 from mimowo/retriable-pod-failures-pod-conditions
Append new pod conditions when deleting pods to indicate the reason for pod deletion
2022-08-02 08:09:45 -07:00
Maciej Borsz
023583a155 Add an option to conditionally disable compression based on client ip. 2022-08-02 13:59:20 +00:00
Kubernetes Prow Robot
7bcd739851
Merge pull request #111623 from muyangren2/addtest_flags
add test for GetNodeNameAndHostname
2022-08-02 05:31:45 -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
Kubernetes Prow Robot
719f3cf8da
Merge pull request #111555 from tallclair/pod-e2e-retry
Minor fixes to e2epod wait logic
2022-08-02 02:09:45 -07:00
Kubernetes Prow Robot
6ce72e1198
Merge pull request #111628 from thockin/master
Remove some unused functions
2022-08-02 01:00:29 -07:00
Tim Hockin
0e1c15e099 Remove some unused functions 2022-08-01 23:52:46 -07:00
Kubernetes Prow Robot
ea21947641
Merge pull request #111426 from ping035627/k8s-220726
Update design-proposals URL
2022-08-01 23:50:30 -07:00
muyangren2
fc976d9f89 add test for GetNodeNameAndHostname 2022-08-02 11:03:21 +08:00
Kubernetes Prow Robot
cdc60112a6
Merge pull request #111119 from aramase/aes-gcm-part-2
feat:(kms) encrypt data with DEK using AES-GCM instead of AES-CBC
2022-08-01 19:22:28 -07:00
PingWang
473be65a3c Update design-proposals URL
Signed-off-by: PingWang <wang.ping5@zte.com.cn>

update url

Signed-off-by: PingWang <wang.ping5@zte.com.cn>
2022-08-02 09:13:38 +08:00
Anish Ramasekar
d54631a41a
feat:(kms) encrypt data with DEK using AES-GCM instead of AES-CBC
Signed-off-by: Anish Ramasekar <anish.ramasekar@gmail.com>
2022-08-02 01:12:47 +00:00
Jiawei Wang
9c869b3dfc cleanup: Remove quobyte volume plugins from k8s codebase 2022-08-02 00:47:02 +00:00
Kubernetes Prow Robot
e000a2edb7
Merge pull request #111615 from BenTheElder/kubeadm-prerelease-version-log
kubeadm: make pre-release warning log less confusing
2022-08-01 17:46:40 -07:00
Kubernetes Prow Robot
eedd2b7cb4
Merge pull request #108696 from wongma7/zonepreprovisioned
Set zone label selector for preprovisioned AWS in-tree tests
2022-08-01 17:46:28 -07:00
Jiawei Wang
ff063889a7 cleanup: Remove flocker volume plugins from k8s codebase
Flocker storage plugin removed from k8s codebase.

Flocker, an early external storage plugin in k8s,
has not been in maintenance and their business is
down. As far as I know, the plugin is not being
used anymore.

This PR removes the whole flocker dependency and
codebase from core k8s to reduce potential security
risks and reduce maintenance work from the sig-storage community.
2022-08-02 00:42:50 +00:00
Kubernetes Prow Robot
83591a1196
Merge pull request #111610 from jpbetz/jpbetz-reviewer-admissionregistration
Add jpbetz as approver to pkg/registry/admissionregistration
2022-08-01 16:18:35 -07:00
Kubernetes Prow Robot
59cedf4871
Merge pull request #111477 from negz/biglogs
Share a single etcd3 client logger across all clients
2022-08-01 16:18:28 -07:00
Benjamin Elder
719c1d2680 kubeadm: make pre-release warning log less confusing 2022-08-01 15:29:36 -07:00
Kubernetes Prow Robot
6a6a36f569
Merge pull request #111609 from marosset/hpc-test-updates
Hostprocess container test updates
2022-08-01 15:05:16 -07:00
Kubernetes Prow Robot
341c22dd03
Merge pull request #111538 from alexanderConstantinescu/cleanup-ccm-func-point
CCM [Service controller]: align function pointer variable with struct name
2022-08-01 15:05:08 -07:00
Kubernetes Prow Robot
701fed4a5a
Merge pull request #111449 from ii/promote-controller-revision-test
Promote ControllerRevisionLifecycleTest +7 Endpoints
2022-08-01 15:05:00 -07:00
Kubernetes Prow Robot
2e1a4da8df
Merge pull request #111358 from ddebroy/hasnet1
Introduce PodHasNetwork condition for pods
2022-08-01 15:04:52 -07:00
Kubernetes Prow Robot
d1f70c1409
Merge pull request #111265 from ii/promote-event-lifecycle-test
Promote Event Lifecycle Test +1 Endpoint
2022-08-01 15:04:40 -07:00
Kubernetes Prow Robot
b167260436
Merge pull request #110399 from claudiubelu/unittests-2
unittests: Fixes unit tests for Windows (part 2)
2022-08-01 15:04:29 -07:00
Kubernetes Prow Robot
acc64759f5
Merge pull request #111549 from claudiubelu/log-compression
Fixes kubelet log compression on Windows
2022-08-01 13:18:41 -07:00
Kubernetes Prow Robot
1e18ff5b37
Merge pull request #111479 from wongma7/migrationawsga
Promote CSIMigrationAWS to GA
2022-08-01 13:18:29 -07:00
Kubernetes Prow Robot
3a650c5c56
Merge pull request #111502 from muyangren2/addtest_apiendpoint
add test for String
2022-08-01 12:10:40 -07:00
Kubernetes Prow Robot
42b6b2887c
Merge pull request #110888 from likakuli/feature_ignoreeventforgc
feat: ignore all event resource for gc
2022-08-01 12:10:28 -07:00
Mark Rossetti
85e4dd2d48 Hostprocess container test updates
Signed-off-by: Mark Rossetti <marosset@microsoft.com>
2022-08-01 12:04:50 -07:00
Joe Betz
a42a6a8eb5 Add jpbetz as reviwer to pkg/registry/admissionregistration 2022-08-01 14:52:53 -04:00
Kubernetes Prow Robot
4b5ee802e8
Merge pull request #111466 from jprzychodzen/nodeipam
Enable 'running_managed_controllers' for KCM nodeipam controller
2022-08-01 10:24:40 -07:00
Kubernetes Prow Robot
b3ea9c9e2b
Merge pull request #111218 from nixpanic/mount-utils/no-systemd
mount-utils: add Linux specific non-systemd Mounter
2022-08-01 10:24:28 -07:00
Deep Debroy
0ac7cce38a Node e2e test for pod conditions managed by Kubelet
Signed-off-by: Deep Debroy <ddebroy@gmail.com>
2022-08-01 09:52:07 -07:00
Deep Debroy
dfdf8245bb Introduce PodHasNetwork condition for pods
Signed-off-by: Deep Debroy <ddebroy@gmail.com>
2022-08-01 09:51:43 -07:00
Kubernetes Prow Robot
d46742b387
Merge pull request #111411 from alculquicondor/deprecate-disable-taint-manager
Mark enable-taint-manager CLI flag as deprecated
2022-08-01 09:02:28 -07:00
Claudiu Belu
38092cb458 unittests: Fixes unit tests for Windows (part 2)
Currently, there are some unit tests that are failing on Windows due to
various reasons:

- volume mounting is a bit different on Windows: Mount will create the
  parent dirs and mklink at the volume path later (otherwise mklink will
  raise an error).
- os.Chmod is not working as intended on Windows.
- path.Dir() will always return "." on Windows, and filepath.Dir()
  should be used instead (which works correctly).
- on Windows, you can't typically run binaries without extensions. If
  the file C:\\foo.bat exists, we can still run C:\\foo because Windows
  will append one of the supported file extensions ($env:PATHEXT) to it
  and run it.
- Windows file permissions do not work the same way as the Linux ones.
- /tmp directory being used, which might not exist on Windows. Instead,
  the OS-specific Temp directory should be used.

Fixes a few other issues:

- rbd.go: Return error in a case in which an error is encountered. This
  will prevent "rbd: failed to setup" and "rbd: successfully setup" log
  messages to be logged at the same time.
2022-08-01 18:56:32 +03:00