mirror of https://github.com/k3s-io/k3s
108 lines
4.1 KiB
Markdown
108 lines
4.1 KiB
Markdown
![]() |
<!-- BEGIN MUNGE: UNVERSIONED_WARNING -->
|
||
|
|
||
|
<!-- BEGIN STRIP_FOR_RELEASE -->
|
||
|
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
<img src="http://kubernetes.io/img/warning.png" alt="WARNING"
|
||
|
width="25" height="25">
|
||
|
|
||
|
<h2>PLEASE NOTE: This document applies to the HEAD of the source tree</h2>
|
||
|
|
||
|
If you are using a released version of Kubernetes, you should
|
||
|
refer to the docs that go with that version.
|
||
|
|
||
|
Documentation for other releases can be found at
|
||
|
[releases.k8s.io](http://releases.k8s.io).
|
||
|
</strong>
|
||
|
--
|
||
|
|
||
|
<!-- END STRIP_FOR_RELEASE -->
|
||
|
|
||
|
<!-- END MUNGE: UNVERSIONED_WARNING -->
|
||
|
|
||
|
## kubectl drain
|
||
|
|
||
|
Drain node in preparation for maintenance
|
||
|
|
||
|
### Synopsis
|
||
|
|
||
|
|
||
|
Drain node in preparation for maintenance.
|
||
|
|
||
|
The given node will be marked unschedulable to prevent new pods from arriving.
|
||
|
Then drain deletes all pods except mirror pods (which cannot be deleted through
|
||
|
the API server). If there are any pods that are neither mirror pods nor
|
||
|
managed by a ReplicationController or DaemonSet, then drain will not delete any
|
||
|
pods unless you use --force.
|
||
|
|
||
|
When you are ready to put the node back into service, use kubectl uncordon, which
|
||
|
will make the node schedulable again.
|
||
|
|
||
|
|
||
|
```
|
||
|
kubectl drain NODE
|
||
|
```
|
||
|
|
||
|
### Examples
|
||
|
|
||
|
```
|
||
|
# Drain node "foo", even if there are pods not managed by a ReplicationController or DaemonSet on it.
|
||
|
$ kubectl drain foo --force
|
||
|
|
||
|
# As above, but abort if there are pods not managed by a ReplicationController or DaemonSet, and use a grace period of 15 minutes.
|
||
|
$ kubectl drain foo --grace-period=900
|
||
|
|
||
|
```
|
||
|
|
||
|
### Options
|
||
|
|
||
|
```
|
||
|
--force[=false]: Continue even if there are pods not managed by a ReplicationController or DaemonSet.
|
||
|
--grace-period=-1: Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used.
|
||
|
```
|
||
|
|
||
|
### Options inherited from parent commands
|
||
|
|
||
|
```
|
||
|
--alsologtostderr[=false]: log to standard error as well as files
|
||
|
--api-version="": The API version to use when talking to the server
|
||
|
--certificate-authority="": Path to a cert. file for the certificate authority.
|
||
|
--client-certificate="": Path to a client certificate file for TLS.
|
||
|
--client-key="": Path to a client key file for TLS.
|
||
|
--cluster="": The name of the kubeconfig cluster to use
|
||
|
--context="": The name of the kubeconfig context to use
|
||
|
--insecure-skip-tls-verify[=false]: If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure.
|
||
|
--kubeconfig="": Path to the kubeconfig file to use for CLI requests.
|
||
|
--log-backtrace-at=:0: when logging hits line file:N, emit a stack trace
|
||
|
--log-dir="": If non-empty, write log files in this directory
|
||
|
--log-flush-frequency=5s: Maximum number of seconds between log flushes
|
||
|
--logtostderr[=true]: log to standard error instead of files
|
||
|
--match-server-version[=false]: Require server version to match client version
|
||
|
--namespace="": If present, the namespace scope for this CLI request.
|
||
|
--password="": Password for basic authentication to the API server.
|
||
|
-s, --server="": The address and port of the Kubernetes API server
|
||
|
--stderrthreshold=2: logs at or above this threshold go to stderr
|
||
|
--token="": Bearer token for authentication to the API server.
|
||
|
--user="": The name of the kubeconfig user to use
|
||
|
--username="": Username for basic authentication to the API server.
|
||
|
--v=0: log level for V logs
|
||
|
--vmodule=: comma-separated list of pattern=N settings for file-filtered logging
|
||
|
```
|
||
|
|
||
|
### SEE ALSO
|
||
|
|
||
|
* [kubectl](kubectl.md) - kubectl controls the Kubernetes cluster manager
|
||
|
|
||
|
###### Auto generated by spf13/cobra on 6-Jan-2016
|
||
|
|
||
|
<!-- BEGIN MUNGE: GENERATED_ANALYTICS -->
|
||
|
[![Analytics](https://kubernetes-site.appspot.com/UA-36037335-10/GitHub/docs/user-guide/kubectl/kubectl_drain.md?pixel)]()
|
||
|
<!-- END MUNGE: GENERATED_ANALYTICS -->
|