filename | sha512 hash |
---|---|
kubernetes.tar.gz | 4834c52267414000fa93c0626bded5a969cf65d3d4681c20e5ae2c5f62002a51dfb8ee869484f141b147990915ba57be96108227f86c4e9f571b4b25e7ed0773 |
kubernetes-src.tar.gz | 9329d51f5c73f830f3c895c2601bc78e51d2d412b928c9dae902e9ba8d46338f246a79329a27e4248ec81410ff103510ba9b605bb03e08a48414b2935d2c164b |
filename | sha512 hash |
---|---|
kubernetes-client-darwin-386.tar.gz | 3cedffb92a0fca4f0b2d41f8b09baa59dff58df96446e8eece4e1b81022d9fdda8da41b5f73a3468435474721f03cffc6e7beabb25216b089a991b68366c73bc |
kubernetes-client-darwin-amd64.tar.gz | 14de6bb296b4d022f50778b160c98db3508c9c7230946e2af4eb2a1d662d45b86690e9e04bf3e592ec094e12bed1f2bb74cd59d769a0eaac3c81d9b80e0a79c8 |
kubernetes-client-linux-386.tar.gz | 8b2b9fa55890895239b99fabb866babe50aca599591db1ecf9429e49925ae478b7c813b9d7704a20f41f2d50947c3b3deecb594544f1f3eae6c4e97ae9bb9b70 |
kubernetes-client-linux-amd64.tar.gz | e927ac7b314777267b95e0871dd70c352ec0fc967ba221cb6cba523fa6f18d9d193e4ce92a1f9fa669f9c961de0e34d69e770ef745199ed3693647dd0d692e57 |
kubernetes-client-linux-arm.tar.gz | 4a230a6d34e2ffd7df40c5b726fbcbb7ef1373d81733bfb75685b2448ed181eb49ef27668fc33700f30de88e5bbdcc1e52649b9d31c7940760f48c6e6eb2f403 |
kubernetes-client-linux-arm64.tar.gz | 87c8d7185df23b3496ceb74606558d895a64daf0c41185c833a233e29216131baac6e356a57bb78293ed9d0396966ecc3b00789f2b66af352dc286b101bcc69a |
kubernetes-client-linux-ppc64le.tar.gz | 16ea5efa2fc29bc7448a609a7118e7994e901ab26462aac52f03b4851d4c9d103ee12d2335360f8aa503ddbb2a71f3000f0fcb33597dd813df4f5ad5f4819fa9 |
kubernetes-client-linux-s390x.tar.gz | 7390ad1682227a70550b20425fa5287fecf6a5d413493b03df3a7795614263e7883f30f3078bbb9fbd389d2a1dab073f8f401be89b82bd5861fa6b0aeda579eb |
kubernetes-client-windows-386.tar.gz | 88251896dfe38e59699b879f643704c0195e7a5af2cb00078886545f49364a2e3b497590781f135b80d60e256bad3a4ea197211f4f061c98dee096f0845e7a9b |
kubernetes-client-windows-amd64.tar.gz | 766b2a9bf097e45b2549536682cf25129110bd0562ab0df70e841ff8657dd7033119b0929e7a213454f90594b19b90fa57d89918cee33ceadba7d689449fe333 |
filename | sha512 hash |
---|---|
kubernetes-server-linux-amd64.tar.gz | dfd5c2609990c9b9b94249c654931b240dc072f2cc303e1e1d6dec1fddfb0a9e127e3898421ace00ab1947a3ad2f87cfd1266fd0b6193ef00f942269388ef372 |
kubernetes-server-linux-arm.tar.gz | 7704c2d3c57950f184322263ac2be1649a0d737d176e7fed1897031d0efb8375805b5f12c7cf9ba87ac06ad8a635d6e399382d99f3cbb418961a4f0901465f50 |
kubernetes-server-linux-arm64.tar.gz | fbbd87cc38cfb6429e3741bfd87ecec4b69b551df6fb7c121900ced4c1cd0bc77a317ca8abd41f71ffd7bc0b1c7144fecb22fa405d0b211b238df24d28599333 |
kubernetes-server-linux-ppc64le.tar.gz | cfed5b936eb2fe44df5d0c9c6484bee38ef370fb1258522e8c62fb6a526e9440c1dc768d8bf33403451ae00519cab1450444da854fd6c6a37665ce925c4e7d69 |
kubernetes-server-linux-s390x.tar.gz | 317681141734347260ad9f918fa4b67e48751f5a7df64a848d2a83c79a4e9dba269c51804b09444463ba88a2c0efa1c307795cd8f06ed840964eb2c725a4ecc3 |
filename | sha512 hash |
---|---|
kubernetes-node-linux-amd64.tar.gz | b3b1013453d35251b8fc4759f6ac26bdeb37f14a98697078535f7f902e8ebca581b5629bbb4493188a7e6077eb5afc61cf275f42bf4d9f503b70bfc58b9730b2 |
kubernetes-node-linux-arm.tar.gz | 0bacc1791d260d2863ab768b48daf66f0f7f89eeee70e68dd515b05fc9d7f14b466382fe16fa84a103e0023324f681767489d9485560baf9eb80fe0e7ffab503 |
kubernetes-node-linux-arm64.tar.gz | 73bd70cb9d27ce424828a95d715c16fd9dd22396dbe1dfe721eb0aea9e186ec46e6978956613b0978a8da3c22df39790739b038991c0192281881fce41d7c9f1 |
kubernetes-node-linux-ppc64le.tar.gz | a865f98838143dc7e1e12d1e258e5f5f2855fcf6e88488fb164ad62cf886d8e2a47fdf186ad6b55172f73826ae19da9b2642b9a0df0fa08f9351a66aeef3cf17 |
kubernetes-node-linux-s390x.tar.gz | d2f9f746ed0fe00be982a847a3ae1b6a698d5c506be1d3171156902140fec64642ec6d99aa68de08bdc7d65c9a35ac2c36bda53c4db873cb8e7edc419a4ab958 |
kubernetes-node-windows-amd64.tar.gz | 37f48a6d8174f38668bc41c81222615942bfe07e01f319bdfed409f83a3de3773dceb09fd86330018bb05f830e165e7bd85b3d23d26a50227895e4ec07f8ab98 |
- Migrate scheduler to use v1beta1 Event API. action required: any tool targeting scheduler events needs to use v1beta1 Event API (#78447, @yastij)
- scheduler.alpha.kubernetes.io/critical-pod annotation is removed. Pod priority (spec.priorityClassName) should be used instead to mark pods as critical. Action required! (#79554, @draveness)
- hyperkube: the
--make-symlinks
flag, deprecated in v1.14, has been removed. (#80017, @Pothulapati) - Node labels
beta.kubernetes.io/metadata-proxy-ready
,beta.kubernetes.io/metadata-proxy-ready
andbeta.kubernetes.io/kube-proxy-ds-ready
are no longer added on new nodes. (#79305, @paivagustavo) * ip-mask-agent addon starts to use the labelnode.kubernetes.io/masq-agent-ds-ready
instead ofbeta.kubernetes.io/masq-agent-ds-ready
as its node selector. * kube-proxy addon starts to use the labelnode.kubernetes.io/kube-proxy-ds-ready
instead ofbeta.kubernetes.io/kube-proxy-ds-ready
as its node selector. * metadata-proxy addon starts to use the labelcloud.google.com/metadata-proxy-ready
instead ofbeta.kubernetes.io/metadata-proxy-ready
as its node selector. * Kubelet removes the ability to setkubernetes.io
ork8s.io
labels via --node-labels other than the specifically allowed labels/prefixes. - The following APIs are no longer served by default: (#70672, @liggitt)
* All resources under
apps/v1beta1
andapps/v1beta2
- useapps/v1
instead *daemonsets
,deployments
,replicasets
resources underextensions/v1beta1
- useapps/v1
instead *networkpolicies
resources underextensions/v1beta1
- usenetworking.k8s.io/v1
instead *podsecuritypolicies
resources underextensions/v1beta1
- usepolicy/v1beta1
instead- Serving these resources can be temporarily re-enabled using the
--runtime-config
apiserver flag.apps/v1beta1=true
apps/v1beta2=true
extensions/v1beta1/daemonsets=true,extensions/v1beta1/deployments=true,extensions/v1beta1/replicasets=true,extensions/v1beta1/networkpolicies=true,extensions/v1beta1/podsecuritypolicies=true
- The ability to serve these resources will be completely removed in v1.18.
- Serving these resources can be temporarily re-enabled using the
- ACTION REQUIRED: Removed deprecated flag
--resource-container
from kube-proxy. (#78294, @vllry)- The deprecated
--resource-container
flag has been removed from kube-proxy, and specifying it will now cause an error. The behavior is now as if you specified--resource-container=""
. If you previously specified a non-empty--resource-container
, you can no longer do so as of kubernetes 1.16.
- The deprecated
- When HPAScaleToZero feature gate is enabled HPA supports scaling to zero pods based on object or external metrics. HPA remains active as long as at least one metric value available. (#74526, @DXist)
- To downgrade the cluster to version that does not support scale-to-zero feature:
-
- make sure there are no hpa objects with minReplicas=0. Here is a oneliner to update it to 1:
-
$ kubectl get hpa --all-namespaces --no-headers=true | awk '{if($6==0) printf "kubectl patch hpa/%s --namespace=%s -p \"{\\"spec\\":{\\"minReplicas\\":1}}\"
", $2, $1 }' | sh * 2. disable HPAScaleToZero feature gate
- Add support for writing out of tree custom scheduler plugins. (#78162, @hex108)
- Remove deprecated github.com/kardianos/osext dependency (#80142, @loqutus)
- Add Bind extension point to the scheduling framework. (#79313, @chenchun)
- On Windows systems, %USERPROFILE% is now preferred over %HOMEDRIVE%%HOMEPATH% as the home folder if %HOMEDRIVE%%HOMEPATH% does not contain a .kube* Add --kubernetes-version to "kubeadm init phase certs ca" and "kubeadm init phase kubeconfig" (#80115, @gyuho)
- kubeadm ClusterConfiguration now supports featureGates: IPv6DualStack: true (#80145, @Arvinderpal)
- Fix a bug that ListOptions.AllowWatchBookmarks wasn't propagating correctly in kube-apiserver. (#80157, @wojtek-t)
- Bugfix: csi plugin supporting raw block that does not need attach mounted failed (#79920, @cwdsuzhou)
- Increase log level for graceful termination to v=5 (#80100, @andrewsykim)
- kubeadm: support fetching configuration from the original cluster for 'upgrade diff' (#80025, @SataQiu)
- The sample-apiserver gains support for OpenAPI v2 spec serving at
/openapi/v2
. (#79843, @sttts)- The
generate-internal-groups.sh
script in k8s.io/code-generator will generate OpenAPI definitions by default inpkg/generated/openapi
. Additional API group dependencies can be added viaOPENAPI_EXTRA_PACKAGES=<group>/<version> <group2>/<version2>...
.
- The
- Cinder and ScaleIO volume providers have been deprecated and will be removed in a future release. (#80099, @dims)
- kubelet's --containerized flag was deprecated in 1.14. This flag is removed in 1.16. (#80043, @dims)
- Optimize EC2 DescribeInstances API calls in aws cloud provider library by querying instance ID instead of EC2 filters when possible (#78140, @zhan849)
- etcd migration image no longer supports etcd2 version. (#80037, @dims)
- Promote WatchBookmark feature to beta and enable it by default. (#79786, @wojtek-t)
- With WatchBookmark feature, clients are able to request watch events with BOOKMARK type. Clients should not assume bookmarks are returned at any specific interval, nor may they assume the server will send any BOOKMARK event during a session.
- update to use go 1.12.7 (#79966, @tao12345666333)
- Add --shutdown-delay-duration to kube-apiserver in order to delay a graceful shutdown.
/healthz
will keep returning success during this time and requests are normally served, but/readyz
will return faillure immediately. This delay can be used to allow the SDN to update iptables on all nodes and stop sending traffic. (#74416, @sttts) - The
MutatingWebhookConfiguration
andValidatingWebhookConfiguration
APIs have been promoted toadmissionregistration.k8s.io/v1
: (#79549, @liggitt) *failurePolicy
default changed fromIgnore
toFail
for v1 *matchPolicy
default changed fromExact
toEquivalent
for v1 *timeout
default changed from30s
to10s
for v1 *sideEffects
default value is removed and the field made required for v1 *admissionReviewVersions
default value is removed and the field made required for v1 (supported versions for AdmissionReview arev1
andv1beta1
) * Thename
field for specified webhooks must be unique forMutatingWebhookConfiguration
andValidatingWebhookConfiguration
objects created viaadmissionregistration.k8s.io/v1
- The
admissionregistration.k8s.io/v1beta1
versions ofMutatingWebhookConfiguration
andValidatingWebhookConfiguration
are deprecated and will no longer be served in v1.19.
- The
- The garbage collector and generic object quota controller have been updated to use the metadata client which improves memory (#78742, @smarterclayton)
- and CPU usage of the Kube controller manager.
- SubjectAccessReview requests sent for RBAC escalation, impersonation, and pod security policy authorization checks now populate the version attribute. (#80007, @liggitt)
- na (#79892, @mikebrow)
- Use O_CLOEXEC to ensure file descriptors do not leak to subprocesses. (#74691, @cpuguy83)
- The namespace controller has been updated to use the metadata client which improves memory (#78744, @smarterclayton)
- and CPU usage of the Kube controller manager.
- NONE (#79933, @mm4tt)
- add
kubectl replace --raw
andkubectl delete --raw
to have parity with create and get (#79724, @deads2k) - E2E tests no longer add command line flags directly to the command line, test suites that want that need to be updated if they don't use HandleFlags (#75593, @pohly)
- loading a -viper-config=e2e.yaml with suffix (introduced in 1.13) works again and now has a regression test
- Kubernetes now supports transparent compression of API responses. Clients that send
Accept-Encoding: gzip
will now receive a GZIP compressed response body if the API call was larger than 128KB. Go clients automatically request gzip-encoding by default and should see reduced transfer times for very large API requests. Clients in other languages may need to make changes to benefit from compression. (#77449, @smarterclayton) - Resolves an issue serving aggregated APIs backed by services that respond to requests to
/
with non-2xx HTTP responses (#79895, @deads2k) - updated fluentd to 1.5.1, elasticsearchs & kibana to 7.1.1 (#79014, @monotek)
- kubeadm: implement support for concurrent add/remove of stacked etcd members (#79677, @neolit123)
- Added a metric 'apiserver_watch_events_total' that can be used to understand the number of watch events in the system. (#78732, @mborsz)
- KMS Providers will install a healthz check for the status of kms-pluign in kube-apiservers' encryption config. (#78540, @immutableT)
- Fixes a bug in openapi published for custom resources using x-kubernetes-preserve-unknown-fields extensions, so that kubectl will allow sending unknown fields for that portion of the object. (#79636, @liggitt)
- A new client
k8s.io/client-go/metadata.Client
has been added for accessing objects generically. This client makes it easier to retrieve only the metadata (themetadata
sub-section) from resources on the cluster in an efficient manner for use cases that deal with objects generically, like the garbage collector, quota, or the namespace controller. The client asks the server to return ameta.k8s.io/v1 PartialObjectMetadata
object for list, get, delete, watch, and patch operations on both normal APIs and custom resources which can be encoded in protobuf for additional work. If the server does not yet support this API the client will gracefully fall back to JSON and transform the response objects into PartialObjectMetadata. (#77819, @smarterclayton) - changes timeout value in csi plugin from 15s to 2min which fixes the timeout issue (#79529, @andyzhangx)
- kubeadm: provide "--control-plane-endpoint" flag for
controlPlaneEndpoint
(#79270, @SataQiu) - Fixes invalid "time stamp is the future" error when kubectl cp-ing a file (#73982, @tanshanshan)
- Kubelet should now more reliably report the same primary node IP even if the set of node IPs reported by the CloudProvider changes. (#79391, @danwinship)
- To configure controller manager to use ipv6dual stack: (#73977, @khenidak)
-
use --cluster-cidr=",".
-
Notes:
-
- Only the first two cidrs are used (soft limits for Alpha, might be lifted later on).
-
- Only the "RangeAllocator" (default) is allowed as a value for --cidr-allocator-type . Cloud allocators are not compatible with ipv6dualstack
-
- When using the conformance test image, a new environment variable E2E_USE_GO_RUNNER will cause the tests to be run with the new Golang-based test runner rather than the current bash wrapper. (#79284, @johnSchnake)
- kubeadm: prevent PSP blocking of upgrade image prepull by using a non-root user (#77792, @neolit123)
- kubelet now accepts a --cni-cache-dir option, which defaults to /var/lib/cni/cache, where CNI stores cache files. (#78908, @dcbw)
- Update Azure API versions (containerregistry --> 2018-09-01, network --> 2018-08-01) (#79583, @justaugustus)
- Fix possible fd leak and closing of dirs in doSafeMakeDir (#79534, @odinuge)
- kubeadm: fix the bug that "--cri-socket" flag does not work for
kubeadm reset
(#79498, @SataQiu) - kubectl logs --selector will support --tail=-1. (#74943, @JishanXing)
- Introduce a new admission controller for RuntimeClass. Initially, RuntimeClass will be used to apply the pod overhead associated with a given RuntimeClass to the Pod.Spec if a corresponding RuntimeClassName is specified. (#78484, @egernst)
- PodOverhead is an alpha feature as of Kubernetes 1.16.
- Fix kubelet errors in AArch64 with huge page sizes smaller than 1MiB (#78495, @odinuge)
- The alpha
metadata.initializers
field, deprecated in 1.13, has been removed. (#79504, @yue9944882) - Fix duplicate error messages in cli commands (#79493, @odinuge)
- Default resourceGroup should be used when the value of annotation azure-load-balancer-resource-group is an empty string. (#79514, @feiskyer)
- Fixes output of
kubectl get --watch-only
when watching a single resource (#79345, @liggitt) - RateLimiter add a context-aware method, fix client-go request goruntine backlog in async timeout scene. (#79375, @answer1991)
- Fix a bug where kubelet would not retry pod sandbox creation when the restart policy of the pod is Never (#79451, @yujuhong)
- Fix CRD validation error on 'items' field. (#76124, @tossmilestone)
- The CRD handler now properly re-creates stale CR storage to reflect CRD update. (#79114, @roycaihw)
- Integrated volume limits for in-tree and CSI volumes into one scheduler predicate. (#77595, @bertinatto)
- Fix a bug in server printer that could cause kube-apiserver to panic. (#79349, @roycaihw)
- Mounts /home/kubernetes/bin/nvidia/vulkan/icd.d on the host to /etc/vulkan/icd.d inside containers requesting GPU. (#78868, @chardch)
- Remove CSIPersistentVolume feature gates (#79309, @draveness)
- Init container resource requests now impact pod QoS class (#75223, @sjenning)
- Correct the maximum allowed insecure bind port for the kube-scheduler and kube-apiserver to 65535. (#79346, @ncdc)
- Fix remove the etcd member from the cluster during a kubeadm reset. (#79326, @bradbeam)
- Remove KubeletPluginsWatcher feature gates (#79310, @draveness)
- Remove HugePages, VolumeScheduling, CustomPodDNS and PodReadinessGates feature flags (#79307, @draveness)
- The GA PodPriority feature gate is now on by default and cannot be disabled. The feature gate will be removed in v1.18. (#79262, @draveness)
- Remove pids cgroup controller requirement when related feature gates are disabled (#79073, @rafatio)
- Add Bind extension point of the scheduling framework (#78513, @chenchun)
- if targetPort is changed that will process by service controller (#77712, @Sn0rt)
- update to use go 1.12.6 (#78958, @tao12345666333)
- kubeadm: fix a potential panic if kubeadm discovers an invalid, existing kubeconfig file (#79165, @neolit123)
- fix kubelet fail to delete orphaned pod directory when the kubelet's pods directory (default is "/var/lib/kubelet/pods") symbolically links to another disk device's directory (#79094, @gaorong)
- Addition of Overhead field to the PodSpec and RuntimeClass types as part of the Pod Overhead KEP (#76968, @egernst)
- fix pod list return value of framework.WaitForPodsWithLabelRunningReady (#78687, @pohly)
- The behavior of the default handler for 404 requests fro the GCE Ingress load balancer is slightly modified in the sense that it now exports metrics using prometheus. The metrics exported include: (#79106, @vbannai)
-
- http_404_request_total (the number of 404 requests handled)
-
- http_404_request_duration_ms (the amount of time the server took to respond in ms)
- Also includes percentile groupings. The directory for the default 404 handler includes instructions on how to enable prometheus for monitoring and setting alerts.
-
- The kube-apiserver has improved behavior for both startup and shutdown sequences and also now exposes
eadyz
for readiness checking. Readyz includes all existing healthz checks but also adds a shutdown check. When a cluster admin initiates a shutdown, the kube-apiserver will try to process existing requests (for the duration of request timeout) before killing the apiserver process. (#78458, @logicalhan)- The apiserver also now takes an optional flag "--maximum-startup-sequence-duration". This allows you to explicitly define an upper bound on the apiserver startup sequences before healthz begins to fail. By keeping the kubelet liveness initial delay short, this can enable quick kubelet recovery as soon as we have a boot sequence which has not completed in our expected time frame, despite lack of completion from longer boot sequences (like RBAC). Kube-apiserver behavior when the value of this flag is zero is backwards compatible (this is as the defaulted value of the flag).
- fix: make azure disk URI as case insensitive (#79020, @andyzhangx)
- Enable cadvisor ProcessMetrics collecting. (#79002, @jiayingz)
- Fixes a bug where
kubectl set config
hangs and uses 100% CPU on some invalid property names (#79000, @pswica) - Fix a string comparison bug in IPVS graceful termination where UDP real servers are not deleted. (#78999, @andrewsykim)
- Reflector watchHandler Warning log 'The resourceVersion for the provided watch is too old.' is now logged as Info. (#78991, @sallyom)
- fix a bug that pods not be deleted from unmatched nodes by daemon controller (#78974, @DaiHao)
- NONE (#78821, @jhedev)
- Volume expansion is enabled in the default GCE storageclass (#78672, @msau42)
- kubeadm: use the service-cidr flag to pass the desired service CIDR to the kube-controller-manager via its service-cluster-ip-range flag. (#78625, @Arvinderpal)
- kubeadm: introduce deterministic ordering for the certificates generation in the phase command "kubeadm init phase certs" . (#78556, @neolit123)
- Add Pre-filter extension point to the scheduling framework. (#78005, @ahg-g)
- fix pod stuck issue due to corrupt mnt point in flexvol plugin, call Unmount if PathExists returns any error (#75234, @andyzhangx)