openshift-cli-set-route-backends man page

openshift cli set route-backends — Update the backends for a route


openshift cli set route-backends [Options]


Set and adjust route backends

Routes may have one or more optional backend services with weights controlling how much traffic flows to each service. Traffic is assigned proportional to the combined weights of each backend. A weight of zero means that the backend will receive no traffic. If all weights are zero the route will not send traffic to any backends.

When setting backends, the first backend is the primary and the other backends are considered alternates. For example:

$ openshift cli set route-backends web prod=99 canary=1

will set the primary backend to service "prod" with a weight of 99 and the first alternate backend to service "canary" with a weight of 1. This means 99% of traffic will be sent to the service "prod".

The --adjust flag allows you to alter the weight of an individual service relative to itself or to the primary backend. Specifying a percentage will adjust the backend relative to either the primary or the first alternate (if you specify the primary). If there are other backends their weights will be kept proportional to the changed.

Not all routers may support multiple or weighted backends.



Adjust a single backend using an absolute or relative weight. If the primary backend is selected and there is more than one alternate an error will be returned.


If true, select all resources in the namespace of the specified resource types


If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.


If true, only print the object that would be sent, without sending it.


If true, set the weight of all backends to 100.

-f, --filename=[]

Filename, directory, or URL to file to use to edit the resource.


If true, set image will NOT contact api-server but run locally.


When using the default or custom-column output format, don't print headers (default print headers).

-o, --output=""

Output format. One of: json|yaml|wide|name|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=... See custom columns [ ⟨⟩], golang template [ ⟨⟩] and jsonpath template [ ⟨⟩].

-l, --selector=""

Selector (label query) to filter on

-a, --show-all=true

When printing, show all resources (false means hide terminated pods.)


When printing, show all labels as the last column (default hide labels column)


If non-empty, sort list types using this field specification.  The field specification is expressed as a JSONPath expression (e.g. '{}'). The field in the API resource specified by this JSONPath expression must be an integer or a string.


Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [ ⟨⟩].


If true, set the weight of all backends to zero.

Options Inherited from Parent Commands


DEPRECATED: The API version to use when talking to the server


Username to impersonate for the operation


Path to the file container Azure container registry configuration information.


Path to a cert. file for the certificate authority


Path to a client certificate file for TLS


Path to a client key file for TLS


The name of the kubeconfig cluster to use


Path to the config file to use for CLI requests.


The name of the kubeconfig context to use


The Google Cloud Platform Service Account JSON Key to use for authentication.


If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure


Maximum number of seconds between log flushes


Require server version to match client version

-n, --namespace=""

If present, the namespace scope for this CLI request


The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests.


The address and port of the Kubernetes API server


Bearer token for authentication to the API server


The name of the kubeconfig user to use


  # Print the backends on the route 'web'
  openshift cli set route-backends web
  # Set two backend services on route 'web' with 2/3rds of traffic going to 'a'
  openshift cli set route-backends web a=2 b=1
  # Increase the traffic percentage going to b by 10% relative to a
  openshift cli set route-backends web --adjust b=+10%
  # Set traffic percentage going to b to 10% of the traffic going to a
  openshift cli set route-backends web --adjust b=10%
  # Set weight of b to 10
  openshift cli set route-backends web --adjust b=10
  # Set the weight to all backends to zero
  openshift cli set route-backends web --zero

See Also



June 2016, Ported from the Kubernetes man-doc generator

Referenced By


Openshift CLI User Manuals June 2016