mirror of https://github.com/k3s-io/k3s
227 lines
6.0 KiB
Groff
227 lines
6.0 KiB
Groff
.TH "KUBERNETES" "1" " kubernetes User Manuals" "Eric Paris" "Jan 2015" ""
|
|
|
|
|
|
.SH NAME
|
|
.PP
|
|
kubectl expose \- Take a replicated application and expose it as Kubernetes Service
|
|
|
|
|
|
.SH SYNOPSIS
|
|
.PP
|
|
\fBkubectl expose\fP [OPTIONS]
|
|
|
|
|
|
.SH DESCRIPTION
|
|
.PP
|
|
Take a replicated application and expose it as Kubernetes Service.
|
|
|
|
.PP
|
|
Looks up a replication controller or service by name and uses the selector for that resource as the
|
|
selector for a new Service on the specified port. If no labels are specified, the new service will
|
|
re\-use the labels from the resource it exposes.
|
|
|
|
|
|
.SH OPTIONS
|
|
.PP
|
|
\fB\-\-container\-port\fP=""
|
|
Synonym for \-\-target\-port
|
|
|
|
.PP
|
|
\fB\-\-create\-external\-load\-balancer\fP=false
|
|
If true, create an external load balancer for this service (trumped by \-\-type). Implementation is cloud provider dependent. Default is 'false'.
|
|
|
|
.PP
|
|
\fB\-\-dry\-run\fP=false
|
|
If true, only print the object that would be sent, without creating it.
|
|
|
|
.PP
|
|
\fB\-\-generator\fP="service/v2"
|
|
The name of the API generator to use. There are 2 generators: 'service/v1' and 'service/v2'. The only difference between them is that service port in v1 is named 'default', while it is left unnamed in v2. Default is 'service/v2'.
|
|
|
|
.PP
|
|
\fB\-h\fP, \fB\-\-help\fP=false
|
|
help for expose
|
|
|
|
.PP
|
|
\fB\-l\fP, \fB\-\-labels\fP=""
|
|
Labels to apply to the service created by this call.
|
|
|
|
.PP
|
|
\fB\-\-name\fP=""
|
|
The name for the newly created object.
|
|
|
|
.PP
|
|
\fB\-\-no\-headers\fP=false
|
|
When using the default output, don't print headers.
|
|
|
|
.PP
|
|
\fB\-o\fP, \fB\-\-output\fP=""
|
|
Output format. One of: json|yaml|template|templatefile|wide.
|
|
|
|
.PP
|
|
\fB\-\-output\-version\fP=""
|
|
Output the formatted object with the given version (default api\-version).
|
|
|
|
.PP
|
|
\fB\-\-overrides\fP=""
|
|
An inline JSON override for the generated object. If this is non\-empty, it is used to override the generated object. Requires that the object supply a valid apiVersion field.
|
|
|
|
.PP
|
|
\fB\-\-port\fP=\-1
|
|
The port that the service should serve on. Copied from the resource being exposed, if unspecified
|
|
|
|
.PP
|
|
\fB\-\-protocol\fP="TCP"
|
|
The network protocol for the service to be created. Default is 'tcp'.
|
|
|
|
.PP
|
|
\fB\-\-public\-ip\fP=""
|
|
Name of a public IP address to set for the service. The service will be assigned this IP in addition to its generated service IP.
|
|
|
|
.PP
|
|
\fB\-\-selector\fP=""
|
|
A label selector to use for this service. If empty (the default) infer the selector from the replication controller.
|
|
|
|
.PP
|
|
\fB\-\-session\-affinity\fP=""
|
|
If non\-empty, set the session affinity for the service to this; legal values: 'None', 'ClientIP'
|
|
|
|
.PP
|
|
\fB\-\-target\-port\fP=""
|
|
Name or number for the port on the container that the service should direct traffic to. Optional.
|
|
|
|
.PP
|
|
\fB\-t\fP, \fB\-\-template\fP=""
|
|
Template string or path to template file to use when \-o=template or \-o=templatefile. The template format is golang templates [
|
|
\[la]http://golang.org/pkg/text/template/#pkg-overview\[ra]]
|
|
|
|
.PP
|
|
\fB\-\-type\fP=""
|
|
Type for this service: ClusterIP, NodePort, or LoadBalancer. Default is 'ClusterIP' unless \-\-create\-external\-load\-balancer is specified.
|
|
|
|
|
|
.SH OPTIONS INHERITED FROM PARENT COMMANDS
|
|
.PP
|
|
\fB\-\-alsologtostderr\fP=false
|
|
log to standard error as well as files
|
|
|
|
.PP
|
|
\fB\-\-api\-version\fP=""
|
|
The API version to use when talking to the server
|
|
|
|
.PP
|
|
\fB\-\-certificate\-authority\fP=""
|
|
Path to a cert. file for the certificate authority.
|
|
|
|
.PP
|
|
\fB\-\-client\-certificate\fP=""
|
|
Path to a client key file for TLS.
|
|
|
|
.PP
|
|
\fB\-\-client\-key\fP=""
|
|
Path to a client key file for TLS.
|
|
|
|
.PP
|
|
\fB\-\-cluster\fP=""
|
|
The name of the kubeconfig cluster to use
|
|
|
|
.PP
|
|
\fB\-\-context\fP=""
|
|
The name of the kubeconfig context to use
|
|
|
|
.PP
|
|
\fB\-\-insecure\-skip\-tls\-verify\fP=false
|
|
If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure.
|
|
|
|
.PP
|
|
\fB\-\-kubeconfig\fP=""
|
|
Path to the kubeconfig file to use for CLI requests.
|
|
|
|
.PP
|
|
\fB\-\-log\-backtrace\-at\fP=:0
|
|
when logging hits line file:N, emit a stack trace
|
|
|
|
.PP
|
|
\fB\-\-log\-dir\fP=""
|
|
If non\-empty, write log files in this directory
|
|
|
|
.PP
|
|
\fB\-\-log\-flush\-frequency\fP=5s
|
|
Maximum number of seconds between log flushes
|
|
|
|
.PP
|
|
\fB\-\-logtostderr\fP=true
|
|
log to standard error instead of files
|
|
|
|
.PP
|
|
\fB\-\-match\-server\-version\fP=false
|
|
Require server version to match client version
|
|
|
|
.PP
|
|
\fB\-\-namespace\fP=""
|
|
If present, the namespace scope for this CLI request.
|
|
|
|
.PP
|
|
\fB\-\-password\fP=""
|
|
Password for basic authentication to the API server.
|
|
|
|
.PP
|
|
\fB\-s\fP, \fB\-\-server\fP=""
|
|
The address and port of the Kubernetes API server
|
|
|
|
.PP
|
|
\fB\-\-stderrthreshold\fP=2
|
|
logs at or above this threshold go to stderr
|
|
|
|
.PP
|
|
\fB\-\-token\fP=""
|
|
Bearer token for authentication to the API server.
|
|
|
|
.PP
|
|
\fB\-\-user\fP=""
|
|
The name of the kubeconfig user to use
|
|
|
|
.PP
|
|
\fB\-\-username\fP=""
|
|
Username for basic authentication to the API server.
|
|
|
|
.PP
|
|
\fB\-\-v\fP=0
|
|
log level for V logs
|
|
|
|
.PP
|
|
\fB\-\-validate\fP=false
|
|
If true, use a schema to validate the input before sending it
|
|
|
|
.PP
|
|
\fB\-\-vmodule\fP=
|
|
comma\-separated list of pattern=N settings for file\-filtered logging
|
|
|
|
|
|
.SH EXAMPLE
|
|
.PP
|
|
.RS
|
|
|
|
.nf
|
|
// Creates a service for a replicated nginx, which serves on port 80 and connects to the containers on port 8000.
|
|
$ kubectl expose rc nginx \-\-port=80 \-\-target\-port=8000
|
|
|
|
// Creates a second service based on the above service, exposing the container port 8443 as port 443 with the name "nginx\-https"
|
|
$ kubectl expose service nginx \-\-port=443 \-\-target\-port=8443 \-\-name=nginx\-https
|
|
|
|
// Create a service for a replicated streaming application on port 4100 balancing UDP traffic and named 'video\-stream'.
|
|
$ kubectl expose rc streamer \-\-port=4100 \-\-protocol=udp \-\-name=video\-stream
|
|
|
|
.fi
|
|
.RE
|
|
|
|
|
|
.SH SEE ALSO
|
|
.PP
|
|
\fBkubectl(1)\fP,
|
|
|
|
|
|
.SH HISTORY
|
|
.PP
|
|
January 2015, Originally compiled by Eric Paris (eparis at redhat dot com) based on the kubernetes source material, but hopefully they have been automatically generated since!
|