Kubernetes v1.14.0 has been built and pushed.
The release notes have been updated in CHANGELOG-1.14.md with a pointer to it on github:
| filename | sha512 hash |
|---|---|
| kubernetes.tar.gz | 0ad264a46f185a9ff4db0393508a9598dab146f438b2cfdc7527592eb422870b8f26ade7ed089359c06741d998fcd730f897eae261f922c1a26d9fdc034d270d |
| kubernetes-src.tar.gz | c5175439decc1c5f54254572bfec3c9f61f39d6bd1cbc28d1f771f8f931b98f0c305f1871618ce7e9de9cf3bf8227e19dcf985a7e017c74d0d7ab4005b3dbd59 |
| filename | sha512 hash |
|---|---|
| kubernetes-client-darwin-386.tar.gz | 68bdba50a2b0be755e73e34ffc758fd419940adace096b1ddebd44a0eae2c7cdaed984965ea8f2145c1cab0be47bd6c72c2aeb73e51d449bfeb9ce1854b6c562 |
| kubernetes-client-darwin-amd64.tar.gz | 255bd93082b3ac5d69bd4e45c75c9f19efee50ad6add50837ff2987ce16cbcc485fad334c980b17f69e5a344ee50548e206f747441ad4a045aa65746c79d10ca |
| kubernetes-client-linux-386.tar.gz | 2bd115ad2503fdfe5482e4592fcc0c8a2aee36be5205220a13c8050cd1e55dd3c08377425dbe5a03e4ffd21cf603c739ec4eaf3e5b2514a725d095df46f25d98 |
| kubernetes-client-linux-amd64.tar.gz | a551adf8019b17fce5aff2b379fab3627588978a2d628b64ba1af6f3be1b435322368b00dd04fa739d01c341420016b93239cc0d4601cee86706d81d78cb4d7f |
| kubernetes-client-linux-arm.tar.gz | 24e771cd4074786330e07f5537259a28d0932102639326230d9161f12a8dc545638a55bc252771eb4e21e95e2c7f0918dc1238ac4dc70d3b8b33f093da7123ab |
| kubernetes-client-linux-arm64.tar.gz | 16204f2345ab3523bbe3c868f04806a97c111d940b2594aaff67cf73b4259040c7770d5b0e7bdb7ffd7389f87e5f090ae875bd0f192b07582f59a01a1df32f5b |
| kubernetes-client-linux-ppc64le.tar.gz | cd9ce829d585dd3331c53d35015d4017026d5efd24b9bc2f342995245628598c98bd8b1f1d706b196a7b3046a44049d4aba6efb4b1000722bfd055bd8a662f1f |
| kubernetes-client-linux-s390x.tar.gz | 482c0a8e53b27f8922f58d89fb81842ddd9c3ffd120e635838992dc97d535e46b42e7d8c439cb739b7c1d63c8eed27d7e3bcac7126a6a96e56cc13d52f396328 |
| kubernetes-client-windows-386.tar.gz | 4446d666f999e979a7245e1b7ebf4817f7bd23aa247a38853a63b9cda473c7d4c2d376a2fd0df13ba15b740bf6b458cac14bd03dbf5a8151fc230e40c08294cf |
| kubernetes-client-windows-amd64.tar.gz | 97f4789f21d10fd3df446e55bc489472dcd534c623bb40dc3cb20fe1edd74c1a89a50ce7caa4e5e0536f3b22d8698060bfe8c46f4adbd0e507349412e52664e8 |
| filename | sha512 hash |
|---|---|
| kubernetes-server-linux-amd64.tar.gz | 25739802a641517a8bbb933b69000a943e8dd38e616b8778149dd0138737abacf377683da2ff35fdd0bbb305b88bc8fc711df20a2585720a43bb674ef36b034f |
| kubernetes-server-linux-arm.tar.gz | c1dbba77a4ff5661eb36c55182a753b88ccc9b89ca31e162b06672126743cfea115b2f8ea8658b12344c36df17958e310c1b8efbdd7800f44f013e1e6f10477d |
| kubernetes-server-linux-arm64.tar.gz | ad346bbe2a053c1106b51e5125698737dc7b76fa3bf439e14d4b4ba1c262678fede9c507c1098aac6e14d2c742c526c8d257fefa95dd3bbb1dff959e1dc7b9aa |
| kubernetes-server-linux-ppc64le.tar.gz | 49f9bd1c751620ecf4b5c152f287d72b36abca21fd1dfe99443d984473c6efa051a910de585c42f5447ef7c18d7dbd905a66c4f09ca6025f45e63f5e96e3ca2f |
| kubernetes-server-linux-s390x.tar.gz | d6be847f2a0358755a69dea26181e5fc1a80ac4939b8b04a3875e1f6693553cad562452bfad21b2e380ddda1839ab846122bc3339d8bec0971f218f6e8f6dce9 |
| filename | sha512 hash |
|---|---|
| kubernetes-node-linux-amd64.tar.gz | 75dc99919d1084d7d471a53ab60c743dc399145c99e83f37c6ba3c241b2c0b2ecc2c0d1b94690ff912e2a15b7c5595aa1d2d24c2fc439e06d85ff0246fb43b89 |
| kubernetes-node-linux-arm.tar.gz | 49013a4f01be8086fff332099d94903082688b9b295d2f34468462656da4709360025e9d84b069410c608977ef803079af09af1f1e2678af7cb64e0fc02e9c9d |
| kubernetes-node-linux-arm64.tar.gz | f8c0cb0c089cd1d1977c049002620b8cf748d193c1b76dd1d3aac01ff9273549c06a1e3dfe983dc40a95ee8b0719908e0cdf86ce17359b5f1b2426f2c55799a1 |
| kubernetes-node-linux-ppc64le.tar.gz | 48fc02c856a192388877189a43eb1cda531e548bb035f9dfe6a1e3c8d3bcbd0f8e14f29382da45702cb28a91126d13ede42bd6e9159e12ecbd387ca9a58f9a92 |
| kubernetes-node-linux-s390x.tar.gz | d7c5f52cf602fd0c0d0f72d4cfe1ceaa4bad70a42f37f21c103f17c3448ceb2396c1bfa521eeeb9eef5f3173d84e4268704a247edd826d765f65e9a29a4f7f72 |
| kubernetes-node-windows-amd64.tar.gz | 120afdebe844b06a7437bb9788c3e7ea4fc6352aa18cc6a00e70f44f54664f844429f138870bc15862579da632632dff2e7323be7f627d9c33585a11ad2bed6b |
Support for Windows Nodes is Graduating to Stable (#116 )
Updated Plugin Mechanism for kubectl is Graduating to Stable (#579)
Durable Local Storage Management is Now GA (#121)
Pid Limiting is Graduating to Beta (#757)
Pod Priority and Preemption in Kubernetes (#564)
Pod Ready++ (#580)
Kubeadm: Automate certificate copy between control planes in HA setups
kubeadm init --experimental-upload-certs and kubeadm join --experimental-control-plane --certificate-key.Kubeadm: Expose the kubeadm join workflow as phases
kubeadm join command can now be used in phases. Similar to the work that was done for kubeadm init in 1.13, in 1.14 the join phases can be now executed step-by-step/selectively using the kubeadm join phase sub-command. This makes it possible to further customize the workflow of joining nodes to the cluster.kubectl auth can-i) to unauthenticated users. Upgraded clusters preserve prior behavior, but cluster administrators wishing to grant unauthenticated users access in new clusters will need to explicitly opt-in to expose the discovery and/or permission-checking APIs:
kubectl create clusterrolebinding anonymous-discovery --clusterrole=system:discovery --group=system:unauthenticatedkubectl create clusterrolebinding anonymous-access-review --clusterrole=system:basic-user --group=system:unauthenticated--repair-malformed-updates flag has been removed (#73663, @danielqsj)/swaggerapi/* schema docs, deprecated since 1.7, have been removed in favor of the /openapi/v2 schema docs. (#72924, @liggitt)/openapi/v2 (#73148, @liggitt)kube-apiserver now only aggregates openapi schemas from /openapi/v2 endpoints of aggregated API servers. The fallback to aggregate from /swagger.json has been removed. Ensure aggregated API servers provide schema information via /openapi/v2 (available since v1.10). (#73441, @roycaihw)The ValidateProxyRedirects feature was promoted to Beta and enabled by default. This feature restricts redirect-following from the apiserver to same-host redirects. If nodes are configured to respond to CRI streaming requests on a different host interface than what the apiserver makes requests on (only the case if not using the built-in dockershim & setting the kubelet flag --redirect-container-streaming=true), then these requests will be broken. In that case, the feature can be temporarily disabled until the node configuration is corrected. We suggest setting --redirect-container-streaming=false on the kubelet to avoid issues.(#72552, @tallclair)
The deprecated --show-all flag to kubectl get has been removed (#69255, @Pingan2017)
--experimental-fail-swap-on flag has been removed (#69552, @Pingan2017)Health check (liveness & readiness) probes using an HTTPGetAction will no longer follow redirects to different hostnames from the original probe request. Instead, these non-local redirects will be treated as a Success (the documented behavior). In this case an event with reason "ProbeWarning" will be generated, indicating that the redirect was ignored. If you were previously relying on the redirect to run health checks against different endpoints, you will need to perform the healthcheck logic outside the Kubelet, for instance by proxying the external endpoint rather than redirecting to it. (#75416, @tallclair)
clientset.Apps()) have been removed. Use an explicit version instead (like clientset.AppsV1()) (#74422, @liggitt)The disk-cached discovery client is moved from k8s.io/client-go/discovery to k8s.io/client-go/discovery/cached/disk.
The memory-cached discovery client is moved from k8s.io/client-go/discovery/cached to k8s.io/client-go/discovery/cached/memory.
(#72214, @caesarxuchao)
kubeadm alpha preflight and kubeadm alpha preflight node are removed; you can now use kubeadm join phase preflight (#73718, @fabriziopandini)
The deprecated taints node.alpha.kubernetes.io/notReady and node.alpha.kubernetes.io/unreachable are no longer supported or adjusted. These uses should be replaced with node.kubernetes.io/not-ready and node.kubernetes.io/unreachable
(#73001, @shivnagarajan)
Any Prometheus queries that match pod_name and container_name labels (e.g. cadvisor or kubelet probe metrics) should be updated to use pod and container instead. pod_name and container_name labels will be present alongside pod and container labels for one transitional release and removed in the future.
(#69099, @ehashman)
kubectl convert is deprecated and will be removed in v1.17.The --export flag for the kubectl get command is deprecated and will be removed in v1.18. (#73787, @soltysh)
kubernetes.io/os and kubernetes.io/arch labels on Node objects. The previous labels (beta.kubernetes.io/os and beta.kubernetes.io/arch) are still recorded, but are deprecated and targeted for removal in v1.18. (#73333, @yujuhong)The --containerized flag is deprecated and will be removed in a future release (#74267, @dims)
--make-symlinks flag is deprecated and will be removed in a future release. (#74975, @dims)networking.k8s.io/v1beta1. Ingress resources in extensions/v1beta1 are deprecated and will no longer be served in v1.18. Existing persisted data is available via the new API group/version (#74057, @liggitt)extensions/v1beta1 in v1.16. Migrate use to the networking.k8s.io/v1 API, available since v1.8. Existing persisted data can be retrieved via the networking.k8s.io/v1 API.extensions/v1beta1 in v1.16. Migrate to the policy/v1beta1 API, available since v1.10. Existing persisted data can be retrieved via the policy/v1beta1 API.extensions/v1beta1, apps/v1beta1, or apps/v1beta2 in v1.16. Migrate to the apps/v1 API, available since v1.9. Existing persisted data can be retrieved via the apps/v1 API.scheduling.k8s.io/v1 with no changes. The scheduling.k8s.io/v1beta1 and scheduling.k8s.io/v1alpha1 versions are now deprecated and will stop being served by default in v1.17. (#73555, #74465, @bsalamat)export query parameter for list API calls is deprecated and will be removed in v1.18 (#73783, @deads2k)CustomPodDNSHugePagesMountPropagationPersistentLocalVolumesupstream option of kubernetes plugin, becoming default behavior in v1.15.proxy plugin replaced by forward plugin
reflector_items_per_listreflector_items_per_watchreflector_last_resource_versionreflector_list_duration_secondsreflector_lists_totalreflector_short_watches_totalreflector_watch_duration_secondsreflector_watches_totalrest_client_request_latency_seconds -> rest_client_request_duration_secondsapiserver_proxy_tunnel_sync_latency_secs -> apiserver_proxy_tunnel_sync_duration_secondsscheduler_scheduling_latency_seconds -> scheduler_scheduling_duration_secondskubelet_pod_worker_latency_microseconds -> kubelet_pod_worker_duration_secondskubelet_pod_start_latency_microseconds -> kubelet_pod_start_duration_secondskubelet_cgroup_manager_latency_microseconds -> kubelet_cgroup_manager_duration_secondskubelet_pod_worker_start_latency_microseconds -> kubelet_pod_worker_start_duration_secondskubelet_pleg_relist_latency_microseconds -> kubelet_pleg_relist_duration_secondskubelet_pleg_relist_interval_microseconds -> kubelet_pleg_relist_interval_secondskubelet_eviction_stats_age_microseconds -> kubelet_eviction_stats_age_secondskubelet_runtime_operations -> kubelet_runtime_operations_totalkubelet_runtime_operations_latency_microseconds -> kubelet_runtime_operations_duration_secondskubelet_runtime_operations_errors -> kubelet_runtime_operations_errors_totalkubelet_device_plugin_registration_count -> kubelet_device_plugin_registration_totalkubelet_device_plugin_alloc_latency_microseconds -> kubelet_device_plugin_alloc_duration_secondsdocker_operations -> docker_operations_totaldocker_operations_latency_microseconds -> docker_operations_latency_secondsdocker_operations_errors -> docker_operations_errors_totaldocker_operations_timeout -> docker_operations_timeout_totalnetwork_plugin_operations_latency_microseconds -> network_plugin_operations_latency_secondssync_proxy_rules_latency_microseconds -> sync_proxy_rules_latency_secondsapiserver_request_count -> apiserver_request_totalapiserver_request_latencies -> apiserver_request_latency_secondsapiserver_request_latencies_summary -> apiserver_request_latency_secondsapiserver_dropped_requests -> apiserver_dropped_requests_totaletcd_helper_cache_hit_count -> etcd_helper_cache_hit_totaletcd_helper_cache_miss_count -> etcd_helper_cache_miss_totaletcd_helper_cache_entry_count -> etcd_helper_cache_entry_totaletcd_request_cache_get_latencies_summary -> etcd_request_cache_get_latency_secondsetcd_request_cache_add_latencies_summary -> etcd_request_cache_add_latency_secondsetcd_request_latencies_summary -> etcd_request_latency_secondstransformation_latencies_microseconds -> transformation_latencies_secondsdata_key_generation_latencies_microseconds -> data_key_generation_latencies_secondsRunAsGroup feature has been promoted to beta and enabled by default. PodSpec and PodSecurityPolicy objects can be used to control the primary GID of containers on supported container runtimes. (#73007, @krmayankk)PodPresets. (#71479, @soggiest)--dryRun flag if the container is run with the environment variable E2E_DRYRUN set. (#74731, @johnSchnake)init or upload-certs phase, allowing to transfer certificate secrets (certificates and keys) from the cluster to other master machines when creating HA deployments. (#74168, @ereslibre)--quiet option to kubectl run now suppresses resource deletion messages emitted when the --rm option is specified. (#73266, @awh)kubectl autoscale (#72678, @rmohr)-f and -l flags in kubectl logs (#67573, @m1kola)kubeadm reset (#74112, @pytimer)--experimental-upload-certs on init or upload-certs phase. (#73907, @yagonobre)kubectl auth reconcile now outputs details about what changes are being made (#71564, @liggitt)kubelet_node_name metrics. (#72910, @danielqsj)kubectl wait to work with more types of selectors. (#71746, @rctl)pvlabel.kubernetes.io alpha Initializer enabled, you must now enable PersistentVolume labeling using the PersistentVolumeLabel admission controller instead. You can do this by adding PersistentVolumeLabel in the --enable-admission-plugins kube-apiserver flag. (#73102, @andrewsykim)--cri-socket can be omitted from the command line if Docker is not used and there is a single CRI installed. (#69366, @rosti)CSINodeInfo and CSIDriver CRDs in the local cluster. (#72584, @xing-yang)ResourceVersion as a precondition for delete in order to ensure a delete fails if an unobserved change happens to an object. (#74040, @ajatprabha)/var/log/pods/NAMESPACE_NAME_UID to stackdriver with k8s_pod resource type. (#74502, @Random-Liu)/var/log/pods/UID to /var/log/pods/NAMESPACE_NAME_UID. (#74441, @Random-Liu)RuntimeClass to beta, and enable by default. (#75003, @tallclair)dry_run metric label (indicating the value of the dryRun query parameters) into the metrics: (#74997, @jennybuckley)cos-beta-73-11647-64-0 (#75149, @yguo0905)runtime_handler into PodSandbox and PodSandboxStatus to track the RuntimeClass information of a pod. (#73833, @haiyanmeng)PortForwarder.GetPorts() now contain correct local port if no local port was initially specified when setting up the port forwarder (#73676, @martin-helmich)apiVersion/kind in object data sent to admission webhooks (#74448, @liggitt)crd_autoregister, crd_finalizer and crd_naming_condition_controller are exported. (#71767, @roycaihw)[start:end:step] slice are now evaluated correctly (#73149, @liggitt)metadata.deletionTimestamp is no longer moved into the future when issuing repeated DELETE requests against a resource containing a finalizer. (#73138, @liggitt)watch.Until now works for long durations. (#67350, @tnozicka)DaemonSet assigned to not existing nodes. (#73401, @krzysztof-jastrzebski)kubectl auth can-i --list option, which allows users to know what actions they can do in specific namespaces. (#64820, @WanLinghao)rules field in RBAC Role and ClusterRole objects is now correctly reported as optional in the openapi schema. (#73250, @liggitt)system:kube-controller-manager and system:kube-scheduler users are now permitted to perform delegated authentication/authorization checks by default RBAC policy (#72491, @liggitt)--help flag parsing (#74682, @soltysh)kubectl describe cannot obtain the event messages for a static pod (#74156, @gaorong)set env operation on a --local resource (#65636, @juanvallejo)kubectl plugin list command when listing available plugins. (#73542, @juanvallejo)bash a. kubectl get pod test-pod -o custom-columns=CONTAINER:.spec.containers[0:3].name b. kubectl get pod test-pod -o custom-columns=CONTAINER:.spec.containers[-2:].name
kubectl api-resources command will no longer fail to display any resources on a single failure (#73035, @juanvallejo)SizeLimit of EmptyDir in kubectl describe pod outputs. (#69279, @dtaniwaki)kubectl delete --all-namespaces is now a recognized flag. (#73716, @deads2k)v1beta1. (#74025, @rosti)--kubeconfig-dir and --config flags on kubeadm init (#73998, @yagonobre)PriorityClassName pod spec for annotating them as cluster critical components. Since scheduler.alpha.kubernetes.io/critical-pod annotation is no longer supported by Kubernetes 1.14 this annotation is no longer added to master components. (#73857, @ereslibre)--cert-dir option for kubeadm init phase certs sa (#73239, @mattkelly)etcd to have grown when joining a new control plane (#72984, @ereslibre)kubeconfig; the CA files couldn't be loaded: failed to load key: couldn't load the private key file /etc/kubernetes/pki/ca.key: open /etc/kubernetes/pki/ca.key: no such file or directory (#75431, @fabriziopandini)--experimental-upload-certs feature (#75415, @ereslibre)--container-runtime-endpoint: only unix socket is support on Linux. (#74712, @feiskyer)runtime_handler into PodSandbox and PodSandboxStatus to track the RuntimeClass information of a pod. (#73833, @haiyanmeng)NotReady status when Node's iops is full if the runtime is dockershim. (#74389, @answer1991)cpuPeriod was not reset, but used as set via flag, although it was disabled via alpha gate (#73342, @szuecs)oom_score_adj for containers in pods with system-critical priorities (#73758, @sjenning)ConfigMap/Secret references (#74755, @liggitt)OutOfDisk condition from kubelet side (#72507, @dixudx)NodeAddresses when using the vSphere CloudProvider and nodes that have multiple IP addresses. (#70805, @danwinship)ConfigMaps and Secrets for terminated pods, in worst scenario causing it to not be able to send other requests to kube-apiserver (#74809, @oxddr)TaintNodesByCondition admission plugin taints newly created Node objects as "not ready", to fix a race condition that could cause pods to be scheduled on new nodes before their taints were updated to accurately reflect their reported conditions. This admission plugin is enabled by default if the TaintNodesByCondition feature is enabled. (#73097, @bsalamat)pid=<number> in the --system-reserved and --kube-reserved options to ensure that the specified number of process IDs will be reserved for the system as a whole and for Kubernetes system daemons respectively. Please reference Kube Reserved and System Reserved in Reserve Compute Resources for System Daemons in the Kubernetes documentation for general discussion of resource reservation. To utilize this functionality, you must set the feature gate SupportNodePidsLimit=true (#73651fsGroup (#73533, @mxey)allowedTopologies. (#72731, @skarthiksrinivas)VolumeSubpathEnvExpansion alpha feature to support environment variable expansion (#71351, @kevtaylor)e2e.test now rejects unknown --provider values instead of merely warning about them. An empty provider name is not accepted anymore and was replaced by skeleton (a provider with no special behavior). (#73402, @pohly)KUBE_SSH_BASTION to the host:port of a machine that is allowed to SSH to those nodes. The same private key that the test would use is used for the bastion host. The test connects to the bastion and then tunnels another SSH connection to the node. (#72286, @smarterclayton)PidPressure evicts pods from lowest priority to highest priority (#72844, @dashpole)kubernetes-test tarball into kubernetes-test-portable and kubernetes-test-{OS}-{ARCH} tarballs. (#74065, @ixdy)Support for Windows nodes and Windows containers is going stable.
Support for Group Managed Service Accounts (GMSA) for Windows containers in Kubernetes. GMSA are a specific type of Active Directory account that provides automatic password management, simplified service principal name (SPN) management, and the ability to delegate the management to other administrators across multiple servers.
[sig-network] DNS should provide /etc/hosts entries for the cluster [LinuxOnly] [Conformance] will validate the host entries set in the /etc/hosts file (pod's FQDN and hostname), which should be managed by Kubelet. (#72729, @bclau)network-name, source-vip, and enable-dsr. (#70896, @ksubrmnn)usageNanoCores from CRI stats provider (#73659, @feiskyer)nodeSelectors) to run only on nodes with that operating system. This ensures that in clusters which include Windows nodes, the scheduler will not ever attempt to place CoreDNS pods on these machines, reducing setup latency and enhancing initial cluster stability. (#69940, @MarcPow)
Leads, the CHANGELOG-1.14.md has been bootstrapped with v1.14.0 release notes and you may edit now as needed.
Published by anago, the Kubernetes Release Tool