mirror of https://github.com/k3s-io/k3s
Merge pull request #74328 from daixiang0/delete-blank
delete all duplicate empty blankspull/564/head
commit
8993fbc543
|
@ -5,7 +5,7 @@ labels: triage/support
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
STOP -- PLEASE READ!
|
STOP -- PLEASE READ!
|
||||||
|
|
||||||
GitHub is not the right place for support requests.
|
GitHub is not the right place for support requests.
|
||||||
|
|
|
@ -24,7 +24,7 @@ https://git.k8s.io/community/contributors/devel/release.md#issue-kind-label
|
||||||
**What this PR does / why we need it**:
|
**What this PR does / why we need it**:
|
||||||
|
|
||||||
**Which issue(s) this PR fixes**:
|
**Which issue(s) this PR fixes**:
|
||||||
<!--
|
<!--
|
||||||
*Automatically closes linked issue when PR is merged.
|
*Automatically closes linked issue when PR is merged.
|
||||||
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
|
Usage: `Fixes #<issue number>`, or `Fixes (paste link of issue)`.
|
||||||
_If PR is about `failing-tests or flakes`, please post the related issues/tests in a comment and do not use `Fixes`_*
|
_If PR is about `failing-tests or flakes`, please post the related issues/tests in a comment and do not use `Fixes`_*
|
||||||
|
@ -34,7 +34,7 @@ Fixes #
|
||||||
**Special notes for your reviewer**:
|
**Special notes for your reviewer**:
|
||||||
|
|
||||||
**Does this PR introduce a user-facing change?**:
|
**Does this PR introduce a user-facing change?**:
|
||||||
<!--
|
<!--
|
||||||
If no, just write "NONE" in the release-note block below.
|
If no, just write "NONE" in the release-note block below.
|
||||||
If yes, a release note is required:
|
If yes, a release note is required:
|
||||||
Enter your extended release note in the block below. If the PR requires additional action from users switching to the new release, include the string "action required".
|
Enter your extended release note in the block below. If the PR requires additional action from users switching to the new release, include the string "action required".
|
||||||
|
|
|
@ -650,7 +650,7 @@ filename | sha256 hash
|
||||||
|
|
||||||
* Fix creation of custom resources when the CRD contains non-conventional pluralization and subresources ([#66249](https://github.com/kubernetes/kubernetes/pull/66249), [@deads2k](https://github.com/deads2k))
|
* Fix creation of custom resources when the CRD contains non-conventional pluralization and subresources ([#66249](https://github.com/kubernetes/kubernetes/pull/66249), [@deads2k](https://github.com/deads2k))
|
||||||
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
||||||
* Also updates dependencies of users of debian-base.
|
* Also updates dependencies of users of debian-base.
|
||||||
* debian-base version 0.3.1 is already available.
|
* debian-base version 0.3.1 is already available.
|
||||||
* Fix an issue that pods using hostNetwork keep increasing. ([#67456](https://github.com/kubernetes/kubernetes/pull/67456), [@Huang-Wei](https://github.com/Huang-Wei))
|
* Fix an issue that pods using hostNetwork keep increasing. ([#67456](https://github.com/kubernetes/kubernetes/pull/67456), [@Huang-Wei](https://github.com/Huang-Wei))
|
||||||
* Allows extension API server to dynamically discover the requestheader CA certificate when the core API server doesn't use certificate based authentication for it's clients ([#66394](https://github.com/kubernetes/kubernetes/pull/66394), [@rtripat](https://github.com/rtripat))
|
* Allows extension API server to dynamically discover the requestheader CA certificate when the core API server doesn't use certificate based authentication for it's clients ([#66394](https://github.com/kubernetes/kubernetes/pull/66394), [@rtripat](https://github.com/rtripat))
|
||||||
|
@ -1223,7 +1223,7 @@ filename | sha256 hash
|
||||||
|
|
||||||
### Node
|
### Node
|
||||||
|
|
||||||
Many of the changes within SIG-Node revolve around control. With the beta release of the `kubelet.config.k8s.io` API group, a significant subset of Kubelet configuration can now be [configured via a versioned config file](https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/). Kubernetes v1.10 adds alpha support for the ability to [configure whether containers in a pod should share a single process namespace](https://github.com/kubernetes/enhancements/issues/495), and the CRI has been upgraded to v1alpha2, which adds [support for Windows Container Configuration](https://github.com/kubernetes/enhancements/issues/547). Kubernetes v1.10 also ships with the beta release of the [CRI validation test suite](https://github.com/kubernetes/enhancements/issues/292).
|
Many of the changes within SIG-Node revolve around control. With the beta release of the `kubelet.config.k8s.io` API group, a significant subset of Kubelet configuration can now be [configured via a versioned config file](https://kubernetes.io/docs/tasks/administer-cluster/kubelet-config-file/). Kubernetes v1.10 adds alpha support for the ability to [configure whether containers in a pod should share a single process namespace](https://github.com/kubernetes/enhancements/issues/495), and the CRI has been upgraded to v1alpha2, which adds [support for Windows Container Configuration](https://github.com/kubernetes/enhancements/issues/547). Kubernetes v1.10 also ships with the beta release of the [CRI validation test suite](https://github.com/kubernetes/enhancements/issues/292).
|
||||||
|
|
||||||
The Resource Management Working Group graduated three features to beta in the 1.10 release. First, [CPU Manager](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/), which allows users to request exclusive CPU cores. This helps performance in a variety of use-cases, including network latency sensitive applications, as well as applications that benefit from CPU cache residency. Next, [Huge Pages](https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/), which allows pods to consume either 2Mi or 1Gi Huge Pages. This benefits applications that consume large amounts of memory. Use of Huge Pages is a common tuning recommendation for databases and JVMs. Finally, the [Device Plugin](https://kubernetes.io/docs/concepts/cluster-administration/device-plugins/) feature, which provides a framework for vendors to advertise their resources to the Kubelet without changing Kubernetes core code. Targeted devices include GPUs, High-performance NICs, FPGAs, InfiniBand, and other similar computing resources that may require vendor specific initialization and setup.
|
The Resource Management Working Group graduated three features to beta in the 1.10 release. First, [CPU Manager](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/), which allows users to request exclusive CPU cores. This helps performance in a variety of use-cases, including network latency sensitive applications, as well as applications that benefit from CPU cache residency. Next, [Huge Pages](https://kubernetes.io/docs/tasks/manage-hugepages/scheduling-hugepages/), which allows pods to consume either 2Mi or 1Gi Huge Pages. This benefits applications that consume large amounts of memory. Use of Huge Pages is a common tuning recommendation for databases and JVMs. Finally, the [Device Plugin](https://kubernetes.io/docs/concepts/cluster-administration/device-plugins/) feature, which provides a framework for vendors to advertise their resources to the Kubelet without changing Kubernetes core code. Targeted devices include GPUs, High-performance NICs, FPGAs, InfiniBand, and other similar computing resources that may require vendor specific initialization and setup.
|
||||||
|
|
||||||
|
@ -1231,7 +1231,7 @@ The Resource Management Working Group graduated three features to beta in the 1.
|
||||||
|
|
||||||
This release brings additional power to both local storage and Persistent Volumes. [Mount namespace propagation](https://github.com/kubernetes/enhancements/issues/432) allows a container to mount a volume as rslave so that host mounts can be seen inside the container, or as rshared so that mounts made inside a container can be seen by the host. (Note that this is [not supported on Windows](https://github.com/kubernetes/kubernetes/pull/60275).) [Local Ephemeral Storage Capacity Isolation](https://github.com/kubernetes/enhancements/issues/361) makes it possible to set requests and limits on ephemeral local storage resources. In addition, you can now create [Local Persistent Storage](https://github.com/kubernetes/enhancements/issues/121), which enables PersistentVolumes to be created with locally attached disks, and not just network volumes.
|
This release brings additional power to both local storage and Persistent Volumes. [Mount namespace propagation](https://github.com/kubernetes/enhancements/issues/432) allows a container to mount a volume as rslave so that host mounts can be seen inside the container, or as rshared so that mounts made inside a container can be seen by the host. (Note that this is [not supported on Windows](https://github.com/kubernetes/kubernetes/pull/60275).) [Local Ephemeral Storage Capacity Isolation](https://github.com/kubernetes/enhancements/issues/361) makes it possible to set requests and limits on ephemeral local storage resources. In addition, you can now create [Local Persistent Storage](https://github.com/kubernetes/enhancements/issues/121), which enables PersistentVolumes to be created with locally attached disks, and not just network volumes.
|
||||||
|
|
||||||
On the Persistent Volumes side, this release [Prevents deletion of Persistent Volume Claims that are used by a pod](https://github.com/kubernetes/enhancements/issues/498) and [Persistent Volumes that are bound to a Persistent Volume Claim](https://github.com/kubernetes/enhancements/issues/499), making it impossible to delete storage that is in use by a pod.
|
On the Persistent Volumes side, this release [Prevents deletion of Persistent Volume Claims that are used by a pod](https://github.com/kubernetes/enhancements/issues/498) and [Persistent Volumes that are bound to a Persistent Volume Claim](https://github.com/kubernetes/enhancements/issues/499), making it impossible to delete storage that is in use by a pod.
|
||||||
|
|
||||||
This release also includes [Topology Aware Volume Scheduling](https://github.com/kubernetes/enhancements/issues/490) for local persistent volumes, the stable release of [Detailed storage metrics of internal state](https://github.com/kubernetes/enhancements/issues/496), and beta support for [Out-of-tree CSI Volume Plugins](https://github.com/kubernetes/enhancements/issues/178).
|
This release also includes [Topology Aware Volume Scheduling](https://github.com/kubernetes/enhancements/issues/490) for local persistent volumes, the stable release of [Detailed storage metrics of internal state](https://github.com/kubernetes/enhancements/issues/496), and beta support for [Out-of-tree CSI Volume Plugins](https://github.com/kubernetes/enhancements/issues/178).
|
||||||
|
|
||||||
|
@ -1261,7 +1261,7 @@ This release includes a change to [kubectl get and describe to work better with
|
||||||
|
|
||||||
### Network
|
### Network
|
||||||
|
|
||||||
In terms of networking, Kubernetes 1.10 is about control. Users now have beta support for the ability to [configure a pod's resolv.conf](https://github.com/kubernetes/enhancements/issues/504), rather than relying on the cluster DNS, as well as [configuring the NodePort IP address](https://github.com/kubernetes/enhancements/issues/539). You can also [switch the default DNS plugin to CoreDNS](https://github.com/kubernetes/enhancements/issues/427) (beta).
|
In terms of networking, Kubernetes 1.10 is about control. Users now have beta support for the ability to [configure a pod's resolv.conf](https://github.com/kubernetes/enhancements/issues/504), rather than relying on the cluster DNS, as well as [configuring the NodePort IP address](https://github.com/kubernetes/enhancements/issues/539). You can also [switch the default DNS plugin to CoreDNS](https://github.com/kubernetes/enhancements/issues/427) (beta).
|
||||||
|
|
||||||
## Before Upgrading
|
## Before Upgrading
|
||||||
|
|
||||||
|
@ -1433,7 +1433,7 @@ If no featureGates was specified in `kubeadm-config`, just change `featureGates:
|
||||||
|
|
||||||
* rktnetes has been deprecated in favor of rktlet. Please see [https://github.com/kubernetes-incubator/rktlet](https://github.com/kubernetes-incubator/rktlet) for more information. ([#58418](https://github.com/kubernetes/kubernetes/pull/58418), [@yujuhong](https://github.com/yujuhong))
|
* rktnetes has been deprecated in favor of rktlet. Please see [https://github.com/kubernetes-incubator/rktlet](https://github.com/kubernetes-incubator/rktlet) for more information. ([#58418](https://github.com/kubernetes/kubernetes/pull/58418), [@yujuhong](https://github.com/yujuhong))
|
||||||
|
|
||||||
* The Kubelet now explicitly registers all of its command-line flags with an internal flagset, which prevents flags from third party libraries from unintentionally leaking into the Kubelet's command-line API. Many unintentionally leaked flags are now marked deprecated, so that users have a chance to migrate away from them before they are removed. In addition, one previously leaked flag, --cloud-provider-gce-lb-src-cidrs, has been entirely removed from the Kubelet's command-line API, because it is irrelevant to Kubelet operation. The deprecated flags are:
|
* The Kubelet now explicitly registers all of its command-line flags with an internal flagset, which prevents flags from third party libraries from unintentionally leaking into the Kubelet's command-line API. Many unintentionally leaked flags are now marked deprecated, so that users have a chance to migrate away from them before they are removed. In addition, one previously leaked flag, --cloud-provider-gce-lb-src-cidrs, has been entirely removed from the Kubelet's command-line API, because it is irrelevant to Kubelet operation. The deprecated flags are:
|
||||||
|
|
||||||
* --application_metrics_count_limit
|
* --application_metrics_count_limit
|
||||||
* --boot_id_file
|
* --boot_id_file
|
||||||
|
@ -1474,17 +1474,17 @@ If no featureGates was specified in `kubeadm-config`, just change `featureGates:
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>GET /swagger.json</td>
|
<td>GET /swagger.json</td>
|
||||||
<td>GET /openapi/v2
|
<td>GET /openapi/v2
|
||||||
Accept: application/json</td>
|
Accept: application/json</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>GET /swagger-2.0.0.pb-v1</td>
|
<td>GET /swagger-2.0.0.pb-v1</td>
|
||||||
<td>GET /openapi/v2
|
<td>GET /openapi/v2
|
||||||
Accept: application/com.github.proto-openapi.spec.v2@v1.0+protobuf</td>
|
Accept: application/com.github.proto-openapi.spec.v2@v1.0+protobuf</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>GET /swagger-2.0.0.pb-v1.gz</td>
|
<td>GET /swagger-2.0.0.pb-v1.gz</td>
|
||||||
<td>GET /openapi/v2
|
<td>GET /openapi/v2
|
||||||
Accept: application/com.github.proto-openapi.spec.v2@v1.0+protobuf Accept-Encoding: gzip</td>
|
Accept: application/com.github.proto-openapi.spec.v2@v1.0+protobuf Accept-Encoding: gzip</td>
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
@ -1598,7 +1598,7 @@ kubernetesVersion: v1.9.1
|
||||||
noTaintMaster: true
|
noTaintMaster: true
|
||||||
```
|
```
|
||||||
|
|
||||||
And point to the file using the --config flag, as in
|
And point to the file using the --config flag, as in
|
||||||
|
|
||||||
`kubeadm init --config /etc/kubeadm/kubeadm.yaml`
|
`kubeadm init --config /etc/kubeadm/kubeadm.yaml`
|
||||||
|
|
||||||
|
@ -2238,13 +2238,13 @@ parameters:
|
||||||
* Updates kube-dns to v1.14.8 ([#57918](https://github.com/kubernetes/kubernetes/pull/57918), [@rramkumar1](https://github.com/rramkumar1))
|
* Updates kube-dns to v1.14.8 ([#57918](https://github.com/kubernetes/kubernetes/pull/57918), [@rramkumar1](https://github.com/rramkumar1))
|
||||||
* Influxdb is unchanged from v1.9: v1.3.3 ([#53319](https://github.com/kubernetes/kubernetes/pull/53319))
|
* Influxdb is unchanged from v1.9: v1.3.3 ([#53319](https://github.com/kubernetes/kubernetes/pull/53319))
|
||||||
* Grafana is unchanged from v1.9: v4.4.3 ([#53319](https://github.com/kubernetes/kubernetes/pull/53319))
|
* Grafana is unchanged from v1.9: v4.4.3 ([#53319](https://github.com/kubernetes/kubernetes/pull/53319))
|
||||||
* CAdvisor is v0.29.1 ([#60867](https://github.com/kubernetes/kubernetes/pull/60867))
|
* CAdvisor is v0.29.1 ([#60867](https://github.com/kubernetes/kubernetes/pull/60867))
|
||||||
* fluentd-gcp-scaler is v0.3.0 ([#61269](https://github.com/kubernetes/kubernetes/pull/61269))
|
* fluentd-gcp-scaler is v0.3.0 ([#61269](https://github.com/kubernetes/kubernetes/pull/61269))
|
||||||
* Updated fluentd in fluentd-es-image to fluentd v1.1.0 ([#58525](https://github.com/kubernetes/kubernetes/pull/58525), [@monotek](https://github.com/monotek))
|
* Updated fluentd in fluentd-es-image to fluentd v1.1.0 ([#58525](https://github.com/kubernetes/kubernetes/pull/58525), [@monotek](https://github.com/monotek))
|
||||||
* fluentd-elasticsearch is v2.0.4 ([#58525](https://github.com/kubernetes/kubernetes/pull/58525))
|
* fluentd-elasticsearch is v2.0.4 ([#58525](https://github.com/kubernetes/kubernetes/pull/58525))
|
||||||
* Updated fluentd-gcp to v3.0.0. ([#60722](https://github.com/kubernetes/kubernetes/pull/60722))
|
* Updated fluentd-gcp to v3.0.0. ([#60722](https://github.com/kubernetes/kubernetes/pull/60722))
|
||||||
* Ingress glbc is v1.0.0 ([#61302](https://github.com/kubernetes/kubernetes/pull/61302))
|
* Ingress glbc is v1.0.0 ([#61302](https://github.com/kubernetes/kubernetes/pull/61302))
|
||||||
* OIDC authentication is coreos/go-oidc v2 ([#58544](https://github.com/kubernetes/kubernetes/pull/58544))
|
* OIDC authentication is coreos/go-oidc v2 ([#58544](https://github.com/kubernetes/kubernetes/pull/58544))
|
||||||
* Updated fluentd-gcp updated to v2.0.11. ([#56927](https://github.com/kubernetes/kubernetes/pull/56927), [@x13n](https://github.com/x13n))
|
* Updated fluentd-gcp updated to v2.0.11. ([#56927](https://github.com/kubernetes/kubernetes/pull/56927), [@x13n](https://github.com/x13n))
|
||||||
* Calico has been updated to v2.6.7 ([#59130](https://github.com/kubernetes/kubernetes/pull/59130), [@caseydavenport](https://github.com/caseydavenport))
|
* Calico has been updated to v2.6.7 ([#59130](https://github.com/kubernetes/kubernetes/pull/59130), [@caseydavenport](https://github.com/caseydavenport))
|
||||||
|
|
||||||
|
@ -2306,8 +2306,8 @@ filename | sha256 hash
|
||||||
* Fix bug allowing garbage collector to enter a broken state that could only be fixed by restarting the controller-manager. ([#61201](https://github.com/kubernetes/kubernetes/pull/61201), [@jennybuckley](https://github.com/jennybuckley))
|
* Fix bug allowing garbage collector to enter a broken state that could only be fixed by restarting the controller-manager. ([#61201](https://github.com/kubernetes/kubernetes/pull/61201), [@jennybuckley](https://github.com/jennybuckley))
|
||||||
* When `TaintNodesByCondition` enabled, added `node.kubernetes.io/unschedulable:NoSchedule` ([#61161](https://github.com/kubernetes/kubernetes/pull/61161), [@k82cn](https://github.com/k82cn))
|
* When `TaintNodesByCondition` enabled, added `node.kubernetes.io/unschedulable:NoSchedule` ([#61161](https://github.com/kubernetes/kubernetes/pull/61161), [@k82cn](https://github.com/k82cn))
|
||||||
* taint to the node if `spec.Unschedulable` is true.
|
* taint to the node if `spec.Unschedulable` is true.
|
||||||
* When `ScheduleDaemonSetPods` enabled, `node.kubernetes.io/unschedulable:NoSchedule`
|
* When `ScheduleDaemonSetPods` enabled, `node.kubernetes.io/unschedulable:NoSchedule`
|
||||||
* toleration is added automatically to DaemonSet Pods; so the `unschedulable` field of
|
* toleration is added automatically to DaemonSet Pods; so the `unschedulable` field of
|
||||||
* a node is not respected by the DaemonSet controller.
|
* a node is not respected by the DaemonSet controller.
|
||||||
* Fixed kube-proxy to work correctly with iptables 1.6.2 and later. ([#60978](https://github.com/kubernetes/kubernetes/pull/60978), [@danwinship](https://github.com/danwinship))
|
* Fixed kube-proxy to work correctly with iptables 1.6.2 and later. ([#60978](https://github.com/kubernetes/kubernetes/pull/60978), [@danwinship](https://github.com/danwinship))
|
||||||
* Audit logging with buffering enabled can increase apiserver memory usage (e.g. up to 200MB in 100-node cluster). The increase is bounded by the buffer size (configurable). Ref: issue [#60500](https://github.com/kubernetes/kubernetes/pull/60500) ([#61118](https://github.com/kubernetes/kubernetes/pull/61118), [@shyamjvs](https://github.com/shyamjvs))
|
* Audit logging with buffering enabled can increase apiserver memory usage (e.g. up to 200MB in 100-node cluster). The increase is bounded by the buffer size (configurable). Ref: issue [#60500](https://github.com/kubernetes/kubernetes/pull/60500) ([#61118](https://github.com/kubernetes/kubernetes/pull/61118), [@shyamjvs](https://github.com/shyamjvs))
|
||||||
|
|
|
@ -452,7 +452,7 @@ filename | sha512 hash
|
||||||
* Get public IP for Azure vmss nodes. ([#68498](https://github.com/kubernetes/kubernetes/pull/68498), [@feiskyer](https://github.com/feiskyer))
|
* Get public IP for Azure vmss nodes. ([#68498](https://github.com/kubernetes/kubernetes/pull/68498), [@feiskyer](https://github.com/feiskyer))
|
||||||
* Role, ClusterRole and their bindings for cloud-provider is put under system namespace. Their addonmanager mode switches to EnsureExists. ([#67224](https://github.com/kubernetes/kubernetes/pull/67224), [@grayluck](https://github.com/grayluck))
|
* Role, ClusterRole and their bindings for cloud-provider is put under system namespace. Their addonmanager mode switches to EnsureExists. ([#67224](https://github.com/kubernetes/kubernetes/pull/67224), [@grayluck](https://github.com/grayluck))
|
||||||
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
||||||
* Also updates dependencies of users of debian-base.
|
* Also updates dependencies of users of debian-base.
|
||||||
* debian-base version 0.3.1 is already available.
|
* debian-base version 0.3.1 is already available.
|
||||||
* Update debian-iptables and hyperkube-base images to include CVE fixes. ([#67365](https://github.com/kubernetes/kubernetes/pull/67365), [@ixdy](https://github.com/ixdy))
|
* Update debian-iptables and hyperkube-base images to include CVE fixes. ([#67365](https://github.com/kubernetes/kubernetes/pull/67365), [@ixdy](https://github.com/ixdy))
|
||||||
* Support configuring the Azure load balancer idle connection timeout for services ([#66045](https://github.com/kubernetes/kubernetes/pull/66045), [@cpuguy83](https://github.com/cpuguy83))
|
* Support configuring the Azure load balancer idle connection timeout for services ([#66045](https://github.com/kubernetes/kubernetes/pull/66045), [@cpuguy83](https://github.com/cpuguy83))
|
||||||
|
|
|
@ -582,7 +582,7 @@ Sig Azure was focused on two primary new alpha features:
|
||||||
Besides the above new features, support for Azure Virtual Machine Scale Sets (VMSS) and Cluster-Autoscaler is now stable and considered GA:
|
Besides the above new features, support for Azure Virtual Machine Scale Sets (VMSS) and Cluster-Autoscaler is now stable and considered GA:
|
||||||
|
|
||||||
- Azure virtual machine scale sets (VMSS) allow you to create and manage identical load balanced VMs that automatically increase or decrease based on demand or a set schedule.
|
- Azure virtual machine scale sets (VMSS) allow you to create and manage identical load balanced VMs that automatically increase or decrease based on demand or a set schedule.
|
||||||
- With this new stable feature, Kubernetes supports the scaling of containerized applications with Azure VMSS, including the ability to integrate it with cluster-autoscaler to automatically adjust the size of the Kubernetes clusters based on the same conditions.
|
- With this new stable feature, Kubernetes supports the scaling of containerized applications with Azure VMSS, including the ability to integrate it with cluster-autoscaler to automatically adjust the size of the Kubernetes clusters based on the same conditions.
|
||||||
|
|
||||||
### SIG-cli
|
### SIG-cli
|
||||||
|
|
||||||
|
@ -593,11 +593,11 @@ SIG CLI focused on implementing the new plugin mechanism, providing a library wi
|
||||||
This is the first Kubernetes release for this SIG! In v1.12, SIG Cloud Provider focused on building the processes and infrastructure to better support existing and new cloud providers. Some of these initiatives (many of which are still in progress) are:
|
This is the first Kubernetes release for this SIG! In v1.12, SIG Cloud Provider focused on building the processes and infrastructure to better support existing and new cloud providers. Some of these initiatives (many of which are still in progress) are:
|
||||||
|
|
||||||
- Reporting E2E conformance test results to TestGrid from every cloud provider (in collaboration with SIG Testing & SIG Release)
|
- Reporting E2E conformance test results to TestGrid from every cloud provider (in collaboration with SIG Testing & SIG Release)
|
||||||
- Defining minimum required documentation from each cloud provider which includes (in collaboration with SIG Docs):
|
- Defining minimum required documentation from each cloud provider which includes (in collaboration with SIG Docs):
|
||||||
- example manifests for the kube-apiserver, kube-controller-manager, kube-schedule, kubelet, and the cloud-controller-manager
|
- example manifests for the kube-apiserver, kube-controller-manager, kube-schedule, kubelet, and the cloud-controller-manager
|
||||||
- labels/annotations that are consumed by any cloud specific controllers
|
- labels/annotations that are consumed by any cloud specific controllers
|
||||||
|
|
||||||
In addition to the above, SIG Cloud Provider has been focusing on a long running effort to remove cloud provider code from kubernetes/kubernetes.
|
In addition to the above, SIG Cloud Provider has been focusing on a long running effort to remove cloud provider code from kubernetes/kubernetes.
|
||||||
|
|
||||||
### SIG-cluster-lifecycle
|
### SIG-cluster-lifecycle
|
||||||
|
|
||||||
|
@ -638,11 +638,11 @@ No feature work, but a large refactoring of metrics-server as well as a number o
|
||||||
|
|
||||||
### SIG-node
|
### SIG-node
|
||||||
|
|
||||||
SIG-node graduated the PodShareProcessNamespace feature from alpha to beta. This feature allows a pod spec to request that all containers in a pod share a common process namespaces.
|
SIG-node graduated the PodShareProcessNamespace feature from alpha to beta. This feature allows a pod spec to request that all containers in a pod share a common process namespaces.
|
||||||
|
|
||||||
Two alpha features were also added in this release.
|
Two alpha features were also added in this release.
|
||||||
|
|
||||||
The RuntimeClass alpha feature enables a node to surface multiple runtime options to support a variety of workload types. Examples include native linux containers, and “sandboxed” containers that isolate the container from the host kernel.
|
The RuntimeClass alpha feature enables a node to surface multiple runtime options to support a variety of workload types. Examples include native linux containers, and “sandboxed” containers that isolate the container from the host kernel.
|
||||||
|
|
||||||
The CustomCFSQuotaPeriod alpha feature enables node administrators to change the default period used to enforce CFS quota on a node. This can improve performance for some workloads that experience latency while using CFS quota with the default measurement period. Finally, the SIG continues to focus on improving reliability by fixing bugs while working out design and implementation of future features.
|
The CustomCFSQuotaPeriod alpha feature enables node administrators to change the default period used to enforce CFS quota on a node. This can improve performance for some workloads that experience latency while using CFS quota with the default measurement period. Finally, the SIG continues to focus on improving reliability by fixing bugs while working out design and implementation of future features.
|
||||||
|
|
||||||
|
@ -732,7 +732,7 @@ SIG Windows focused on stability and reliability of our existing feature set. We
|
||||||
- kubeadm: The `v1alpha1` config API has been removed. ([#65628](https://github.com/kubernetes/kubernetes/pull/65628), [@luxas](https://github.com/luxas)) Courtesy of SIG Cluster Lifecycle
|
- kubeadm: The `v1alpha1` config API has been removed. ([#65628](https://github.com/kubernetes/kubernetes/pull/65628), [@luxas](https://github.com/luxas)) Courtesy of SIG Cluster Lifecycle
|
||||||
- kube-apiserver: When using `--enable-admission-plugins` the `Priority` admission plugin is now enabled by default (matching changes in 1.11.1+). If using `--admission-control` to fully specify the set of admission plugins, it is now necessary to add the `Priority` admission plugin for the PodPriority feature to work properly. ([#65739](https://github.com/kubernetes/kubernetes/pull/65739), [@liggitt](https://github.com/liggitt)) Courtesy of SIG Scheduling
|
- kube-apiserver: When using `--enable-admission-plugins` the `Priority` admission plugin is now enabled by default (matching changes in 1.11.1+). If using `--admission-control` to fully specify the set of admission plugins, it is now necessary to add the `Priority` admission plugin for the PodPriority feature to work properly. ([#65739](https://github.com/kubernetes/kubernetes/pull/65739), [@liggitt](https://github.com/liggitt)) Courtesy of SIG Scheduling
|
||||||
- The `system-node-critical` and `system-cluster-critical` priority classes are now limited to the `kube-system` namespace by the `PodPriority` admission plugin (matching changes in 1.11.1+). ([#65593](https://github.com/kubernetes/kubernetes/pull/65593), [@bsalamat](https://github.com/bsalamat)) Courtesy of SIG Scheduling
|
- The `system-node-critical` and `system-cluster-critical` priority classes are now limited to the `kube-system` namespace by the `PodPriority` admission plugin (matching changes in 1.11.1+). ([#65593](https://github.com/kubernetes/kubernetes/pull/65593), [@bsalamat](https://github.com/bsalamat)) Courtesy of SIG Scheduling
|
||||||
- kubeadm: Control plane images (etcd, kube-apiserver, kube-proxy, etc.) no longer use arch suffixes. Arch suffixes are kept for kube-dns only. ([#66960](https://github.com/kubernetes/kubernetes/pull/66960),
|
- kubeadm: Control plane images (etcd, kube-apiserver, kube-proxy, etc.) no longer use arch suffixes. Arch suffixes are kept for kube-dns only. ([#66960](https://github.com/kubernetes/kubernetes/pull/66960),
|
||||||
[@rosti](https://github.com/rosti)) Courtesy of SIG Cluster Lifecycle, SIG Release, and SIG Testing
|
[@rosti](https://github.com/rosti)) Courtesy of SIG Cluster Lifecycle, SIG Release, and SIG Testing
|
||||||
- kubeadm - Feature-gates HighAvailability, SelfHosting, CertsInSecrets are now deprecated and can no longer be used for new clusters. Cluster updates using above feature-gates flag is not supported. ([#67786](https://github.com/kubernetes/kubernetes/pull/67786), [@fabriziopandini](https://github.com/fabriziopandini)) Courtesy of SIG Cluster Lifecycle
|
- kubeadm - Feature-gates HighAvailability, SelfHosting, CertsInSecrets are now deprecated and can no longer be used for new clusters. Cluster updates using above feature-gates flag is not supported. ([#67786](https://github.com/kubernetes/kubernetes/pull/67786), [@fabriziopandini](https://github.com/fabriziopandini)) Courtesy of SIG Cluster Lifecycle
|
||||||
- 'KubeSchedulerConfiguration' which used to be under GroupVersion 'componentconfig/v1alpha1',
|
- 'KubeSchedulerConfiguration' which used to be under GroupVersion 'componentconfig/v1alpha1',
|
||||||
|
@ -798,7 +798,7 @@ is now under 'kubescheduler.config.k8s.io/v1alpha1'. ([#66916](https://github.c
|
||||||
- kubeadm now supports the phase command "alpha phase kubelet config annotate-cri". ([#68449](https://github.com/kubernetes/kubernetes/pull/68449), [@fabriziopandini](https://github.com/fabriziopandini))
|
- kubeadm now supports the phase command "alpha phase kubelet config annotate-cri". ([#68449](https://github.com/kubernetes/kubernetes/pull/68449), [@fabriziopandini](https://github.com/fabriziopandini))
|
||||||
- kubeadm: --cri-socket now defaults to tcp://localhost:2375 when running on Windows. ([#67447](https://github.com/kubernetes/kubernetes/pull/67447), [@benmoss](https://github.com/benmoss))
|
- kubeadm: --cri-socket now defaults to tcp://localhost:2375 when running on Windows. ([#67447](https://github.com/kubernetes/kubernetes/pull/67447), [@benmoss](https://github.com/benmoss))
|
||||||
- kubeadm now includes a new EXPERIMENTAL `--rootfs`, which (if specified) causes kubeadm to chroot before performing any file operations. This is expected to be useful when setting up kubernetes on a different filesystem, such as invoking kubeadm from docker. ([#54935](https://github.com/kubernetes/kubernetes/pull/54935), [@anguslees](https://github.com/anguslees))
|
- kubeadm now includes a new EXPERIMENTAL `--rootfs`, which (if specified) causes kubeadm to chroot before performing any file operations. This is expected to be useful when setting up kubernetes on a different filesystem, such as invoking kubeadm from docker. ([#54935](https://github.com/kubernetes/kubernetes/pull/54935), [@anguslees](https://github.com/anguslees))
|
||||||
- The command line option --cri-socket-path of the kubeadm subcommand "kubeadm config images pull" has been renamed to --cri-socket to be consistent with the rest of kubeadm subcommands.
|
- The command line option --cri-socket-path of the kubeadm subcommand "kubeadm config images pull" has been renamed to --cri-socket to be consistent with the rest of kubeadm subcommands.
|
||||||
- kubeadm: The ControlPlaneEndpoint was moved from the API config struct to ClusterConfiguration ([#67830](https://github.com/kubernetes/kubernetes/pull/67830), [@fabriziopandini](https://github.com/fabriziopandini))
|
- kubeadm: The ControlPlaneEndpoint was moved from the API config struct to ClusterConfiguration ([#67830](https://github.com/kubernetes/kubernetes/pull/67830), [@fabriziopandini](https://github.com/fabriziopandini))
|
||||||
- kubeadm: InitConfiguration now consists of two structs: InitConfiguration and ClusterConfiguration ([#67441](https://github.com/kubernetes/kubernetes/pull/67441), [@rosti](https://github.com/rosti))
|
- kubeadm: InitConfiguration now consists of two structs: InitConfiguration and ClusterConfiguration ([#67441](https://github.com/kubernetes/kubernetes/pull/67441), [@rosti](https://github.com/rosti))
|
||||||
- The RuntimeClass API has been added. This feature is in alpha, and the RuntimeClass feature gate must be enabled in order to use it. The RuntimeClass API resource defines different classes of runtimes that may be used to run containers in the cluster. Pods can select a RuntimeClass to use via the RuntimeClassName field. ([#67737](https://github.com/kubernetes/kubernetes/pull/67737), [@tallclair](https://github.com/tallclair))
|
- The RuntimeClass API has been added. This feature is in alpha, and the RuntimeClass feature gate must be enabled in order to use it. The RuntimeClass API resource defines different classes of runtimes that may be used to run containers in the cluster. Pods can select a RuntimeClass to use via the RuntimeClassName field. ([#67737](https://github.com/kubernetes/kubernetes/pull/67737), [@tallclair](https://github.com/tallclair))
|
||||||
|
@ -845,7 +845,7 @@ is now under 'kubescheduler.config.k8s.io/v1alpha1'. ([#66916](https://github.c
|
||||||
|
|
||||||
### SIG Auth
|
### SIG Auth
|
||||||
|
|
||||||
- TokenRequest and TokenRequestProjection are now beta features. To enable these feature, the API server needs to be started with the `--service-account-issuer`, `--service-account-signing-key-file`, and `--service-account-api-audiences` flags.
|
- TokenRequest and TokenRequestProjection are now beta features. To enable these feature, the API server needs to be started with the `--service-account-issuer`, `--service-account-signing-key-file`, and `--service-account-api-audiences` flags.
|
||||||
([#67349](https://github.com/kubernetes/kubernetes/pull/67349), [@mikedanese](https://github.com/mikedanese))
|
([#67349](https://github.com/kubernetes/kubernetes/pull/67349), [@mikedanese](https://github.com/mikedanese))
|
||||||
- The admin RBAC role now aggregates edit and view. The edit RBAC role now aggregates view. ([#66684](https://github.com/kubernetes/kubernetes/pull/66684), [@deads2k](https://github.com/deads2k))
|
- The admin RBAC role now aggregates edit and view. The edit RBAC role now aggregates view. ([#66684](https://github.com/kubernetes/kubernetes/pull/66684), [@deads2k](https://github.com/deads2k))
|
||||||
- UserInfo derived from service account tokens created from the TokenRequest API now include the pod name and UID in the Extra field. ([#61858](https://github.com/kubernetes/kubernetes/pull/61858), [@mikedanese](https://github.com/mikedanese))
|
- UserInfo derived from service account tokens created from the TokenRequest API now include the pod name and UID in the Extra field. ([#61858](https://github.com/kubernetes/kubernetes/pull/61858), [@mikedanese](https://github.com/mikedanese))
|
||||||
|
@ -907,7 +907,7 @@ is now under 'kubescheduler.config.k8s.io/v1alpha1'. ([#66916](https://github.c
|
||||||
- kubeadm uses audit policy v1 instead of v1beta1 ([#67176](https://github.com/kubernetes/kubernetes/pull/67176), [@charrywanganthony](https://github.com/charrywanganthony))
|
- kubeadm uses audit policy v1 instead of v1beta1 ([#67176](https://github.com/kubernetes/kubernetes/pull/67176), [@charrywanganthony](https://github.com/charrywanganthony))
|
||||||
- Kubeadm nodes will no longer be able to run with an empty or invalid hostname in /proc/sys/kernel/hostname ([#64815](https://github.com/kubernetes/kubernetes/pull/64815), [@dixudx](https://github.com/dixudx))
|
- Kubeadm nodes will no longer be able to run with an empty or invalid hostname in /proc/sys/kernel/hostname ([#64815](https://github.com/kubernetes/kubernetes/pull/64815), [@dixudx](https://github.com/dixudx))
|
||||||
- kubeadm now can join the cluster with pre-existing client certificate if provided ([#66482](https://github.com/kubernetes/kubernetes/pull/66482), [@dixudx](https://github.com/dixudx))
|
- kubeadm now can join the cluster with pre-existing client certificate if provided ([#66482](https://github.com/kubernetes/kubernetes/pull/66482), [@dixudx](https://github.com/dixudx))
|
||||||
([#66382](https://github.com/kubernetes/kubernetes/pull/66382), [@bart0sh](https://github.com/bart0sh))
|
([#66382](https://github.com/kubernetes/kubernetes/pull/66382), [@bart0sh](https://github.com/bart0sh))
|
||||||
- kubeadm will no longer hang indefinitely if there is no Internet connection and --kubernetes-version is not specified.([#65676](https://github.com/kubernetes/kubernetes/pull/65676), [@dkoshkin](https://github.com/dkoshkin))
|
- kubeadm will no longer hang indefinitely if there is no Internet connection and --kubernetes-version is not specified.([#65676](https://github.com/kubernetes/kubernetes/pull/65676), [@dkoshkin](https://github.com/dkoshkin))
|
||||||
- kubeadm: kube-proxy will now run on all nodes, and not just master nodes.([#65931](https://github.com/kubernetes/kubernetes/pull/65931), [@neolit123](https://github.com/neolit123))
|
- kubeadm: kube-proxy will now run on all nodes, and not just master nodes.([#65931](https://github.com/kubernetes/kubernetes/pull/65931), [@neolit123](https://github.com/neolit123))
|
||||||
- kubeadm now uses separate YAML documents for the kubelet and kube-proxy ComponentConfigs. ([#65787](https://github.com/kubernetes/kubernetes/pull/65787), [@luxas](https://github.com/luxas))
|
- kubeadm now uses separate YAML documents for the kubelet and kube-proxy ComponentConfigs. ([#65787](https://github.com/kubernetes/kubernetes/pull/65787), [@luxas](https://github.com/luxas))
|
||||||
|
@ -1653,7 +1653,7 @@ filename | sha256 hash
|
||||||
* The PodShareProcessNamespace feature to configure PID namespace sharing within a pod has been promoted to beta. ([#66507](https://github.com/kubernetes/kubernetes/pull/66507), [@verb](https://github.com/verb))
|
* The PodShareProcessNamespace feature to configure PID namespace sharing within a pod has been promoted to beta. ([#66507](https://github.com/kubernetes/kubernetes/pull/66507), [@verb](https://github.com/verb))
|
||||||
* `kubectl create {clusterrole,role}`'s `--resources` flag supports asterisk to specify all resources. ([#62945](https://github.com/kubernetes/kubernetes/pull/62945), [@nak3](https://github.com/nak3))
|
* `kubectl create {clusterrole,role}`'s `--resources` flag supports asterisk to specify all resources. ([#62945](https://github.com/kubernetes/kubernetes/pull/62945), [@nak3](https://github.com/nak3))
|
||||||
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
||||||
* Also updates dependencies of users of debian-base.
|
* Also updates dependencies of users of debian-base.
|
||||||
* debian-base version 0.3.1 is already available.
|
* debian-base version 0.3.1 is already available.
|
||||||
* DynamicProvisioningScheduling and VolumeScheduling is now supported for Azure managed disks. Feature gates DynamicProvisioningScheduling and VolumeScheduling should be enabled before using this feature. ([#67121](https://github.com/kubernetes/kubernetes/pull/67121), [@feiskyer](https://github.com/feiskyer))
|
* DynamicProvisioningScheduling and VolumeScheduling is now supported for Azure managed disks. Feature gates DynamicProvisioningScheduling and VolumeScheduling should be enabled before using this feature. ([#67121](https://github.com/kubernetes/kubernetes/pull/67121), [@feiskyer](https://github.com/feiskyer))
|
||||||
* kube-apiserver now includes all registered API groups in discovery, including registered extension API group/versions for unavailable extension API servers. ([#66932](https://github.com/kubernetes/kubernetes/pull/66932), [@nilebox](https://github.com/nilebox))
|
* kube-apiserver now includes all registered API groups in discovery, including registered extension API group/versions for unavailable extension API servers. ([#66932](https://github.com/kubernetes/kubernetes/pull/66932), [@nilebox](https://github.com/nilebox))
|
||||||
|
|
|
@ -128,7 +128,7 @@ filename | sha512 hash
|
||||||
* - A new `k8s_external` plugin that allows external zones to point to Kubernetes in-cluster services.
|
* - A new `k8s_external` plugin that allows external zones to point to Kubernetes in-cluster services.
|
||||||
* - CoreDNS now checks if a zone transfer is allowed. Also allow a TTL of 0 to avoid caching in the cache plugin.
|
* - CoreDNS now checks if a zone transfer is allowed. Also allow a TTL of 0 to avoid caching in the cache plugin.
|
||||||
* - TTL is also applied to negative responses (NXDOMAIN, etc).
|
* - TTL is also applied to negative responses (NXDOMAIN, etc).
|
||||||
|
|
||||||
* Missing directories listed in a user's PATH are no longer considered errors and are instead logged by the "kubectl plugin list" command when listing available plugins. ([#73542](https://github.com/kubernetes/kubernetes/pull/73542), [@juanvallejo](https://github.com/juanvallejo))
|
* Missing directories listed in a user's PATH are no longer considered errors and are instead logged by the "kubectl plugin list" command when listing available plugins. ([#73542](https://github.com/kubernetes/kubernetes/pull/73542), [@juanvallejo](https://github.com/juanvallejo))
|
||||||
* remove kubelet flag '--experimental-fail-swap-on' (deprecated in v1.8) ([#69552](https://github.com/kubernetes/kubernetes/pull/69552), [@Pingan2017](https://github.com/Pingan2017))
|
* remove kubelet flag '--experimental-fail-swap-on' (deprecated in v1.8) ([#69552](https://github.com/kubernetes/kubernetes/pull/69552), [@Pingan2017](https://github.com/Pingan2017))
|
||||||
* Introduced support for Windows nodes into the cluster bringup scripts for GCE. ([#73442](https://github.com/kubernetes/kubernetes/pull/73442), [@pjh](https://github.com/pjh))
|
* Introduced support for Windows nodes into the cluster bringup scripts for GCE. ([#73442](https://github.com/kubernetes/kubernetes/pull/73442), [@pjh](https://github.com/pjh))
|
||||||
|
@ -228,7 +228,7 @@ filename | sha512 hash
|
||||||
* Remove deprecated args '--show-all' ([#69255](https://github.com/kubernetes/kubernetes/pull/69255), [@Pingan2017](https://github.com/Pingan2017))
|
* Remove deprecated args '--show-all' ([#69255](https://github.com/kubernetes/kubernetes/pull/69255), [@Pingan2017](https://github.com/Pingan2017))
|
||||||
* As per deprecation policy in https://kubernetes.io/docs/reference/using-api/deprecation-policy/ ([#73001](https://github.com/kubernetes/kubernetes/pull/73001), [@shivnagarajan](https://github.com/shivnagarajan))
|
* As per deprecation policy in https://kubernetes.io/docs/reference/using-api/deprecation-policy/ ([#73001](https://github.com/kubernetes/kubernetes/pull/73001), [@shivnagarajan](https://github.com/shivnagarajan))
|
||||||
* the taints "node.alpha.kubernetes.io/notReady" and "node.alpha.kubernetes.io/unreachable". are no
|
* the 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"
|
* longer supported or adjusted. These uses should be replaced with "node.kubernetes.io/not-ready"
|
||||||
* and "node.kubernetes.io/unreachable" respectively instead.
|
* and "node.kubernetes.io/unreachable" respectively instead.
|
||||||
* The /swagger.json and /swagger-2.0.0.pb-v1 schema documents, deprecated since v1.10, have been removed in favor of `/openapi/v2` ([#73148](https://github.com/kubernetes/kubernetes/pull/73148), [@liggitt](https://github.com/liggitt))
|
* The /swagger.json and /swagger-2.0.0.pb-v1 schema documents, deprecated since v1.10, have been removed in favor of `/openapi/v2` ([#73148](https://github.com/kubernetes/kubernetes/pull/73148), [@liggitt](https://github.com/liggitt))
|
||||||
* CoreDNS is only officially supported on Linux at this time. As such, when kubeadm is used to deploy this component into your kubernetes cluster, it will be restricted (using 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](https://github.com/kubernetes/kubernetes/pull/69940), [@MarcPow](https://github.com/MarcPow))
|
* CoreDNS is only officially supported on Linux at this time. As such, when kubeadm is used to deploy this component into your kubernetes cluster, it will be restricted (using 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](https://github.com/kubernetes/kubernetes/pull/69940), [@MarcPow](https://github.com/MarcPow))
|
||||||
|
@ -367,7 +367,7 @@ filename | sha512 hash
|
||||||
* Fixes spurious 0-length API responses. ([#72856](https://github.com/kubernetes/kubernetes/pull/72856), [@liggitt](https://github.com/liggitt))
|
* Fixes spurious 0-length API responses. ([#72856](https://github.com/kubernetes/kubernetes/pull/72856), [@liggitt](https://github.com/liggitt))
|
||||||
* Updates Fluentd to 1.3.2 & added filter_parser ([#71180](https://github.com/kubernetes/kubernetes/pull/71180), [@monotek](https://github.com/monotek))
|
* Updates Fluentd to 1.3.2 & added filter_parser ([#71180](https://github.com/kubernetes/kubernetes/pull/71180), [@monotek](https://github.com/monotek))
|
||||||
* The leaderelection package allows the lease holder to release its lease when the calling context is cancelled. This allows ([#71490](https://github.com/kubernetes/kubernetes/pull/71490), [@smarterclayton](https://github.com/smarterclayton))
|
* The leaderelection package allows the lease holder to release its lease when the calling context is cancelled. This allows ([#71490](https://github.com/kubernetes/kubernetes/pull/71490), [@smarterclayton](https://github.com/smarterclayton))
|
||||||
* faster handoff when a leader-elected process is gracefully terminated.
|
* faster handoff when a leader-elected process is gracefully terminated.
|
||||||
* Make volume binder resilient to races between main schedule loop and async binding operation ([#72045](https://github.com/kubernetes/kubernetes/pull/72045), [@cofyc](https://github.com/cofyc))
|
* Make volume binder resilient to races between main schedule loop and async binding operation ([#72045](https://github.com/kubernetes/kubernetes/pull/72045), [@cofyc](https://github.com/cofyc))
|
||||||
* Bump minimum docker API version to 1.26 (1.13.1) ([#72831](https://github.com/kubernetes/kubernetes/pull/72831), [@yujuhong](https://github.com/yujuhong))
|
* Bump minimum docker API version to 1.26 (1.13.1) ([#72831](https://github.com/kubernetes/kubernetes/pull/72831), [@yujuhong](https://github.com/yujuhong))
|
||||||
* If the `TokenRequestProjection` feature gate is disabled, projected serviceAccountToken volume sources are now dropped at object creation time, or at object update time if the existing object did not have a projected serviceAccountToken volume source. Previously, these would result in validation errors. ([#72714](https://github.com/kubernetes/kubernetes/pull/72714), [@mourya007](https://github.com/mourya007))
|
* If the `TokenRequestProjection` feature gate is disabled, projected serviceAccountToken volume sources are now dropped at object creation time, or at object update time if the existing object did not have a projected serviceAccountToken volume source. Previously, these would result in validation errors. ([#72714](https://github.com/kubernetes/kubernetes/pull/72714), [@mourya007](https://github.com/mourya007))
|
||||||
|
|
|
@ -433,7 +433,7 @@ filename | sha256 hash
|
||||||
Changelog (vs 55-8872-18-0)
|
Changelog (vs 55-8872-18-0)
|
||||||
* Cherry-pick runc PR#608: Eliminate redundant parsing of mountinfo
|
* Cherry-pick runc PR#608: Eliminate redundant parsing of mountinfo
|
||||||
* Updated kubernetes to v1.4.5
|
* Updated kubernetes to v1.4.5
|
||||||
* Fixed a bug in e2fsprogs that caused mke2fs to take a very long time. Upstream fix: http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/commit/?h=next&id=d33e690fe7a6cbeb51349d9f2c7fb16a6ebec9c2
|
* Fixed a bug in e2fsprogs that caused mke2fs to take a very long time. Upstream fix: http://git.kernel.org/cgit/fs/ext2/e2fsprogs.git/commit/?h=next&id=d33e690fe7a6cbeb51349d9f2c7fb16a6ebec9c2
|
||||||
```
|
```
|
||||||
|
|
||||||
* Fix fetching pids running in a cgroup, which caused problems with OOM score adjustments & setting the /system cgroup ("misc" in the summary API). ([#36614](https://github.com/kubernetes/kubernetes/pull/36614), [@timstclair](https://github.com/timstclair))
|
* Fix fetching pids running in a cgroup, which caused problems with OOM score adjustments & setting the /system cgroup ("misc" in the summary API). ([#36614](https://github.com/kubernetes/kubernetes/pull/36614), [@timstclair](https://github.com/timstclair))
|
||||||
|
|
|
@ -1375,7 +1375,7 @@ filename | sha256 hash
|
||||||
|
|
||||||
Kubernetes 1.7 is a milestone release that adds security, stateful application, and extensibility features motivated by widespread production use of Kubernetes.
|
Kubernetes 1.7 is a milestone release that adds security, stateful application, and extensibility features motivated by widespread production use of Kubernetes.
|
||||||
|
|
||||||
Security enhancements in this release include encrypted secrets (alpha), network policy for pod-to-pod communication, the node authorizer to limit Kubelet access to API resources, and Kubelet client / server TLS certificate rotation (alpha).
|
Security enhancements in this release include encrypted secrets (alpha), network policy for pod-to-pod communication, the node authorizer to limit Kubelet access to API resources, and Kubelet client / server TLS certificate rotation (alpha).
|
||||||
|
|
||||||
Major features for stateful applications include automated updates to StatefulSets, enhanced updates for DaemonSets, a burst mode for faster StatefulSets scaling, and (alpha) support for local storage.
|
Major features for stateful applications include automated updates to StatefulSets, enhanced updates for DaemonSets, a burst mode for faster StatefulSets scaling, and (alpha) support for local storage.
|
||||||
|
|
||||||
|
@ -2281,7 +2281,7 @@ Features for this release were tracked via the use of the [kubernetes/features](
|
||||||
* Add ABRT support. ([#105](https://github.com/kubernetes/node-problem-detector/pull/105), [@juliusmilan](https://github.com/juliusmilan))
|
* Add ABRT support. ([#105](https://github.com/kubernetes/node-problem-detector/pull/105), [@juliusmilan](https://github.com/juliusmilan))
|
||||||
|
|
||||||
* Add a docker image corruption problem detection in the default docker monitor config. ([#117](https://github.com/kubernetes/node-problem-detector/pull/117), [@ajitak](https://github.com/ajitak))
|
* Add a docker image corruption problem detection in the default docker monitor config. ([#117](https://github.com/kubernetes/node-problem-detector/pull/117), [@ajitak](https://github.com/ajitak))
|
||||||
|
|
||||||
* Upgrade CAdvisor to v0.26.1. New features added:
|
* Upgrade CAdvisor to v0.26.1. New features added:
|
||||||
|
|
||||||
* Add Docker overlay2 storage driver support.
|
* Add Docker overlay2 storage driver support.
|
||||||
|
@ -2291,7 +2291,7 @@ Features for this release were tracked via the use of the [kubernetes/features](
|
||||||
* Add UDP metrics (collection disabled by default).
|
* Add UDP metrics (collection disabled by default).
|
||||||
|
|
||||||
* Roll up volume error messages in the kubelet sync loop. ([#44938](https://github.com/kubernetes/kubernetes/pull/44938), [@jayunit100](https://github.com/jayunit100))
|
* Roll up volume error messages in the kubelet sync loop. ([#44938](https://github.com/kubernetes/kubernetes/pull/44938), [@jayunit100](https://github.com/jayunit100))
|
||||||
|
|
||||||
* Allow pods to opt out of PodPreset mutation via an annotation on the pod. ([#44965](https://github.com/kubernetes/kubernetes/pull/44965), [@jpeeler](https://github.com/jpeeler))
|
* Allow pods to opt out of PodPreset mutation via an annotation on the pod. ([#44965](https://github.com/kubernetes/kubernetes/pull/44965), [@jpeeler](https://github.com/jpeeler))
|
||||||
|
|
||||||
* Add generic Toleration for NoExecute Taints to NodeProblemDetector, so that NPD can be scheduled to nodes with NoExecute taints by default. ([#45883](https://github.com/kubernetes/kubernetes/pull/45883), [@gmarek](https://github.com/gmarek))
|
* Add generic Toleration for NoExecute Taints to NodeProblemDetector, so that NPD can be scheduled to nodes with NoExecute taints by default. ([#45883](https://github.com/kubernetes/kubernetes/pull/45883), [@gmarek](https://github.com/gmarek))
|
||||||
|
@ -2608,7 +2608,7 @@ filename | sha256 hash
|
||||||
* servicecontroller: Fix node selection logic on initial LB creation ([#45773](https://github.com/kubernetes/kubernetes/pull/45773), [@justinsb](https://github.com/justinsb))
|
* servicecontroller: Fix node selection logic on initial LB creation ([#45773](https://github.com/kubernetes/kubernetes/pull/45773), [@justinsb](https://github.com/justinsb))
|
||||||
* Fix iSCSI iSER mounting. ([#47281](https://github.com/kubernetes/kubernetes/pull/47281), [@mtanino](https://github.com/mtanino))
|
* Fix iSCSI iSER mounting. ([#47281](https://github.com/kubernetes/kubernetes/pull/47281), [@mtanino](https://github.com/mtanino))
|
||||||
* StorageOS Volume Driver ([#42156](https://github.com/kubernetes/kubernetes/pull/42156), [@croomes](https://github.com/croomes))
|
* StorageOS Volume Driver ([#42156](https://github.com/kubernetes/kubernetes/pull/42156), [@croomes](https://github.com/croomes))
|
||||||
* [StorageOS](http://www.storageos.com) can be used as a storage provider for Kubernetes. With StorageOS, capacity from local or attached storage is pooled across the cluster, providing converged infrastructure for cloud-native applications.
|
* [StorageOS](http://www.storageos.com) can be used as a storage provider for Kubernetes. With StorageOS, capacity from local or attached storage is pooled across the cluster, providing converged infrastructure for cloud-native applications.
|
||||||
* CRI has been moved to package `pkg/kubelet/apis/cri/v1alpha1/runtime`. ([#47113](https://github.com/kubernetes/kubernetes/pull/47113), [@feiskyer](https://github.com/feiskyer))
|
* CRI has been moved to package `pkg/kubelet/apis/cri/v1alpha1/runtime`. ([#47113](https://github.com/kubernetes/kubernetes/pull/47113), [@feiskyer](https://github.com/feiskyer))
|
||||||
* Make gcp auth provider not to override the Auth header if it's already exits ([#45575](https://github.com/kubernetes/kubernetes/pull/45575), [@wanghaoran1988](https://github.com/wanghaoran1988))
|
* Make gcp auth provider not to override the Auth header if it's already exits ([#45575](https://github.com/kubernetes/kubernetes/pull/45575), [@wanghaoran1988](https://github.com/wanghaoran1988))
|
||||||
* Allow pods to opt out of PodPreset mutation via an annotation on the pod. ([#44965](https://github.com/kubernetes/kubernetes/pull/44965), [@jpeeler](https://github.com/jpeeler))
|
* Allow pods to opt out of PodPreset mutation via an annotation on the pod. ([#44965](https://github.com/kubernetes/kubernetes/pull/44965), [@jpeeler](https://github.com/jpeeler))
|
||||||
|
@ -2733,7 +2733,7 @@ filename | sha256 hash
|
||||||
* federation: Add admission controller for policy-based placement ([#44786](https://github.com/kubernetes/kubernetes/pull/44786), [@tsandall](https://github.com/tsandall))
|
* federation: Add admission controller for policy-based placement ([#44786](https://github.com/kubernetes/kubernetes/pull/44786), [@tsandall](https://github.com/tsandall))
|
||||||
* Get command uses OpenAPI schema to enhance display for a resource if run with flag 'use-openapi-print-columns'. ([#46235](https://github.com/kubernetes/kubernetes/pull/46235), [@droot](https://github.com/droot))
|
* Get command uses OpenAPI schema to enhance display for a resource if run with flag 'use-openapi-print-columns'. ([#46235](https://github.com/kubernetes/kubernetes/pull/46235), [@droot](https://github.com/droot))
|
||||||
* An example command:
|
* An example command:
|
||||||
* kubectl get pods --use-openapi-print-columns
|
* kubectl get pods --use-openapi-print-columns
|
||||||
* add gzip compression to GET and LIST requests ([#45666](https://github.com/kubernetes/kubernetes/pull/45666), [@ilackarms](https://github.com/ilackarms))
|
* add gzip compression to GET and LIST requests ([#45666](https://github.com/kubernetes/kubernetes/pull/45666), [@ilackarms](https://github.com/ilackarms))
|
||||||
* Fix the bug where container cannot run as root when SecurityContext.RunAsNonRoot is false. ([#47009](https://github.com/kubernetes/kubernetes/pull/47009), [@yujuhong](https://github.com/yujuhong))
|
* Fix the bug where container cannot run as root when SecurityContext.RunAsNonRoot is false. ([#47009](https://github.com/kubernetes/kubernetes/pull/47009), [@yujuhong](https://github.com/yujuhong))
|
||||||
* Fixes a bug with cAdvisorPort in the KubeletConfiguration that prevented setting it to 0, which is in fact a valid option, as noted in issue [#11710](https://github.com/kubernetes/kubernetes/pull/11710). ([#46876](https://github.com/kubernetes/kubernetes/pull/46876), [@mtaufen](https://github.com/mtaufen))
|
* Fixes a bug with cAdvisorPort in the KubeletConfiguration that prevented setting it to 0, which is in fact a valid option, as noted in issue [#11710](https://github.com/kubernetes/kubernetes/pull/11710). ([#46876](https://github.com/kubernetes/kubernetes/pull/46876), [@mtaufen](https://github.com/mtaufen))
|
||||||
|
@ -3046,7 +3046,7 @@ filename | sha256 hash
|
||||||
* The new metrics are:
|
* The new metrics are:
|
||||||
* cloudprovider_gce_api_request_duration_seconds{request, region, zone}
|
* cloudprovider_gce_api_request_duration_seconds{request, region, zone}
|
||||||
* cloudprovider_gce_api_request_errors{request, region, zone}
|
* cloudprovider_gce_api_request_errors{request, region, zone}
|
||||||
|
|
||||||
* `request` is the specific function that is used.
|
* `request` is the specific function that is used.
|
||||||
* `region` is the target region (Will be "<n/a>" if not applicable)
|
* `region` is the target region (Will be "<n/a>" if not applicable)
|
||||||
* `zone` is the target zone (Will be "<n/a>" if not applicable)
|
* `zone` is the target zone (Will be "<n/a>" if not applicable)
|
||||||
|
|
|
@ -1514,7 +1514,7 @@ For more information, see [#53288](https://issue.k8s.io/53288).
|
||||||
|
|
||||||
For more information, see [#53356](https://issue.k8s.io/53356#issuecomment-333748618).
|
For more information, see [#53356](https://issue.k8s.io/53356#issuecomment-333748618).
|
||||||
|
|
||||||
* A performance issue was identified in large-scale clusters when deleting thousands of pods simultaneously across hundreds of nodes. Kubelets in this scenario can encounter temporarily increased latency of `delete pod` API calls -- above the target service level objective of 1 second. If you run clusters with this usage pattern and if pod deletion latency could be an issue for you, you might want to wait until the issue is resolved before you upgrade.
|
* A performance issue was identified in large-scale clusters when deleting thousands of pods simultaneously across hundreds of nodes. Kubelets in this scenario can encounter temporarily increased latency of `delete pod` API calls -- above the target service level objective of 1 second. If you run clusters with this usage pattern and if pod deletion latency could be an issue for you, you might want to wait until the issue is resolved before you upgrade.
|
||||||
|
|
||||||
For more information and for updates on resolution of this issue, see [#51899](https://github.com/kubernetes/kubernetes/issues/51899).
|
For more information and for updates on resolution of this issue, see [#51899](https://github.com/kubernetes/kubernetes/issues/51899).
|
||||||
|
|
||||||
|
@ -2322,7 +2322,7 @@ filename | sha256 hash
|
||||||
* PersistentVolumeClaim metrics like "volume_stats_inodes" and "volume_stats_capacity_bytes" are now reported via kubelet prometheus ([#51553](https://github.com/kubernetes/kubernetes/pull/51553), [@wongma7](https://github.com/wongma7))
|
* PersistentVolumeClaim metrics like "volume_stats_inodes" and "volume_stats_capacity_bytes" are now reported via kubelet prometheus ([#51553](https://github.com/kubernetes/kubernetes/pull/51553), [@wongma7](https://github.com/wongma7))
|
||||||
* When using IP aliases, use a secondary range rather than subnetwork to reserve cluster IPs. ([#51690](https://github.com/kubernetes/kubernetes/pull/51690), [@bowei](https://github.com/bowei))
|
* When using IP aliases, use a secondary range rather than subnetwork to reserve cluster IPs. ([#51690](https://github.com/kubernetes/kubernetes/pull/51690), [@bowei](https://github.com/bowei))
|
||||||
* IPAM controller unifies handling of node pod CIDR range allocation. ([#51374](https://github.com/kubernetes/kubernetes/pull/51374), [@bowei](https://github.com/bowei))
|
* IPAM controller unifies handling of node pod CIDR range allocation. ([#51374](https://github.com/kubernetes/kubernetes/pull/51374), [@bowei](https://github.com/bowei))
|
||||||
* It is intended to supersede the logic that is currently in range_allocator
|
* It is intended to supersede the logic that is currently in range_allocator
|
||||||
* and cloud_cidr_allocator. (ALPHA FEATURE)
|
* and cloud_cidr_allocator. (ALPHA FEATURE)
|
||||||
* Note: for this change, the other allocators still exist and are the default.
|
* Note: for this change, the other allocators still exist and are the default.
|
||||||
* It supports two modes:
|
* It supports two modes:
|
||||||
|
@ -2951,7 +2951,7 @@ filename | sha256 hash
|
||||||
* servicecontroller: Fix node selection logic on initial LB creation ([#45773](https://github.com/kubernetes/kubernetes/pull/45773), [@justinsb](https://github.com/justinsb))
|
* servicecontroller: Fix node selection logic on initial LB creation ([#45773](https://github.com/kubernetes/kubernetes/pull/45773), [@justinsb](https://github.com/justinsb))
|
||||||
* Fix iSCSI iSER mounting. ([#47281](https://github.com/kubernetes/kubernetes/pull/47281), [@mtanino](https://github.com/mtanino))
|
* Fix iSCSI iSER mounting. ([#47281](https://github.com/kubernetes/kubernetes/pull/47281), [@mtanino](https://github.com/mtanino))
|
||||||
* StorageOS Volume Driver ([#42156](https://github.com/kubernetes/kubernetes/pull/42156), [@croomes](https://github.com/croomes))
|
* StorageOS Volume Driver ([#42156](https://github.com/kubernetes/kubernetes/pull/42156), [@croomes](https://github.com/croomes))
|
||||||
* [StorageOS](http://www.storageos.com) can be used as a storage provider for Kubernetes. With StorageOS, capacity from local or attached storage is pooled across the cluster, providing converged infrastructure for cloud-native applications.
|
* [StorageOS](http://www.storageos.com) can be used as a storage provider for Kubernetes. With StorageOS, capacity from local or attached storage is pooled across the cluster, providing converged infrastructure for cloud-native applications.
|
||||||
* CRI has been moved to package `pkg/kubelet/apis/cri/v1alpha1/runtime`. ([#47113](https://github.com/kubernetes/kubernetes/pull/47113), [@feiskyer](https://github.com/feiskyer))
|
* CRI has been moved to package `pkg/kubelet/apis/cri/v1alpha1/runtime`. ([#47113](https://github.com/kubernetes/kubernetes/pull/47113), [@feiskyer](https://github.com/feiskyer))
|
||||||
* Make gcp auth provider not to override the Auth header if it's already exits ([#45575](https://github.com/kubernetes/kubernetes/pull/45575), [@wanghaoran1988](https://github.com/wanghaoran1988))
|
* Make gcp auth provider not to override the Auth header if it's already exits ([#45575](https://github.com/kubernetes/kubernetes/pull/45575), [@wanghaoran1988](https://github.com/wanghaoran1988))
|
||||||
* Allow pods to opt out of PodPreset mutation via an annotation on the pod. ([#44965](https://github.com/kubernetes/kubernetes/pull/44965), [@jpeeler](https://github.com/jpeeler))
|
* Allow pods to opt out of PodPreset mutation via an annotation on the pod. ([#44965](https://github.com/kubernetes/kubernetes/pull/44965), [@jpeeler](https://github.com/jpeeler))
|
||||||
|
@ -2973,7 +2973,7 @@ filename | sha256 hash
|
||||||
* federation: Add admission controller for policy-based placement ([#44786](https://github.com/kubernetes/kubernetes/pull/44786), [@tsandall](https://github.com/tsandall))
|
* federation: Add admission controller for policy-based placement ([#44786](https://github.com/kubernetes/kubernetes/pull/44786), [@tsandall](https://github.com/tsandall))
|
||||||
* Get command uses OpenAPI schema to enhance display for a resource if run with flag 'use-openapi-print-columns'. ([#46235](https://github.com/kubernetes/kubernetes/pull/46235), [@droot](https://github.com/droot))
|
* Get command uses OpenAPI schema to enhance display for a resource if run with flag 'use-openapi-print-columns'. ([#46235](https://github.com/kubernetes/kubernetes/pull/46235), [@droot](https://github.com/droot))
|
||||||
* An example command:
|
* An example command:
|
||||||
* kubectl get pods --use-openapi-print-columns
|
* kubectl get pods --use-openapi-print-columns
|
||||||
* add gzip compression to GET and LIST requests ([#45666](https://github.com/kubernetes/kubernetes/pull/45666), [@ilackarms](https://github.com/ilackarms))
|
* add gzip compression to GET and LIST requests ([#45666](https://github.com/kubernetes/kubernetes/pull/45666), [@ilackarms](https://github.com/ilackarms))
|
||||||
* Fix the bug where container cannot run as root when SecurityContext.RunAsNonRoot is false. ([#47009](https://github.com/kubernetes/kubernetes/pull/47009), [@yujuhong](https://github.com/yujuhong))
|
* Fix the bug where container cannot run as root when SecurityContext.RunAsNonRoot is false. ([#47009](https://github.com/kubernetes/kubernetes/pull/47009), [@yujuhong](https://github.com/yujuhong))
|
||||||
* Fixes a bug with cAdvisorPort in the KubeletConfiguration that prevented setting it to 0, which is in fact a valid option, as noted in issue [#11710](https://github.com/kubernetes/kubernetes/pull/11710). ([#46876](https://github.com/kubernetes/kubernetes/pull/46876), [@mtaufen](https://github.com/mtaufen))
|
* Fixes a bug with cAdvisorPort in the KubeletConfiguration that prevented setting it to 0, which is in fact a valid option, as noted in issue [#11710](https://github.com/kubernetes/kubernetes/pull/11710). ([#46876](https://github.com/kubernetes/kubernetes/pull/46876), [@mtaufen](https://github.com/mtaufen))
|
||||||
|
|
|
@ -274,7 +274,7 @@ filename | sha512 hash
|
||||||
* fix UnmountDevice failure on Windows ([#68608](https://github.com/kubernetes/kubernetes/pull/68608), [@andyzhangx](https://github.com/andyzhangx))
|
* fix UnmountDevice failure on Windows ([#68608](https://github.com/kubernetes/kubernetes/pull/68608), [@andyzhangx](https://github.com/andyzhangx))
|
||||||
* adjusted http/2 buffer sizes for apiservers to prevent starvation issues between concurrent streams ([#67902](https://github.com/kubernetes/kubernetes/pull/67902), [@liggitt](https://github.com/liggitt))
|
* adjusted http/2 buffer sizes for apiservers to prevent starvation issues between concurrent streams ([#67902](https://github.com/kubernetes/kubernetes/pull/67902), [@liggitt](https://github.com/liggitt))
|
||||||
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
* Bump up version number of debian-base, debian-hyperkube-base and debian-iptables. ([#67026](https://github.com/kubernetes/kubernetes/pull/67026), [@satyasm](https://github.com/satyasm))
|
||||||
* Also updates dependencies of users of debian-base.
|
* Also updates dependencies of users of debian-base.
|
||||||
* debian-base version 0.3.1 is already available.
|
* debian-base version 0.3.1 is already available.
|
||||||
* Update debian-iptables and hyperkube-base images to include CVE fixes. ([#67365](https://github.com/kubernetes/kubernetes/pull/67365), [@ixdy](https://github.com/ixdy))
|
* Update debian-iptables and hyperkube-base images to include CVE fixes. ([#67365](https://github.com/kubernetes/kubernetes/pull/67365), [@ixdy](https://github.com/ixdy))
|
||||||
* Immediately close the other side of the connection when proxying. ([#67288](https://github.com/kubernetes/kubernetes/pull/67288), [@MHBauer](https://github.com/MHBauer))
|
* Immediately close the other side of the connection when proxying. ([#67288](https://github.com/kubernetes/kubernetes/pull/67288), [@MHBauer](https://github.com/MHBauer))
|
||||||
|
@ -1121,7 +1121,7 @@ Extensibility. SIG API Machinery added a new class of admission control webhooks
|
||||||
|
|
||||||
### Apps
|
### Apps
|
||||||
|
|
||||||
The core workloads API, which is composed of the DaemonSet, Deployment, ReplicaSet, and StatefulSet kinds, has been promoted to GA stability in the apps/v1 group version. As such, the apps/v1beta2 group version is deprecated, and all new code should use the kinds in the apps/v1 group version.
|
The core workloads API, which is composed of the DaemonSet, Deployment, ReplicaSet, and StatefulSet kinds, has been promoted to GA stability in the apps/v1 group version. As such, the apps/v1beta2 group version is deprecated, and all new code should use the kinds in the apps/v1 group version.
|
||||||
|
|
||||||
### Auth
|
### Auth
|
||||||
|
|
||||||
|
@ -1151,7 +1151,7 @@ In v1.9 SIG Network has implemented alpha support for IPv6, and alpha support fo
|
||||||
|
|
||||||
### Node
|
### Node
|
||||||
|
|
||||||
SIG Node iterated on the ability to support more workloads with better performance and improved reliability. Alpha features were improved around hardware accelerator support, device plugins enablement, and cpu pinning policies to enable us to graduate these features to beta in a future release. In addition, a number of reliability and performance enhancements were made across the node to help operators in production.
|
SIG Node iterated on the ability to support more workloads with better performance and improved reliability. Alpha features were improved around hardware accelerator support, device plugins enablement, and cpu pinning policies to enable us to graduate these features to beta in a future release. In addition, a number of reliability and performance enhancements were made across the node to help operators in production.
|
||||||
|
|
||||||
### OpenStack
|
### OpenStack
|
||||||
|
|
||||||
|
@ -1175,7 +1175,7 @@ The SIG also focused on adding functionality to the Kubernetes volume subsystem,
|
||||||
|
|
||||||
We are advancing support for Windows Server and Windows Server Containers to beta along with continued feature and functional advancements on both the Kubernetes and Windows platforms. This opens the door for many Windows-specific applications and workloads to run on Kubernetes, significantly expanding the implementation scenarios and the enterprise reach of Kubernetes.
|
We are advancing support for Windows Server and Windows Server Containers to beta along with continued feature and functional advancements on both the Kubernetes and Windows platforms. This opens the door for many Windows-specific applications and workloads to run on Kubernetes, significantly expanding the implementation scenarios and the enterprise reach of Kubernetes.
|
||||||
|
|
||||||
## Before Upgrading
|
## Before Upgrading
|
||||||
|
|
||||||
Consider the following changes, limitations, and guidelines before you upgrade:
|
Consider the following changes, limitations, and guidelines before you upgrade:
|
||||||
|
|
||||||
|
@ -1206,7 +1206,7 @@ Consider the following changes, limitations, and guidelines before you upgrade:
|
||||||
|
|
||||||
### **Multicluster**
|
### **Multicluster**
|
||||||
|
|
||||||
* Development of Kubernetes Federation has moved to [github.com/kubernetes/federation](https://github.com/kubernetes/federation). This move out of tree also means that Federation will begin releasing separately from Kubernetes. Impact:
|
* Development of Kubernetes Federation has moved to [github.com/kubernetes/federation](https://github.com/kubernetes/federation). This move out of tree also means that Federation will begin releasing separately from Kubernetes. Impact:
|
||||||
* Federation-specific behavior will no longer be included in kubectl
|
* Federation-specific behavior will no longer be included in kubectl
|
||||||
* kubefed will no longer be released as part of Kubernetes
|
* kubefed will no longer be released as part of Kubernetes
|
||||||
* The Federation servers will no longer be included in the hyperkube binary and image. ([#53816](https://github.com/kubernetes/kubernetes/pull/53816),[ @marun](https://github.com/marun))
|
* The Federation servers will no longer be included in the hyperkube binary and image. ([#53816](https://github.com/kubernetes/kubernetes/pull/53816),[ @marun](https://github.com/marun))
|
||||||
|
@ -1236,7 +1236,7 @@ Consider the following changes, limitations, and guidelines before you upgrade:
|
||||||
|
|
||||||
### **Storage**
|
### **Storage**
|
||||||
|
|
||||||
* [alpha] The LocalPersistentVolumes alpha feature now also requires the VolumeScheduling alpha feature. This is a breaking change, and the following changes are required:
|
* [alpha] The LocalPersistentVolumes alpha feature now also requires the VolumeScheduling alpha feature. This is a breaking change, and the following changes are required:
|
||||||
* The VolumeScheduling feature gate must also be enabled on kube-scheduler and kube-controller-manager components.
|
* The VolumeScheduling feature gate must also be enabled on kube-scheduler and kube-controller-manager components.
|
||||||
* The NoVolumeNodeConflict predicate has been removed. For non-default schedulers, update your scheduler policy.
|
* The NoVolumeNodeConflict predicate has been removed. For non-default schedulers, update your scheduler policy.
|
||||||
* The CheckVolumeBinding predicate must be enabled in non-default schedulers. ([#55039](https://github.com/kubernetes/kubernetes/pull/55039),[ @msau42](https://github.com/msau42))
|
* The CheckVolumeBinding predicate must be enabled in non-default schedulers. ([#55039](https://github.com/kubernetes/kubernetes/pull/55039),[ @msau42](https://github.com/msau42))
|
||||||
|
@ -1384,7 +1384,7 @@ As announced with the release of version 1.8, the Kubernetes Workloads API is at
|
||||||
|
|
||||||
* New permissions have been added to default RBAC roles ([#52654](https://github.com/kubernetes/kubernetes/pull/52654),[ @liggitt](https://github.com/liggitt)):
|
* New permissions have been added to default RBAC roles ([#52654](https://github.com/kubernetes/kubernetes/pull/52654),[ @liggitt](https://github.com/liggitt)):
|
||||||
* The default admin and edit roles now include read/write permissions
|
* The default admin and edit roles now include read/write permissions
|
||||||
* The view role includes read permissions on poddisruptionbudget.policy resources.
|
* The view role includes read permissions on poddisruptionbudget.policy resources.
|
||||||
* RBAC rules can now match the same subresource on any resource using the form `*/(subresource)`. For example, `*/scale` matches requests to `replicationcontroller/scale`. ([#53722](https://github.com/kubernetes/kubernetes/pull/53722),[ @deads2k](https://github.com/deads2k))
|
* RBAC rules can now match the same subresource on any resource using the form `*/(subresource)`. For example, `*/scale` matches requests to `replicationcontroller/scale`. ([#53722](https://github.com/kubernetes/kubernetes/pull/53722),[ @deads2k](https://github.com/deads2k))
|
||||||
* The RBAC bootstrapping policy now allows authenticated users to create selfsubjectrulesreviews. ([#56095](https://github.com/kubernetes/kubernetes/pull/56095),[ @ericchiang](https://github.com/ericchiang))
|
* The RBAC bootstrapping policy now allows authenticated users to create selfsubjectrulesreviews. ([#56095](https://github.com/kubernetes/kubernetes/pull/56095),[ @ericchiang](https://github.com/ericchiang))
|
||||||
* RBAC ClusterRoles can now select other roles to aggregate. ([#54005](https://github.com/kubernetes/kubernetes/pull/54005),[ @deads2k](https://github.com/deads2k))
|
* RBAC ClusterRoles can now select other roles to aggregate. ([#54005](https://github.com/kubernetes/kubernetes/pull/54005),[ @deads2k](https://github.com/deads2k))
|
||||||
|
@ -1665,7 +1665,7 @@ This release passes 129/145 Kubernetes e2e conformance tests.
|
||||||
* Load balancing is now more flexible:
|
* Load balancing is now more flexible:
|
||||||
* The OpenStack LBaaS v2 Provider is now [configurable](https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/#openstack). ([#54176](https://github.com/kubernetes/kubernetes/pull/54176),[ @gonzolino](https://github.com/gonzolino))
|
* The OpenStack LBaaS v2 Provider is now [configurable](https://kubernetes.io/docs/concepts/cluster-administration/cloud-providers/#openstack). ([#54176](https://github.com/kubernetes/kubernetes/pull/54176),[ @gonzolino](https://github.com/gonzolino))
|
||||||
* OpenStack Octavia v2 is now supported as a load balancer provider in addition to the existing support for the Neutron LBaaS V2 implementation. Neutron LBaaS V1 support has been removed. ([#55393](https://github.com/kubernetes/kubernetes/pull/55393),[ @jamiehannaford](https://github.com/jamiehannaford))
|
* OpenStack Octavia v2 is now supported as a load balancer provider in addition to the existing support for the Neutron LBaaS V2 implementation. Neutron LBaaS V1 support has been removed. ([#55393](https://github.com/kubernetes/kubernetes/pull/55393),[ @jamiehannaford](https://github.com/jamiehannaford))
|
||||||
* OpenStack security group support has been beefed up ([#50836](https://github.com/kubernetes/kubernetes/pull/50836),[ @FengyunPan](https://github.com/FengyunPan)):
|
* OpenStack security group support has been beefed up ([#50836](https://github.com/kubernetes/kubernetes/pull/50836),[ @FengyunPan](https://github.com/FengyunPan)):
|
||||||
* Kubernetes will now automatically determine the security group for the node
|
* Kubernetes will now automatically determine the security group for the node
|
||||||
* Nodes can now belong to multiple security groups
|
* Nodes can now belong to multiple security groups
|
||||||
|
|
||||||
|
@ -1679,7 +1679,7 @@ This release passes 129/145 Kubernetes e2e conformance tests.
|
||||||
|
|
||||||
* Scheduler cache ignores updates to an assumed pod if updates are limited to pod annotations. ([#54008](https://github.com/kubernetes/kubernetes/pull/54008),[ @yguo0905](https://github.com/yguo0905))
|
* Scheduler cache ignores updates to an assumed pod if updates are limited to pod annotations. ([#54008](https://github.com/kubernetes/kubernetes/pull/54008),[ @yguo0905](https://github.com/yguo0905))
|
||||||
* Issues with namespace deletion have been resolved. ([#53720](https://github.com/kubernetes/kubernetes/pull/53720),[ @shyamjvs](https://github.com/shyamjvs)) ([#53793](https://github.com/kubernetes/kubernetes/pull/53793),[ @wojtek-t](https://github.com/wojtek-t))
|
* Issues with namespace deletion have been resolved. ([#53720](https://github.com/kubernetes/kubernetes/pull/53720),[ @shyamjvs](https://github.com/shyamjvs)) ([#53793](https://github.com/kubernetes/kubernetes/pull/53793),[ @wojtek-t](https://github.com/wojtek-t))
|
||||||
* Pod preemption has been improved.
|
* Pod preemption has been improved.
|
||||||
* Now takes PodDisruptionBudget into account. ([#56178](https://github.com/kubernetes/kubernetes/pull/56178),[ @bsalamat](https://github.com/bsalamat))
|
* Now takes PodDisruptionBudget into account. ([#56178](https://github.com/kubernetes/kubernetes/pull/56178),[ @bsalamat](https://github.com/bsalamat))
|
||||||
* Nominated pods are taken into account during scheduling to avoid starvation of higher priority pods. ([#55933](https://github.com/kubernetes/kubernetes/pull/55933),[ @bsalamat](https://github.com/bsalamat))
|
* Nominated pods are taken into account during scheduling to avoid starvation of higher priority pods. ([#55933](https://github.com/kubernetes/kubernetes/pull/55933),[ @bsalamat](https://github.com/bsalamat))
|
||||||
* Fixed 'Schedulercache is corrupted' error in kube-scheduler ([#55262](https://github.com/kubernetes/kubernetes/pull/55262),[ @liggitt](https://github.com/liggitt))
|
* Fixed 'Schedulercache is corrupted' error in kube-scheduler ([#55262](https://github.com/kubernetes/kubernetes/pull/55262),[ @liggitt](https://github.com/liggitt))
|
||||||
|
@ -1699,12 +1699,12 @@ This release passes 129/145 Kubernetes e2e conformance tests.
|
||||||
* [alpha] Deletion of `PersistentVolumeClaim` objects that are in use by a pod no longer permitted (if alpha feature is enabled).
|
* [alpha] Deletion of `PersistentVolumeClaim` objects that are in use by a pod no longer permitted (if alpha feature is enabled).
|
||||||
* [alpha] Container Storage Interface
|
* [alpha] Container Storage Interface
|
||||||
* New CSIVolumeSource enables Kubernetes to use external CSI drivers to provision, attach, and mount volumes.
|
* New CSIVolumeSource enables Kubernetes to use external CSI drivers to provision, attach, and mount volumes.
|
||||||
* [alpha] Raw block volumes
|
* [alpha] Raw block volumes
|
||||||
* Support for surfacing volumes as raw block devices added to Kubernetes storage system.
|
* Support for surfacing volumes as raw block devices added to Kubernetes storage system.
|
||||||
* Only Fibre Channel volume plugin supports exposes this functionality, in this release.
|
* Only Fibre Channel volume plugin supports exposes this functionality, in this release.
|
||||||
* [alpha] Volume resizing
|
* [alpha] Volume resizing
|
||||||
* Added file system resizing for the following volume plugins: GCE PD, Ceph RBD, AWS EBS, OpenStack Cinder
|
* Added file system resizing for the following volume plugins: GCE PD, Ceph RBD, AWS EBS, OpenStack Cinder
|
||||||
* [alpha] Topology Aware Volume Scheduling
|
* [alpha] Topology Aware Volume Scheduling
|
||||||
* Improved volume scheduling for Local PersistentVolumes, by allowing the scheduler to make PersistentVolume binding decisions while respecting the Pod's scheduling requirements.
|
* Improved volume scheduling for Local PersistentVolumes, by allowing the scheduler to make PersistentVolume binding decisions while respecting the Pod's scheduling requirements.
|
||||||
* Dynamic provisioning is not supported with this feature yet.
|
* Dynamic provisioning is not supported with this feature yet.
|
||||||
* [alpha] Containerized mount utilities
|
* [alpha] Containerized mount utilities
|
||||||
|
@ -2082,7 +2082,7 @@ filename | sha256 hash
|
||||||
* The minimum supported go version bumps to 1.9.1. ([#55301](https://github.com/kubernetes/kubernetes/pull/55301), [@xiangpengzhao](https://github.com/xiangpengzhao))
|
* The minimum supported go version bumps to 1.9.1. ([#55301](https://github.com/kubernetes/kubernetes/pull/55301), [@xiangpengzhao](https://github.com/xiangpengzhao))
|
||||||
* GCE: provide an option to disable docker's live-restore on COS/ubuntu ([#55260](https://github.com/kubernetes/kubernetes/pull/55260), [@yujuhong](https://github.com/yujuhong))
|
* GCE: provide an option to disable docker's live-restore on COS/ubuntu ([#55260](https://github.com/kubernetes/kubernetes/pull/55260), [@yujuhong](https://github.com/yujuhong))
|
||||||
* Azure NSG rules for services exposed via external load balancer ([#54177](https://github.com/kubernetes/kubernetes/pull/54177), [@itowlson](https://github.com/itowlson))
|
* Azure NSG rules for services exposed via external load balancer ([#54177](https://github.com/kubernetes/kubernetes/pull/54177), [@itowlson](https://github.com/itowlson))
|
||||||
* now limit the destination IP address to the relevant front end load
|
* now limit the destination IP address to the relevant front end load
|
||||||
* balancer IP.
|
* balancer IP.
|
||||||
* DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers. ([#55272](https://github.com/kubernetes/kubernetes/pull/55272), [@janetkuo](https://github.com/janetkuo))
|
* DaemonSet status now has a new field named "conditions", making it consistent with other workloads controllers. ([#55272](https://github.com/kubernetes/kubernetes/pull/55272), [@janetkuo](https://github.com/janetkuo))
|
||||||
* kubeadm: Add an experimental mode to deploy CoreDNS instead of KubeDNS ([#52501](https://github.com/kubernetes/kubernetes/pull/52501), [@rajansandeep](https://github.com/rajansandeep))
|
* kubeadm: Add an experimental mode to deploy CoreDNS instead of KubeDNS ([#52501](https://github.com/kubernetes/kubernetes/pull/52501), [@rajansandeep](https://github.com/rajansandeep))
|
||||||
|
@ -2358,10 +2358,10 @@ filename | sha256 hash
|
||||||
* Add monitoring of Windows Server containers metrics in the kubelet via the stats/summary endpoint. ([#50396](https://github.com/kubernetes/kubernetes/pull/50396), [@bobbypage](https://github.com/bobbypage))
|
* Add monitoring of Windows Server containers metrics in the kubelet via the stats/summary endpoint. ([#50396](https://github.com/kubernetes/kubernetes/pull/50396), [@bobbypage](https://github.com/bobbypage))
|
||||||
* Restores redirect behavior for proxy subresources ([#52933](https://github.com/kubernetes/kubernetes/pull/52933), [@liggitt](https://github.com/liggitt))
|
* Restores redirect behavior for proxy subresources ([#52933](https://github.com/kubernetes/kubernetes/pull/52933), [@liggitt](https://github.com/liggitt))
|
||||||
* A new service annotation has been added for services of type LoadBalancer on Azure, ([#51757](https://github.com/kubernetes/kubernetes/pull/51757), [@itowlson](https://github.com/itowlson))
|
* A new service annotation has been added for services of type LoadBalancer on Azure, ([#51757](https://github.com/kubernetes/kubernetes/pull/51757), [@itowlson](https://github.com/itowlson))
|
||||||
* to specify the subnet on which the service's front end IP should be provisioned. The
|
* to specify the subnet on which the service's front end IP should be provisioned. The
|
||||||
* annotation is service.beta.kubernetes.io/azure-load-balancer-internal-subnet and its
|
* annotation is service.beta.kubernetes.io/azure-load-balancer-internal-subnet and its
|
||||||
* value is the subnet name (not the subnet ARM ID). If omitted, the default is the
|
* value is the subnet name (not the subnet ARM ID). If omitted, the default is the
|
||||||
* master subnet. It is ignored if the service is not on Azure, if the type is not
|
* master subnet. It is ignored if the service is not on Azure, if the type is not
|
||||||
* LoadBalancer, or if the load balancer is not internal.
|
* LoadBalancer, or if the load balancer is not internal.
|
||||||
* Adds a command-line argument to kube-apiserver called ([#51698](https://github.com/kubernetes/kubernetes/pull/51698), [@rphillips](https://github.com/rphillips))
|
* Adds a command-line argument to kube-apiserver called ([#51698](https://github.com/kubernetes/kubernetes/pull/51698), [@rphillips](https://github.com/rphillips))
|
||||||
* --alpha-endpoint-reconciler-type=(master-count, lease, none) (default
|
* --alpha-endpoint-reconciler-type=(master-count, lease, none) (default
|
||||||
|
@ -2544,7 +2544,7 @@ filename | sha256 hash
|
||||||
* PersistentVolumeClaim metrics like "volume_stats_inodes" and "volume_stats_capacity_bytes" are now reported via kubelet prometheus ([#51553](https://github.com/kubernetes/kubernetes/pull/51553), [@wongma7](https://github.com/wongma7))
|
* PersistentVolumeClaim metrics like "volume_stats_inodes" and "volume_stats_capacity_bytes" are now reported via kubelet prometheus ([#51553](https://github.com/kubernetes/kubernetes/pull/51553), [@wongma7](https://github.com/wongma7))
|
||||||
* When using IP aliases, use a secondary range rather than subnetwork to reserve cluster IPs. ([#51690](https://github.com/kubernetes/kubernetes/pull/51690), [@bowei](https://github.com/bowei))
|
* When using IP aliases, use a secondary range rather than subnetwork to reserve cluster IPs. ([#51690](https://github.com/kubernetes/kubernetes/pull/51690), [@bowei](https://github.com/bowei))
|
||||||
* IPAM controller unifies handling of node pod CIDR range allocation. ([#51374](https://github.com/kubernetes/kubernetes/pull/51374), [@bowei](https://github.com/bowei))
|
* IPAM controller unifies handling of node pod CIDR range allocation. ([#51374](https://github.com/kubernetes/kubernetes/pull/51374), [@bowei](https://github.com/bowei))
|
||||||
* It is intended to supersede the logic that is currently in range_allocator
|
* It is intended to supersede the logic that is currently in range_allocator
|
||||||
* and cloud_cidr_allocator. (ALPHA FEATURE)
|
* and cloud_cidr_allocator. (ALPHA FEATURE)
|
||||||
* Note: for this change, the other allocators still exist and are the default.
|
* Note: for this change, the other allocators still exist and are the default.
|
||||||
* It supports two modes:
|
* It supports two modes:
|
||||||
|
|
14
SUPPORT.md
14
SUPPORT.md
|
@ -1,27 +1,27 @@
|
||||||
## Support for deploying and using Kubernetes
|
## Support for deploying and using Kubernetes
|
||||||
|
|
||||||
Welcome to Kubernetes! We use GitHub for tracking bugs and feature requests.
|
Welcome to Kubernetes! We use GitHub for tracking bugs and feature requests.
|
||||||
This isn't the right place to get support for using Kubernetes, but the following
|
This isn't the right place to get support for using Kubernetes, but the following
|
||||||
resources are available below, thanks for understanding.
|
resources are available below, thanks for understanding.
|
||||||
|
|
||||||
### Stack Overflow
|
### Stack Overflow
|
||||||
|
|
||||||
The Kubernetes Community is active on Stack Overflow, you can post your questions there:
|
The Kubernetes Community is active on Stack Overflow, you can post your questions there:
|
||||||
|
|
||||||
* [Kubernetes on Stack Overflow](https://stackoverflow.com/questions/tagged/kubernetes)
|
* [Kubernetes on Stack Overflow](https://stackoverflow.com/questions/tagged/kubernetes)
|
||||||
|
|
||||||
* Here are some tips for [about how to ask good questions](https://stackoverflow.com/help/how-to-ask).
|
* Here are some tips for [about how to ask good questions](https://stackoverflow.com/help/how-to-ask).
|
||||||
* Don't forget to check to see [what's on topic](http://stackoverflow.com/help/on-topic).
|
* Don't forget to check to see [what's on topic](http://stackoverflow.com/help/on-topic).
|
||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
|
|
||||||
* [User Documentation](https://kubernetes.io/docs/)
|
* [User Documentation](https://kubernetes.io/docs/)
|
||||||
* [Troubleshooting Guide](https://kubernetes.io/docs/tasks/debug-application-cluster/troubleshooting/)
|
* [Troubleshooting Guide](https://kubernetes.io/docs/tasks/debug-application-cluster/troubleshooting/)
|
||||||
|
|
||||||
### Real-time Chat
|
### Real-time Chat
|
||||||
|
|
||||||
* [Slack](https://kubernetes.slack.com) ([registration](http://slack.k8s.io)):
|
* [Slack](https://kubernetes.slack.com) ([registration](http://slack.k8s.io)):
|
||||||
The `#kubernetes-users` and `#kubernetes-novice` channels are usual places where
|
The `#kubernetes-users` and `#kubernetes-novice` channels are usual places where
|
||||||
people offer support.
|
people offer support.
|
||||||
|
|
||||||
### Forum
|
### Forum
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
kind: Service
|
kind: Service
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
metadata:
|
metadata:
|
||||||
name: heapster
|
name: heapster
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
kubernetes.io/name: "Heapster"
|
kubernetes.io/name: "Heapster"
|
||||||
spec:
|
spec:
|
||||||
ports:
|
ports:
|
||||||
- port: 80
|
- port: 80
|
||||||
targetPort: 8082
|
targetPort: 8082
|
||||||
selector:
|
selector:
|
||||||
k8s-app: heapster
|
k8s-app: heapster
|
||||||
|
|
|
@ -7,9 +7,9 @@ metadata:
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
kubernetes.io/name: "Heapster"
|
kubernetes.io/name: "Heapster"
|
||||||
spec:
|
spec:
|
||||||
ports:
|
ports:
|
||||||
- port: 80
|
- port: 80
|
||||||
targetPort: 8082
|
targetPort: 8082
|
||||||
selector:
|
selector:
|
||||||
k8s-app: heapster
|
k8s-app: heapster
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
kind: Service
|
kind: Service
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
metadata:
|
metadata:
|
||||||
name: heapster
|
name: heapster
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
kubernetes.io/name: "Heapster"
|
kubernetes.io/name: "Heapster"
|
||||||
spec:
|
spec:
|
||||||
ports:
|
ports:
|
||||||
- port: 80
|
- port: 80
|
||||||
targetPort: 8082
|
targetPort: 8082
|
||||||
selector:
|
selector:
|
||||||
k8s-app: heapster
|
k8s-app: heapster
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
kind: Service
|
kind: Service
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
metadata:
|
metadata:
|
||||||
name: heapster
|
name: heapster
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
kubernetes.io/name: "Heapster"
|
kubernetes.io/name: "Heapster"
|
||||||
spec:
|
spec:
|
||||||
ports:
|
ports:
|
||||||
- port: 80
|
- port: 80
|
||||||
targetPort: 8082
|
targetPort: 8082
|
||||||
selector:
|
selector:
|
||||||
k8s-app: heapster
|
k8s-app: heapster
|
||||||
|
|
|
@ -6,7 +6,7 @@ Design details [here](https://git.k8s.io/enhancements/keps/sig-network/0030-node
|
||||||
|
|
||||||
## nodelocaldns addon template
|
## nodelocaldns addon template
|
||||||
|
|
||||||
This directory contains the addon config yaml - `nodelocaldns.yaml`
|
This directory contains the addon config yaml - `nodelocaldns.yaml`
|
||||||
The variables will be substituted by the configure scripts when the yaml is copied into master.
|
The variables will be substituted by the configure scripts when the yaml is copied into master.
|
||||||
To create a GCE cluster with nodelocaldns enabled, use the command:
|
To create a GCE cluster with nodelocaldns enabled, use the command:
|
||||||
`KUBE_ENABLE_NODELOCAL_DNS=true go run hack/e2e.go -v --up`
|
`KUBE_ENABLE_NODELOCAL_DNS=true go run hack/e2e.go -v --up`
|
||||||
|
|
|
@ -15,7 +15,7 @@ metadata:
|
||||||
name: ip-masq-agent
|
name: ip-masq-agent
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
spec:
|
spec:
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
|
@ -45,7 +45,7 @@ spec:
|
||||||
- name: config
|
- name: config
|
||||||
mountPath: /etc/config
|
mountPath: /etc/config
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
beta.kubernetes.io/masq-agent-ds-ready: "true"
|
beta.kubernetes.io/masq-agent-ds-ready: "true"
|
||||||
volumes:
|
volumes:
|
||||||
- name: config
|
- name: config
|
||||||
configMap:
|
configMap:
|
||||||
|
|
|
@ -43,8 +43,8 @@ spec:
|
||||||
failureThreshold: 1
|
failureThreshold: 1
|
||||||
successThreshold: 1
|
successThreshold: 1
|
||||||
args:
|
args:
|
||||||
- -o KubernetesUseWatch=true
|
- -o KubernetesUseWatch=true
|
||||||
- -o KubernetesClusterLevelMetadata=false
|
- -o KubernetesClusterLevelMetadata=false
|
||||||
- -o MetadataReporterPurgeDeleted=true
|
- -o MetadataReporterPurgeDeleted=true
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 8000
|
- containerPort: 8000
|
||||||
|
@ -105,8 +105,8 @@ spec:
|
||||||
failureThreshold: 1
|
failureThreshold: 1
|
||||||
successThreshold: 1
|
successThreshold: 1
|
||||||
args:
|
args:
|
||||||
- -o KubernetesUseWatch=true
|
- -o KubernetesUseWatch=true
|
||||||
- -o KubernetesClusterLevelMetadata=true
|
- -o KubernetesClusterLevelMetadata=true
|
||||||
- -o MetadataReporterPurgeDeleted=true
|
- -o MetadataReporterPurgeDeleted=true
|
||||||
ports:
|
ports:
|
||||||
- containerPort: 8000
|
- containerPort: 8000
|
||||||
|
|
|
@ -14,5 +14,5 @@ spec:
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
targetPort: 9093
|
targetPort: 9093
|
||||||
selector:
|
selector:
|
||||||
k8s-app: alertmanager
|
k8s-app: alertmanager
|
||||||
type: "ClusterIP"
|
type: "ClusterIP"
|
||||||
|
|
|
@ -69,7 +69,7 @@ rules:
|
||||||
resourceNames: ["kube-state-metrics"]
|
resourceNames: ["kube-state-metrics"]
|
||||||
verbs: ["get", "update"]
|
verbs: ["get", "update"]
|
||||||
---
|
---
|
||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: ClusterRoleBinding
|
kind: ClusterRoleBinding
|
||||||
metadata:
|
metadata:
|
||||||
name: kube-state-metrics
|
name: kube-state-metrics
|
||||||
|
|
|
@ -1,24 +1,24 @@
|
||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: DaemonSet
|
kind: DaemonSet
|
||||||
metadata:
|
metadata:
|
||||||
name: node-exporter
|
name: node-exporter
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
k8s-app: node-exporter
|
k8s-app: node-exporter
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
version: v0.15.2
|
version: v0.15.2
|
||||||
spec:
|
spec:
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
k8s-app: node-exporter
|
k8s-app: node-exporter
|
||||||
version: v0.15.2
|
version: v0.15.2
|
||||||
updateStrategy:
|
updateStrategy:
|
||||||
type: OnDelete
|
type: OnDelete
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
k8s-app: node-exporter
|
k8s-app: node-exporter
|
||||||
version: v0.15.2
|
version: v0.15.2
|
||||||
annotations:
|
annotations:
|
||||||
scheduler.alpha.kubernetes.io/critical-pod: ''
|
scheduler.alpha.kubernetes.io/critical-pod: ''
|
||||||
|
|
|
@ -17,4 +17,4 @@ spec:
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
targetPort: 9100
|
targetPort: 9100
|
||||||
selector:
|
selector:
|
||||||
k8s-app: node-exporter
|
k8s-app: node-exporter
|
||||||
|
|
|
@ -3,7 +3,7 @@ apiVersion: v1
|
||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: prometheus-config
|
name: prometheus-config
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: EnsureExists
|
addonmanager.kubernetes.io/mode: EnsureExists
|
||||||
|
@ -30,7 +30,7 @@ data:
|
||||||
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
|
||||||
insecure_skip_verify: true
|
insecure_skip_verify: true
|
||||||
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||||
|
|
||||||
- job_name: kubernetes-nodes-kubelet
|
- job_name: kubernetes-nodes-kubelet
|
||||||
kubernetes_sd_configs:
|
kubernetes_sd_configs:
|
||||||
- role: node
|
- role: node
|
||||||
|
@ -161,7 +161,7 @@ data:
|
||||||
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||||
relabel_configs:
|
relabel_configs:
|
||||||
- source_labels: [__meta_kubernetes_namespace]
|
- source_labels: [__meta_kubernetes_namespace]
|
||||||
regex: kube-system
|
regex: kube-system
|
||||||
action: keep
|
action: keep
|
||||||
- source_labels: [__meta_kubernetes_pod_label_k8s_app]
|
- source_labels: [__meta_kubernetes_pod_label_k8s_app]
|
||||||
regex: alertmanager
|
regex: alertmanager
|
||||||
|
|
|
@ -13,7 +13,7 @@ metadata:
|
||||||
name: prometheus
|
name: prometheus
|
||||||
labels:
|
labels:
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
rules:
|
rules:
|
||||||
- apiGroups:
|
- apiGroups:
|
||||||
- ""
|
- ""
|
||||||
|
|
|
@ -1,17 +1,17 @@
|
||||||
kind: Service
|
kind: Service
|
||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
metadata:
|
metadata:
|
||||||
name: prometheus
|
name: prometheus
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
kubernetes.io/name: "Prometheus"
|
kubernetes.io/name: "Prometheus"
|
||||||
kubernetes.io/cluster-service: "true"
|
kubernetes.io/cluster-service: "true"
|
||||||
addonmanager.kubernetes.io/mode: Reconcile
|
addonmanager.kubernetes.io/mode: Reconcile
|
||||||
spec:
|
spec:
|
||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
port: 9090
|
port: 9090
|
||||||
protocol: TCP
|
protocol: TCP
|
||||||
targetPort: 9090
|
targetPort: 9090
|
||||||
selector:
|
selector:
|
||||||
k8s-app: prometheus
|
k8s-app: prometheus
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: StatefulSet
|
kind: StatefulSet
|
||||||
metadata:
|
metadata:
|
||||||
name: prometheus
|
name: prometheus
|
||||||
namespace: kube-system
|
namespace: kube-system
|
||||||
labels:
|
labels:
|
||||||
k8s-app: prometheus
|
k8s-app: prometheus
|
||||||
|
@ -85,7 +85,7 @@ spec:
|
||||||
requests:
|
requests:
|
||||||
cpu: 200m
|
cpu: 200m
|
||||||
memory: 1000Mi
|
memory: 1000Mi
|
||||||
|
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: config-volume
|
- name: config-volume
|
||||||
mountPath: /etc/config
|
mountPath: /etc/config
|
||||||
|
|
|
@ -30,7 +30,7 @@ KUBE_CONTROLLER_MANAGER_ROOT_CA_FILE="--root-ca-file=/srv/kubernetes/ca.crt"
|
||||||
# RSA key used to sign service account tokens.
|
# RSA key used to sign service account tokens.
|
||||||
KUBE_CONTROLLER_MANAGER_SERVICE_ACCOUNT_PRIVATE_KEY_FILE="--service-account-private-key-file=/srv/kubernetes/server.key"
|
KUBE_CONTROLLER_MANAGER_SERVICE_ACCOUNT_PRIVATE_KEY_FILE="--service-account-private-key-file=/srv/kubernetes/server.key"
|
||||||
|
|
||||||
# --leader-elect: Start a leader election client and gain leadership before
|
# --leader-elect: Start a leader election client and gain leadership before
|
||||||
# executing the main loop. Enable this when running replicated components for high availability.
|
# executing the main loop. Enable this when running replicated components for high availability.
|
||||||
KUBE_LEADER_ELECT="--leader-elect"
|
KUBE_LEADER_ELECT="--leader-elect"
|
||||||
EOF
|
EOF
|
||||||
|
|
|
@ -30,7 +30,7 @@ KUBE_LOG_LEVEL="--v=4"
|
||||||
# --master: The address of the Kubernetes API server (overrides any value in kubeconfig).
|
# --master: The address of the Kubernetes API server (overrides any value in kubeconfig).
|
||||||
KUBE_MASTER="--master=${MASTER_ADDRESS}:8080"
|
KUBE_MASTER="--master=${MASTER_ADDRESS}:8080"
|
||||||
|
|
||||||
# --leader-elect: Start a leader election client and gain leadership before
|
# --leader-elect: Start a leader election client and gain leadership before
|
||||||
# executing the main loop. Enable this when running replicated components for high availability.
|
# executing the main loop. Enable this when running replicated components for high availability.
|
||||||
KUBE_LEADER_ELECT="--leader-elect"
|
KUBE_LEADER_ELECT="--leader-elect"
|
||||||
|
|
||||||
|
|
|
@ -82,7 +82,7 @@ function get_bin() {
|
||||||
echo "Source directory path is required"
|
echo "Source directory path is required"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
locations=(
|
locations=(
|
||||||
"${KUBE_ROOT}/_output/bin/${bin}"
|
"${KUBE_ROOT}/_output/bin/${bin}"
|
||||||
"${KUBE_ROOT}/_output/dockerized/bin/${host_os}/${host_arch}/${bin}"
|
"${KUBE_ROOT}/_output/dockerized/bin/${host_os}/${host_arch}/${bin}"
|
||||||
|
|
|
@ -206,11 +206,11 @@ TEST_CLUSTER_RESYNC_PERIOD="${TEST_CLUSTER_RESYNC_PERIOD:---min-resync-period=3m
|
||||||
TEST_CLUSTER_API_CONTENT_TYPE="${TEST_CLUSTER_API_CONTENT_TYPE:-}"
|
TEST_CLUSTER_API_CONTENT_TYPE="${TEST_CLUSTER_API_CONTENT_TYPE:-}"
|
||||||
|
|
||||||
KUBELET_TEST_ARGS="${KUBELET_TEST_ARGS:-} --serialize-image-pulls=false ${TEST_CLUSTER_API_CONTENT_TYPE}"
|
KUBELET_TEST_ARGS="${KUBELET_TEST_ARGS:-} --serialize-image-pulls=false ${TEST_CLUSTER_API_CONTENT_TYPE}"
|
||||||
if [[ "${NODE_OS_DISTRIBUTION}" == "gci" ]] || [[ "${NODE_OS_DISTRIBUTION}" == "ubuntu" ]] || [[ "${NODE_OS_DISTRIBUTION}" == "custom" ]]; then
|
if [[ "${NODE_OS_DISTRIBUTION}" == "gci" ]] || [[ "${NODE_OS_DISTRIBUTION}" == "ubuntu" ]] || [[ "${NODE_OS_DISTRIBUTION}" == "custom" ]]; then
|
||||||
NODE_KUBELET_TEST_ARGS="${NODE_KUBELET_TEST_ARGS:-} --experimental-kernel-memcg-notification=true"
|
NODE_KUBELET_TEST_ARGS="${NODE_KUBELET_TEST_ARGS:-} --experimental-kernel-memcg-notification=true"
|
||||||
fi
|
fi
|
||||||
if [[ "${MASTER_OS_DISTRIBUTION}" == "gci" ]] || [[ "${MASTER_OS_DISTRIBUTION}" == "ubuntu" ]]; then
|
if [[ "${MASTER_OS_DISTRIBUTION}" == "gci" ]] || [[ "${MASTER_OS_DISTRIBUTION}" == "ubuntu" ]]; then
|
||||||
MASTER_KUBELET_TEST_ARGS="${MASTER_KUBELET_TEST_ARGS:-} --experimental-kernel-memcg-notification=true"
|
MASTER_KUBELET_TEST_ARGS="${MASTER_KUBELET_TEST_ARGS:-} --experimental-kernel-memcg-notification=true"
|
||||||
fi
|
fi
|
||||||
APISERVER_TEST_ARGS="${APISERVER_TEST_ARGS:-} --runtime-config=extensions/v1beta1,scheduling.k8s.io/v1alpha1,settings.k8s.io/v1alpha1 ${TEST_CLUSTER_DELETE_COLLECTION_WORKERS} ${TEST_CLUSTER_MAX_REQUESTS_INFLIGHT}"
|
APISERVER_TEST_ARGS="${APISERVER_TEST_ARGS:-} --runtime-config=extensions/v1beta1,scheduling.k8s.io/v1alpha1,settings.k8s.io/v1alpha1 ${TEST_CLUSTER_DELETE_COLLECTION_WORKERS} ${TEST_CLUSTER_MAX_REQUESTS_INFLIGHT}"
|
||||||
CONTROLLER_MANAGER_TEST_ARGS="${CONTROLLER_MANAGER_TEST_ARGS:-} ${TEST_CLUSTER_RESYNC_PERIOD} ${TEST_CLUSTER_API_CONTENT_TYPE}"
|
CONTROLLER_MANAGER_TEST_ARGS="${CONTROLLER_MANAGER_TEST_ARGS:-} ${TEST_CLUSTER_RESYNC_PERIOD} ${TEST_CLUSTER_API_CONTENT_TYPE}"
|
||||||
|
|
|
@ -80,7 +80,7 @@ flex_clean() {
|
||||||
umount_silent ${MOUNTER_PATH}/var/lib/kubelet
|
umount_silent ${MOUNTER_PATH}/var/lib/kubelet
|
||||||
umount_silent ${MOUNTER_PATH}
|
umount_silent ${MOUNTER_PATH}
|
||||||
rm -rf ${MOUNTER_PATH}
|
rm -rf ${MOUNTER_PATH}
|
||||||
|
|
||||||
if [[ -n ${IMAGE_URL:-} ]]; then
|
if [[ -n ${IMAGE_URL:-} ]]; then
|
||||||
docker rmi -f ${IMAGE_URL} &> /dev/null || /bin/true
|
docker rmi -f ${IMAGE_URL} &> /dev/null || /bin/true
|
||||||
fi
|
fi
|
||||||
|
@ -98,7 +98,7 @@ generate_chroot_wrapper() {
|
||||||
echo "Failed to set up FlexVolume driver: cannot find directory '/flexvolume' in the mount utility image."
|
echo "Failed to set up FlexVolume driver: cannot find directory '/flexvolume' in the mount utility image."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for driver_dir in ${MOUNTER_PATH}/flexvolume/*; do
|
for driver_dir in ${MOUNTER_PATH}/flexvolume/*; do
|
||||||
if [ -d "$driver_dir" ]; then
|
if [ -d "$driver_dir" ]; then
|
||||||
|
|
||||||
|
@ -107,7 +107,7 @@ generate_chroot_wrapper() {
|
||||||
echo "ERROR: Expected 1 file in the FlexVolume directory but found $filecount."
|
echo "ERROR: Expected 1 file in the FlexVolume directory but found $filecount."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
driver_file=$( ls $driver_dir | head -n 1 )
|
driver_file=$( ls $driver_dir | head -n 1 )
|
||||||
|
|
||||||
# driver_path points to the actual driver inside the mount utility image,
|
# driver_path points to the actual driver inside the mount utility image,
|
||||||
|
|
|
@ -21,7 +21,7 @@ all: container
|
||||||
container:
|
container:
|
||||||
docker build --pull -t ${REGISTRY}/${IMAGE}:${TAG} .
|
docker build --pull -t ${REGISTRY}/${IMAGE}:${TAG} .
|
||||||
|
|
||||||
push:
|
push:
|
||||||
docker push ${REGISTRY}/${IMAGE}:${TAG}
|
docker push ${REGISTRY}/${IMAGE}:${TAG}
|
||||||
|
|
||||||
upload:
|
upload:
|
||||||
|
|
|
@ -210,7 +210,7 @@ function setup-base-image() {
|
||||||
if [[ "${NODE_OS_DISTRIBUTION}" == "cos" ]]; then
|
if [[ "${NODE_OS_DISTRIBUTION}" == "cos" ]]; then
|
||||||
NODE_OS_DISTRIBUTION="gci"
|
NODE_OS_DISTRIBUTION="gci"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
source "${KUBE_ROOT}/cluster/gce/${NODE_OS_DISTRIBUTION}/node-helper.sh"
|
source "${KUBE_ROOT}/cluster/gce/${NODE_OS_DISTRIBUTION}/node-helper.sh"
|
||||||
# Reset the node image based on current os distro
|
# Reset the node image based on current os distro
|
||||||
set-linux-node-image
|
set-linux-node-image
|
||||||
|
|
|
@ -65,7 +65,7 @@ Last, build and push the docker images for all supported architectures.
|
||||||
# Build images for all the architecture and push the manifest image as well
|
# Build images for all the architecture and push the manifest image as well
|
||||||
$ make all-push
|
$ make all-push
|
||||||
|
|
||||||
# Build images for all the architecture
|
# Build images for all the architecture
|
||||||
$ make all-build
|
$ make all-build
|
||||||
|
|
||||||
# Build image for target architecture(default=amd64)
|
# Build image for target architecture(default=amd64)
|
||||||
|
|
|
@ -31,7 +31,7 @@ juju-quickstart`) or Ubuntu (`apt-get install juju-quickstart`).
|
||||||
### Deploy a Kubernetes Bundle
|
### Deploy a Kubernetes Bundle
|
||||||
|
|
||||||
Use the 'juju quickstart' command to deploy a Kubernetes cluster to any cloud
|
Use the 'juju quickstart' command to deploy a Kubernetes cluster to any cloud
|
||||||
supported by Juju.
|
supported by Juju.
|
||||||
|
|
||||||
The charm store version of the Kubernetes bundle can be deployed as follows:
|
The charm store version of the Kubernetes bundle can be deployed as follows:
|
||||||
|
|
||||||
|
@ -174,7 +174,7 @@ for more details of what can be done with the command line tool.
|
||||||
|
|
||||||
The kubernetes-bundle is open source and available on github.com. If
|
The kubernetes-bundle is open source and available on github.com. If
|
||||||
you want to get started developing on the bundle you can clone it from
|
you want to get started developing on the bundle you can clone it from
|
||||||
github.
|
github.
|
||||||
|
|
||||||
git clone https://github.com/kubernetes/kubernetes.git
|
git clone https://github.com/kubernetes/kubernetes.git
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
# This stubs out charm-pre-install coming from layer-docker as a workaround for
|
# This stubs out charm-pre-install coming from layer-docker as a workaround for
|
||||||
# offline installs until https://github.com/juju/charm-tools/issues/301 is fixed.
|
# offline installs until https://github.com/juju/charm-tools/issues/301 is fixed.
|
||||||
|
|
|
@ -23,7 +23,7 @@ set -o pipefail
|
||||||
# echo "NOTE:"
|
# echo "NOTE:"
|
||||||
# echo "kubectl.sh is deprecated and will be removed soon."
|
# echo "kubectl.sh is deprecated and will be removed soon."
|
||||||
# echo "please replace all usage with calls to the kubectl"
|
# echo "please replace all usage with calls to the kubectl"
|
||||||
# echo "binary and ensure that it is in your PATH."
|
# echo "binary and ensure that it is in your PATH."
|
||||||
# echo ""
|
# echo ""
|
||||||
# echo "Please see 'kubectl help config' for more details"
|
# echo "Please see 'kubectl help config' for more details"
|
||||||
# echo "about configuring kubectl for your cluster."
|
# echo "about configuring kubectl for your cluster."
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
# See the OWNERS docs at https://go.k8s.io/owners
|
# See the OWNERS docs at https://go.k8s.io/owners
|
||||||
|
|
||||||
reviewers:
|
reviewers:
|
||||||
- stevekuznetsov
|
- stevekuznetsov
|
||||||
- deads2k
|
- deads2k
|
||||||
- sttts
|
- sttts
|
||||||
approvers:
|
approvers:
|
||||||
- stevekuznetsov
|
- stevekuznetsov
|
||||||
- deads2k
|
- deads2k
|
||||||
- sttts
|
- sttts
|
||||||
|
|
|
@ -4,5 +4,5 @@ approvers:
|
||||||
- sig-scheduling-maintainers
|
- sig-scheduling-maintainers
|
||||||
reviewers:
|
reviewers:
|
||||||
- sig-scheduling
|
- sig-scheduling
|
||||||
labels:
|
labels:
|
||||||
- sig/scheduling
|
- sig/scheduling
|
||||||
|
|
|
@ -18,6 +18,6 @@ reviewers:
|
||||||
- rosti
|
- rosti
|
||||||
- yagonobre
|
- yagonobre
|
||||||
# Might want to add @xiangpengzhao and @stealthybox back in the future
|
# Might want to add @xiangpengzhao and @stealthybox back in the future
|
||||||
labels:
|
labels:
|
||||||
- area/kubeadm
|
- area/kubeadm
|
||||||
- sig/cluster-lifecycle
|
- sig/cluster-lifecycle
|
||||||
|
|
|
@ -53,7 +53,7 @@ var (
|
||||||
` + cmdutil.AlphaDisclaimer)
|
` + cmdutil.AlphaDisclaimer)
|
||||||
|
|
||||||
selfhostingExample = normalizer.Examples(`
|
selfhostingExample = normalizer.Examples(`
|
||||||
# Converts a static Pod-hosted control plane into a self-hosted one.
|
# Converts a static Pod-hosted control plane into a self-hosted one.
|
||||||
|
|
||||||
kubeadm alpha phase self-hosting convert-from-staticpods
|
kubeadm alpha phase self-hosting convert-from-staticpods
|
||||||
`)
|
`)
|
||||||
|
|
|
@ -77,7 +77,7 @@ var (
|
||||||
joinLongDescription = dedent.Dedent(`
|
joinLongDescription = dedent.Dedent(`
|
||||||
When joining a kubeadm initialized cluster, we need to establish
|
When joining a kubeadm initialized cluster, we need to establish
|
||||||
bidirectional trust. This is split into discovery (having the Node
|
bidirectional trust. This is split into discovery (having the Node
|
||||||
trust the Kubernetes Control Plane) and TLS bootstrap (having the
|
trust the Kubernetes Control Plane) and TLS bootstrap (having the
|
||||||
Kubernetes Control Plane trust the Node).
|
Kubernetes Control Plane trust the Node).
|
||||||
|
|
||||||
There are 2 main schemes for discovery. The first is to use a shared
|
There are 2 main schemes for discovery. The first is to use a shared
|
||||||
|
@ -93,7 +93,7 @@ var (
|
||||||
|
|
||||||
If you use a shared token for discovery, you should also pass the
|
If you use a shared token for discovery, you should also pass the
|
||||||
--discovery-token-ca-cert-hash flag to validate the public key of the
|
--discovery-token-ca-cert-hash flag to validate the public key of the
|
||||||
root certificate authority (CA) presented by the Kubernetes Control Plane.
|
root certificate authority (CA) presented by the Kubernetes Control Plane.
|
||||||
The value of this flag is specified as "<hash-type>:<hex-encoded-value>",
|
The value of this flag is specified as "<hash-type>:<hex-encoded-value>",
|
||||||
where the supported hash type is "sha256". The hash is calculated over
|
where the supported hash type is "sha256". The hash is calculated over
|
||||||
the bytes of the Subject Public Key Info (SPKI) object (as in RFC7469).
|
the bytes of the Subject Public Key Info (SPKI) object (as in RFC7469).
|
||||||
|
|
|
@ -45,7 +45,7 @@ var (
|
||||||
short: "Generates a kubeconfig file for the kubelet to use *only* for cluster bootstrapping purposes",
|
short: "Generates a kubeconfig file for the kubelet to use *only* for cluster bootstrapping purposes",
|
||||||
long: normalizer.LongDesc(`
|
long: normalizer.LongDesc(`
|
||||||
Generates the kubeconfig file for the kubelet to use and saves it to %s file.
|
Generates the kubeconfig file for the kubelet to use and saves it to %s file.
|
||||||
|
|
||||||
Please note that this should *only* be used for cluster bootstrapping purposes. After your control plane is up,
|
Please note that this should *only* be used for cluster bootstrapping purposes. After your control plane is up,
|
||||||
you should request all kubelet credentials from the CSR API.`),
|
you should request all kubelet credentials from the CSR API.`),
|
||||||
},
|
},
|
||||||
|
|
|
@ -36,7 +36,7 @@ import (
|
||||||
|
|
||||||
var (
|
var (
|
||||||
uploadKubeadmConfigLongDesc = fmt.Sprintf(normalizer.LongDesc(`
|
uploadKubeadmConfigLongDesc = fmt.Sprintf(normalizer.LongDesc(`
|
||||||
Uploads the kubeadm ClusterConfiguration to a ConfigMap called %s in the %s namespace.
|
Uploads the kubeadm ClusterConfiguration to a ConfigMap called %s in the %s namespace.
|
||||||
This enables correct configuration of system components and a seamless user experience when upgrading.
|
This enables correct configuration of system components and a seamless user experience when upgrading.
|
||||||
|
|
||||||
Alternatively, you can use kubeadm config.
|
Alternatively, you can use kubeadm config.
|
||||||
|
|
|
@ -43,7 +43,7 @@ var (
|
||||||
upgradeNodeConfigLongDesc = normalizer.LongDesc(`
|
upgradeNodeConfigLongDesc = normalizer.LongDesc(`
|
||||||
Downloads the kubelet configuration from a ConfigMap of the form "kubelet-config-1.X" in the cluster,
|
Downloads the kubelet configuration from a ConfigMap of the form "kubelet-config-1.X" in the cluster,
|
||||||
where X is the minor version of the kubelet. kubeadm uses the --kubelet-version parameter to determine
|
where X is the minor version of the kubelet. kubeadm uses the --kubelet-version parameter to determine
|
||||||
what the _desired_ kubelet version is. Give
|
what the _desired_ kubelet version is. Give
|
||||||
`)
|
`)
|
||||||
|
|
||||||
upgradeNodeConfigExample = normalizer.Examples(fmt.Sprintf(`
|
upgradeNodeConfigExample = normalizer.Examples(fmt.Sprintf(`
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
apiVersion: kubeadm.k8s.io/v1beta1
|
apiVersion: kubeadm.k8s.io/v1beta1
|
||||||
kind: InitConfiguration
|
kind: InitConfiguration
|
||||||
bootstrapTokens:
|
bootstrapTokens:
|
||||||
- token: s73ybu.6tw6wnqgp5z0wb77
|
- token: s73ybu.6tw6wnqgp5z0wb77
|
||||||
localAPIEndpoint:
|
localAPIEndpoint:
|
||||||
|
|
|
@ -82,7 +82,7 @@ or not the job is healthy.
|
||||||
|
|
||||||
New jobs should be specified as YAML files to be processed by [Jenkins Job
|
New jobs should be specified as YAML files to be processed by [Jenkins Job
|
||||||
Builder](http://docs.openstack.org/infra/jenkins-job-builder/). The YAML files
|
Builder](http://docs.openstack.org/infra/jenkins-job-builder/). The YAML files
|
||||||
live in `jenkins/job-configs` and its subfolders **in the
|
live in `jenkins/job-configs` and its subfolders **in the
|
||||||
[kubernetes/test-infra repository](https://github.com/kubernetes/test-infra)**.
|
[kubernetes/test-infra repository](https://github.com/kubernetes/test-infra)**.
|
||||||
Jenkins runs Jenkins Job Builder in a Docker container defined in
|
Jenkins runs Jenkins Job Builder in a Docker container defined in
|
||||||
`job-builder-image`, and triggers it using `update-jobs.sh`. Jenkins Job Builder
|
`job-builder-image`, and triggers it using `update-jobs.sh`. Jenkins Job Builder
|
||||||
|
|
|
@ -106,7 +106,7 @@ function set_kubernetes_base_path () {
|
||||||
function find_version() {
|
function find_version() {
|
||||||
(
|
(
|
||||||
# Where are we?
|
# Where are we?
|
||||||
# This could be set in the global scope at some point if we need to
|
# This could be set in the global scope at some point if we need to
|
||||||
# discover the kubernetes path elsewhere.
|
# discover the kubernetes path elsewhere.
|
||||||
set_kubernetes_base_path
|
set_kubernetes_base_path
|
||||||
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ kube::log::errexit() {
|
||||||
|
|
||||||
set +o xtrace
|
set +o xtrace
|
||||||
local code="${1:-1}"
|
local code="${1:-1}"
|
||||||
# Print out the stack trace described by $function_stack
|
# Print out the stack trace described by $function_stack
|
||||||
if [ ${#FUNCNAME[@]} -gt 2 ]
|
if [ ${#FUNCNAME[@]} -gt 2 ]
|
||||||
then
|
then
|
||||||
kube::log::error "Call tree:"
|
kube::log::error "Call tree:"
|
||||||
|
@ -36,7 +36,7 @@ kube::log::errexit() {
|
||||||
do
|
do
|
||||||
kube::log::error " ${i}: ${BASH_SOURCE[${i}+1]}:${BASH_LINENO[${i}]} ${FUNCNAME[${i}]}(...)"
|
kube::log::error " ${i}: ${BASH_SOURCE[${i}+1]}:${BASH_LINENO[${i}]} ${FUNCNAME[${i}]}(...)"
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
kube::log::error_exit "Error in ${BASH_SOURCE[1]}:${BASH_LINENO[0]}. '${BASH_COMMAND}' exited with status ${err}" "${1:-1}" 1
|
kube::log::error_exit "Error in ${BASH_SOURCE[1]}:${BASH_LINENO[0]}. '${BASH_COMMAND}' exited with status ${err}" "${1:-1}" 1
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@
|
||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
.PHONY: manifest-tool
|
.PHONY: manifest-tool
|
||||||
|
|
||||||
MANIFEST_TOOL_DIR := $(shell mktemp -d)
|
MANIFEST_TOOL_DIR := $(shell mktemp -d)
|
||||||
export PATH := $(MANIFEST_TOOL_DIR):$(PATH)
|
export PATH := $(MANIFEST_TOOL_DIR):$(PATH)
|
||||||
|
|
|
@ -2,7 +2,7 @@ apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
foo: boo
|
foo: boo
|
||||||
name: scale-3
|
name: scale-3
|
||||||
spec:
|
spec:
|
||||||
replicas: 1
|
replicas: 1
|
||||||
|
|
|
@ -127,7 +127,7 @@ for f in "${all_shell_scripts[@]}"; do
|
||||||
else
|
else
|
||||||
failedLint=$(docker exec -t ${SHELLCHECK_CONTAINER} \
|
failedLint=$(docker exec -t ${SHELLCHECK_CONTAINER} \
|
||||||
shellcheck --exclude="${SHELLCHECK_DISABLED}" "${f}")
|
shellcheck --exclude="${SHELLCHECK_DISABLED}" "${f}")
|
||||||
fi
|
fi
|
||||||
set -o errexit
|
set -o errexit
|
||||||
kube::util::array_contains "${f}" "${failing_files[@]}" && in_failing=$? || in_failing=$?
|
kube::util::array_contains "${f}" "${failing_files[@]}" && in_failing=$? || in_failing=$?
|
||||||
if [[ -n "${failedLint}" ]] && [[ "${in_failing}" -ne "0" ]]; then
|
if [[ -n "${failedLint}" ]] && [[ "${in_failing}" -ne "0" ]]; then
|
||||||
|
|
|
@ -23,13 +23,13 @@ KUBE_ROOT=$(dirname "${BASH_SOURCE}")/..
|
||||||
cd "${KUBE_ROOT}"
|
cd "${KUBE_ROOT}"
|
||||||
result=0
|
result=0
|
||||||
|
|
||||||
# Find mentions of untagged gcr.io images in test/e2e/*.go
|
# Find mentions of untagged gcr.io images in test/e2e/*.go
|
||||||
find_e2e_test_untagged_gcr_images() {
|
find_e2e_test_untagged_gcr_images() {
|
||||||
grep -o -E -e 'gcr.io/[-a-z0-9/_:.]+' test/e2e/*.go | grep -v -E "gcr.io/.*:" | cut -d ":" -f 1 | LC_ALL=C sort -u
|
grep -o -E -e 'gcr.io/[-a-z0-9/_:.]+' test/e2e/*.go | grep -v -E "gcr.io/.*:" | cut -d ":" -f 1 | LC_ALL=C sort -u
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
# Find mentions of latest gcr.io images in test/e2e/*.go
|
# Find mentions of latest gcr.io images in test/e2e/*.go
|
||||||
find_e2e_test_latest_gcr_images() {
|
find_e2e_test_latest_gcr_images() {
|
||||||
grep -o -E -e 'gcr.io/.*:latest' test/e2e/*.go | cut -d ":" -f 1 | LC_ALL=C sort -u
|
grep -o -E -e 'gcr.io/.*:latest' test/e2e/*.go | cut -d ":" -f 1 | LC_ALL=C sort -u
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ follow these basic guidelines.
|
||||||
You may display, modify, or use the Kubernetes logo only in connection with
|
You may display, modify, or use the Kubernetes logo only in connection with
|
||||||
compliant implementations of Kubernetes and related uses in the following ways.
|
compliant implementations of Kubernetes and related uses in the following ways.
|
||||||
A compliant implementation is an implementation of the unmodified Cloud Native
|
A compliant implementation is an implementation of the unmodified Cloud Native
|
||||||
Compute Foundation (CNCF)
|
Compute Foundation (CNCF)
|
||||||
version of Kubernetes found at https://github.com/kubernetes/kubernetes and
|
version of Kubernetes found at https://github.com/kubernetes/kubernetes and
|
||||||
compatible branches thereof, together with published specifications, APIs and
|
compatible branches thereof, together with published specifications, APIs and
|
||||||
operational patterns. Acceptable related uses include display, modification,
|
operational patterns. Acceptable related uses include display, modification,
|
||||||
|
|
|
@ -61,7 +61,7 @@ var (
|
||||||
Reconciles rules for RBAC Role, RoleBinding, ClusterRole, and ClusterRole binding objects.
|
Reconciles rules for RBAC Role, RoleBinding, ClusterRole, and ClusterRole binding objects.
|
||||||
|
|
||||||
Missing objects are created, and the containing namespace is created for namespaced objects, if required.
|
Missing objects are created, and the containing namespace is created for namespaced objects, if required.
|
||||||
|
|
||||||
Existing roles are updated to include the permissions in the input objects,
|
Existing roles are updated to include the permissions in the input objects,
|
||||||
and remove extra permissions if --remove-extra-permissions is specified.
|
and remove extra permissions if --remove-extra-permissions is specified.
|
||||||
|
|
||||||
|
|
|
@ -48,7 +48,7 @@ var (
|
||||||
CONTEXT_NAME is the context name that you wish change.
|
CONTEXT_NAME is the context name that you wish change.
|
||||||
|
|
||||||
NEW_NAME is the new name you wish to set.
|
NEW_NAME is the new name you wish to set.
|
||||||
|
|
||||||
Note: In case the context being renamed is the 'current-context', this field will also be updated.`)
|
Note: In case the context being renamed is the 'current-context', this field will also be updated.`)
|
||||||
|
|
||||||
renameContextExample = templates.Examples(`
|
renameContextExample = templates.Examples(`
|
||||||
|
|
|
@ -47,7 +47,7 @@ var (
|
||||||
PROPERTY_NAME is a dot delimited name where each token represents either an attribute name or a map key. Map keys may not contain dots.
|
PROPERTY_NAME is a dot delimited name where each token represents either an attribute name or a map key. Map keys may not contain dots.
|
||||||
|
|
||||||
PROPERTY_VALUE is the new value you wish to set. Binary fields such as 'certificate-authority-data' expect a base64 encoded string unless the --set-raw-bytes flag is used.
|
PROPERTY_VALUE is the new value you wish to set. Binary fields such as 'certificate-authority-data' expect a base64 encoded string unless the --set-raw-bytes flag is used.
|
||||||
|
|
||||||
Specifying a attribute name that already exists will merge new fields on top of existing values.`)
|
Specifying a attribute name that already exists will merge new fields on top of existing values.`)
|
||||||
|
|
||||||
setExample = templates.Examples(`
|
setExample = templates.Examples(`
|
||||||
|
|
|
@ -153,7 +153,7 @@ var (
|
||||||
Drain node in preparation for maintenance.
|
Drain node in preparation for maintenance.
|
||||||
|
|
||||||
The given node will be marked unschedulable to prevent new pods from arriving.
|
The given node will be marked unschedulable to prevent new pods from arriving.
|
||||||
'drain' evicts the pods if the APIServer supports
|
'drain' evicts the pods if the APIServer supports
|
||||||
[eviction](http://kubernetes.io/docs/admin/disruptions/). Otherwise, it will use normal
|
[eviction](http://kubernetes.io/docs/admin/disruptions/). Otherwise, it will use normal
|
||||||
DELETE to delete the pods.
|
DELETE to delete the pods.
|
||||||
The 'drain' evicts or deletes all pods except mirror pods (which cannot be deleted through
|
The 'drain' evicts or deletes all pods except mirror pods (which cannot be deleted through
|
||||||
|
|
|
@ -44,7 +44,7 @@ Here are the general rules that Kubelet plugin developers should follow:
|
||||||
- The socket path needs to be unique within one directory, in normal case,
|
- The socket path needs to be unique within one directory, in normal case,
|
||||||
each plugin type has its own sub directory, but the design does support socket file
|
each plugin type has its own sub directory, but the design does support socket file
|
||||||
under any sub directory of PluginSockDir.
|
under any sub directory of PluginSockDir.
|
||||||
|
|
||||||
- A plugin should clean up its own socket upon exiting or when a new instance
|
- A plugin should clean up its own socket upon exiting or when a new instance
|
||||||
comes up. A plugin should NOT remove any sockets belonging to other plugins.
|
comes up. A plugin should NOT remove any sockets belonging to other plugins.
|
||||||
|
|
||||||
|
|
|
@ -4,5 +4,5 @@ approvers:
|
||||||
- sig-scheduling-maintainers
|
- sig-scheduling-maintainers
|
||||||
reviewers:
|
reviewers:
|
||||||
- sig-scheduling
|
- sig-scheduling
|
||||||
labels:
|
labels:
|
||||||
- sig/scheduling
|
- sig/scheduling
|
||||||
|
|
|
@ -9,4 +9,4 @@ reviewers:
|
||||||
- rootfs
|
- rootfs
|
||||||
- jingxu97
|
- jingxu97
|
||||||
- msau42
|
- msau42
|
||||||
- mtanino
|
- mtanino
|
||||||
|
|
|
@ -12,4 +12,4 @@ reviewers:
|
||||||
- humblec
|
- humblec
|
||||||
- jingxu97
|
- jingxu97
|
||||||
- msau42
|
- msau42
|
||||||
- mtanino
|
- mtanino
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/api](https://git.k8s.io/kubernetes/staging/src/k8s.io/api) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/api](https://git.k8s.io/kubernetes/staging/src/k8s.io/api) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/apiextensions-apiserver](https://git.k8s.io/kubernetes/staging/src/k8s.io/apiextensions-apiserver) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/apiextensions-apiserver](https://git.k8s.io/kubernetes/staging/src/k8s.io/apiextensions-apiserver) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -6,7 +6,7 @@ It provides an API for registering `CustomResourceDefinitions`.
|
||||||
|
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
This API server provides the implementation for `CustomResourceDefinitions` which is included as
|
This API server provides the implementation for `CustomResourceDefinitions` which is included as
|
||||||
delegate server inside of `kube-apiserver`.
|
delegate server inside of `kube-apiserver`.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -34,7 +34,7 @@ These act like most other Resources in Kubernetes, and may be `kubectl apply`'d,
|
||||||
Some example use cases:
|
Some example use cases:
|
||||||
|
|
||||||
* Provisioning/Management of external datastores/databases (eg. CloudSQL/RDS instances)
|
* Provisioning/Management of external datastores/databases (eg. CloudSQL/RDS instances)
|
||||||
* Higher level abstractions around Kubernetes primitives (eg. a single Resource to define an etcd cluster, backed by a Service and a ReplicationController)
|
* Higher level abstractions around Kubernetes primitives (eg. a single Resource to define an etcd cluster, backed by a Service and a ReplicationController)
|
||||||
|
|
||||||
## Defining types
|
## Defining types
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/apimachinery](https://git.k8s.io/kubernetes/staging/src/k8s.io/apimachinery) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/apimachinery](https://git.k8s.io/kubernetes/staging/src/k8s.io/apimachinery) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -5,7 +5,7 @@ Scheme, typing, encoding, decoding, and conversion packages for Kubernetes and K
|
||||||
|
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
This library is a shared dependency for servers and clients to work with Kubernetes API infrastructure without direct
|
This library is a shared dependency for servers and clients to work with Kubernetes API infrastructure without direct
|
||||||
type dependencies. Its first consumers are `k8s.io/kubernetes`, `k8s.io/client-go`, and `k8s.io/apiserver`.
|
type dependencies. Its first consumers are `k8s.io/kubernetes`, `k8s.io/client-go`, and `k8s.io/apiserver`.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -5,7 +5,7 @@ Generic library for building a Kubernetes aggregated API server.
|
||||||
|
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
This library contains code to create Kubernetes aggregation server complete with delegated authentication and authorization,
|
This library contains code to create Kubernetes aggregation server complete with delegated authentication and authorization,
|
||||||
`kubectl` compatible discovery information, optional admission chain, and versioned types. It's first consumers are
|
`kubectl` compatible discovery information, optional admission chain, and versioned types. It's first consumers are
|
||||||
`k8s.io/kubernetes`, `k8s.io/kube-aggregator`, and `github.com/kubernetes-incubator/service-catalog`.
|
`k8s.io/kubernetes`, `k8s.io/kube-aggregator`, and `github.com/kubernetes-incubator/service-catalog`.
|
||||||
|
|
||||||
|
|
|
@ -21,4 +21,4 @@ cfssl sign -ca root.pem -ca-key root-key.pem -config intermediate.config.json in
|
||||||
|
|
||||||
cfssl gencert -ca intermediate.pem -ca-key intermediate-key.pem -config client.config.json --profile=valid client.csr.json | cfssljson -bare client-valid
|
cfssl gencert -ca intermediate.pem -ca-key intermediate-key.pem -config client.config.json --profile=valid client.csr.json | cfssljson -bare client-valid
|
||||||
cfssl gencert -ca intermediate.pem -ca-key intermediate-key.pem -config client.config.json --profile=expired client.csr.json | cfssljson -bare client-expired
|
cfssl gencert -ca intermediate.pem -ca-key intermediate-key.pem -config client.config.json --profile=expired client.csr.json | cfssljson -bare client-expired
|
||||||
|
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
# gencerts.sh generates the certificates for the webhook authz plugin tests.
|
# gencerts.sh generates the certificates for the webhook authz plugin tests.
|
||||||
#
|
#
|
||||||
# It is not expected to be run often (there is no go generate rule), and mainly
|
# It is not expected to be run often (there is no go generate rule), and mainly
|
||||||
# exists for documentation purposes.
|
# exists for documentation purposes.
|
||||||
|
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
Sorry, we do not accept changes directly against this repository, unless the
|
Sorry, we do not accept changes directly against this repository, unless the
|
||||||
change is to the `README.md` itself. Please see
|
change is to the `README.md` itself. Please see
|
||||||
`CONTRIBUTING.md` for information on where and how to contribute instead.
|
`CONTRIBUTING.md` for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/client-go](https://git.k8s.io/kubernetes/staging/src/k8s.io/client-go) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/client-go](https://git.k8s.io/kubernetes/staging/src/k8s.io/client-go) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -22,7 +22,7 @@ This plugin provides an integration with Azure Active Directory device flow. If
|
||||||
* Replace `TENANT_ID` with your tenant ID.
|
* Replace `TENANT_ID` with your tenant ID.
|
||||||
* For a list of alternative username claims that are supported by the OIDC issuer check the JSON response at `https://sts.windows.net/TENANT_ID/.well-known/openid-configuration`.
|
* For a list of alternative username claims that are supported by the OIDC issuer check the JSON response at `https://sts.windows.net/TENANT_ID/.well-known/openid-configuration`.
|
||||||
|
|
||||||
5. Configure `kubectl` to use the `azure` authentication provider
|
5. Configure `kubectl` to use the `azure` authentication provider
|
||||||
|
|
||||||
```
|
```
|
||||||
kubectl config set-credentials "USER_NAME" --auth-provider=azure \
|
kubectl config set-credentials "USER_NAME" --auth-provider=azure \
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/code-generator](https://git.k8s.io/kubernetes/staging/src/k8s.io/code-generator) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/code-generator](https://git.k8s.io/kubernetes/staging/src/k8s.io/code-generator) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -152,7 +152,7 @@ func NewSharedInformerFactory(client {{.clientSetInterface|raw}}, defaultResync
|
||||||
// as specified here.
|
// as specified here.
|
||||||
// Deprecated: Please use NewSharedInformerFactoryWithOptions instead
|
// Deprecated: Please use NewSharedInformerFactoryWithOptions instead
|
||||||
func NewFilteredSharedInformerFactory(client {{.clientSetInterface|raw}}, defaultResync {{.timeDuration|raw}}, namespace string, tweakListOptions {{.interfacesTweakListOptionsFunc|raw}}) SharedInformerFactory {
|
func NewFilteredSharedInformerFactory(client {{.clientSetInterface|raw}}, defaultResync {{.timeDuration|raw}}, namespace string, tweakListOptions {{.interfacesTweakListOptionsFunc|raw}}) SharedInformerFactory {
|
||||||
return NewSharedInformerFactoryWithOptions(client, defaultResync, WithNamespace(namespace), WithTweakListOptions(tweakListOptions))
|
return NewSharedInformerFactoryWithOptions(client, defaultResync, WithNamespace(namespace), WithTweakListOptions(tweakListOptions))
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewSharedInformerFactoryWithOptions constructs a new instance of a SharedInformerFactory with additional options.
|
// NewSharedInformerFactoryWithOptions constructs a new instance of a SharedInformerFactory with additional options.
|
||||||
|
@ -165,7 +165,7 @@ func NewSharedInformerFactoryWithOptions(client {{.clientSetInterface|raw}}, def
|
||||||
startedInformers: make(map[{{.reflectType|raw}}]bool),
|
startedInformers: make(map[{{.reflectType|raw}}]bool),
|
||||||
customResync: make(map[{{.reflectType|raw}}]{{.timeDuration|raw}}),
|
customResync: make(map[{{.reflectType|raw}}]{{.timeDuration|raw}}),
|
||||||
}
|
}
|
||||||
|
|
||||||
// Apply all options
|
// Apply all options
|
||||||
for _, opt := range options {
|
for _, opt := range options {
|
||||||
factory = opt(factory)
|
factory = opt(factory)
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -6,7 +6,7 @@ reviewers:
|
||||||
- msau42
|
- msau42
|
||||||
- ddebroy
|
- ddebroy
|
||||||
- leakingtapan
|
- leakingtapan
|
||||||
|
|
||||||
approvers:
|
approvers:
|
||||||
- davidz627
|
- davidz627
|
||||||
- saad-ali
|
- saad-ali
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
This repository contains functions to be consumed by various Kubernetes and
|
This repository contains functions to be consumed by various Kubernetes and
|
||||||
out-of-tree CSI components like external provisioner to facilitate migration of
|
out-of-tree CSI components like external provisioner to facilitate migration of
|
||||||
code from Kubernetes In-tree plugin code to CSI plugin repositories.
|
code from Kubernetes In-tree plugin code to CSI plugin repositories.
|
||||||
|
|
||||||
Consumers of this repository can make use of functions like `TranslateToCSI` and
|
Consumers of this repository can make use of functions like `TranslateToCSI` and
|
||||||
`TranslateToInTree` functions to translate PV sources.
|
`TranslateToInTree` functions to translate PV sources.
|
||||||
|
|
||||||
## Community, discussion, contribution, and support
|
## Community, discussion, contribution, and support
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/kube-aggregator](https://git.k8s.io/kubernetes/staging/src/k8s.io/kube-aggregator) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/kube-aggregator](https://git.k8s.io/kubernetes/staging/src/k8s.io/kube-aggregator) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/metrics](https://git.k8s.io/kubernetes/staging/src/k8s.io/metrics) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/metrics](https://git.k8s.io/kubernetes/staging/src/k8s.io/metrics) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
Do not open pull requests directly against this repository, they will be ignored. Instead, please open pull requests against [kubernetes/kubernetes](https://git.k8s.io/kubernetes/). Please follow the same [contributing guide](https://git.k8s.io/kubernetes/CONTRIBUTING.md) you would follow for any other pull request made to kubernetes/kubernetes.
|
||||||
|
|
||||||
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/sample-apiserver](https://git.k8s.io/kubernetes/staging/src/k8s.io/sample-apiserver) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
This repository is published from [kubernetes/kubernetes/staging/src/k8s.io/sample-apiserver](https://git.k8s.io/kubernetes/staging/src/k8s.io/sample-apiserver) by the [kubernetes publishing-bot](https://git.k8s.io/publishing-bot).
|
||||||
|
|
||||||
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
Please see [Staging Directory and Publishing](https://git.k8s.io/community/contributors/devel/sig-architecture/staging.md) for more information
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
Sorry, we do not accept changes directly against this repository. Please see
|
Sorry, we do not accept changes directly against this repository. Please see
|
||||||
CONTRIBUTING.md for information on where and how to contribute instead.
|
CONTRIBUTING.md for information on where and how to contribute instead.
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue