1KUBERNETES(1)(kubernetes)                            KUBERNETES(1)(kubernetes)
2
3
4
5Eric Paris Jan 2015
6
7

NAME

9       kubectl set resources - Update resource requests/limits on objects with
10       pod templates
11
12
13

SYNOPSIS

15       kubectl set resources [OPTIONS]
16
17
18

DESCRIPTION

20       Specify compute resource requirements (cpu, memory)  for  any  resource
21       that defines a pod template.  If a pod is successfully scheduled, it is
22       guaranteed the amount of resource requested, but may burst  up  to  its
23       specified limits.
24
25
26       for  each  compute  resource,  if a limit is specified and a request is
27       omitted, the request will default to the limit.
28
29
30       Possible resources include (case  insensitive):  Use  "kubectl  api-re‐
31       sources" for a complete list of supported resources..
32
33
34

OPTIONS

36       --all=false      Select all resources, including uninitialized ones, in
37       the namespace of the specified resource types
38
39
40       --allow-missing-template-keys=true      If true, ignore any  errors  in
41       templates  when a field or map key is missing in the template. Only ap‐
42       plies to golang and jsonpath output formats.
43
44
45       -c, --containers="*"      The names of containers in the  selected  pod
46       templates  to  change, all containers are selected by default - may use
47       wildcards
48
49
50       --dry-run="none"      Must be "none", "server", or "client". If  client
51       strategy, only print the object that would be sent, without sending it.
52       If server strategy, submit server-side request without  persisting  the
53       resource.
54
55
56       --field-manager="kubectl-set"       Name  of  the manager used to track
57       field ownership.
58
59
60       -f, --filename=[]      Filename, directory, or URL to files identifying
61       the resource to get from a server.
62
63
64       -k,  --kustomize=""      Process the kustomization directory. This flag
65       can't be used together with -f or -R.
66
67
68       --limits=""      The resource requirement requests for this  container.
69       For example, 'cpu=100m,memory=256Mi'.  Note that server side components
70       may assign requests depending on  the  server  configuration,  such  as
71       limit ranges.
72
73
74       --local=false       If  true, set resources will NOT contact api-server
75       but run locally.
76
77
78       -o, --output=""       Output  format.  One  of:  json|yaml|name|go-tem‐
79       plate|go-template-file|template|templatefile|jsonpath|json‐
80       path-as-json|jsonpath-file.
81
82
83       --record=false      Record current kubectl command in the resource  an‐
84       notation.  If  set to false, do not record the command. If set to true,
85       record the command. If not set, default to updating the existing  anno‐
86       tation value only if one already exists.
87
88
89       -R, --recursive=false      Process the directory used in -f, --filename
90       recursively. Useful when you want to manage related manifests organized
91       within the same directory.
92
93
94       --requests=""       The  resource  requirement  requests  for this con‐
95       tainer.  For example, 'cpu=100m,memory=256Mi'.  Note that  server  side
96       components  may  assign requests depending on the server configuration,
97       such as limit ranges.
98
99
100       -l, --selector=""      Selector (label query) to filter on, not includ‐
101       ing   uninitialized   ones,supports   '=',   '==',  and  '!='.(e.g.  -l
102       key1=value1,key2=value2)
103
104
105       --show-managed-fields=false      If true, keep the  managedFields  when
106       printing objects in JSON or YAML format.
107
108
109       --template=""      Template string or path to template file to use when
110       -o=go-template, -o=go-template-file. The template format is golang tem‐
111       plates [http://golang.org/pkg/text/template/#pkg-overview].
112
113
114

OPTIONS INHERITED FROM PARENT COMMANDS

116       --add-dir-header=false       If  true,  adds  the file directory to the
117       header of the log messages
118
119
120       --alsologtostderr=false      log to standard error as well as files
121
122
123       --application-metrics-count-limit=100      Max  number  of  application
124       metrics to store (per container)
125
126
127       --as=""      Username to impersonate for the operation
128
129
130       --as-group=[]       Group  to  impersonate for the operation, this flag
131       can be repeated to specify multiple groups.
132
133
134       --azure-container-registry-config=""      Path to the  file  containing
135       Azure container registry configuration information.
136
137
138       --boot-id-file="/proc/sys/kernel/random/boot_id"        Comma-separated
139       list of files to check for boot-id. Use the first one that exists.
140
141
142       --cache-dir="/builddir/.kube/cache"      Default cache directory
143
144
145       --certificate-authority=""      Path to a cert file for the certificate
146       authority
147
148
149       --client-certificate=""      Path to a client certificate file for TLS
150
151
152       --client-key=""      Path to a client key file for TLS
153
154
155       --cloud-provider-gce-l7lb-src-cidrs=130.211.0.0/22,35.191.0.0/16
156            CIDRs opened in GCE firewall for  L7  LB  traffic  proxy    health
157       checks
158
159
160       --cloud-provider-gce-lb-src-cidrs=130.211.0.0/22,209.85.152.0/22,209.85.204.0/22,35.191.0.0/16
161            CIDRs opened in GCE firewall for  L4  LB  traffic  proxy    health
162       checks
163
164
165       --cluster=""      The name of the kubeconfig cluster to use
166
167
168       --container-hints="/etc/cadvisor/container_hints.json"      location of
169       the container hints file
170
171
172       --containerd="/run/containerd/containerd.sock"      containerd endpoint
173
174
175       --containerd-namespace="k8s.io"      containerd namespace
176
177
178       --context=""      The name of the kubeconfig context to use
179
180
181       --default-not-ready-toleration-seconds=300      Indicates  the  tolera‐
182       tionSeconds  of  the toleration for notReady:NoExecute that is added by
183       default to every pod that does not already have such a toleration.
184
185
186       --default-unreachable-toleration-seconds=300      Indicates the tolera‐
187       tionSeconds  of  the toleration for unreachable:NoExecute that is added
188       by default to every pod that does not already have such a toleration.
189
190
191       --disable-root-cgroup-stats=false      Disable collecting  root  Cgroup
192       stats
193
194
195       --docker="unix:///var/run/docker.sock"      docker endpoint
196
197
198       --docker-env-metadata-whitelist=""      a comma-separated list of envi‐
199       ronment variable keys matched with specified prefix that  needs  to  be
200       collected for docker containers
201
202
203       --docker-only=false       Only  report docker containers in addition to
204       root stats
205
206
207       --docker-root="/var/lib/docker"      DEPRECATED: docker  root  is  read
208       from docker info (this is a fallback, default: /var/lib/docker)
209
210
211       --docker-tls=false      use TLS to connect to docker
212
213
214       --docker-tls-ca="ca.pem"      path to trusted CA
215
216
217       --docker-tls-cert="cert.pem"      path to client certificate
218
219
220       --docker-tls-key="key.pem"      path to private key
221
222
223       --enable-load-reader=false      Whether to enable cpu load reader
224
225
226       --event-storage-age-limit="default=0"      Max length of time for which
227       to store events (per type). Value is a comma separated list of key val‐
228       ues,  where the keys are event types (e.g.: creation, oom) or "default"
229       and the value is a duration. Default is applied  to  all  non-specified
230       event types
231
232
233       --event-storage-event-limit="default=0"       Max  number  of events to
234       store (per type). Value is a comma separated list of key values,  where
235       the  keys  are  event  types (e.g.: creation, oom) or "default" and the
236       value is an integer. Default is  applied  to  all  non-specified  event
237       types
238
239
240       --global-housekeeping-interval=1m0s      Interval between global house‐
241       keepings
242
243
244       --housekeeping-interval=10s      Interval between container  housekeep‐
245       ings
246
247
248       --insecure-skip-tls-verify=false      If true, the server's certificate
249       will not be checked for validity. This will make your HTTPS connections
250       insecure
251
252
253       --kubeconfig=""       Path  to  the  kubeconfig file to use for CLI re‐
254       quests.
255
256
257       --log-backtrace-at=:0      when logging hits line file:N, emit a  stack
258       trace
259
260
261       --log-cadvisor-usage=false       Whether to log the usage of the cAdvi‐
262       sor container
263
264
265       --log-dir=""      If non-empty, write log files in this directory
266
267
268       --log-file=""      If non-empty, use this log file
269
270
271       --log-file-max-size=1800      Defines the maximum size a log  file  can
272       grow to. Unit is megabytes. If the value is 0, the maximum file size is
273       unlimited.
274
275
276       --log-flush-frequency=5s      Maximum number  of  seconds  between  log
277       flushes
278
279
280       --logtostderr=true      log to standard error instead of files
281
282
283       --machine-id-file="/etc/machine-id,/var/lib/dbus/machine-id"
284            Comma-separated list of files to check  for  machine-id.  Use  the
285       first one that exists.
286
287
288       --match-server-version=false        Require  server  version  to  match
289       client version
290
291
292       -n, --namespace=""      If present, the namespace scope  for  this  CLI
293       request
294
295
296       --one-output=false      If true, only write logs to their native sever‐
297       ity level (vs also writing to each lower severity level)
298
299
300       --password=""      Password for basic authentication to the API server
301
302
303       --profile="none"        Name   of   profile   to   capture.   One    of
304       (none|cpu|heap|goroutine|threadcreate|block|mutex)
305
306
307       --profile-output="profile.pprof"       Name  of  the  file to write the
308       profile to
309
310
311       --referenced-reset-interval=0      Reset interval for referenced  bytes
312       (container_referenced_bytes metric), number of measurement cycles after
313       which referenced bytes are cleared, if set to 0  referenced  bytes  are
314       never cleared (default: 0)
315
316
317       --request-timeout="0"       The length of time to wait before giving up
318       on a single server request. Non-zero values  should  contain  a  corre‐
319       sponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't time‐
320       out requests.
321
322
323       -s, --server=""      The address and port of the Kubernetes API server
324
325
326       --skip-headers=false      If true, avoid header  prefixes  in  the  log
327       messages
328
329
330       --skip-log-headers=false       If  true, avoid headers when opening log
331       files
332
333
334       --stderrthreshold=2      logs at or above this threshold go to stderr
335
336
337       --storage-driver-buffer-duration=1m0s      Writes in the storage driver
338       will  be  buffered  for  this duration, and committed to the non memory
339       backends as a single transaction
340
341
342       --storage-driver-db="cadvisor"      database name
343
344
345       --storage-driver-host="localhost:8086"      database host:port
346
347
348       --storage-driver-password="root"      database password
349
350
351       --storage-driver-secure=false      use secure connection with database
352
353
354       --storage-driver-table="stats"      table name
355
356
357       --storage-driver-user="root"      database username
358
359
360       --tls-server-name=""      Server name to  use  for  server  certificate
361       validation.  If  it  is  not provided, the hostname used to contact the
362       server is used
363
364
365       --token=""      Bearer token for authentication to the API server
366
367
368       --update-machine-info-interval=5m0s      Interval between machine  info
369       updates.
370
371
372       --user=""      The name of the kubeconfig user to use
373
374
375       --username=""      Username for basic authentication to the API server
376
377
378       -v, --v=0      number for the log level verbosity
379
380
381       --version=false      Print version information and quit
382
383
384       --vmodule=        comma-separated   list   of  pattern=N  settings  for
385       file-filtered logging
386
387
388       --warnings-as-errors=false      Treat warnings received from the server
389       as errors and exit with a non-zero exit code
390
391
392

EXAMPLE

394                # Set a deployments nginx container cpu limits to "200m" and memory to "512Mi"
395                kubectl set resources deployment nginx -c=nginx --limits=cpu=200m,memory=512Mi
396
397                # Set the resource request and limits for all containers in nginx
398                kubectl set resources deployment nginx --limits=cpu=200m,memory=512Mi --requests=cpu=100m,memory=256Mi
399
400                # Remove the resource requests for resources on containers in nginx
401                kubectl set resources deployment nginx --limits=cpu=0,memory=0 --requests=cpu=0,memory=0
402
403                # Print the result (in yaml format) of updating nginx container limits from a local, without hitting the server
404                kubectl set resources -f path/to/file.yaml --limits=cpu=200m,memory=512Mi --local -o yaml
405
406
407
408

SEE ALSO

410       kubectl-set(1),
411
412
413

HISTORY

415       January  2015,  Originally compiled by Eric Paris (eparis at redhat dot
416       com) based on the kubernetes source material, but hopefully  they  have
417       been automatically generated since!
418
419
420
421Manuals                              User            KUBERNETES(1)(kubernetes)
Impressum