oc-set-route-backends man page

oc set route-backends — Update the backends for a route

Synopsis

oc set route-backends [Options]

Description

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:

$ oc 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.

Options

--adjust=false
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.
--all=false
Select all resources in the namespace of the specified resource types
--equal=false
Set the weight of all backends to 100.
-f, --filename=[]
Filename, directory, or URL to file to use to edit the resource.
--no-headers=false
When using the default output, don't print headers.
-o, --output=""
Output format. One of: json|yaml|wide|name|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=... See golang template [ ⟨http://golang.org/pkg/text/template/#pk…⟩] and jsonpath template [ ⟨http://releases.k8s.io/release-1.3/docs…⟩].
--output-version=""
Output the formatted object with the given group version (for ex: 'extensions/v1beta1').
-l, --selector=""
Selector (label query) to filter on
-a, --show-all=true
When printing, show all resources (false means hide terminated pods.)
--show-labels=false
When printing, show all labels as the last column (default hide labels column)
--sort-by=""
If non-empty, sort list types using this field specification. The field specification is expressed as a JSONPath expression (e.g. '{.metadata.name}'). The field in the API resource specified by this JSONPath expression must be an integer or a string.
--template=""
Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [ ⟨http://golang.org/pkg/text/template/#pk…⟩].
--zero=false
Set the weight of all backends to zero.

Options Inherited from Parent Commands

--api-version=""
DEPRECATED: The API version to use when talking to the server

--as=""
Username to impersonate for the operation.

--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

--config=""
Path to the config file to use for CLI requests.

--context=""
The name of the kubeconfig context to use

--google-json-key=""
The Google Cloud Platform Service Account JSON Key to use for authentication.

--insecure-skip-tls-verify=false
If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure.

--log-flush-frequency=0
Maximum number of seconds between log flushes

--match-server-version=false
Require server version to match client version

-n, --namespace=""
If present, the namespace scope for this CLI request.

--server=""
The address and port of the Kubernetes API server

--token=""
Bearer token for authentication to the API server.

--user=""
The name of the kubeconfig user to use

Example

# Print the backends on the route 'web'
oc set route-backends web

# Set two backend services on route 'web' with 2/3rds of traffic going to 'a'
oc set route-backends web a=2 b=1

# Increase the traffic percentage going to b by 10% relative to a
oc set route-backends web --adjust b=+10%

# Set traffic percentage going to b to 10% of the traffic going to a
oc set route-backends web --adjust b=10%

# Set weight of b to 10
oc set route-backends web --adjust b=10

# Set the weight to all backends to zero
oc set route-backends web --zero

See Also

oc-set(1),

History

June 2016, Ported from the Kubernetes man-doc generator

Referenced By

oc-set(1).

Openshift CLI User Manuals Openshift June 2016