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