Resolving merge conflicts with master
This commit is contained in:
@@ -30,6 +30,8 @@ Machinery](https://github.com/kubernetes/community/tree/master/sig-api-machinery
|
||||
|----------|----------------|-----------------|
|
||||
| Go | [github.com/kubernetes/client-go/](https://github.com/kubernetes/client-go/) | [browse](https://github.com/kubernetes/client-go/tree/master/examples)
|
||||
| Python | [github.com/kubernetes-incubator/client-python/](https://github.com/kubernetes-incubator/client-python/) | [browse](https://github.com/kubernetes-incubator/client-python/tree/master/examples)
|
||||
| Java | [github.com/kubernetes-client/java](https://github.com/kubernetes-client/java/) | [browse](https://github.com/kubernetes-client/java#installation)
|
||||
| dotnet | [github.com/kubernetes-client/csharp](https://github.com/kubernetes-client/csharp) | [browse](https://github.com/kubernetes-client/csharp/tree/master/examples/simple)
|
||||
|
||||
## Community-maintained client libraries
|
||||
|
||||
@@ -42,6 +44,7 @@ their authors, not the Kubernetes team.
|
||||
| Go | [github.com/ericchiang/k8s](https://github.com/ericchiang/k8s) |
|
||||
| Java (OSGi) | [bitbucket.org/amdatulabs/amdatu-kubernetes](https://bitbucket.org/amdatulabs/amdatu-kubernetes) |
|
||||
| Java (Fabric8, OSGi) | [github.com/fabric8io/kubernetes-client](https://github.com/fabric8io/kubernetes-client) |
|
||||
| Lisp | [github.com/brendandburns/cl-k8s](https://github.com/brendandburns/cl-k8s) |
|
||||
| Node.js (TypeScript) | [github.com/Goyoo/node-k8s-client](https://github.com/Goyoo/node-k8s-client) |
|
||||
| Node.js | [github.com/tenxcloud/node-kubernetes-client](https://github.com/tenxcloud/node-kubernetes-client) |
|
||||
| Node.js | [github.com/godaddy/kubernetes-client](https://github.com/godaddy/kubernetes-client) |
|
||||
@@ -53,6 +56,7 @@ their authors, not the Kubernetes team.
|
||||
| Ruby | [github.com/Ch00k/kuber](https://github.com/Ch00k/kuber) |
|
||||
| Ruby | [github.com/abonas/kubeclient](https://github.com/abonas/kubeclient) |
|
||||
| Scala | [github.com/doriordan/skuber](https://github.com/doriordan/skuber) |
|
||||
| dotNet | [https://github.com/tonnyeremin/kubernetes_gen](https://github.com/tonnyeremin/kubernetes_gen)
|
||||
{% endcapture %}
|
||||
|
||||
{% include templates/concept.md %}
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
All files in this directory are auto-generated from other repos. **Do not edit them manually. You must edit them in their upstream repo.**
|
||||
@@ -0,0 +1,83 @@
|
||||
---
|
||||
title: cloud-controller-manager
|
||||
notitle: true
|
||||
---
|
||||
## cloud-controller-manager
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The Cloud controller manager is a daemon that embeds
|
||||
the cloud specific control loops shipped with Kubernetes.
|
||||
|
||||
```
|
||||
cloud-controller-manager
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--address ip The IP address to serve on (set to 0.0.0.0 for all interfaces). (default 0.0.0.0)
|
||||
--allocate-node-cidrs Should CIDRs for Pods be allocated and set on the cloud provider.
|
||||
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
|
||||
--cloud-config string The path to the cloud provider configuration file. Empty string for no configuration file.
|
||||
--cloud-provider string The provider of cloud services. Cannot be empty.
|
||||
--cluster-cidr string CIDR Range for Pods in cluster.
|
||||
--cluster-name string The instance prefix for the cluster. (default "kubernetes")
|
||||
--configure-cloud-routes Should CIDRs allocated by allocate-node-cidrs be configured on the cloud provider. (default true)
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled.
|
||||
--controller-start-interval duration Interval between starting controller managers.
|
||||
--feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--google-json-key string The Google Cloud Platform Service Account JSON Key to use for authentication.
|
||||
--kube-api-burst int32 Burst to use while talking with kubernetes apiserver. (default 30)
|
||||
--kube-api-content-type string Content type of requests sent to apiserver. (default "application/vnd.kubernetes.protobuf")
|
||||
--kube-api-qps float32 QPS to use while talking with kubernetes apiserver. (default 20)
|
||||
--kubeconfig string Path to kubeconfig file with authorization and master location information.
|
||||
--leader-elect Start a leader election client and gain leadership before executing the main loop. Enable this when running replicated components for high availability. (default true)
|
||||
--leader-elect-lease-duration duration The duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot. This is effectively the maximum duration that a leader can be stopped before it is replaced by another candidate. This is only applicable if leader election is enabled. (default 15s)
|
||||
--leader-elect-renew-deadline duration The interval between attempts by the acting master to renew a leadership slot before it stops leading. This must be less than or equal to the lease duration. This is only applicable if leader election is enabled. (default 10s)
|
||||
--leader-elect-resource-lock endpoints The type of resource object that is used for locking during leader election. Supported options are endpoints (default) and `configmap`. (default "endpoints")
|
||||
--leader-elect-retry-period duration The duration the clients should wait between attempting acquisition and renewal of a leadership. This is only applicable if leader election is enabled. (default 2s)
|
||||
--master string The address of the Kubernetes API server (overrides any value in kubeconfig).
|
||||
--min-resync-period duration The resync period in reflectors will be random between MinResyncPeriod and 2*MinResyncPeriod. (default 12h0m0s)
|
||||
--node-monitor-period duration The period for syncing NodeStatus in NodeController. (default 5s)
|
||||
--node-status-update-frequency duration Specifies how often the controller updates nodes' status. (default 5m0s)
|
||||
--port int32 The port that the cloud-controller-manager's http service runs on. (default 10253)
|
||||
--profiling Enable profiling via web interface host:port/debug/pprof/. (default true)
|
||||
--route-reconciliation-period duration The period for reconciling routes created for Nodes by cloud provider.
|
||||
--use-service-account-credentials If true, use individual service account credentials for each controller.
|
||||
--version version[=true] Print version information and quit
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,137 @@
|
||||
---
|
||||
title: federation-apiserver
|
||||
notitle: true
|
||||
---
|
||||
## federation-apiserver
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The Kubernetes federation API server validates and configures data
|
||||
for the api objects which include pods, services, replicationcontrollers, and
|
||||
others. The API Server services REST operations and provides the frontend to the
|
||||
cluster's shared state through which all other components interact.
|
||||
|
||||
```
|
||||
federation-apiserver
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--admission-control stringSlice Ordered list of plug-ins to do admission control of resources into cluster. Comma-delimited list of: NamespaceLifecycle. (default [AlwaysAdmit])
|
||||
--admission-control-config-file string File with admission control configuration.
|
||||
--advertise-address ip The IP address on which to advertise the apiserver to members of the cluster. This address must be reachable by the rest of the cluster. If blank, the --bind-address will be used. If --bind-address is unspecified, the host's default interface will be used.
|
||||
--anonymous-auth Enables anonymous requests to the secure port of the API server. Requests that are not rejected by another authentication method are treated as anonymous requests. Anonymous requests have a username of system:anonymous, and a group name of system:unauthenticated. (default true)
|
||||
--audit-log-format string Format of saved audits. "legacy" indicates 1-line text format for each event. "json" indicates structured json format. Requires the 'AdvancedAuditing' feature gate. Known formats are legacy,json. (default "json")
|
||||
--audit-log-maxage int The maximum number of days to retain old audit log files based on the timestamp encoded in their filename.
|
||||
--audit-log-maxbackup int The maximum number of old audit log files to retain.
|
||||
--audit-log-maxsize int The maximum size in megabytes of the audit log file before it gets rotated.
|
||||
--audit-log-path string If set, all requests coming to the apiserver will be logged to this file. '-' means standard out.
|
||||
--audit-policy-file string Path to the file that defines the audit policy configuration. Requires the 'AdvancedAuditing' feature gate. With AdvancedAuditing, a profile is required to enable auditing.
|
||||
--audit-webhook-config-file string Path to a kubeconfig formatted file that defines the audit webhook configuration. Requires the 'AdvancedAuditing' feature gate.
|
||||
--audit-webhook-mode string Strategy for sending audit events. Blocking indicates sending events should block server responses. Batch causes the webhook to buffer and send events asynchronously. Known modes are batch,blocking. (default "batch")
|
||||
--authentication-token-webhook-cache-ttl duration The duration to cache responses from the webhook token authenticator. (default 2m0s)
|
||||
--authentication-token-webhook-config-file string File with webhook configuration for token authentication in kubeconfig format. The API server will query the remote service to determine authentication for bearer tokens.
|
||||
--authorization-mode string Ordered list of plug-ins to do authorization on secure port. Comma-delimited list of: AlwaysAllow,AlwaysDeny,ABAC,Webhook,RBAC,Node. (default "AlwaysAllow")
|
||||
--authorization-policy-file string File with authorization policy in csv format, used with --authorization-mode=ABAC, on the secure port.
|
||||
--authorization-webhook-cache-authorized-ttl duration The duration to cache 'authorized' responses from the webhook authorizer. (default 5m0s)
|
||||
--authorization-webhook-cache-unauthorized-ttl duration The duration to cache 'unauthorized' responses from the webhook authorizer. (default 30s)
|
||||
--authorization-webhook-config-file string File with webhook configuration in kubeconfig format, used with --authorization-mode=Webhook. The API server will query the remote service to determine access on the API server's secure port.
|
||||
--basic-auth-file string If set, the file that will be used to admit requests to the secure port of the API server via http basic authentication.
|
||||
--bind-address ip The IP address on which to listen for the --secure-port port. The associated interface(s) must be reachable by the rest of the cluster, and by CLI/web clients. If blank, all interfaces will be used (0.0.0.0). (default 0.0.0.0)
|
||||
--cert-dir string The directory where the TLS certs are located. If --tls-cert-file and --tls-private-key-file are provided, this flag will be ignored. (default "/var/run/kubernetes")
|
||||
--client-ca-file string If set, any request presenting a client certificate signed by one of the authorities in the client-ca-file is authenticated with an identity corresponding to the CommonName of the client certificate.
|
||||
--cloud-config string The path to the cloud provider configuration file. Empty string for no configuration file.
|
||||
--cloud-provider string The provider for cloud services. Empty string for no provider.
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled
|
||||
--cors-allowed-origins stringSlice List of allowed origins for CORS, comma separated. An allowed origin can be a regular expression to support subdomain matching. If this list is empty CORS will not be enabled.
|
||||
--default-watch-cache-size int Default watch cache size. If zero, watch cache will be disabled for resources that do not have a default watch size set. (default 100)
|
||||
--delete-collection-workers int Number of workers spawned for DeleteCollection call. These are used to speed up namespace cleanup. (default 1)
|
||||
--deserialization-cache-size int Number of deserialized json objects to cache in memory.
|
||||
--enable-bootstrap-token-auth Enable to allow secrets of type 'bootstrap.kubernetes.io/token' in the 'kube-system' namespace to be used for TLS bootstrapping authentication.
|
||||
--enable-garbage-collector Enables the generic garbage collector. MUST be synced with the corresponding flag of the kube-controller-manager. (default true)
|
||||
--enable-swagger-ui Enables swagger ui on the apiserver at /swagger-ui
|
||||
--etcd-cafile string SSL Certificate Authority file used to secure etcd communication.
|
||||
--etcd-certfile string SSL certification file used to secure etcd communication.
|
||||
--etcd-keyfile string SSL key file used to secure etcd communication.
|
||||
--etcd-prefix string The prefix to prepend to all resource paths in etcd. (default "/registry")
|
||||
--etcd-quorum-read If true, enable quorum read.
|
||||
--etcd-servers stringSlice List of etcd servers to connect with (scheme://ip:port), comma separated.
|
||||
--etcd-servers-overrides stringSlice Per-resource etcd servers overrides, comma separated. The individual override format: group/resource#servers, where servers are http://ip:port, semicolon separated.
|
||||
--event-ttl duration Amount of time to retain events. (default 1h0m0s)
|
||||
--experimental-encryption-provider-config string The file containing configuration for encryption providers to be used for storing secrets in etcd
|
||||
--experimental-keystone-ca-file string If set, the Keystone server's certificate will be verified by one of the authorities in the experimental-keystone-ca-file, otherwise the host's root CA set will be used.
|
||||
--experimental-keystone-url string If passed, activates the keystone authentication plugin.
|
||||
--external-hostname string The hostname to use when generating externalized URLs for this master (e.g. Swagger API Docs).
|
||||
--feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--insecure-bind-address ip The IP address on which to serve the --insecure-port (set to 0.0.0.0 for all interfaces). (default 127.0.0.1)
|
||||
--insecure-port int The port on which to serve unsecured, unauthenticated access. It is assumed that firewall rules are set up such that this port is not reachable from outside of the cluster and that port 443 on the cluster's public address is proxied to this port. This is performed by nginx in the default setup. (default 8080)
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--master-service-namespace string DEPRECATED: the namespace from which the kubernetes master services should be injected into pods. (default "default")
|
||||
--max-mutating-requests-inflight int The maximum number of mutating requests in flight at a given time. When the server exceeds this, it rejects requests. Zero for no limit. (default 200)
|
||||
--max-requests-inflight int The maximum number of non-mutating requests in flight at a given time. When the server exceeds this, it rejects requests. Zero for no limit. (default 400)
|
||||
--min-request-timeout int An optional field indicating the minimum number of seconds a handler must keep a request open before timing it out. Currently only honored by the watch request handler, which picks a randomized value above this number as the connection timeout, to spread out load. (default 1800)
|
||||
--oidc-ca-file string If set, the OpenID server's certificate will be verified by one of the authorities in the oidc-ca-file, otherwise the host's root CA set will be used.
|
||||
--oidc-client-id string The client ID for the OpenID Connect client, must be set if oidc-issuer-url is set.
|
||||
--oidc-groups-claim string If provided, the name of a custom OpenID Connect claim for specifying user groups. The claim value is expected to be a string or array of strings. This flag is experimental, please see the authentication documentation for further details.
|
||||
--oidc-groups-prefix string If provided, all groups will be prefixed with this value to prevent conflicts with other authentication strategies.
|
||||
--oidc-issuer-url string The URL of the OpenID issuer, only HTTPS scheme will be accepted. If set, it will be used to verify the OIDC JSON Web Token (JWT).
|
||||
--oidc-username-claim string The OpenID claim to use as the user name. Note that claims other than the default ('sub') is not guaranteed to be unique and immutable. This flag is experimental, please see the authentication documentation for further details. (default "sub")
|
||||
--oidc-username-prefix string If provided, all usernames will be prefixed with this value. If not provided, username claims other than 'email' are prefixed by the issuer URL to avoid clashes. To skip any prefixing, provide the value '-'.
|
||||
--profiling Enable profiling via web interface host:port/debug/pprof/ (default true)
|
||||
--request-timeout duration An optional field indicating the duration a handler must keep a request open before timing it out. This is the default request timeout for requests but may be overridden by flags such as --min-request-timeout for specific types of requests. (default 1m0s)
|
||||
--requestheader-allowed-names stringSlice List of client certificate common names to allow to provide usernames in headers specified by --requestheader-username-headers. If empty, any client certificate validated by the authorities in --requestheader-client-ca-file is allowed.
|
||||
--requestheader-client-ca-file string Root certificate bundle to use to verify client certificates on incoming requests before trusting usernames in headers specified by --requestheader-username-headers
|
||||
--requestheader-extra-headers-prefix stringSlice List of request header prefixes to inspect. X-Remote-Extra- is suggested.
|
||||
--requestheader-group-headers stringSlice List of request headers to inspect for groups. X-Remote-Group is suggested.
|
||||
--requestheader-username-headers stringSlice List of request headers to inspect for usernames. X-Remote-User is common.
|
||||
--runtime-config mapStringString A set of key=value pairs that describe runtime configuration that may be passed to apiserver. apis/<groupVersion> key can be used to turn on/off specific api versions. apis/<groupVersion>/<resource> can be used to turn on/off specific resources. api/all and api/legacy are special keys to control all and legacy api versions respectively.
|
||||
--secure-port int The port on which to serve HTTPS with authentication and authorization. If 0, don't serve HTTPS at all. (default 6443)
|
||||
--service-account-key-file stringArray File containing PEM-encoded x509 RSA or ECDSA private or public keys, used to verify ServiceAccount tokens. If unspecified, --tls-private-key-file is used. The specified file can contain multiple keys, and the flag can be specified multiple times with different files.
|
||||
--service-account-lookup If true, validate ServiceAccount tokens exist in etcd as part of authentication. (default true)
|
||||
--storage-backend string The storage backend for persistence. Options: 'etcd3' (default), 'etcd2'.
|
||||
--storage-media-type string The media type to use to store objects in storage. Some resources or storage backends may only support a specific media type and will ignore this setting. (default "application/vnd.kubernetes.protobuf")
|
||||
--storage-versions string The per-group version to store resources in. Specified in the format "group1/version1,group2/version2,...". In the case where objects are moved from one group to the other, you may specify the format "group1=group2/v1beta1,group3/v1beta1,...". You only need to pass the groups you wish to change from the defaults. It defaults to a list of preferred versions of all registered groups, which is derived from the KUBE_API_VERSIONS environment variable. (default "admissionregistration.k8s.io/v1alpha1,apps/v1beta1,authentication.k8s.io/v1,authorization.k8s.io/v1,autoscaling/v1,batch/v1,certificates.k8s.io/v1beta1,componentconfig/v1alpha1,extensions/v1beta1,federation/v1beta1,networking.k8s.io/v1,policy/v1beta1,rbac.authorization.k8s.io/v1beta1,scheduling.k8s.io/v1alpha1,settings.k8s.io/v1alpha1,storage.k8s.io/v1,v1")
|
||||
--target-ram-mb int Memory limit for apiserver in MB (used to configure sizes of caches, etc.)
|
||||
--tls-ca-file string If set, this certificate authority will used for secure access from Admission Controllers. This must be a valid PEM-encoded CA bundle. Alternatively, the certificate authority can be appended to the certificate provided by --tls-cert-file.
|
||||
--tls-cert-file string File containing the default x509 Certificate for HTTPS. (CA cert, if any, concatenated after server cert). If HTTPS serving is enabled, and --tls-cert-file and --tls-private-key-file are not provided, a self-signed certificate and key are generated for the public address and saved to /var/run/kubernetes.
|
||||
--tls-private-key-file string File containing the default x509 private key matching --tls-cert-file.
|
||||
--tls-sni-cert-key namedCertKey A pair of x509 certificate and private key file paths, optionally suffixed with a list of domain patterns which are fully qualified domain names, possibly with prefixed wildcard segments. If no domain patterns are provided, the names of the certificate are extracted. Non-wildcard matches trump over wildcard matches, explicit domain patterns trump over extracted names. For multiple key/certificate pairs, use the --tls-sni-cert-key multiple times. Examples: "example.crt,example.key" or "foo.crt,foo.key:*.foo.com,foo.com". (default [])
|
||||
--token-auth-file string If set, the file that will be used to secure the secure port of the API server via token authentication.
|
||||
--watch-cache Enable watch caching in the apiserver (default true)
|
||||
--watch-cache-sizes stringSlice List of watch cache sizes for every resource (pods, nodes, etc.), comma separated. The individual override format: resource#size, where size is a number. It takes effect when watch-cache is enabled.
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,57 @@
|
||||
---
|
||||
title: federation-controller-manager
|
||||
notitle: true
|
||||
---
|
||||
## federation-controller-manager
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The federation controller manager is a daemon that embeds
|
||||
the core control loops shipped with federation. In applications of robotics and
|
||||
automation, a control loop is a non-terminating loop that regulates the state of
|
||||
the system. In federation, a controller is a control loop that watches the shared
|
||||
state of the federation cluster through the apiserver and makes changes attempting
|
||||
to move the current state towards the desired state. Examples of controllers that
|
||||
ship with federation today is the cluster controller.
|
||||
|
||||
```
|
||||
federation-controller-manager
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--address ip The IP address to serve on (set to 0.0.0.0 for all interfaces) (default 0.0.0.0)
|
||||
--cluster-monitor-period duration The period for syncing ClusterStatus in ClusterController. (default 40s)
|
||||
--concurrent-job-syncs int The number of Jobs syncing operations that will be done concurrently. Larger number = faster endpoint updating, but more CPU (and network) load (default 10)
|
||||
--concurrent-replicaset-syncs int The number of ReplicaSets syncing operations that will be done concurrently. Larger number = faster endpoint updating, but more CPU (and network) load (default 10)
|
||||
--concurrent-service-syncs int The number of service syncing operations that will be done concurrently. Larger number = faster endpoint updating, but more CPU (and network) load (default 10)
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled
|
||||
--controllers mapStringString A set of key=value pairs that describe controller configuration to enable/disable specific controllers. Key should be the resource name (like services) and value should be true or false. For example: services=false,ingresses=false
|
||||
--dns-provider string DNS provider. Valid values are: ["google-clouddns" "aws-route53" "coredns"]
|
||||
--dns-provider-config string Path to config file for configuring DNS provider.
|
||||
--federated-api-burst int Burst to use while talking with federation apiserver (default 30)
|
||||
--federated-api-qps float32 QPS to use while talking with federation apiserver (default 20)
|
||||
--federation-name string Federation name.
|
||||
--federation-only-namespace string Name of the namespace that would be created only in federation control plane. (default "federation-only")
|
||||
--hpa-scale-forbidden-window duration The time window wrt cluster local hpa lastscale time, during which federated hpa would not move the hpa max/min replicas around (default 2m0s)
|
||||
--kube-api-content-type string ContentType of requests sent to apiserver. Passing application/vnd.kubernetes.protobuf is an experimental feature now.
|
||||
--kubeconfig string Path to kubeconfig file with authorization and master location information.
|
||||
--leader-elect Start a leader election client and gain leadership before executing the main loop. Enable this when running replicated components for high availability.
|
||||
--leader-elect-lease-duration duration The duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot. This is effectively the maximum duration that a leader can be stopped before it is replaced by another candidate. This is only applicable if leader election is enabled. (default 15s)
|
||||
--leader-elect-renew-deadline duration The interval between attempts by the acting master to renew a leadership slot before it stops leading. This must be less than or equal to the lease duration. This is only applicable if leader election is enabled. (default 10s)
|
||||
--leader-elect-resource-lock endpoints The type of resource object that is used for locking during leader election. Supported options are endpoints (default) and `configmap`. (default "endpoints")
|
||||
--leader-elect-retry-period duration The duration the clients should wait between attempting acquisition and renewal of a leadership. This is only applicable if leader election is enabled. (default 2s)
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--master string The address of the federation API server (overrides any value in kubeconfig)
|
||||
--port int The port that the controller-manager's http service runs on (default 10253)
|
||||
--profiling Enable profiling via web interface host:port/debug/pprof/ (default true)
|
||||
--service-dns-suffix string DNS Suffix to use when publishing federated service names. Defaults to zone-name
|
||||
--zone-id string Zone ID, needed if the zone name is not unique.
|
||||
--zone-name string Zone name, like example.com.
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,159 @@
|
||||
---
|
||||
title: kube-apiserver
|
||||
notitle: true
|
||||
---
|
||||
## kube-apiserver
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The Kubernetes API server validates and configures data
|
||||
for the api objects which include pods, services, replicationcontrollers, and
|
||||
others. The API Server services REST operations and provides the frontend to the
|
||||
cluster's shared state through which all other components interact.
|
||||
|
||||
```
|
||||
kube-apiserver
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--admission-control stringSlice Ordered list of plug-ins to do admission control of resources into cluster. Comma-delimited list of: AlwaysAdmit, AlwaysDeny, AlwaysPullImages, DefaultStorageClass, DefaultTolerationSeconds, DenyEscalatingExec, DenyExecOnPrivileged, EventRateLimit, GenericAdmissionWebhook, ImagePolicyWebhook, InitialResources, Initializers, LimitPodHardAntiAffinityTopology, LimitRanger, NamespaceAutoProvision, NamespaceExists, NamespaceLifecycle, NodeRestriction, OwnerReferencesPermissionEnforcement, PersistentVolumeClaimResize, PersistentVolumeLabel, PodNodeSelector, PodPreset, PodSecurityPolicy, PodTolerationRestriction, Priority, ResourceQuota, SecurityContextDeny, ServiceAccount. (default [AlwaysAdmit])
|
||||
--admission-control-config-file string File with admission control configuration.
|
||||
--advertise-address ip The IP address on which to advertise the apiserver to members of the cluster. This address must be reachable by the rest of the cluster. If blank, the --bind-address will be used. If --bind-address is unspecified, the host's default interface will be used.
|
||||
--allow-privileged If true, allow privileged containers. [default=false]
|
||||
--anonymous-auth Enables anonymous requests to the secure port of the API server. Requests that are not rejected by another authentication method are treated as anonymous requests. Anonymous requests have a username of system:anonymous, and a group name of system:unauthenticated. (default true)
|
||||
--apiserver-count int The number of apiservers running in the cluster, must be a positive number. (default 1)
|
||||
--audit-log-format string Format of saved audits. "legacy" indicates 1-line text format for each event. "json" indicates structured json format. Requires the 'AdvancedAuditing' feature gate. Known formats are legacy,json. (default "json")
|
||||
--audit-log-maxage int The maximum number of days to retain old audit log files based on the timestamp encoded in their filename.
|
||||
--audit-log-maxbackup int The maximum number of old audit log files to retain.
|
||||
--audit-log-maxsize int The maximum size in megabytes of the audit log file before it gets rotated.
|
||||
--audit-log-path string If set, all requests coming to the apiserver will be logged to this file. '-' means standard out.
|
||||
--audit-policy-file string Path to the file that defines the audit policy configuration. Requires the 'AdvancedAuditing' feature gate. With AdvancedAuditing, a profile is required to enable auditing.
|
||||
--audit-webhook-config-file string Path to a kubeconfig formatted file that defines the audit webhook configuration. Requires the 'AdvancedAuditing' feature gate.
|
||||
--audit-webhook-mode string Strategy for sending audit events. Blocking indicates sending events should block server responses. Batch causes the webhook to buffer and send events asynchronously. Known modes are batch,blocking. (default "batch")
|
||||
--authentication-token-webhook-cache-ttl duration The duration to cache responses from the webhook token authenticator. (default 2m0s)
|
||||
--authentication-token-webhook-config-file string File with webhook configuration for token authentication in kubeconfig format. The API server will query the remote service to determine authentication for bearer tokens.
|
||||
--authorization-mode string Ordered list of plug-ins to do authorization on secure port. Comma-delimited list of: AlwaysAllow,AlwaysDeny,ABAC,Webhook,RBAC,Node. (default "AlwaysAllow")
|
||||
--authorization-policy-file string File with authorization policy in csv format, used with --authorization-mode=ABAC, on the secure port.
|
||||
--authorization-webhook-cache-authorized-ttl duration The duration to cache 'authorized' responses from the webhook authorizer. (default 5m0s)
|
||||
--authorization-webhook-cache-unauthorized-ttl duration The duration to cache 'unauthorized' responses from the webhook authorizer. (default 30s)
|
||||
--authorization-webhook-config-file string File with webhook configuration in kubeconfig format, used with --authorization-mode=Webhook. The API server will query the remote service to determine access on the API server's secure port.
|
||||
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
|
||||
--basic-auth-file string If set, the file that will be used to admit requests to the secure port of the API server via http basic authentication.
|
||||
--bind-address ip The IP address on which to listen for the --secure-port port. The associated interface(s) must be reachable by the rest of the cluster, and by CLI/web clients. If blank, all interfaces will be used (0.0.0.0). (default 0.0.0.0)
|
||||
--cert-dir string The directory where the TLS certs are located. If --tls-cert-file and --tls-private-key-file are provided, this flag will be ignored. (default "/var/run/kubernetes")
|
||||
--client-ca-file string If set, any request presenting a client certificate signed by one of the authorities in the client-ca-file is authenticated with an identity corresponding to the CommonName of the client certificate.
|
||||
--cloud-config string The path to the cloud provider configuration file. Empty string for no configuration file.
|
||||
--cloud-provider string The provider for cloud services. Empty string for no provider.
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled
|
||||
--cors-allowed-origins stringSlice List of allowed origins for CORS, comma separated. An allowed origin can be a regular expression to support subdomain matching. If this list is empty CORS will not be enabled.
|
||||
--default-watch-cache-size int Default watch cache size. If zero, watch cache will be disabled for resources that do not have a default watch size set. (default 100)
|
||||
--delete-collection-workers int Number of workers spawned for DeleteCollection call. These are used to speed up namespace cleanup. (default 1)
|
||||
--deserialization-cache-size int Number of deserialized json objects to cache in memory.
|
||||
--enable-aggregator-routing Turns on aggregator routing requests to endpoints IP rather than cluster IP.
|
||||
--enable-bootstrap-token-auth Enable to allow secrets of type 'bootstrap.kubernetes.io/token' in the 'kube-system' namespace to be used for TLS bootstrapping authentication.
|
||||
--enable-garbage-collector Enables the generic garbage collector. MUST be synced with the corresponding flag of the kube-controller-manager. (default true)
|
||||
--enable-logs-handler If true, install a /logs handler for the apiserver logs. (default true)
|
||||
--enable-swagger-ui Enables swagger ui on the apiserver at /swagger-ui
|
||||
--etcd-cafile string SSL Certificate Authority file used to secure etcd communication.
|
||||
--etcd-certfile string SSL certification file used to secure etcd communication.
|
||||
--etcd-keyfile string SSL key file used to secure etcd communication.
|
||||
--etcd-prefix string The prefix to prepend to all resource paths in etcd. (default "/registry")
|
||||
--etcd-quorum-read If true, enable quorum read.
|
||||
--etcd-servers stringSlice List of etcd servers to connect with (scheme://ip:port), comma separated.
|
||||
--etcd-servers-overrides stringSlice Per-resource etcd servers overrides, comma separated. The individual override format: group/resource#servers, where servers are http://ip:port, semicolon separated.
|
||||
--event-ttl duration Amount of time to retain events. (default 1h0m0s)
|
||||
--experimental-encryption-provider-config string The file containing configuration for encryption providers to be used for storing secrets in etcd
|
||||
--experimental-keystone-ca-file string If set, the Keystone server's certificate will be verified by one of the authorities in the experimental-keystone-ca-file, otherwise the host's root CA set will be used.
|
||||
--experimental-keystone-url string If passed, activates the keystone authentication plugin.
|
||||
--external-hostname string The hostname to use when generating externalized URLs for this master (e.g. Swagger API Docs).
|
||||
--feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--google-json-key string The Google Cloud Platform Service Account JSON Key to use for authentication.
|
||||
--insecure-bind-address ip The IP address on which to serve the --insecure-port (set to 0.0.0.0 for all interfaces). (default 127.0.0.1)
|
||||
--insecure-port int The port on which to serve unsecured, unauthenticated access. It is assumed that firewall rules are set up such that this port is not reachable from outside of the cluster and that port 443 on the cluster's public address is proxied to this port. This is performed by nginx in the default setup. (default 8080)
|
||||
--kubelet-certificate-authority string Path to a cert file for the certificate authority.
|
||||
--kubelet-client-certificate string Path to a client cert file for TLS.
|
||||
--kubelet-client-key string Path to a client key file for TLS.
|
||||
--kubelet-https Use https for kubelet connections. (default true)
|
||||
--kubelet-preferred-address-types stringSlice List of the preferred NodeAddressTypes to use for kubelet connections. (default [Hostname,InternalDNS,InternalIP,ExternalDNS,ExternalIP])
|
||||
--kubelet-read-only-port uint DEPRECATED: kubelet port. (default 10255)
|
||||
--kubelet-timeout duration Timeout for kubelet operations. (default 5s)
|
||||
--kubernetes-service-node-port int If non-zero, the Kubernetes master service (which apiserver creates/maintains) will be of type NodePort, using this as the value of the port. If zero, the Kubernetes master service will be of type ClusterIP.
|
||||
--master-service-namespace string DEPRECATED: the namespace from which the kubernetes master services should be injected into pods. (default "default")
|
||||
--max-connection-bytes-per-sec int If non-zero, throttle each user connection to this number of bytes/sec. Currently only applies to long-running requests.
|
||||
--max-mutating-requests-inflight int The maximum number of mutating requests in flight at a given time. When the server exceeds this, it rejects requests. Zero for no limit. (default 200)
|
||||
--max-requests-inflight int The maximum number of non-mutating requests in flight at a given time. When the server exceeds this, it rejects requests. Zero for no limit. (default 400)
|
||||
--min-request-timeout int An optional field indicating the minimum number of seconds a handler must keep a request open before timing it out. Currently only honored by the watch request handler, which picks a randomized value above this number as the connection timeout, to spread out load. (default 1800)
|
||||
--oidc-ca-file string If set, the OpenID server's certificate will be verified by one of the authorities in the oidc-ca-file, otherwise the host's root CA set will be used.
|
||||
--oidc-client-id string The client ID for the OpenID Connect client, must be set if oidc-issuer-url is set.
|
||||
--oidc-groups-claim string If provided, the name of a custom OpenID Connect claim for specifying user groups. The claim value is expected to be a string or array of strings. This flag is experimental, please see the authentication documentation for further details.
|
||||
--oidc-groups-prefix string If provided, all groups will be prefixed with this value to prevent conflicts with other authentication strategies.
|
||||
--oidc-issuer-url string The URL of the OpenID issuer, only HTTPS scheme will be accepted. If set, it will be used to verify the OIDC JSON Web Token (JWT).
|
||||
--oidc-username-claim string The OpenID claim to use as the user name. Note that claims other than the default ('sub') is not guaranteed to be unique and immutable. This flag is experimental, please see the authentication documentation for further details. (default "sub")
|
||||
--oidc-username-prefix string If provided, all usernames will be prefixed with this value. If not provided, username claims other than 'email' are prefixed by the issuer URL to avoid clashes. To skip any prefixing, provide the value '-'.
|
||||
--profiling Enable profiling via web interface host:port/debug/pprof/ (default true)
|
||||
--proxy-client-cert-file string Client certificate used to prove the identity of the aggregator or kube-apiserver when it must call out during a request. This includes proxying requests to a user api-server and calling out to webhook admission plugins. It is expected that this cert includes a signature from the CA in the --requestheader-client-ca-file flag. That CA is published in the 'extension-apiserver-authentication' configmap in the kube-system namespace. Components receiving calls from kube-aggregator should use that CA to perform their half of the mutual TLS verification.
|
||||
--proxy-client-key-file string Private key for the client certificate used to prove the identity of the aggregator or kube-apiserver when it must call out during a request. This includes proxying requests to a user api-server and calling out to webhook admission plugins.
|
||||
--repair-malformed-updates If true, server will do its best to fix the update request to pass the validation, e.g., setting empty UID in update request to its existing value. This flag can be turned off after we fix all the clients that send malformed updates. (default true)
|
||||
--request-timeout duration An optional field indicating the duration a handler must keep a request open before timing it out. This is the default request timeout for requests but may be overridden by flags such as --min-request-timeout for specific types of requests. (default 1m0s)
|
||||
--requestheader-allowed-names stringSlice List of client certificate common names to allow to provide usernames in headers specified by --requestheader-username-headers. If empty, any client certificate validated by the authorities in --requestheader-client-ca-file is allowed.
|
||||
--requestheader-client-ca-file string Root certificate bundle to use to verify client certificates on incoming requests before trusting usernames in headers specified by --requestheader-username-headers
|
||||
--requestheader-extra-headers-prefix stringSlice List of request header prefixes to inspect. X-Remote-Extra- is suggested.
|
||||
--requestheader-group-headers stringSlice List of request headers to inspect for groups. X-Remote-Group is suggested.
|
||||
--requestheader-username-headers stringSlice List of request headers to inspect for usernames. X-Remote-User is common.
|
||||
--runtime-config mapStringString A set of key=value pairs that describe runtime configuration that may be passed to apiserver. apis/<groupVersion> key can be used to turn on/off specific api versions. apis/<groupVersion>/<resource> can be used to turn on/off specific resources. api/all and api/legacy are special keys to control all and legacy api versions respectively.
|
||||
--secure-port int The port on which to serve HTTPS with authentication and authorization. If 0, don't serve HTTPS at all. (default 6443)
|
||||
--service-account-key-file stringArray File containing PEM-encoded x509 RSA or ECDSA private or public keys, used to verify ServiceAccount tokens. If unspecified, --tls-private-key-file is used. The specified file can contain multiple keys, and the flag can be specified multiple times with different files.
|
||||
--service-account-lookup If true, validate ServiceAccount tokens exist in etcd as part of authentication. (default true)
|
||||
--service-cluster-ip-range ipNet A CIDR notation IP range from which to assign service cluster IPs. This must not overlap with any IP ranges assigned to nodes for pods.
|
||||
--service-node-port-range portRange A port range to reserve for services with NodePort visibility. Example: '30000-32767'. Inclusive at both ends of the range. (default 30000-32767)
|
||||
--ssh-keyfile string If non-empty, use secure SSH proxy to the nodes, using this user keyfile
|
||||
--ssh-user string If non-empty, use secure SSH proxy to the nodes, using this user name
|
||||
--storage-backend string The storage backend for persistence. Options: 'etcd3' (default), 'etcd2'.
|
||||
--storage-media-type string The media type to use to store objects in storage. Some resources or storage backends may only support a specific media type and will ignore this setting. (default "application/vnd.kubernetes.protobuf")
|
||||
--storage-versions string The per-group version to store resources in. Specified in the format "group1/version1,group2/version2,...". In the case where objects are moved from one group to the other, you may specify the format "group1=group2/v1beta1,group3/v1beta1,...". You only need to pass the groups you wish to change from the defaults. It defaults to a list of preferred versions of all registered groups, which is derived from the KUBE_API_VERSIONS environment variable. (default "admission.k8s.io/v1alpha1,admissionregistration.k8s.io/v1alpha1,apps/v1beta1,authentication.k8s.io/v1,authorization.k8s.io/v1,autoscaling/v1,batch/v1,certificates.k8s.io/v1beta1,componentconfig/v1alpha1,extensions/v1beta1,federation/v1beta1,imagepolicy.k8s.io/v1alpha1,networking.k8s.io/v1,policy/v1beta1,rbac.authorization.k8s.io/v1beta1,scheduling.k8s.io/v1alpha1,settings.k8s.io/v1alpha1,storage.k8s.io/v1,v1")
|
||||
--target-ram-mb int Memory limit for apiserver in MB (used to configure sizes of caches, etc.)
|
||||
--tls-ca-file string If set, this certificate authority will used for secure access from Admission Controllers. This must be a valid PEM-encoded CA bundle. Alternatively, the certificate authority can be appended to the certificate provided by --tls-cert-file.
|
||||
--tls-cert-file string File containing the default x509 Certificate for HTTPS. (CA cert, if any, concatenated after server cert). If HTTPS serving is enabled, and --tls-cert-file and --tls-private-key-file are not provided, a self-signed certificate and key are generated for the public address and saved to /var/run/kubernetes.
|
||||
--tls-private-key-file string File containing the default x509 private key matching --tls-cert-file.
|
||||
--tls-sni-cert-key namedCertKey A pair of x509 certificate and private key file paths, optionally suffixed with a list of domain patterns which are fully qualified domain names, possibly with prefixed wildcard segments. If no domain patterns are provided, the names of the certificate are extracted. Non-wildcard matches trump over wildcard matches, explicit domain patterns trump over extracted names. For multiple key/certificate pairs, use the --tls-sni-cert-key multiple times. Examples: "example.crt,example.key" or "foo.crt,foo.key:*.foo.com,foo.com". (default [])
|
||||
--token-auth-file string If set, the file that will be used to secure the secure port of the API server via token authentication.
|
||||
--version version[=true] Print version information and quit
|
||||
--watch-cache Enable watch caching in the apiserver (default true)
|
||||
--watch-cache-sizes stringSlice List of watch cache sizes for every resource (pods, nodes, etc.), comma separated. The individual override format: resource#size, where size is a number. It takes effect when watch-cache is enabled.
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,139 @@
|
||||
---
|
||||
title: kube-controller-manager
|
||||
notitle: true
|
||||
---
|
||||
## kube-controller-manager
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The Kubernetes controller manager is a daemon that embeds
|
||||
the core control loops shipped with Kubernetes. In applications of robotics and
|
||||
automation, a control loop is a non-terminating loop that regulates the state of
|
||||
the system. In Kubernetes, a controller is a control loop that watches the shared
|
||||
state of the cluster through the apiserver and makes changes attempting to move the
|
||||
current state towards the desired state. Examples of controllers that ship with
|
||||
Kubernetes today are the replication controller, endpoints controller, namespace
|
||||
controller, and serviceaccounts controller.
|
||||
|
||||
```
|
||||
kube-controller-manager
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--address ip The IP address to serve on (set to 0.0.0.0 for all interfaces) (default 0.0.0.0)
|
||||
--allocate-node-cidrs Should CIDRs for Pods be allocated and set on the cloud provider.
|
||||
--attach-detach-reconcile-sync-period duration The reconciler sync wait time between volume attach detach. This duration must be larger than one second, and increasing this value from the default may allow for volumes to be mismatched with pods. (default 1m0s)
|
||||
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
|
||||
--cidr-allocator-type string Type of CIDR allocator to use (default "RangeAllocator")
|
||||
--cloud-config string The path to the cloud provider configuration file. Empty string for no configuration file.
|
||||
--cloud-provider string The provider for cloud services. Empty string for no provider.
|
||||
--cluster-cidr string CIDR Range for Pods in cluster.
|
||||
--cluster-name string The instance prefix for the cluster (default "kubernetes")
|
||||
--cluster-signing-cert-file string Filename containing a PEM-encoded X509 CA certificate used to issue cluster-scoped certificates (default "/etc/kubernetes/ca/ca.pem")
|
||||
--cluster-signing-key-file string Filename containing a PEM-encoded RSA or ECDSA private key used to sign cluster-scoped certificates (default "/etc/kubernetes/ca/ca.key")
|
||||
--concurrent-deployment-syncs int32 The number of deployment objects that are allowed to sync concurrently. Larger number = more responsive deployments, but more CPU (and network) load (default 5)
|
||||
--concurrent-endpoint-syncs int32 The number of endpoint syncing operations that will be done concurrently. Larger number = faster endpoint updating, but more CPU (and network) load (default 5)
|
||||
--concurrent-gc-syncs int32 The number of garbage collector workers that are allowed to sync concurrently. (default 20)
|
||||
--concurrent-namespace-syncs int32 The number of namespace objects that are allowed to sync concurrently. Larger number = more responsive namespace termination, but more CPU (and network) load (default 10)
|
||||
--concurrent-replicaset-syncs int32 The number of replica sets that are allowed to sync concurrently. Larger number = more responsive replica management, but more CPU (and network) load (default 5)
|
||||
--concurrent-resource-quota-syncs int32 The number of resource quotas that are allowed to sync concurrently. Larger number = more responsive quota management, but more CPU (and network) load (default 5)
|
||||
--concurrent-service-syncs int32 The number of services that are allowed to sync concurrently. Larger number = more responsive service management, but more CPU (and network) load (default 1)
|
||||
--concurrent-serviceaccount-token-syncs int32 The number of service account token objects that are allowed to sync concurrently. Larger number = more responsive token generation, but more CPU (and network) load (default 5)
|
||||
--concurrent_rc_syncs int32 The number of replication controllers that are allowed to sync concurrently. Larger number = more responsive replica management, but more CPU (and network) load (default 5)
|
||||
--configure-cloud-routes Should CIDRs allocated by allocate-node-cidrs be configured on the cloud provider. (default true)
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled
|
||||
--controller-start-interval duration Interval between starting controller managers.
|
||||
--controllers stringSlice A list of controllers to enable. '*' enables all on-by-default controllers, 'foo' enables the controller named 'foo', '-foo' disables the controller named 'foo'.
|
||||
All controllers: attachdetach, bootstrapsigner, cronjob, csrapproving, csrsigning, daemonset, deployment, disruption, endpoint, garbagecollector, horizontalpodautoscaling, job, namespace, node, persistentvolume-binder, persistentvolume-expander, podgc, replicaset, replicationcontroller, resourcequota, route, service, serviceaccount, serviceaccount-token, statefulset, tokencleaner, ttl
|
||||
Disabled-by-default controllers: bootstrapsigner, tokencleaner (default [*])
|
||||
--deployment-controller-sync-period duration Period for syncing the deployments. (default 30s)
|
||||
--disable-attach-detach-reconcile-sync Disable volume attach detach reconciler sync. Disabling this may cause volumes to be mismatched with pods. Use wisely.
|
||||
--enable-dynamic-provisioning Enable dynamic provisioning for environments that support it. (default true)
|
||||
--enable-garbage-collector Enables the generic garbage collector. MUST be synced with the corresponding flag of the kube-apiserver. (default true)
|
||||
--enable-hostpath-provisioner Enable HostPath PV provisioning when running without a cloud provider. This allows testing and development of provisioning features. HostPath provisioning is not supported in any way, won't work in a multi-node cluster, and should not be used for anything other than testing or development.
|
||||
--enable-taint-manager WARNING: Beta feature. If set to true enables NoExecute Taints and will evict all not-tolerating Pod running on Nodes tainted with this kind of Taints. (default true)
|
||||
--experimental-cluster-signing-duration duration The length of duration signed certificates will be given. (default 8760h0m0s)
|
||||
--feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--flex-volume-plugin-dir string Full path of the directory in which the flex volume plugin should search for additional third party volume plugins. (default "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/")
|
||||
--google-json-key string The Google Cloud Platform Service Account JSON Key to use for authentication.
|
||||
--horizontal-pod-autoscaler-downscale-delay duration The period since last downscale, before another downscale can be performed in horizontal pod autoscaler. (default 5m0s)
|
||||
--horizontal-pod-autoscaler-sync-period duration The period for syncing the number of pods in horizontal pod autoscaler. (default 30s)
|
||||
--horizontal-pod-autoscaler-upscale-delay duration The period since last upscale, before another upscale can be performed in horizontal pod autoscaler. (default 3m0s)
|
||||
--horizontal-pod-autoscaler-use-rest-clients WARNING: alpha feature. If set to true, causes the horizontal pod autoscaler controller to use REST clients through the kube-aggregator, instead of using the legacy metrics client through the API server proxy. This is required for custom metrics support in the horizontal pod autoscaler.
|
||||
--insecure-experimental-approve-all-kubelet-csrs-for-group string This flag does nothing.
|
||||
--kube-api-burst int32 Burst to use while talking with kubernetes apiserver (default 30)
|
||||
--kube-api-content-type string Content type of requests sent to apiserver. (default "application/vnd.kubernetes.protobuf")
|
||||
--kube-api-qps float32 QPS to use while talking with kubernetes apiserver (default 20)
|
||||
--kubeconfig string Path to kubeconfig file with authorization and master location information.
|
||||
--large-cluster-size-threshold int32 Number of nodes from which NodeController treats the cluster as large for the eviction logic purposes. --secondary-node-eviction-rate is implicitly overridden to 0 for clusters this size or smaller. (default 50)
|
||||
--leader-elect Start a leader election client and gain leadership before executing the main loop. Enable this when running replicated components for high availability. (default true)
|
||||
--leader-elect-lease-duration duration The duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot. This is effectively the maximum duration that a leader can be stopped before it is replaced by another candidate. This is only applicable if leader election is enabled. (default 15s)
|
||||
--leader-elect-renew-deadline duration The interval between attempts by the acting master to renew a leadership slot before it stops leading. This must be less than or equal to the lease duration. This is only applicable if leader election is enabled. (default 10s)
|
||||
--leader-elect-resource-lock endpoints The type of resource object that is used for locking during leader election. Supported options are endpoints (default) and `configmap`. (default "endpoints")
|
||||
--leader-elect-retry-period duration The duration the clients should wait between attempting acquisition and renewal of a leadership. This is only applicable if leader election is enabled. (default 2s)
|
||||
--master string The address of the Kubernetes API server (overrides any value in kubeconfig)
|
||||
--min-resync-period duration The resync period in reflectors will be random between MinResyncPeriod and 2*MinResyncPeriod (default 12h0m0s)
|
||||
--namespace-sync-period duration The period for syncing namespace life-cycle updates (default 5m0s)
|
||||
--node-cidr-mask-size int32 Mask size for node cidr in cluster. (default 24)
|
||||
--node-eviction-rate float32 Number of nodes per second on which pods are deleted in case of node failure when a zone is healthy (see --unhealthy-zone-threshold for definition of healthy/unhealthy). Zone refers to entire cluster in non-multizone clusters. (default 0.1)
|
||||
--node-monitor-grace-period duration Amount of time which we allow running Node to be unresponsive before marking it unhealthy. Must be N times more than kubelet's nodeStatusUpdateFrequency, where N means number of retries allowed for kubelet to post node status. (default 40s)
|
||||
--node-monitor-period duration The period for syncing NodeStatus in NodeController. (default 5s)
|
||||
--node-startup-grace-period duration Amount of time which we allow starting Node to be unresponsive before marking it unhealthy. (default 1m0s)
|
||||
--pod-eviction-timeout duration The grace period for deleting pods on failed nodes. (default 5m0s)
|
||||
--port int32 The port that the controller-manager's http service runs on (default 10252)
|
||||
--profiling Enable profiling via web interface host:port/debug/pprof/ (default true)
|
||||
--pv-recycler-increment-timeout-nfs int32 the increment of time added per Gi to ActiveDeadlineSeconds for an NFS scrubber pod (default 30)
|
||||
--pv-recycler-minimum-timeout-hostpath int32 The minimum ActiveDeadlineSeconds to use for a HostPath Recycler pod. This is for development and testing only and will not work in a multi-node cluster. (default 60)
|
||||
--pv-recycler-minimum-timeout-nfs int32 The minimum ActiveDeadlineSeconds to use for an NFS Recycler pod (default 300)
|
||||
--pv-recycler-pod-template-filepath-hostpath string The file path to a pod definition used as a template for HostPath persistent volume recycling. This is for development and testing only and will not work in a multi-node cluster.
|
||||
--pv-recycler-pod-template-filepath-nfs string The file path to a pod definition used as a template for NFS persistent volume recycling
|
||||
--pv-recycler-timeout-increment-hostpath int32 the increment of time added per Gi to ActiveDeadlineSeconds for a HostPath scrubber pod. This is for development and testing only and will not work in a multi-node cluster. (default 30)
|
||||
--pvclaimbinder-sync-period duration The period for syncing persistent volumes and persistent volume claims (default 15s)
|
||||
--resource-quota-sync-period duration The period for syncing quota usage status in the system (default 5m0s)
|
||||
--root-ca-file string If set, this root certificate authority will be included in service account's token secret. This must be a valid PEM-encoded CA bundle.
|
||||
--route-reconciliation-period duration The period for reconciling routes created for Nodes by cloud provider. (default 10s)
|
||||
--secondary-node-eviction-rate float32 Number of nodes per second on which pods are deleted in case of node failure when a zone is unhealthy (see --unhealthy-zone-threshold for definition of healthy/unhealthy). Zone refers to entire cluster in non-multizone clusters. This value is implicitly overridden to 0 if the cluster size is smaller than --large-cluster-size-threshold. (default 0.01)
|
||||
--service-account-private-key-file string Filename containing a PEM-encoded private RSA or ECDSA key used to sign service account tokens.
|
||||
--service-cluster-ip-range string CIDR Range for Services in cluster.
|
||||
--service-sync-period duration The period for syncing services with their external load balancers (default 5m0s)
|
||||
--terminated-pod-gc-threshold int32 Number of terminated pods that can exist before the terminated pod garbage collector starts deleting terminated pods. If <= 0, the terminated pod garbage collector is disabled. (default 12500)
|
||||
--unhealthy-zone-threshold float32 Fraction of Nodes in a zone which needs to be not Ready (minimum 3) for zone to be treated as unhealthy. (default 0.55)
|
||||
--use-service-account-credentials If true, use individual service account credentials for each controller.
|
||||
--version version[=true] Print version information and quit
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,93 @@
|
||||
---
|
||||
title: kube-proxy
|
||||
notitle: true
|
||||
---
|
||||
## kube-proxy
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The Kubernetes network proxy runs on each node. This
|
||||
reflects services as defined in the Kubernetes API on each node and can do simple
|
||||
TCP,UDP stream forwarding or round robin TCP,UDP forwarding across a set of backends.
|
||||
Service cluster ips and ports are currently found through Docker-links-compatible
|
||||
environment variables specifying ports opened by the service proxy. There is an optional
|
||||
addon that provides cluster DNS for these cluster IPs. The user must create a service
|
||||
with the apiserver API to configure the proxy.
|
||||
|
||||
```
|
||||
kube-proxy
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
|
||||
--bind-address ip The IP address for the proxy server to serve on (set to 0.0.0.0 for all interfaces) (default 0.0.0.0)
|
||||
--cleanup If true cleanup iptables and ipvs rules and exit.
|
||||
--cluster-cidr string The CIDR range of pods in the cluster. When configured, traffic sent to a Service cluster IP from outside this range will be masqueraded and traffic sent from pods to an external LoadBalancer IP will be directed to the respective cluster IP instead
|
||||
--config string The path to the configuration file.
|
||||
--config-sync-period duration How often configuration from the apiserver is refreshed. Must be greater than 0. (default 15m0s)
|
||||
--conntrack-max-per-core int32 Maximum number of NAT connections to track per CPU core (0 to leave the limit as-is and ignore conntrack-min). (default 32768)
|
||||
--conntrack-min int32 Minimum number of conntrack entries to allocate, regardless of conntrack-max-per-core (set conntrack-max-per-core=0 to leave the limit as-is). (default 131072)
|
||||
--conntrack-tcp-timeout-close-wait duration NAT timeout for TCP connections in the CLOSE_WAIT state (default 1h0m0s)
|
||||
--conntrack-tcp-timeout-established duration Idle timeout for established TCP connections (0 to leave as-is) (default 24h0m0s)
|
||||
--feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--google-json-key string The Google Cloud Platform Service Account JSON Key to use for authentication.
|
||||
--healthz-bind-address ip The IP address and port for the health check server to serve on (set to 0.0.0.0 for all interfaces) (default 0.0.0.0:10256)
|
||||
--healthz-port int32 The port to bind the health check server. Use 0 to disable. (default 10256)
|
||||
--hostname-override string If non-empty, will use this string as identification instead of the actual hostname.
|
||||
--iptables-masquerade-bit int32 If using the pure iptables proxy, the bit of the fwmark space to mark packets requiring SNAT with. Must be within the range [0, 31]. (default 14)
|
||||
--iptables-min-sync-period duration The minimum interval of how often the iptables rules can be refreshed as endpoints and services change (e.g. '5s', '1m', '2h22m').
|
||||
--iptables-sync-period duration The maximum interval of how often iptables rules are refreshed (e.g. '5s', '1m', '2h22m'). Must be greater than 0. (default 30s)
|
||||
--ipvs-min-sync-period duration The minimum interval of how often the ipvs rules can be refreshed as endpoints and services change (e.g. '5s', '1m', '2h22m').
|
||||
--ipvs-scheduler string The ipvs scheduler type when proxy mode is ipvs
|
||||
--ipvs-sync-period duration The maximum interval of how often ipvs rules are refreshed (e.g. '5s', '1m', '2h22m'). Must be greater than 0.
|
||||
--kube-api-burst int Burst to use while talking with kubernetes apiserver (default 10)
|
||||
--kube-api-content-type string Content type of requests sent to apiserver. (default "application/vnd.kubernetes.protobuf")
|
||||
--kube-api-qps float32 QPS to use while talking with kubernetes apiserver (default 5)
|
||||
--kubeconfig string Path to kubeconfig file with authorization information (the master location is set by the master flag).
|
||||
--masquerade-all If using the pure iptables proxy, SNAT all traffic sent via Service cluster IPs (this not commonly needed)
|
||||
--master string The address of the Kubernetes API server (overrides any value in kubeconfig)
|
||||
--metrics-bind-address ip The IP address and port for the metrics server to serve on (set to 0.0.0.0 for all interfaces) (default 127.0.0.1:10249)
|
||||
--oom-score-adj int32 The oom-score-adj value for kube-proxy process. Values must be within the range [-1000, 1000] (default -999)
|
||||
--profiling If true enables profiling via web interface on /debug/pprof handler.
|
||||
--proxy-mode ProxyMode Which proxy mode to use: 'userspace' (older) or 'iptables' (faster) or 'ipvs'(experimental)'. If blank, use the best-available proxy (currently iptables). If the iptables proxy is selected, regardless of how, but the system's kernel or iptables versions are insufficient, this always falls back to the userspace proxy.
|
||||
--proxy-port-range port-range Range of host ports (beginPort-endPort, inclusive) that may be consumed in order to proxy service traffic. If unspecified (0-0) then ports will be randomly chosen.
|
||||
--udp-timeout duration How long an idle UDP connection will be kept open (e.g. '250ms', '2s'). Must be greater than 0. Only applicable for proxy-mode=userspace (default 250ms)
|
||||
--version version[=true] Print version information and quit
|
||||
--write-config-to string If set, write the default configuration values to this file and exit.
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,84 @@
|
||||
---
|
||||
title: kube-scheduler
|
||||
notitle: true
|
||||
---
|
||||
## kube-scheduler
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The Kubernetes scheduler is a policy-rich, topology-aware,
|
||||
workload-specific function that significantly impacts availability, performance,
|
||||
and capacity. The scheduler needs to take into account individual and collective
|
||||
resource requirements, quality of service requirements, hardware/software/policy
|
||||
constraints, affinity and anti-affinity specifications, data locality, inter-workload
|
||||
interference, deadlines, and so on. Workload-specific requirements will be exposed
|
||||
through the API as necessary.
|
||||
|
||||
```
|
||||
kube-scheduler
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--address string The IP address to serve on (set to 0.0.0.0 for all interfaces) (default "0.0.0.0")
|
||||
--algorithm-provider string The scheduling algorithm provider to use, one of: ClusterAutoscalerProvider | DefaultProvider (default "DefaultProvider")
|
||||
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled
|
||||
--feature-gates mapStringBool A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--google-json-key string The Google Cloud Platform Service Account JSON Key to use for authentication.
|
||||
--kube-api-burst int32 Burst to use while talking with kubernetes apiserver (default 100)
|
||||
--kube-api-content-type string Content type of requests sent to apiserver. (default "application/vnd.kubernetes.protobuf")
|
||||
--kube-api-qps float32 QPS to use while talking with kubernetes apiserver (default 50)
|
||||
--kubeconfig string Path to kubeconfig file with authorization and master location information.
|
||||
--leader-elect Start a leader election client and gain leadership before executing the main loop. Enable this when running replicated components for high availability. (default true)
|
||||
--leader-elect-lease-duration duration The duration that non-leader candidates will wait after observing a leadership renewal until attempting to acquire leadership of a led but unrenewed leader slot. This is effectively the maximum duration that a leader can be stopped before it is replaced by another candidate. This is only applicable if leader election is enabled. (default 15s)
|
||||
--leader-elect-renew-deadline duration The interval between attempts by the acting master to renew a leadership slot before it stops leading. This must be less than or equal to the lease duration. This is only applicable if leader election is enabled. (default 10s)
|
||||
--leader-elect-resource-lock endpoints The type of resource object that is used for locking during leader election. Supported options are endpoints (default) and `configmap`. (default "endpoints")
|
||||
--leader-elect-retry-period duration The duration the clients should wait between attempting acquisition and renewal of a leadership. This is only applicable if leader election is enabled. (default 2s)
|
||||
--lock-object-name string Define the name of the lock object. (default "kube-scheduler")
|
||||
--lock-object-namespace string Define the namespace of the lock object. (default "kube-system")
|
||||
--master string The address of the Kubernetes API server (overrides any value in kubeconfig)
|
||||
--policy-config-file string File with scheduler policy configuration. This file is used if policy ConfigMap is not provided or --use-legacy-policy-config==true
|
||||
--policy-configmap string Name of the ConfigMap object that contains scheduler's policy configuration. It must exist in the system namespace before scheduler initialization if --use-legacy-policy-config==false. The config must be provided as the value of an element in 'Data' map with the key='policy.cfg'
|
||||
--policy-configmap-namespace string The namespace where policy ConfigMap is located. The system namespace will be used if this is not provided or is empty. (default "kube-system")
|
||||
--port int32 The port that the scheduler's http service runs on (default 10251)
|
||||
--profiling Enable profiling via web interface host:port/debug/pprof/ (default true)
|
||||
--scheduler-name string Name of the scheduler, used to select which pods will be processed by this scheduler, based on pod's "spec.SchedulerName". (default "default-scheduler")
|
||||
--use-legacy-policy-config When set to true, scheduler will ignore policy ConfigMap and uses policy config file
|
||||
--version version[=true] Print version information and quit
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@@ -0,0 +1,85 @@
|
||||
---
|
||||
title: kubectl
|
||||
---
|
||||
|
||||
kubectl controls the Kubernetes cluster manager.
|
||||
|
||||
Find more information at [https://github.com/kubernetes/kubernetes](https://github.com/kubernetes/kubernetes).
|
||||
|
||||
```
|
||||
kubectl
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--logtostderr log to standard error instead of files
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
|
||||
* [kubectl annotate](/docs/user-guide/kubectl/{{page.version}}/#annotate) - Update the annotations on a resource
|
||||
* [kubectl api-versions](/docs/user-guide/kubectl/{{page.version}}/#api-versions) - Print the supported API versions on the server, in the form of "group/version"
|
||||
* [kubectl apply](/docs/user-guide/kubectl/{{page.version}}/#apply) - Apply a configuration to a resource by filename or stdin
|
||||
* [kubectl attach](/docs/user-guide/kubectl/{{page.version}}/#attach) - Attach to a running container
|
||||
* [kubectl autoscale](/docs/user-guide/kubectl/{{page.version}}/#autoscale) - Auto-scale a Deployment, ReplicaSet, or ReplicationController
|
||||
* [kubectl certificate](/docs/user-guide/kubectl/{{page.version}}/#certificate) - Modify certificate resources.
|
||||
* [kubectl cluster-info](/docs/user-guide/kubectl/{{page.version}}/#cluster-info) - Display cluster info
|
||||
* [kubectl completion](/docs/user-guide/kubectl/{{page.version}}/#completion) - Output shell completion code for the given shell (bash or zsh)
|
||||
* [kubectl config](/docs/user-guide/kubectl/{{page.version}}/#config) - Modify kubeconfig files
|
||||
* [kubectl convert](/docs/user-guide/kubectl/{{page.version}}/#convert) - Convert config files between different API versions
|
||||
* [kubectl cordon](/docs/user-guide/kubectl/{{page.version}}/#cordon) - Mark node as unschedulable
|
||||
* [kubectl cp](/docs/user-guide/kubectl/{{page.version}}/#cp) - Copy files and directories to and from containers.
|
||||
* [kubectl create](/docs/user-guide/kubectl/{{page.version}}/#create) - Create a resource by filename or stdin
|
||||
* [kubectl delete](/docs/user-guide/kubectl/{{page.version}}/#delete) - Delete resources by filenames, stdin, resources and names, or by resources and label selector
|
||||
* [kubectl describe](/docs/user-guide/kubectl/{{page.version}}/#describe) - Show details of a specific resource or group of resources
|
||||
* [kubectl drain](/docs/user-guide/kubectl/{{page.version}}/#drain) - Drain node in preparation for maintenance
|
||||
* [kubectl edit](/docs/user-guide/kubectl/{{page.version}}/#edit) - Edit a resource on the server
|
||||
* [kubectl exec](/docs/user-guide/kubectl/{{page.version}}/#exec) - Execute a command in a container
|
||||
* [kubectl explain](/docs/user-guide/kubectl/{{page.version}}/#explain) - Documentation of resources
|
||||
* [kubectl expose](/docs/user-guide/kubectl/{{page.version}}/#expose) - Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service
|
||||
* [kubectl get](/docs/user-guide/kubectl/{{page.version}}/#get) - Display one or many resources
|
||||
* [kubectl label](/docs/user-guide/kubectl/{{page.version}}/#label) - Update the labels on a resource
|
||||
* [kubectl logs](/docs/user-guide/kubectl/{{page.version}}/#logs) - Print the logs for a container in a pod
|
||||
* [kubectl options](/docs/user-guide/kubectl/{{page.version}}/#options) -
|
||||
* [kubectl patch](/docs/user-guide/kubectl/{{page.version}}/#patch) - Update field(s) of a resource using strategic merge patch
|
||||
* [kubectl port-forward](/docs/user-guide/kubectl/{{page.version}}/#port-forward) - Forward one or more local ports to a pod
|
||||
* [kubectl proxy](/docs/user-guide/kubectl/{{page.version}}/#proxy) - Run a proxy to the Kubernetes API server
|
||||
* [kubectl replace](/docs/user-guide/kubectl/{{page.version}}/#replace) - Replace a resource by filename or stdin
|
||||
* [kubectl rolling-update](/docs/user-guide/kubectl/{{page.version}}/#rolling-update) - Perform a rolling update of the given ReplicationController
|
||||
* [kubectl rollout](/docs/user-guide/kubectl/{{page.version}}/#rollout) - Manage a deployment rollout
|
||||
* [kubectl run](/docs/user-guide/kubectl/{{page.version}}/#run) - Run a particular image on the cluster
|
||||
* [kubectl scale](/docs/user-guide/kubectl/{{page.version}}/#scale) - Set a new size for a Deployment, ReplicaSet, Replication Controller, or Job
|
||||
* [kubectl set](/docs/user-guide/kubectl/{{page.version}}/#set) - Set specific features on objects
|
||||
* [kubectl taint](/docs/user-guide/kubectl/{{page.version}}/#taint) - Update the taints on one or more nodes
|
||||
* [kubectl top](/docs/user-guide/kubectl/{{page.version}}/#top) - Display Resource (CPU/Memory/Storage) usage
|
||||
* [kubectl uncordon](/docs/user-guide/kubectl/{{page.version}}/#uncordon) - Mark node as schedulable
|
||||
* [kubectl version](/docs/user-guide/kubectl/{{page.version}}/#version) - Print the client and server version information
|
||||
|
||||
###### Auto generated by spf13/cobra on 13-Dec-2016
|
||||
|
||||
<!-- BEGIN MUNGE: GENERATED_ANALYTICS -->
|
||||
[]()
|
||||
<!-- END MUNGE: GENERATED_ANALYTICS -->
|
||||
File diff suppressed because one or more lines are too long
Generated
Vendored
+6
File diff suppressed because one or more lines are too long
Generated
Vendored
+4
File diff suppressed because one or more lines are too long
+99
@@ -0,0 +1,99 @@
|
||||
/*
|
||||
|
||||
Original highlight.js style (c) Ivan Sagalaev <maniac@softwaremaniacs.org>
|
||||
|
||||
*/
|
||||
|
||||
.hljs {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
padding: 0.5em;
|
||||
background: #F0F0F0;
|
||||
}
|
||||
|
||||
|
||||
/* Base color: saturation 0; */
|
||||
|
||||
.hljs,
|
||||
.hljs-subst {
|
||||
color: #444;
|
||||
}
|
||||
|
||||
.hljs-comment {
|
||||
color: #888888;
|
||||
}
|
||||
|
||||
.hljs-keyword,
|
||||
.hljs-attribute,
|
||||
.hljs-selector-tag,
|
||||
.hljs-meta-keyword,
|
||||
.hljs-doctag,
|
||||
.hljs-name {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
|
||||
/* User color: hue: 0 */
|
||||
|
||||
.hljs-type,
|
||||
.hljs-string,
|
||||
.hljs-number,
|
||||
.hljs-selector-id,
|
||||
.hljs-selector-class,
|
||||
.hljs-quote,
|
||||
.hljs-template-tag,
|
||||
.hljs-deletion {
|
||||
color: #880000;
|
||||
}
|
||||
|
||||
.hljs-title,
|
||||
.hljs-section {
|
||||
color: #880000;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.hljs-regexp,
|
||||
.hljs-symbol,
|
||||
.hljs-variable,
|
||||
.hljs-template-variable,
|
||||
.hljs-link,
|
||||
.hljs-selector-attr,
|
||||
.hljs-selector-pseudo {
|
||||
color: #BC6060;
|
||||
}
|
||||
|
||||
|
||||
/* Language color: hue: 90; */
|
||||
|
||||
.hljs-literal {
|
||||
color: #78A960;
|
||||
}
|
||||
|
||||
.hljs-built_in,
|
||||
.hljs-bullet,
|
||||
.hljs-code,
|
||||
.hljs-addition {
|
||||
color: #397300;
|
||||
}
|
||||
|
||||
|
||||
/* Meta color: hue: 200 */
|
||||
|
||||
.hljs-meta {
|
||||
color: #1f7199;
|
||||
}
|
||||
|
||||
.hljs-meta-string {
|
||||
color: #4d99bf;
|
||||
}
|
||||
|
||||
|
||||
/* Misc effects */
|
||||
|
||||
.hljs-emphasis {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
.hljs-strong {
|
||||
font-weight: bold;
|
||||
}
|
||||
Generated
Vendored
+7
@@ -0,0 +1,7 @@
|
||||
/**
|
||||
* Copyright (c) 2007-2015 Ariel Flesler - aflesler<a>gmail<d>com | http://flesler.blogspot.com
|
||||
* Licensed under MIT
|
||||
* @author Ariel Flesler
|
||||
* @version 2.1.2
|
||||
*/
|
||||
;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1<b.axis.length;u&&(d/=2);b.offset=h(b.offset);b.over=h(b.over);return this.each(function(){function k(a){var k=$.extend({},b,{queue:!0,duration:d,complete:a&&function(){a.call(q,e,b)}});r.animate(f,k)}if(null!==a){var l=n(this),q=l?this.contentWindow||window:this,r=$(q),e=a,f={},t;switch(typeof e){case "number":case "string":if(/^([+-]=?)?\d+(\.\d+)?(px|%)?$/.test(e)){e= h(e);break}e=l?$(e):$(e,q);case "object":if(e.length===0)return;if(e.is||e.style)t=(e=$(e)).offset()}var v=$.isFunction(b.offset)&&b.offset(q,e)||b.offset;$.each(b.axis.split(""),function(a,c){var d="x"===c?"Left":"Top",m=d.toLowerCase(),g="scroll"+d,h=r[g](),n=p.max(q,c);t?(f[g]=t[m]+(l?0:h-r.offset()[m]),b.margin&&(f[g]-=parseInt(e.css("margin"+d),10)||0,f[g]-=parseInt(e.css("border"+d+"Width"),10)||0),f[g]+=v[m]||0,b.over[m]&&(f[g]+=e["x"===c?"width":"height"]()*b.over[m])):(d=e[m],f[g]=d.slice&& "%"===d.slice(-1)?parseFloat(d)/100*n:d);b.limit&&/^\d+$/.test(f[g])&&(f[g]=0>=f[g]?0:Math.min(f[g],n));!a&&1<b.axis.length&&(h===f[g]?f={}:u&&(k(b.onAfterFirst),f={}))});k(b.onAfter)}})};p.max=function(a,d){var b="x"===d?"Width":"Height",h="scroll"+b;if(!n(a))return a[h]-$(a)[b.toLowerCase()]();var b="client"+b,k=a.ownerDocument||a.document,l=k.documentElement,k=k.body;return Math.max(l[h],k[h])-Math.min(l[b],k[b])};$.Tween.propHooks.scrollLeft=$.Tween.propHooks.scrollTop={get:function(a){return $(a.elem)[a.prop]()}, set:function(a){var d=this.get(a);if(a.options.interrupt&&a._last&&a._last!==d)return $(a.elem).stop();var b=Math.round(a.now);d!==b&&($(a.elem)[a.prop](b),a._last=this.get(a))}};return p});
|
||||
+4
File diff suppressed because one or more lines are too long
@@ -0,0 +1,196 @@
|
||||
$(document).ready(function() {
|
||||
|
||||
/**
|
||||
* TODO: Refactor with intent toward pure functions. Mutation of state can lead to bugs and difficult debugging.
|
||||
*/
|
||||
|
||||
var toc = navData.toc;
|
||||
var flatToc = navData.flatToc.reverse();
|
||||
|
||||
function collectNodes(tocMap) {
|
||||
var tocNodes = {};
|
||||
tocMap.map(function(node, index) {
|
||||
var sectionNode = $('#' + node.section);
|
||||
var tocSubsections = {};
|
||||
tocItem = {section: sectionNode};
|
||||
var subsectionNodes;
|
||||
if (node.subsections) {
|
||||
subsectionNodes = (collectNodes(node.subsections));
|
||||
tocItem.subsections = subsectionNodes;
|
||||
}
|
||||
tocNodes[node.section] = tocItem;
|
||||
});
|
||||
return tocNodes;
|
||||
}
|
||||
var tocItems = collectNodes(toc);
|
||||
|
||||
function collectNodesFlat(tocMap, obj) {
|
||||
var collect = obj || {};
|
||||
tocMap.map(function(node, index) {
|
||||
var sectionNode = $('#' + node.section);
|
||||
tocItem = {section: sectionNode};
|
||||
if (node.subsections) {
|
||||
subsectionNodes = (collectNodesFlat(node.subsections, collect));
|
||||
}
|
||||
collect[node.section] = sectionNode;
|
||||
});
|
||||
return collect;
|
||||
}
|
||||
var tocFlat = collectNodesFlat(toc);
|
||||
|
||||
var prevSectionToken;
|
||||
var prevSubsectionToken;
|
||||
var activeTokensObj = {};
|
||||
|
||||
function scrollActions(scrollPosition) {
|
||||
var activeSection = checkNodePositions(toc, tocFlat, scrollPosition);
|
||||
var activeSubSection,
|
||||
prevL1Nav,
|
||||
currL1Nav,
|
||||
prevL2Nav,
|
||||
currL2Nav;
|
||||
|
||||
// No active section - return existing activeTokensObj (may be empty)
|
||||
if (!activeSection) {
|
||||
return activeTokensObj;
|
||||
}
|
||||
|
||||
/**
|
||||
* This block deals with L1Nav sections
|
||||
*/
|
||||
|
||||
// If no previous token, set previous to current active and show L1Nav
|
||||
if (!prevSectionToken) {
|
||||
prevSectionToken = activeSection.token;
|
||||
currL1Nav = getNavNode(activeSection.token);
|
||||
currL1Nav.show('fast');
|
||||
}
|
||||
// If active active is not the same as previous, hide previous L1Nav and show current L1Nav; set previous to current
|
||||
else if (activeSection.token !== prevSectionToken) {
|
||||
prevL1Nav = getNavNode(prevSectionToken);
|
||||
currL1Nav = getNavNode(activeSection.token);
|
||||
prevL1Nav.hide('fast');
|
||||
currL1Nav.show('fast');
|
||||
prevSectionToken = activeSection.token;
|
||||
}
|
||||
|
||||
/**
|
||||
* This block deals with L2Nav subsections
|
||||
*/
|
||||
|
||||
// If there is a subsections array and it has a non-zero length, set active subsection
|
||||
if (activeSection.subsections && activeSection.subsections.length !== 0) {
|
||||
activeSubSection = checkNodePositions(activeSection.subsections, tocFlat, scrollPosition);
|
||||
if (activeSubSection) {
|
||||
if (!prevSubsectionToken) {
|
||||
prevSubsectionToken = activeSubSection.token;
|
||||
currL2Nav = getNavNode(activeSubSection.token);
|
||||
currL2Nav.show('fast');
|
||||
} else if (activeSubSection.token !== prevSubsectionToken) {
|
||||
prevL2Nav = getNavNode(prevSubsectionToken);
|
||||
currL2Nav = getNavNode(activeSubSection.token);
|
||||
prevL2Nav.hide('fast');
|
||||
currL2Nav.show('fast');
|
||||
prevSubsectionToken = activeSubSection.token;
|
||||
}
|
||||
} else {
|
||||
prevL2Nav = getNavNode(prevSubsectionToken);
|
||||
prevL2Nav.hide('fast');
|
||||
prevSubsectionToken = null;
|
||||
}
|
||||
}
|
||||
activeTokensObj.L1 = prevSectionToken;
|
||||
activeTokensObj.L2 = prevSubsectionToken;
|
||||
return activeTokensObj;
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks for active elements by scroll position
|
||||
*/
|
||||
|
||||
var prevElemToken;
|
||||
var activeElemToken;
|
||||
|
||||
function checkActiveElement(items, scrollPosition) {
|
||||
var offset = 50;
|
||||
var offsetScroll = scrollPosition + offset;
|
||||
var visibleNode;
|
||||
for (var i = 0; i < items.length; i++) {
|
||||
var token = items[i];
|
||||
var node = getHeadingNode(token);
|
||||
if (offsetScroll >= node.offset().top) {
|
||||
activeElemToken = token;
|
||||
}
|
||||
}
|
||||
if (!prevElemToken) {
|
||||
getNavElemNode(activeElemToken).addClass('selected');
|
||||
prevElemToken = activeElemToken;
|
||||
return;
|
||||
}
|
||||
if (activeElemToken !== prevElemToken) {
|
||||
getNavElemNode(prevElemToken).removeClass('selected');
|
||||
getNavElemNode(activeElemToken).addClass('selected');
|
||||
prevElemToken = activeElemToken;
|
||||
}
|
||||
return activeElemToken;
|
||||
}
|
||||
|
||||
function getHeadingNode(token) {
|
||||
return $('#' + token);
|
||||
}
|
||||
|
||||
function getNavNode(token) {
|
||||
return $('#' + token + '-nav');
|
||||
}
|
||||
|
||||
function getNavElemNode(token) {
|
||||
return $('#sidebar-wrapper > ul a[href="#' + token + '"]');
|
||||
}
|
||||
|
||||
function checkNodePositions(nodes, flatNodeMap, scrollPosition) {
|
||||
var activeNode;
|
||||
for (var i = 0; i < nodes.length; i++) {
|
||||
var item = nodes[i];
|
||||
var node = flatNodeMap[item.section];
|
||||
var nodeTop = node.offset().top - 50;
|
||||
if (scrollPosition >= nodeTop) {
|
||||
activeNode = {token: item.section, node: node};
|
||||
|
||||
if (item.subsections) {
|
||||
activeNode.subsections = item.subsections;
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return activeNode;
|
||||
}
|
||||
|
||||
function scrollToNav(token) {
|
||||
setTimeout(function() {
|
||||
var scrollPosition = $(window).scrollTop();
|
||||
var activeSectionTokens = scrollActions(scrollPosition);
|
||||
var activeElemToken = checkActiveElement(flatToc, scrollPosition);
|
||||
var navNode = $('#sidebar-wrapper > ul a[href="#' + token + '"]');
|
||||
$('#sidebar-wrapper').scrollTo(navNode, {duration: 'fast', axis: 'y'});
|
||||
}, 200);
|
||||
}
|
||||
|
||||
$(window).on('hashchange', function(event) {
|
||||
var scrollPosition = $(window).scrollTop();
|
||||
var activeSectionTokens = scrollActions(scrollPosition);
|
||||
var activeElemToken = checkActiveElement(flatToc, scrollPosition);
|
||||
var scrollToken = activeSectionTokens.L2 ? activeSectionTokens.L2 : activeSectionTokens.L1;
|
||||
scrollToNav(scrollToken);
|
||||
var token = location.hash.slice(1);
|
||||
});
|
||||
|
||||
var scrollPosition = $(window).scrollTop();
|
||||
scrollActions(scrollPosition);
|
||||
checkActiveElement(flatToc, scrollPosition);
|
||||
// TODO: prevent scroll on sidebar from propogating to window
|
||||
$(window).on('scroll', function(event) {
|
||||
var scrollPosition = $(window).scrollTop();
|
||||
var activeSectionTokens = scrollActions(scrollPosition);
|
||||
var activeElemToken = checkActiveElement(flatToc, scrollPosition);
|
||||
});
|
||||
});
|
||||
@@ -0,0 +1,269 @@
|
||||
/*
|
||||
Kubernetes colors
|
||||
|
||||
kubernetes blue - rgb(50, 109, 230)
|
||||
dark blue - rgb(51, 113, 227)
|
||||
dark grey - rgb(48, 48, 48)
|
||||
light grey - rgb(161, 160, 158)
|
||||
*/
|
||||
|
||||
/* User agent CSS overrides */
|
||||
#sidebar-wrapper ul, #sidebar-wrapper li {
|
||||
margin-left: 10px;
|
||||
padding-left: 0;
|
||||
}
|
||||
|
||||
/* Inspired by Slate CSS */
|
||||
.body-content aside {
|
||||
padding: 1.6em;
|
||||
margin: 1.8em 0;
|
||||
background: lightsteelblue;
|
||||
line-height: 1.6;
|
||||
border-radius: 15px;
|
||||
}
|
||||
|
||||
.body-content aside.warning {
|
||||
background-color: peachpuff;
|
||||
}
|
||||
|
||||
.body-content aside.success {
|
||||
background-color: olivedrab;
|
||||
}
|
||||
|
||||
.body-content aside:before {
|
||||
vertical-align: middle;
|
||||
padding-right: 1em;
|
||||
font-size: 16px;
|
||||
}
|
||||
|
||||
.body-content aside.warning:before, .body-content aside.notice:before, .body-content aside.success:before {
|
||||
font-family: 'FontAwesome';
|
||||
font-style: normal;
|
||||
font-weight: normal;
|
||||
font-variant: normal;
|
||||
text-transform: none;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.body-content aside.warning:before {
|
||||
content: "\f071";
|
||||
}
|
||||
|
||||
.body-content aside.notice:before {
|
||||
content: "\f05a";
|
||||
}
|
||||
|
||||
.body-content hr {
|
||||
margin: 2em 0;
|
||||
border-top: 2px solid dimgrey;
|
||||
border-bottom: 2px solid antiquewhite;
|
||||
}
|
||||
|
||||
.body-content table {
|
||||
margin-bottom: 1em;
|
||||
overflow: auto;
|
||||
}
|
||||
|
||||
.body-content table th, .body-content table td {
|
||||
text-align: left;
|
||||
vertical-align: top;
|
||||
line-height: 1.6;
|
||||
}
|
||||
|
||||
.body-content table th {
|
||||
padding: 15px 20px;
|
||||
border-bottom: 1px solid lightsteelblue;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
.body-content table td {
|
||||
padding: 10px;
|
||||
}
|
||||
|
||||
.body-content table tr:last-child {
|
||||
border-bottom: 1px solid lightsteelblue;
|
||||
}
|
||||
|
||||
.body-content table tr:nth-child(odd) > td {
|
||||
background-color: whitesmoke;
|
||||
}
|
||||
|
||||
.body-content table tr:nth-child(even) > td {
|
||||
background-color: lightsteelblue;
|
||||
}
|
||||
|
||||
.body-content dt {
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
.body-content dd {
|
||||
margin-left: 15px;
|
||||
}
|
||||
|
||||
.body-content p, .body-content li, .body-content dt, .body-content dd {
|
||||
line-height: 1.6;
|
||||
margin-top: 0;
|
||||
}
|
||||
|
||||
/* Brodoc CSS */
|
||||
|
||||
body > #wrapper {
|
||||
display: block;
|
||||
padding-bottom: 500px;
|
||||
background-image: linear-gradient(90deg, #FFFFFF 63%, rgb(48, 48, 48) 63%);
|
||||
}
|
||||
|
||||
#sidebar-wrapper {
|
||||
display: block;
|
||||
height: 100%;
|
||||
width: 20%;
|
||||
position: fixed;
|
||||
z-index: 1;
|
||||
top: 0;
|
||||
left: 0;
|
||||
background-color: whitesmoke;
|
||||
border-right: 2px solid slategrey;
|
||||
overflow-x: hidden;
|
||||
padding-top: 60px;
|
||||
}
|
||||
|
||||
#sidebar-wrapper a {
|
||||
text-decoration: none;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
padding: 0 5px;
|
||||
}
|
||||
|
||||
#sidebar-wrapper ul {
|
||||
list-style: none;
|
||||
}
|
||||
|
||||
#sidebar-wrapper a.selected {
|
||||
font-style: bold;
|
||||
color: whitesmoke;
|
||||
border: 1px solid rgb(161, 160, 158);
|
||||
background-color: rgb(51, 113, 227);
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
#sidebar-wrapper .strong-nav {
|
||||
font-family: monospace;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
#sidebar-wrapper .nav-level-1.strong-nav {
|
||||
margin-top: 25px;
|
||||
}
|
||||
|
||||
#sidebar-wrapper .copyright {
|
||||
padding-left: 10px;
|
||||
padding-top: 50px;
|
||||
padding-bottom: 50px;
|
||||
text-decoration: underline;
|
||||
}
|
||||
|
||||
#page-content-wrapper {
|
||||
margin-left: 20%;
|
||||
padding-top: 60px;
|
||||
}
|
||||
|
||||
.body-content h1, .body-content h2 {
|
||||
width: 52%;
|
||||
clear: both;
|
||||
border-bottom: 3px solid lightslategrey;
|
||||
}
|
||||
|
||||
.body-content > h3, .body-content > h4, .body-content > h5, .body-content > h6, .body-content > p, .body-content > aside, .body-content > ul > li, .body-content > ul > li {
|
||||
width: 52%;
|
||||
padding-top: 20px;
|
||||
}
|
||||
|
||||
.body-content table {
|
||||
width: 52%;
|
||||
}
|
||||
|
||||
.body-content table tr td:not(:first-child) {
|
||||
overflow-wrap: break-word;
|
||||
word-wrap: break-word;
|
||||
}
|
||||
|
||||
.body-content table tr td a {
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.body-content p code {
|
||||
text-overflow: ellipsis;
|
||||
display: inline-block;
|
||||
font-size: smaller;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.body-content blockquote {
|
||||
border-left: 0;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.body-content pre.code-block {
|
||||
margin-bottom: 80px;
|
||||
}
|
||||
|
||||
.body-content blockquote p, .body-content pre {
|
||||
color: black;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
.body-content blockquote.code-block {
|
||||
background: lightsteelblue;
|
||||
}
|
||||
|
||||
.body-content pre.code-block code {
|
||||
overflow: auto;
|
||||
overflow-wrap: normal;
|
||||
word-wrap: normal;
|
||||
white-space: pre;
|
||||
}
|
||||
|
||||
.code-block {
|
||||
display: none;
|
||||
width: 45%;
|
||||
float: right;
|
||||
clear: right;
|
||||
}
|
||||
|
||||
.code-block.active {
|
||||
display: initial;
|
||||
}
|
||||
|
||||
#code-tabs-wrapper {
|
||||
width: 35%;
|
||||
height: 60px;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
#code-tabs-wrapper .code-tab-list {
|
||||
float: right;
|
||||
margin-top: 0;
|
||||
padding: 0 10px;
|
||||
}
|
||||
|
||||
#code-tabs-wrapper .code-tab {
|
||||
color: white;
|
||||
display: inline-block;
|
||||
padding: 0 30px;
|
||||
background: rgb(48, 48, 48);
|
||||
border: 1px solid rgb(161, 160, 158);
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
#code-tabs-wrapper .tab-selected {
|
||||
background: rgb(51, 113, 227);
|
||||
font-style: bold;
|
||||
border-radius: 5px;
|
||||
}
|
||||
|
||||
.side-nav a {
|
||||
color: black;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
$(document).ready(function() {
|
||||
var codeTabs = $('#code-tabs-wrapper').find('li');
|
||||
|
||||
for (var i = 0; i < codeTabs.length; i++) {
|
||||
createCodeTabListeners(codeTabs, i);
|
||||
}
|
||||
|
||||
function createCodeTabListeners(codeTabs, index) {
|
||||
var tab = $(codeTabs[index]),
|
||||
id = tab.attr('id'),
|
||||
codeClass = '.' + id;
|
||||
tab.on('click', function() {
|
||||
codeTabs.removeClass('tab-selected');
|
||||
tab.addClass('tab-selected');
|
||||
$('.code-block').removeClass('active');
|
||||
$(codeClass).addClass('active');
|
||||
|
||||
});
|
||||
}
|
||||
|
||||
function setDefautTab() {
|
||||
$(codeTabs[0]).addClass('tab-selected');
|
||||
$('.' + codeTabs[0].id).addClass('active');
|
||||
}
|
||||
|
||||
setDefautTab();
|
||||
});
|
||||
@@ -0,0 +1,58 @@
|
||||
---
|
||||
title: kubefed
|
||||
notitle: true
|
||||
---
|
||||
## kubefed
|
||||
|
||||
kubefed controls a Kubernetes Cluster Federation
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
kubefed controls a Kubernetes Cluster Federation.
|
||||
|
||||
Find more information at [https://github.com/kubernetes/kubernetes](https://github.com/kubernetes/kubernetes).
|
||||
|
||||
```
|
||||
kubefed
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 209.85.152.0/22,209.85.204.0/22,130.211.0.0/22,35.191.0.0/16)
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--logtostderr log to standard error instead of files (default true)
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
* [kubefed init](kubefed_init.md) - Initialize a federation control plane
|
||||
* [kubefed join](kubefed_join.md) - Join a cluster to a federation
|
||||
* [kubefed options](kubefed_options.md) - Print the list of flags inherited by all commands
|
||||
* [kubefed unjoin](kubefed_unjoin.md) - Unjoin a cluster from a federation
|
||||
* [kubefed version](kubefed_version.md) - Print the client and server version information
|
||||
|
||||
###### Auto generated by spf13/cobra on 30-Jul-2017
|
||||
@@ -0,0 +1,87 @@
|
||||
---
|
||||
title: kubefed init
|
||||
notitle: true
|
||||
---
|
||||
## kubefed init
|
||||
|
||||
Initialize a federation control plane
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
Initialize a federation control plane.
|
||||
|
||||
Federation control plane is hosted inside a Kubernetes
|
||||
cluster. The host cluster must be specified using the
|
||||
--host-cluster-context flag.
|
||||
|
||||
```
|
||||
kubefed init FEDERATION_NAME --host-cluster-context=HOST_CONTEXT
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
```
|
||||
# Initialize federation control plane for a federation
|
||||
# named foo in the host cluster whose local kubeconfig
|
||||
# context is bar.
|
||||
kubefed init foo --host-cluster-context=bar
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--api-server-advertise-address string Preferred address to advertise api server nodeport service. Valid only if 'api-server-service-type=NodePort'.
|
||||
--api-server-service-type string The type of service to create for federation API server. Options: 'LoadBalancer' (default), 'NodePort'. (default "LoadBalancer")
|
||||
--apiserver-arg-overrides string comma separated list of federation-apiserver arguments to override: Example "--arg1=value1,--arg2=value2..."
|
||||
--apiserver-enable-basic-auth Enables HTTP Basic authentication for the federation-apiserver. Defaults to false.
|
||||
--apiserver-enable-token-auth Enables token authentication for the federation-apiserver. Defaults to false.
|
||||
--controllermanager-arg-overrides string comma separated list of federation-controller-manager arguments to override: Example "--arg1=value1,--arg2=value2..."
|
||||
--dns-provider string Dns provider to be used for this deployment.
|
||||
--dns-provider-config string Config file path on local file system for configuring DNS provider.
|
||||
--dns-zone-name string DNS suffix for this federation. Federated Service DNS names are published with this suffix.
|
||||
--dry-run dry run without sending commands to server.
|
||||
--etcd-image string Image to use for etcd server. (default "gcr.io/google_containers/etcd:3.0.17")
|
||||
--etcd-persistent-storage Use persistent volume for etcd. Defaults to 'true'. (default true)
|
||||
--etcd-pv-capacity string Size of persistent volume claim to be used for etcd. (default "10Gi")
|
||||
--etcd-pv-storage-class string The storage class of the persistent volume claim used for etcd. Must be provided if a default storage class is not enabled for the host cluster.
|
||||
--federation-system-namespace string Namespace in the host cluster where the federation system components are installed (default "federation-system")
|
||||
--host-cluster-context string Host cluster context
|
||||
--image string Image to use for federation API server and controller manager binaries. (default "gcr.io/google_containers/hyperkube-amd64:v0.0.0-master+$Format:%h$")
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 209.85.152.0/22,209.85.204.0/22,130.211.0.0/22,35.191.0.0/16)
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--logtostderr log to standard error instead of files (default true)
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
* [kubefed](kubefed.md) - kubefed controls a Kubernetes Cluster Federation
|
||||
|
||||
###### Auto generated by spf13/cobra on 30-Jul-2017
|
||||
@@ -0,0 +1,87 @@
|
||||
---
|
||||
title: kubefed join
|
||||
notitle: true
|
||||
---
|
||||
## kubefed join
|
||||
|
||||
Join a cluster to a federation
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
Join adds a cluster to a federation.
|
||||
|
||||
Current context is assumed to be a federation API
|
||||
server. Please use the --context flag otherwise.
|
||||
|
||||
```
|
||||
kubefed join CLUSTER_NAME --host-cluster-context=HOST_CONTEXT
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
```
|
||||
# Join a cluster to a federation by specifying the
|
||||
# cluster name and the context name of the federation
|
||||
# control plane's host cluster. Cluster name must be
|
||||
# a valid RFC 1123 subdomain name. Cluster context
|
||||
# must be specified if the cluster name is different
|
||||
# than the cluster's context in the local kubeconfig.
|
||||
kubefed join foo --host-cluster-context=bar
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--allow-missing-template-keys 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. (default true)
|
||||
--cluster-context string Name of the cluster's context in the local kubeconfig. Defaults to cluster name if unspecified.
|
||||
--dry-run If true, only print the object that would be sent, without sending it.
|
||||
--federation-system-namespace string Namespace in the host cluster where the federation system components are installed (default "federation-system")
|
||||
--generator string The name of the API generator to use. (default "cluster/v1beta1")
|
||||
--host-cluster-context string Host cluster context
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
--no-headers When using the default or custom-column output format, don't print headers (default print headers).
|
||||
-o, --output string Output format. One of: json|yaml|wide|name|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=... See custom columns [http://kubernetes.io/docs/user-guide/kubectl-overview/#custom-columns], golang template [http://golang.org/pkg/text/template/#pkg-overview] and jsonpath template [http://kubernetes.io/docs/user-guide/jsonpath].
|
||||
--save-config If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.
|
||||
--schema-cache-dir string If non-empty, load/store cached API schemas in this directory, default is '$HOME/.kube/schema' (default "~/.kube/schema")
|
||||
-a, --show-all When printing, show all resources (default hide terminated pods.)
|
||||
--show-labels When printing, show all labels as the last column (default hide labels column)
|
||||
--sort-by string 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 string 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/#pkg-overview].
|
||||
--validate If true, use a schema to validate the input before sending it (default true)
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 209.85.152.0/22,209.85.204.0/22,130.211.0.0/22,35.191.0.0/16)
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--logtostderr log to standard error instead of files (default true)
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
* [kubefed](kubefed.md) - kubefed controls a Kubernetes Cluster Federation
|
||||
|
||||
###### Auto generated by spf13/cobra on 30-Jul-2017
|
||||
@@ -0,0 +1,59 @@
|
||||
---
|
||||
title: kubefed options
|
||||
notitle: true
|
||||
---
|
||||
## kubefed options
|
||||
|
||||
Print the list of flags inherited by all commands
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
Print the list of flags inherited by all commands
|
||||
|
||||
```
|
||||
kubefed options
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
```
|
||||
# Print flags inherited by all commands
|
||||
kubefed options
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 209.85.152.0/22,209.85.204.0/22,130.211.0.0/22,35.191.0.0/16)
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--logtostderr log to standard error instead of files (default true)
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
* [kubefed](kubefed.md) - kubefed controls a Kubernetes Cluster Federation
|
||||
|
||||
###### Auto generated by spf13/cobra on 30-Jul-2017
|
||||
@@ -0,0 +1,73 @@
|
||||
---
|
||||
title: kubefed unjoin
|
||||
notitle: true
|
||||
---
|
||||
## kubefed unjoin
|
||||
|
||||
Unjoin a cluster from a federation
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
Unjoin a cluster from a federation.
|
||||
|
||||
Current context is assumed to be a federation endpoint.
|
||||
Please use the --context flag otherwise.
|
||||
|
||||
```
|
||||
kubefed unjoin CLUSTER_NAME --host-cluster-context=HOST_CONTEXT
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
```
|
||||
# Unjoin the specified cluster from a federation.
|
||||
# Federation control plane's host cluster context name
|
||||
# must be specified via the --host-cluster-context flag
|
||||
# to properly cleanup the credentials.
|
||||
kubectl unjoin foo --host-cluster-context=bar --cluster-context=baz
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--cluster-context string Name of the cluster's context in the local kubeconfig. Defaults to cluster name if unspecified.
|
||||
--federation-system-namespace string Namespace in the host cluster where the federation system components are installed (default "federation-system")
|
||||
--host-cluster-context string Host cluster context
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 209.85.152.0/22,209.85.204.0/22,130.211.0.0/22,35.191.0.0/16)
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--logtostderr log to standard error instead of files (default true)
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
* [kubefed](kubefed.md) - kubefed controls a Kubernetes Cluster Federation
|
||||
|
||||
###### Auto generated by spf13/cobra on 30-Jul-2017
|
||||
@@ -0,0 +1,67 @@
|
||||
---
|
||||
title: kubefed version
|
||||
notitle: true
|
||||
---
|
||||
## kubefed version
|
||||
|
||||
Print the client and server version information
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
Print the client and server version information for the current context
|
||||
|
||||
```
|
||||
kubefed version
|
||||
```
|
||||
|
||||
### Examples
|
||||
|
||||
```
|
||||
# Print the client and server versions for the current context
|
||||
kubefed version
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--client Client version only (no server required).
|
||||
--output string output format, options available are yaml and json
|
||||
--short Print just the version number.
|
||||
```
|
||||
|
||||
### Options inherited from parent commands
|
||||
|
||||
```
|
||||
--alsologtostderr log to standard error as well as files
|
||||
--as string Username to impersonate for the operation
|
||||
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
|
||||
--certificate-authority string Path to a cert file for the certificate authority
|
||||
--client-certificate string Path to a client certificate file for TLS
|
||||
--client-key string Path to a client key file for TLS
|
||||
--cloud-provider-gce-lb-src-cidrs cidrs CIDRS opened in GCE firewall for LB traffic proxy & health checks (default 209.85.152.0/22,209.85.204.0/22,130.211.0.0/22,35.191.0.0/16)
|
||||
--cluster string The name of the kubeconfig cluster to use
|
||||
--context string The name of the kubeconfig context to use
|
||||
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
|
||||
--kubeconfig string Path to the kubeconfig file to use for CLI requests.
|
||||
--log-backtrace-at traceLocation when logging hits line file:N, emit a stack trace (default :0)
|
||||
--log-dir string If non-empty, write log files in this directory
|
||||
--log-flush-frequency duration Maximum number of seconds between log flushes (default 5s)
|
||||
--logtostderr log to standard error instead of files (default true)
|
||||
--match-server-version Require server version to match client version
|
||||
-n, --namespace string If present, the namespace scope for this CLI request
|
||||
--password string Password for basic authentication to the API server
|
||||
--request-timeout string 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. (default "0")
|
||||
-s, --server string The address and port of the Kubernetes API server
|
||||
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
|
||||
--token string Bearer token for authentication to the API server
|
||||
--user string The name of the kubeconfig user to use
|
||||
--username string Username for basic authentication to the API server
|
||||
-v, --v Level log level for V logs
|
||||
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
|
||||
```
|
||||
|
||||
### SEE ALSO
|
||||
* [kubefed](kubefed.md) - kubefed controls a Kubernetes Cluster Federation
|
||||
|
||||
###### Auto generated by spf13/cobra on 30-Jul-2017
|
||||
@@ -0,0 +1,196 @@
|
||||
---
|
||||
title: kubelet
|
||||
notitle: true
|
||||
---
|
||||
## kubelet
|
||||
|
||||
|
||||
|
||||
### Synopsis
|
||||
|
||||
|
||||
The kubelet is the primary "node agent" that runs on each
|
||||
node. The kubelet works in terms of a PodSpec. A PodSpec is a YAML or JSON object
|
||||
that describes a pod. The kubelet takes a set of PodSpecs that are provided through
|
||||
various mechanisms (primarily through the apiserver) and ensures that the containers
|
||||
described in those PodSpecs are running and healthy. The kubelet doesn't manage
|
||||
containers which were not created by Kubernetes.
|
||||
|
||||
Other than from a PodSpec from the apiserver, there are three ways that a container
|
||||
manifest can be provided to the Kubelet.
|
||||
|
||||
File: Path passed as a flag on the command line. Files under this path will be monitored
|
||||
periodically for updates. The monitoring period is 20s by default and is configurable
|
||||
via a flag.
|
||||
|
||||
HTTP endpoint: HTTP endpoint passed as a parameter on the command line. This endpoint
|
||||
is checked every 20 seconds (also configurable with a flag).
|
||||
|
||||
HTTP server: The kubelet can also listen for HTTP and respond to a simple API
|
||||
(underspec'd currently) to submit a new manifest.
|
||||
|
||||
```
|
||||
kubelet
|
||||
```
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
--address ip The IP address for the Kubelet to serve on (set to 0.0.0.0 for all interfaces) (default 0.0.0.0)
|
||||
--allow-privileged If true, allow containers to request privileged mode.
|
||||
--anonymous-auth Enables anonymous requests to the Kubelet server. Requests that are not rejected by another authentication method are treated as anonymous requests. Anonymous requests have a username of system:anonymous, and a group name of system:unauthenticated. (default true)
|
||||
--authentication-token-webhook Use the TokenReview API to determine authentication for bearer tokens.
|
||||
--authentication-token-webhook-cache-ttl duration The duration to cache responses from the webhook token authenticator. (default 2m0s)
|
||||
--authorization-mode string Authorization mode for Kubelet server. Valid options are AlwaysAllow or Webhook. Webhook mode uses the SubjectAccessReview API to determine authorization. (default "AlwaysAllow")
|
||||
--authorization-webhook-cache-authorized-ttl duration The duration to cache 'authorized' responses from the webhook authorizer. (default 5m0s)
|
||||
--authorization-webhook-cache-unauthorized-ttl duration The duration to cache 'unauthorized' responses from the webhook authorizer. (default 30s)
|
||||
--azure-container-registry-config string Path to the file container Azure container registry configuration information.
|
||||
--bootstrap-kubeconfig string Path to a kubeconfig file that will be used to get client certificate for kubelet. If the file specified by --kubeconfig does not exist, the bootstrap kubeconfig is used to request a client certificate from the API server. On success, a kubeconfig file referencing the generated client certificate and key is written to the path specified by --kubeconfig. The client certificate and key file will be stored in the directory pointed by --cert-dir.
|
||||
--cadvisor-port int32 The port of the localhost cAdvisor endpoint (set to 0 to disable) (default 4194)
|
||||
--cert-dir string The directory where the TLS certs are located. If --tls-cert-file and --tls-private-key-file are provided, this flag will be ignored. (default "/var/run/kubernetes")
|
||||
--cgroup-driver string Driver that the kubelet uses to manipulate cgroups on the host. Possible values: 'cgroupfs', 'systemd' (default "cgroupfs")
|
||||
--cgroup-root string Optional root cgroup to use for pods. This is handled by the container runtime on a best effort basis. Default: '', which means use the container runtime default.
|
||||
--cgroups-per-qos Enable creation of QoS cgroup hierarchy, if true top level QoS and pod cgroups are created. (default true)
|
||||
--chaos-chance float If > 0.0, introduce random client errors and latency. Intended for testing.
|
||||
--client-ca-file string If set, any request presenting a client certificate signed by one of the authorities in the client-ca-file is authenticated with an identity corresponding to the CommonName of the client certificate.
|
||||
--cloud-config string The path to the cloud provider configuration file. Empty string for no configuration file.
|
||||
--cloud-provider string The provider for cloud services. By default, kubelet will attempt to auto-detect the cloud provider (deprecated). Specify empty string for running with no cloud provider, this will be the default in upcoming releases. (default "auto-detect")
|
||||
--cluster-dns stringSlice Comma-separated list of DNS server IP address. This value is used for containers DNS server in case of Pods with "dnsPolicy=ClusterFirst". Note: all DNS servers appearing in the list MUST serve the same set of records otherwise name resolution within the cluster may not work correctly. There is no guarantee as to which DNS server may be contacted for name resolution.
|
||||
--cluster-domain string Domain for this cluster. If set, kubelet will configure all containers to search this domain in addition to the host's search domains
|
||||
--cni-bin-dir string <Warning: Alpha feature> The full path of the directory in which to search for CNI plugin binaries. Default: /opt/cni/bin
|
||||
--cni-conf-dir string <Warning: Alpha feature> The full path of the directory in which to search for CNI config files. Default: /etc/cni/net.d
|
||||
--container-runtime string The container runtime to use. Possible values: 'docker', 'rkt'. (default "docker")
|
||||
--container-runtime-endpoint string [Experimental] The endpoint of remote runtime service. Currently unix socket is supported on Linux, and tcp is supported on windows. Examples:'unix:///var/run/dockershim.sock', 'tcp://localhost:3735' (default "unix:///var/run/dockershim.sock")
|
||||
--containerized Experimental support for running kubelet in a container. Intended for testing.
|
||||
--contention-profiling Enable lock contention profiling, if profiling is enabled
|
||||
--cpu-cfs-quota Enable CPU CFS quota enforcement for containers that specify CPU limits (default true)
|
||||
--cpu-manager-policy string <Warning: Alpha feature> CPU Manager policy to use. Possible values: 'none', 'static'. Default: 'none' (default "none")
|
||||
--cpu-manager-reconcile-period NodeStatusUpdateFrequency <Warning: Alpha feature> CPU Manager reconciliation period. Examples: '10s', or '1m'. If not supplied, defaults to NodeStatusUpdateFrequency (default 10s)
|
||||
--docker-disable-shared-pid The Container Runtime Interface (CRI) defaults to using a shared PID namespace for containers in a pod when running with Docker 1.13.1 or higher. Setting this flag reverts to the previous behavior of isolated PID namespaces. This ability will be removed in a future Kubernetes release. (default true)
|
||||
--docker-endpoint string Use this for the docker endpoint to communicate with (default "unix:///var/run/docker.sock")
|
||||
--dynamic-config-dir string The Kubelet will use this directory for checkpointing downloaded configurations and tracking configuration health. The Kubelet will create this directory if it does not already exist. The path may be absolute or relative; relative paths start at the Kubelet's current working directory. Providing this flag enables dynamic Kubelet configuration. Presently, you must also enable the DynamicKubeletConfig feature gate to pass this flag.
|
||||
--enable-controller-attach-detach Enables the Attach/Detach controller to manage attachment/detachment of volumes scheduled to this node, and disables kubelet from executing any attach/detach operations (default true)
|
||||
--enable-custom-metrics Support for gathering custom metrics.
|
||||
--enable-debugging-handlers Enables server endpoints for log collection and local running of containers and commands (default true)
|
||||
--enable-server Enable the Kubelet's server (default true)
|
||||
--enforce-node-allocatable stringSlice A comma separated list of levels of node allocatable enforcement to be enforced by kubelet. Acceptible options are 'pods', 'system-reserved' & 'kube-reserved'. If the latter two options are specified, '--system-reserved-cgroup' & '--kube-reserved-cgroup' must also be set respectively. See https://git.k8s.io/community/contributors/design-proposals/node-allocatable.md for more details. (default [pods])
|
||||
--event-burst int32 Maximum size of a bursty event records, temporarily allows event records to burst to this number, while still not exceeding event-qps. Only used if --event-qps > 0 (default 10)
|
||||
--event-qps int32 If > 0, limit event creations per second to this value. If 0, unlimited. (default 5)
|
||||
--eviction-hard string A set of eviction thresholds (e.g. memory.available<1Gi) that if met would trigger a pod eviction. (default "memory.available<100Mi,nodefs.available<10%,nodefs.inodesFree<5%")
|
||||
--eviction-max-pod-grace-period int32 Maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met. If negative, defer to pod specified value.
|
||||
--eviction-minimum-reclaim string A set of minimum reclaims (e.g. imagefs.available=2Gi) that describes the minimum amount of resource the kubelet will reclaim when performing a pod eviction if that resource is under pressure.
|
||||
--eviction-pressure-transition-period duration Duration for which the kubelet has to wait before transitioning out of an eviction pressure condition. (default 5m0s)
|
||||
--eviction-soft string A set of eviction thresholds (e.g. memory.available<1.5Gi) that if met over a corresponding grace period would trigger a pod eviction.
|
||||
--eviction-soft-grace-period string A set of eviction grace periods (e.g. memory.available=1m30s) that correspond to how long a soft eviction threshold must hold before triggering a pod eviction.
|
||||
--exit-on-lock-contention Whether kubelet should exit upon lock-file contention.
|
||||
--experimental-allocatable-ignore-eviction When set to 'true', Hard Eviction Thresholds will be ignored while calculating Node Allocatable. See https://git.k8s.io/community/contributors/design-proposals/node-allocatable.md for more details. [default=false]
|
||||
--experimental-allowed-unsafe-sysctls stringSlice Comma-separated whitelist of unsafe sysctls or unsafe sysctl patterns (ending in *). Use these at your own risk.
|
||||
--experimental-bootstrap-kubeconfig string deprecated: use --bootstrap-kubeconfig
|
||||
--experimental-check-node-capabilities-before-mount [Experimental] if set true, the kubelet will check the underlying node for required components (binaries, etc.) before performing the mount
|
||||
--experimental-kernel-memcg-notification If enabled, the kubelet will integrate with the kernel memcg notification to determine if memory eviction thresholds are crossed rather than polling.
|
||||
--experimental-mounter-path string [Experimental] Path of mounter binary. Leave empty to use the default mount.
|
||||
--experimental-qos-reserved mapStringString A set of ResourceName=Percentage (e.g. memory=50%) pairs that describe how pod resource requests are reserved at the QoS level. Currently only memory is supported. [default=none]
|
||||
--fail-swap-on Makes the Kubelet fail to start if swap is enabled on the node. (default true)
|
||||
--feature-gates string A set of key=value pairs that describe feature gates for alpha/experimental features. Options are:
|
||||
APIListChunking=true|false (ALPHA - default=false)
|
||||
APIResponseCompression=true|false (ALPHA - default=false)
|
||||
Accelerators=true|false (ALPHA - default=false)
|
||||
AdvancedAuditing=true|false (BETA - default=true)
|
||||
AllAlpha=true|false (ALPHA - default=false)
|
||||
AllowExtTrafficLocalEndpoints=true|false (default=true)
|
||||
AppArmor=true|false (BETA - default=true)
|
||||
CPUManager=true|false (ALPHA - default=false)
|
||||
CustomResourceValidation=true|false (ALPHA - default=false)
|
||||
DebugContainers=true|false (ALPHA - default=false)
|
||||
DevicePlugins=true|false (ALPHA - default=false)
|
||||
DynamicKubeletConfig=true|false (ALPHA - default=false)
|
||||
EnableEquivalenceClassCache=true|false (ALPHA - default=false)
|
||||
ExpandPersistentVolumes=true|false (ALPHA - default=false)
|
||||
ExperimentalCriticalPodAnnotation=true|false (ALPHA - default=false)
|
||||
ExperimentalHostUserNamespaceDefaulting=true|false (BETA - default=false)
|
||||
HugePages=true|false (ALPHA - default=false)
|
||||
Initializers=true|false (ALPHA - default=false)
|
||||
KubeletConfigFile=true|false (ALPHA - default=false)
|
||||
LocalStorageCapacityIsolation=true|false (ALPHA - default=false)
|
||||
MountPropagation=true|false (ALPHA - default=false)
|
||||
PersistentLocalVolumes=true|false (ALPHA - default=false)
|
||||
PodPriority=true|false (ALPHA - default=false)
|
||||
RotateKubeletClientCertificate=true|false (BETA - default=true)
|
||||
RotateKubeletServerCertificate=true|false (ALPHA - default=false)
|
||||
StreamingProxyRedirects=true|false (BETA - default=true)
|
||||
SupportIPVSProxyMode=true|false (ALPHA - default=false)
|
||||
TaintBasedEvictions=true|false (ALPHA - default=false)
|
||||
TaintNodesByCondition=true|false (ALPHA - default=false)
|
||||
--file-check-frequency duration Duration between checking config files for new data (default 20s)
|
||||
--google-json-key string The Google Cloud Platform Service Account JSON Key to use for authentication.
|
||||
--hairpin-mode string How should the kubelet setup hairpin NAT. This allows endpoints of a Service to loadbalance back to themselves if they should try to access their own Service. Valid values are "promiscuous-bridge", "hairpin-veth" and "none". (default "promiscuous-bridge")
|
||||
--healthz-bind-address ip The IP address for the healthz server to serve on. (set to 0.0.0.0 for all interfaces) (default 127.0.0.1)
|
||||
--healthz-port int32 The port of the localhost healthz endpoint (set to 0 to disable) (default 10248)
|
||||
--host-ipc-sources stringSlice Comma-separated list of sources from which the Kubelet allows pods to use the host ipc namespace. (default [*])
|
||||
--host-network-sources stringSlice Comma-separated list of sources from which the Kubelet allows pods to use of host network. (default [*])
|
||||
--host-pid-sources stringSlice Comma-separated list of sources from which the Kubelet allows pods to use the host pid namespace. (default [*])
|
||||
--hostname-override string If non-empty, will use this string as identification instead of the actual hostname.
|
||||
--http-check-frequency duration Duration between checking http for new data (default 20s)
|
||||
--image-gc-high-threshold int32 The percent of disk usage after which image garbage collection is always run. (default 85)
|
||||
--image-gc-low-threshold int32 The percent of disk usage before which image garbage collection is never run. Lowest disk usage to garbage collect to. (default 80)
|
||||
--image-pull-progress-deadline duration If no pulling progress is made before this deadline, the image pulling will be cancelled. (default 1m0s)
|
||||
--image-service-endpoint string [Experimental] The endpoint of remote image service. If not specified, it will be the same with container-runtime-endpoint by default. Currently unix socket is supported on Linux, and tcp is supported on windows. Examples:'unix:///var/run/dockershim.sock', 'tcp://localhost:3735'
|
||||
--init-config-dir string The Kubelet will look in this directory for the init configuration. The path may be absolute or relative; relative paths start at the Kubelet's current working directory. Omit this argument to use the built-in default configuration values. Presently, you must also enable the DynamicKubeletConfig feature gate to pass this flag.
|
||||
--iptables-drop-bit int32 The bit of the fwmark space to mark packets for dropping. Must be within the range [0, 31]. (default 15)
|
||||
--iptables-masquerade-bit int32 The bit of the fwmark space to mark packets for SNAT. Must be within the range [0, 31]. Please match this parameter with corresponding parameter in kube-proxy. (default 14)
|
||||
--kube-api-burst int32 Burst to use while talking with kubernetes apiserver (default 10)
|
||||
--kube-api-content-type string Content type of requests sent to apiserver. (default "application/vnd.kubernetes.protobuf")
|
||||
--kube-api-qps int32 QPS to use while talking with kubernetes apiserver (default 5)
|
||||
--kube-reserved mapStringString A set of ResourceName=ResourceQuantity (e.g. cpu=200m,memory=500Mi, storage=1Gi) pairs that describe resources reserved for kubernetes system components. Currently cpu, memory and local storage for root file system are supported. See http://kubernetes.io/docs/user-guide/compute-resources for more detail. [default=none]
|
||||
--kube-reserved-cgroup string Absolute name of the top level cgroup that is used to manage kubernetes components for which compute resources were reserved via '--kube-reserved' flag. Ex. '/kube-reserved'. [default='']
|
||||
--kubeconfig string Path to a kubeconfig file, specifying how to connect to the API server. (default "/var/lib/kubelet/kubeconfig")
|
||||
--kubelet-cgroups string Optional absolute name of cgroups to create and run the Kubelet in.
|
||||
--lock-file string <Warning: Alpha feature> The path to file for kubelet to use as a lock file.
|
||||
--make-iptables-util-chains If true, kubelet will ensure iptables utility rules are present on host. (default true)
|
||||
--manifest-url string URL for accessing the container manifest
|
||||
--manifest-url-header string HTTP header to use when accessing the manifest URL, with the key separated from the value with a ':', as in 'key:value'
|
||||
--max-open-files int Number of files that can be opened by Kubelet process. (default 1000000)
|
||||
--max-pods int32 Number of Pods that can run on this Kubelet. (default 110)
|
||||
--minimum-image-ttl-duration duration Minimum age for an unused image before it is garbage collected. Examples: '300ms', '10s' or '2h45m'. (default 2m0s)
|
||||
--network-plugin string <Warning: Alpha feature> The name of the network plugin to be invoked for various events in kubelet/pod lifecycle
|
||||
--network-plugin-mtu int32 <Warning: Alpha feature> The MTU to be passed to the network plugin, to override the default. Set to 0 to use the default 1460 MTU.
|
||||
--node-ip string IP address of the node. If set, kubelet will use this IP address for the node
|
||||
--node-labels mapStringString <Warning: Alpha feature> Labels to add when registering the node in the cluster. Labels must be key=value pairs separated by ','.
|
||||
--node-status-update-frequency duration Specifies how often kubelet posts node status to master. Note: be cautious when changing the constant, it must work with nodeMonitorGracePeriod in nodecontroller. (default 10s)
|
||||
--oom-score-adj int32 The oom-score-adj value for kubelet process. Values must be within the range [-1000, 1000] (default -999)
|
||||
--pod-cidr string The CIDR to use for pod IP addresses, only used in standalone mode. In cluster mode, this is obtained from the master.
|
||||
--pod-infra-container-image string The image whose network/ipc namespaces containers in each pod will use. (default "gcr.io/google_containers/pause-amd64:3.0")
|
||||
--pod-manifest-path string Path to to the directory containing pod manifest files to run, or the path to a single pod manifest file. Files starting with dots will be ignored.
|
||||
--pods-per-core int32 Number of Pods per core that can run on this Kubelet. The total number of Pods on this Kubelet cannot exceed max-pods, so max-pods will be used if this calculation results in a larger number of Pods allowed on the Kubelet. A value of 0 disables this limit.
|
||||
--port int32 The port for the Kubelet to serve on. (default 10250)
|
||||
--protect-kernel-defaults Default kubelet behaviour for kernel tuning. If set, kubelet errors if any of kernel tunables is different than kubelet defaults.
|
||||
--provider-id string Unique identifier for identifying the node in a machine database, i.e cloudprovider
|
||||
--read-only-port int32 The read-only port for the Kubelet to serve on with no authentication/authorization (set to 0 to disable) (default 10255)
|
||||
--really-crash-for-testing If true, when panics occur crash. Intended for testing.
|
||||
--register-node Register the node with the apiserver. If --kubeconfig is not provided, this flag is irrelevant, as the Kubelet won't have an apiserver to register with. Default=true. (default true)
|
||||
--register-with-taints []api.Taint Register the node with the given list of taints (comma separated "<key>=<value>:<effect>"). No-op if register-node is false.
|
||||
--registry-burst int32 Maximum size of a bursty pulls, temporarily allows pulls to burst to this number, while still not exceeding registry-qps. Only used if --registry-qps > 0 (default 10)
|
||||
--registry-qps int32 If > 0, limit registry pull QPS to this value. If 0, unlimited. (default 5)
|
||||
--resolv-conf string Resolver configuration file used as the basis for the container DNS resolution configuration. (default "/etc/resolv.conf")
|
||||
--rkt-api-endpoint string The endpoint of the rkt API service to communicate with. Only used if --container-runtime='rkt'. (default "localhost:15441")
|
||||
--rkt-path string Path of rkt binary. Leave empty to use the first rkt in $PATH. Only used if --container-runtime='rkt'.
|
||||
--root-dir string Directory path for managing kubelet files (volume mounts,etc). (default "/var/lib/kubelet")
|
||||
--rotate-certificates <Warning: Beta feature> Auto rotate the kubelet client certificates by requesting new certificates from the kube-apiserver when the certificate expiration approaches.
|
||||
--runonce If true, exit after spawning pods from local manifests or remote urls. Exclusive with --enable-server
|
||||
--runtime-cgroups string Optional absolute name of cgroups to create and run the runtime in.
|
||||
--runtime-request-timeout duration Timeout of all runtime requests except long running request - pull, logs, exec and attach. When timeout exceeded, kubelet will cancel the request, throw out an error and retry later. (default 2m0s)
|
||||
--seccomp-profile-root string Directory path for seccomp profiles. (default "/var/lib/kubelet/seccomp")
|
||||
--serialize-image-pulls Pull images one at a time. We recommend *not* changing the default value on nodes that run docker daemon with version < 1.9 or an Aufs storage backend. Issue #10959 has more details. (default true)
|
||||
--streaming-connection-idle-timeout duration Maximum time a streaming connection can be idle before the connection is automatically closed. 0 indicates no timeout. Example: '5m' (default 4h0m0s)
|
||||
--sync-frequency duration Max period between synchronizing running containers and config (default 1m0s)
|
||||
--system-cgroups / Optional absolute name of cgroups in which to place all non-kernel processes that are not already inside a cgroup under /. Empty for no container. Rolling back the flag requires a reboot.
|
||||
--system-reserved mapStringString A set of ResourceName=ResourceQuantity (e.g. cpu=200m,memory=500Mi) pairs that describe resources reserved for non-kubernetes components. Currently only cpu and memory are supported. See http://kubernetes.io/docs/user-guide/compute-resources for more detail. [default=none]
|
||||
--system-reserved-cgroup string Absolute name of the top level cgroup that is used to manage non-kubernetes components for which compute resources were reserved via '--system-reserved' flag. Ex. '/system-reserved'. [default='']
|
||||
--tls-cert-file string File containing x509 Certificate used for serving HTTPS (with intermediate certs, if any, concatenated after server cert). If --tls-cert-file and --tls-private-key-file are not provided, a self-signed certificate and key are generated for the public address and saved to the directory passed to --cert-dir.
|
||||
--tls-private-key-file string File containing x509 private key matching --tls-cert-file.
|
||||
--version version[=true] Print version information and quit
|
||||
--volume-plugin-dir string <Warning: Alpha feature> The full path of the directory in which to search for additional third party volume plugins (default "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/")
|
||||
--volume-stats-agg-period duration Specifies interval for kubelet to calculate and cache the volume disk usage for all pods and volumes. To disable volume calculations, set to 0. (default 1m0s)
|
||||
```
|
||||
|
||||
###### Auto generated by spf13/cobra on 27-Sep-2017
|
||||
@@ -0,0 +1,67 @@
|
||||
---
|
||||
approvers:
|
||||
- chenopis
|
||||
- abiogenesis-now
|
||||
title: Standardized Glossary
|
||||
noedit: true
|
||||
default_active_tag: fundamental
|
||||
---
|
||||
<link href="/css/glossary.css" rel="stylesheet">
|
||||
<script src="/js/glossary.js"></script>
|
||||
|
||||
<p>This glossary is intended to be a comprehensive, standardized list of Kubernetes terminology. It includes technical terms that are specific to K8s, as well as more general terms that provide useful context.</p>
|
||||
|
||||
<div id="tag-container">
|
||||
<p>Filter terms according to their tags:</p>
|
||||
<div class="tag-description invisible" id="placeholder">.</div>
|
||||
{% for tag in site.data.canonical-tags %}
|
||||
{% assign tag_info = tag[1] %}
|
||||
<div class="tag-description hide" id="{{ tag_info.id | prepend: "tag-" | append: "-description" }}">
|
||||
<i>{{ tag_info.description }}</i>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
{% assign sorted_tags = site.data.canonical-tags | where_exp: "tag", "true" | sort: 'name' %}
|
||||
{% for tag_info in sorted_tags %}
|
||||
|
||||
{% assign tag_state_class = "" %}
|
||||
|
||||
{% assign fullTagName = tag_info.id | prepend: "tag-" %}
|
||||
<span id="{{ fullTagName }}" class="tag-option canonical-tag {{ tag_state_class }}" data-target="{{ fullTagName }}">
|
||||
<a href="javascript:void(0)">{{ tag_info.name }}</a>
|
||||
</span>
|
||||
{% endfor %}
|
||||
<span class="tag-option"><a id="select-all-tags" href="javascript:void(0)">Select all</a></span>
|
||||
<span class="tag-option"><a id="deselect-all-tags" href="javascript:void(0)">Deselect all</a></span>
|
||||
</div>
|
||||
|
||||
<p>Click on the <a href="javascript:void(0)" class="no-underline">[+]</a> indicators below to get a longer explanation for any particular term.</p>
|
||||
|
||||
{% assign glossary_terms = site.data.glossary | where_exp: "term", "term.id != '_example'" | sort: 'name' %}
|
||||
|
||||
<ul>
|
||||
{% for term in glossary_terms %}
|
||||
|
||||
{% assign tag_classes = term.tags | join: " tag-" | prepend: "tag-" %}
|
||||
|
||||
{% assign term_visibility_class = "hide" %}
|
||||
{% assign show_count = 0 %}
|
||||
{% assign term_identifier = term.id | prepend: 'term-' %}
|
||||
|
||||
<li class="{{ tag_classes }} {{ term_visibility_class }}" data-show-count="{{ show_count }}">
|
||||
<div id="{{ term_identifier }}" class="term-anchor"></div>
|
||||
<div>
|
||||
<div class="term-name"><b>{{ term.name }}</b><a href="{{ term_identifier | prepend: '#' }}" class="permalink hide">LINK</a></div>
|
||||
{% if term.aka %}
|
||||
Also known as: <i>{{ term.aka | join: ", " }}</i>
|
||||
<br>
|
||||
{% endif %}
|
||||
|
||||
<span class="preview-text">{{ term.short-description | liquify | markdownify }} <a href="javascript:void(0)" class="click-controller no-underline" data-target="{{ term.id }}">[+]</a></span>
|
||||
<div id="{{ term.id }}" class="hide">
|
||||
{{ term.long-description | liquify | markdownify }}
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
@@ -41,4 +41,4 @@ client libraries:
|
||||
|
||||
## Design Docs
|
||||
|
||||
An archive of the design docs for Kubernetes functionality. Good starting points are [Kubernetes Architecture](https://git.k8s.io/community/contributors/design-proposals/architecture/architecture.md) and [Kubernetes Design Overview](https://github.com/kubernetes/kubernetes/tree/{{page.fullversion}}/docs/design).
|
||||
An archive of the design docs for Kubernetes functionality. Good starting points are [Kubernetes Architecture](https://git.k8s.io/community/contributors/design-proposals/architecture/architecture.md) and [Kubernetes Design Overview](https://git.k8s.io/community/contributors/design-proposals).
|
||||
|
||||
@@ -0,0 +1,304 @@
|
||||
---
|
||||
approvers:
|
||||
- bgrant0607
|
||||
- erictune
|
||||
- krousey
|
||||
- clove
|
||||
title: kubectl Cheat Sheet
|
||||
---
|
||||
|
||||
See also: [Kubectl Overview](/docs/user-guide/kubectl-overview/) and [JsonPath Guide](/docs/user-guide/jsonpath).
|
||||
|
||||
## Kubectl Autocomplete
|
||||
|
||||
```console
|
||||
$ source <(kubectl completion bash) # setup autocomplete in bash, bash-completion package should be installed first.
|
||||
$ source <(kubectl completion zsh) # setup autocomplete in zsh
|
||||
```
|
||||
|
||||
## Kubectl Context and Configuration
|
||||
|
||||
Set which Kubernetes cluster `kubectl` communicates with and modifies configuration
|
||||
information. See [Authenticating Across Clusters with kubeconfig](/docs/tasks/access-application-cluster/configure-access-multiple-clusters/) documentation for
|
||||
detailed config file information.
|
||||
|
||||
```console
|
||||
$ kubectl config view # Show Merged kubeconfig settings.
|
||||
|
||||
# use multiple kubeconfig files at the same time and view merged config
|
||||
$ KUBECONFIG=~/.kube/config:~/.kube/kubconfig2 kubectl config view
|
||||
|
||||
# Get the password for the e2e user
|
||||
$ kubectl config view -o jsonpath='{.users[?(@.name == "e2e")].user.password}'
|
||||
|
||||
$ kubectl config current-context # Display the current-context
|
||||
$ kubectl config use-context my-cluster-name # set the default context to my-cluster-name
|
||||
|
||||
# add a new cluster to your kubeconf that supports basic auth
|
||||
$ kubectl config set-credentials kubeuser/foo.kubernetes.com --username=kubeuser --password=kubepassword
|
||||
|
||||
# set a context utilizing a specific username and namespace.
|
||||
$ kubectl config set-context gce --user=cluster-admin --namespace=foo \
|
||||
&& kubectl config use-context gce
|
||||
```
|
||||
|
||||
## Creating Objects
|
||||
|
||||
Kubernetes manifests can be defined in json or yaml. The file extension `.yaml`,
|
||||
`.yml`, and `.json` can be used.
|
||||
|
||||
```console
|
||||
$ kubectl create -f ./my-manifest.yaml # create resource(s)
|
||||
$ kubectl create -f ./my1.yaml -f ./my2.yaml # create from multiple files
|
||||
$ kubectl create -f ./dir # create resource(s) in all manifest files in dir
|
||||
$ kubectl create -f https://git.io/vPieo # create resource(s) from url
|
||||
$ kubectl run nginx --image=nginx # start a single instance of nginx
|
||||
$ kubectl explain pods,svc # get the documentation for pod and svc manifests
|
||||
|
||||
# Create multiple YAML objects from stdin
|
||||
$ cat <<EOF | kubectl create -f -
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: busybox-sleep
|
||||
spec:
|
||||
containers:
|
||||
- name: busybox
|
||||
image: busybox
|
||||
args:
|
||||
- sleep
|
||||
- "1000000"
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: Pod
|
||||
metadata:
|
||||
name: busybox-sleep-less
|
||||
spec:
|
||||
containers:
|
||||
- name: busybox
|
||||
image: busybox
|
||||
args:
|
||||
- sleep
|
||||
- "1000"
|
||||
EOF
|
||||
|
||||
# Create a secret with several keys
|
||||
$ cat <<EOF | kubectl create -f -
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: mysecret
|
||||
type: Opaque
|
||||
data:
|
||||
password: $(echo -n "s33msi4" | base64)
|
||||
username: $(echo -n "jane" | base64)
|
||||
EOF
|
||||
|
||||
```
|
||||
|
||||
## Viewing, Finding Resources
|
||||
|
||||
```console
|
||||
# Get commands with basic output
|
||||
$ kubectl get services # List all services in the namespace
|
||||
$ kubectl get pods --all-namespaces # List all pods in all namespaces
|
||||
$ kubectl get pods -o wide # List all pods in the namespace, with more details
|
||||
$ kubectl get deployment my-dep # List a particular deployment
|
||||
$ kubectl get pods --include-uninitialized # List all pods in the namespace, including uninitialized ones
|
||||
|
||||
# Describe commands with verbose output
|
||||
$ kubectl describe nodes my-node
|
||||
$ kubectl describe pods my-pod
|
||||
|
||||
$ kubectl get services --sort-by=.metadata.name # List Services Sorted by Name
|
||||
|
||||
# List pods Sorted by Restart Count
|
||||
$ kubectl get pods --sort-by='.status.containerStatuses[0].restartCount'
|
||||
|
||||
# Get the version label of all pods with label app=cassandra
|
||||
$ kubectl get pods --selector=app=cassandra rc -o \
|
||||
jsonpath='{.items[*].metadata.labels.version}'
|
||||
|
||||
# Get all running pods in the namespace
|
||||
$ kubectl get pods --field-selector=status.phase=Running
|
||||
|
||||
# Get ExternalIPs of all nodes
|
||||
$ kubectl get nodes -o jsonpath='{.items[*].status.addresses[?(@.type=="ExternalIP")].address}'
|
||||
|
||||
# List Names of Pods that belong to Particular RC
|
||||
# "jq" command useful for transformations that are too complex for jsonpath, it can be found at https://stedolan.github.io/jq/
|
||||
$ sel=${$(kubectl get rc my-rc --output=json | jq -j '.spec.selector | to_entries | .[] | "\(.key)=\(.value),"')%?}
|
||||
$ echo $(kubectl get pods --selector=$sel --output=jsonpath={.items..metadata.name})
|
||||
|
||||
# Check which nodes are ready
|
||||
$ JSONPATH='{range .items[*]}{@.metadata.name}:{range @.status.conditions[*]}{@.type}={@.status};{end}{end}' \
|
||||
&& kubectl get nodes -o jsonpath="$JSONPATH" | grep "Ready=True"
|
||||
|
||||
# List all Secrets currently in use by a pod
|
||||
$ kubectl get pods -o json | jq '.items[].spec.containers[].env[]?.valueFrom.secretKeyRef.name' | grep -v null | sort | uniq
|
||||
```
|
||||
|
||||
## Updating Resources
|
||||
|
||||
```console
|
||||
$ kubectl rolling-update frontend-v1 -f frontend-v2.json # Rolling update pods of frontend-v1
|
||||
$ kubectl rolling-update frontend-v1 frontend-v2 --image=image:v2 # Change the name of the resource and update the image
|
||||
$ kubectl rolling-update frontend --image=image:v2 # Update the pods image of frontend
|
||||
$ kubectl rolling-update frontend-v1 frontend-v2 --rollback # Abort existing rollout in progress
|
||||
$ cat pod.json | kubectl replace -f - # Replace a pod based on the JSON passed into stdin
|
||||
|
||||
# Force replace, delete and then re-create the resource. Will cause a service outage.
|
||||
$ kubectl replace --force -f ./pod.json
|
||||
|
||||
# Create 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
|
||||
|
||||
# Update a single-container pod's image version (tag) to v4
|
||||
$ kubectl get pod mypod -o yaml | sed 's/\(image: myimage\):.*$/\1:v4/' | kubectl replace -f -
|
||||
|
||||
$ kubectl label pods my-pod new-label=awesome # Add a Label
|
||||
$ kubectl annotate pods my-pod icon-url=http://goo.gl/XXBTWq # Add an annotation
|
||||
$ kubectl autoscale deployment foo --min=2 --max=10 # Auto scale a deployment "foo"
|
||||
```
|
||||
|
||||
## Patching Resources
|
||||
|
||||
```console
|
||||
$ kubectl patch node k8s-node-1 -p '{"spec":{"unschedulable":true}}' # Partially update a node
|
||||
|
||||
# Update a container's image; spec.containers[*].name is required because it's a merge key
|
||||
$ kubectl patch pod valid-pod -p '{"spec":{"containers":[{"name":"kubernetes-serve-hostname","image":"new image"}]}}'
|
||||
|
||||
# Update a container's image using a json patch with positional arrays
|
||||
$ kubectl patch pod valid-pod --type='json' -p='[{"op": "replace", "path": "/spec/containers/0/image", "value":"new image"}]'
|
||||
|
||||
# Disable a deployment livenessProbe using a json patch with positional arrays
|
||||
$ kubectl patch deployment valid-deployment --type json -p='[{"op": "remove", "path": "/spec/template/spec/containers/0/livenessProbe"}]'
|
||||
|
||||
# Add a new element to a positional array
|
||||
$ kubectl patch sa default --type='json' -p='[{"op": "add", "path": "/secrets/1", "value": {"name": "whatever" } }]'
|
||||
```
|
||||
|
||||
## Editing Resources
|
||||
The edit any API resource in an editor.
|
||||
|
||||
```console
|
||||
$ kubectl edit svc/docker-registry # Edit the service named docker-registry
|
||||
$ KUBE_EDITOR="nano" kubectl edit svc/docker-registry # Use an alternative editor
|
||||
```
|
||||
|
||||
## Scaling Resources
|
||||
|
||||
```console
|
||||
$ kubectl scale --replicas=3 rs/foo # Scale a replicaset named 'foo' to 3
|
||||
$ kubectl scale --replicas=3 -f foo.yaml # Scale a resource specified in "foo.yaml" to 3
|
||||
$ kubectl scale --current-replicas=2 --replicas=3 deployment/mysql # If the deployment named mysql's current size is 2, scale mysql to 3
|
||||
$ kubectl scale --replicas=5 rc/foo rc/bar rc/baz # Scale multiple replication controllers
|
||||
```
|
||||
|
||||
## Deleting Resources
|
||||
|
||||
```console
|
||||
$ kubectl delete -f ./pod.json # Delete a pod using the type and name specified in pod.json
|
||||
$ kubectl delete pod,service baz foo # Delete pods and services with same names "baz" and "foo"
|
||||
$ kubectl delete pods,services -l name=myLabel # Delete pods and services with label name=myLabel
|
||||
$ kubectl delete pods,services -l name=myLabel --include-uninitialized # Delete pods and services, including uninitialized ones, with label name=myLabel
|
||||
$ kubectl -n my-ns delete po,svc --all # Delete all pods and services, including uninitialized ones, in namespace my-ns,
|
||||
```
|
||||
|
||||
## Interacting with running Pods
|
||||
|
||||
```console
|
||||
$ kubectl logs my-pod # dump pod logs (stdout)
|
||||
$ kubectl logs my-pod -c my-container # dump pod container logs (stdout, multi-container case)
|
||||
$ kubectl logs -f my-pod # stream pod logs (stdout)
|
||||
$ kubectl logs -f my-pod -c my-container # stream pod container logs (stdout, multi-container case)
|
||||
$ kubectl run -i --tty busybox --image=busybox -- sh # Run pod as interactive shell
|
||||
$ kubectl attach my-pod -i # Attach to Running Container
|
||||
$ kubectl port-forward my-pod 5000:6000 # Forward port 6000 of Pod to your to 5000 on your local machine
|
||||
$ kubectl exec my-pod -- ls / # Run command in existing pod (1 container case)
|
||||
$ kubectl exec my-pod -c my-container -- ls / # Run command in existing pod (multi-container case)
|
||||
$ kubectl top pod POD_NAME --containers # Show metrics for a given pod and its containers
|
||||
```
|
||||
|
||||
## Interacting with Nodes and Cluster
|
||||
|
||||
```console
|
||||
$ kubectl cordon my-node # Mark my-node as unschedulable
|
||||
$ kubectl drain my-node # Drain my-node in preparation for maintenance
|
||||
$ kubectl uncordon my-node # Mark my-node as schedulable
|
||||
$ kubectl top node my-node # Show metrics for a given node
|
||||
$ kubectl cluster-info # Display addresses of the master and services
|
||||
$ kubectl cluster-info dump # Dump current cluster state to stdout
|
||||
$ kubectl cluster-info dump --output-directory=/path/to/cluster-state # Dump current cluster state to /path/to/cluster-state
|
||||
|
||||
# If a taint with that key and effect already exists, its value is replaced as specified.
|
||||
$ kubectl taint nodes foo dedicated=special-user:NoSchedule
|
||||
```
|
||||
|
||||
## Resource types
|
||||
|
||||
The following table includes a list of all the supported resource types and their abbreviated aliases:
|
||||
|
||||
Resource type | Abbreviated alias
|
||||
-------------------- | --------------------
|
||||
`clusters` |
|
||||
`componentstatuses` |`cs`
|
||||
`configmaps` |`cm`
|
||||
`daemonsets` |`ds`
|
||||
`deployments` |`deploy`
|
||||
`endpoints` |`ep`
|
||||
`event` |`ev`
|
||||
`horizontalpodautoscalers` |`hpa`
|
||||
`ingresses` |`ing`
|
||||
`jobs` |
|
||||
`limitranges` |`limits`
|
||||
`namespaces` |`ns`
|
||||
`networkpolicies` |
|
||||
`nodes` |`no`
|
||||
`statefulsets` |
|
||||
`persistentvolumeclaims` |`pvc`
|
||||
`persistentvolumes` |`pv`
|
||||
`pods` |`po`
|
||||
`podsecuritypolicies` |`psp`
|
||||
`podtemplates` |
|
||||
`replicasets` |`rs`
|
||||
`replicationcontrollers` |`rc`
|
||||
`resourcequotas` |`quota`
|
||||
`cronjob` |
|
||||
`secrets` |
|
||||
`serviceaccount` |`sa`
|
||||
`services` |`svc`
|
||||
`storageclasses` |
|
||||
`thirdpartyresources` |
|
||||
|
||||
### Formatting output
|
||||
|
||||
To output details to your terminal window in a specific format, you can add either the `-o` or `-output` flags to a supported `kubectl` command.
|
||||
|
||||
Output format | Description
|
||||
--------------| -----------
|
||||
`-o=custom-columns=<spec>` | Print a table using a comma separated list of custom columns
|
||||
`-o=custom-columns-file=<filename>` | Print a table using the custom columns template in the `<filename>` file
|
||||
`-o=json` | Output a JSON formatted API object
|
||||
`-o=jsonpath=<template>` | Print the fields defined in a [jsonpath](/docs/user-guide/jsonpath) expression
|
||||
`-o=jsonpath-file=<filename>` | Print the fields defined by the [jsonpath](/docs/user-guide/jsonpath) expression in the `<filename>` file
|
||||
`-o=name` | Print only the resource name and nothing else
|
||||
`-o=wide` | Output in the plain-text format with any additional information, and for pods, the node name is included
|
||||
`-o=yaml` | Output a YAML formatted API object
|
||||
|
||||
### Kubectl output verbosity and debugging
|
||||
|
||||
Kubectl verbosity is controlled with the `-v` or `--v` flags followed by an integer representing the log level. General Kubernetes logging conventions and the associated log levels are described [here](https://github.com/kubernetes/community/blob/master/contributors/devel/logging.md).
|
||||
|
||||
Verbosity | Description
|
||||
--------------| -----------
|
||||
`--v=0` | Generally useful for this to ALWAYS be visible to an operator.
|
||||
`--v=1` | A reasonable default log level if you don't want verbosity.
|
||||
`--v=2` | Useful steady state information about the service and important log messages that may correlate to significant changes in the system. This is the recommended default log level for most systems.
|
||||
`--v=3` | Extended information about changes.
|
||||
`--v=4` | Debug level verbosity.
|
||||
`--v=6` | Display requested resources.
|
||||
`--v=7` | Display HTTP request headers.
|
||||
`--v=8` | Display HTTP request contents.
|
||||
|
||||
@@ -0,0 +1,73 @@
|
||||
---
|
||||
approvers:
|
||||
- bgrant0607
|
||||
- janetkuo
|
||||
title: kubectl Usage Conventions
|
||||
---
|
||||
|
||||
* TOC
|
||||
{:toc}
|
||||
|
||||
## Using `kubectl` in Reusable Scripts
|
||||
|
||||
If you need stable output in a script, you should:
|
||||
|
||||
* Request one of the machine-oriented output forms, such as `-o name`, `-o json`, `-o yaml`, `-o go-template`, or `-o jsonpath`
|
||||
* Specify `--output-version`, since those output forms (other than `-o name`) output the resource using a particular API version
|
||||
* Specify `--generator` to pin to a specific behavior forever, if using generator-based commands (such as `kubectl run` or `kubectl expose`)
|
||||
* Don't rely on context, preferences, or other implicit state
|
||||
|
||||
## Best Practices
|
||||
|
||||
### `kubectl run`
|
||||
|
||||
In order for `kubectl run` to satisfy infrastructure as code:
|
||||
|
||||
* Always tag your image with a version-specific tag and don't move that tag to a new version. For example, use `:v1234`, `v1.2.3`, `r03062016-1-4`, rather than `:latest` (see [Best Practices for Configuration](/docs/concepts/configuration/overview/#container-images) for more information).
|
||||
* If the image is lightly parameterized, capture the parameters in a checked-in script, or at least use `--record`to annotate the created objects with the command line.
|
||||
* If the image is heavily parameterized, definitely check in the script.
|
||||
* If features are needed that are not expressible via `kubectl run` flags, switch to configuration files checked into source control.
|
||||
* Pin to a specific [generator](#generators) version, such as `kubectl run --generator=deployment/v1beta1`.
|
||||
|
||||
#### Generators
|
||||
|
||||
`kubectl run` allows you to generate the following resources (using `--generator` flag):
|
||||
|
||||
* Pod - use `run-pod/v1`.
|
||||
* Replication controller - use `run/v1`.
|
||||
* Deployment, using `extensions/v1beta1` endpoint - use `deployment/v1beta1` (default).
|
||||
* Deployment, using `apps/v1beta1` endpoint - use `deployment/apps.v1beta1` (recommended).
|
||||
* Job - use `job/v1`.
|
||||
* CronJob - using `batch/v1beta1` endpoint - use `cronjob/v1beta1`(default).
|
||||
* CronJob - using `batch/v2alpha1` endpoint - use `cronjob/v2alpha1` (deprecated).
|
||||
|
||||
Additionally, if you didn't specify a generator flag, other flags will suggest using
|
||||
a specific generator. Below table shows which flags force using specific generators,
|
||||
depending on your cluster version:
|
||||
|
||||
| Generated Resource | Cluster v1.4 and later | Cluster v1.3 | Cluster v1.2 | Cluster v1.1 and earlier |
|
||||
|:----------------------:|------------------------|-----------------------|--------------------------------------------|--------------------------------------------|
|
||||
| Pod | `--restart=Never` | `--restart=Never` | `--generator=run-pod/v1` | `--restart=OnFailure` OR `--restart=Never` |
|
||||
| Replication Controller | `--generator=run/v1` | `--generator=run/v1` | `--generator=run/v1` | `--restart=Always` |
|
||||
| Deployment | `--restart=Always` | `--restart=Always` | `--restart=Always` | N/A |
|
||||
| Job | `--restart=OnFailure` | `--restart=OnFailure` | `--restart=OnFailure` OR `--restart=Never` | N/A |
|
||||
| Cron Job | `--schedule=<cron>` | N/A | N/A | N/A |
|
||||
|
||||
Note that these flags will use a default generator only when you have not specified
|
||||
any flag. This also means that combining `--generator` with other flags won't
|
||||
change the generator you specified. For example, in a 1.4 cluster, if you specify
|
||||
`--restart=Always`, a Deployment will be created; if you specify `--restart=Always`
|
||||
and `--generator=run/v1`, a Replication Controller will be created instead.
|
||||
This becomes handy if you want to pin to a specific behavior with the generator,
|
||||
even when the defaulted generator is changed in the future.
|
||||
|
||||
Finally, the order in which flags set the generator is: schedule flag has the highest
|
||||
priority, then restart policy and finally the generator itself.
|
||||
|
||||
If in doubt about the final resource being created, you can always use `--dry-run`
|
||||
flag, which will provide the object to be submitted to the cluster.
|
||||
|
||||
|
||||
### `kubectl apply`
|
||||
|
||||
* To use `kubectl apply` to update resources, always create resources initially with `kubectl apply` or with `--save-config`. See [managing resources with kubectl apply](/docs/concepts/cluster-administration/manage-deployment/#kubectl-apply) for the reason behind it.
|
||||
@@ -0,0 +1,290 @@
|
||||
---
|
||||
approvers:
|
||||
- bgrant0607
|
||||
- brendandburns
|
||||
- thockin
|
||||
title: kubectl for Docker Users
|
||||
---
|
||||
|
||||
In this doc, we introduce the Kubernetes command line for interacting with the api to docker-cli users. The tool, kubectl, is designed to be familiar to docker-cli users but there are a few necessary differences. Each section of this doc highlights a docker subcommand explains the kubectl equivalent.
|
||||
|
||||
* TOC
|
||||
{:toc}
|
||||
|
||||
#### docker run
|
||||
|
||||
How do I run an nginx Deployment and expose it to the world? Checkout [kubectl run](/docs/user-guide/kubectl/{{page.version}}/#run).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker run -d --restart=always -e DOMAIN=cluster --name nginx-app -p 80:80 nginx
|
||||
55c103fa129692154a7652490236fee9be47d70a8dd562281ae7d2f9a339a6db
|
||||
|
||||
$ docker ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
55c103fa1296 nginx "nginx -g 'daemon of…" 9 seconds ago Up 9 seconds 0.0.0.0:80->80/tcp nginx-app
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
# start the pod running nginx
|
||||
$ kubectl run --image=nginx nginx-app --port=80 --env="DOMAIN=cluster"
|
||||
deployment "nginx-app" created
|
||||
```
|
||||
|
||||
`kubectl run` creates a Deployment named "nginx-app" on Kubernetes cluster >= v1.2. If you are running older versions, it creates replication controllers instead.
|
||||
If you want to obtain the old behavior, use `--generator=run/v1` to create replication controllers. See [`kubectl run`](/docs/user-guide/kubectl/{{page.version}}/#run) for more details.
|
||||
Note that `kubectl` commands will print the type and name of the resource created or mutated, which can then be used in subsequent commands. Now, we can expose a new Service with the deployment created above:
|
||||
|
||||
```shell
|
||||
# expose a port through with a service
|
||||
$ kubectl expose deployment nginx-app --port=80 --name=nginx-http
|
||||
service "nginx-http" exposed
|
||||
```
|
||||
|
||||
With kubectl, we create a [Deployment](/docs/concepts/workloads/controllers/deployment/) which will make sure that N pods are running nginx (where N is the number of replicas stated in the spec, which defaults to 1). We also create a [service](/docs/user-guide/services) with a selector that matches the Deployment's selector. See the [Quick start](/docs/user-guide/quick-start) for more information.
|
||||
|
||||
By default images are run in the background, similar to `docker run -d ...`, if you want to run things in the foreground, use:
|
||||
|
||||
```shell
|
||||
kubectl run [-i] [--tty] --attach <name> --image=<image>
|
||||
```
|
||||
|
||||
Unlike `docker run ...`, if `--attach` is specified, we attach to `stdin`, `stdout` and `stderr`, there is no ability to control which streams are attached (`docker -a ...`).
|
||||
|
||||
Because we start a Deployment for your container, it will be restarted if you terminate the attached process (e.g. `ctrl-c`), this is different from `docker run -it`.
|
||||
To destroy the Deployment (and its pods) you need to run `kubectl delete deployment <name>`.
|
||||
|
||||
#### docker ps
|
||||
|
||||
How do I list what is currently running? Checkout [kubectl get](/docs/user-guide/kubectl/{{page.version}}/#get).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker ps -a
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
14636241935f ubuntu:16.04 "echo test" 5 seconds ago Exited (0) 5 seconds ago cocky_fermi
|
||||
55c103fa1296 nginx "nginx -g 'daemon of…" About a minute ago Up About a minute 0.0.0.0:80->80/tcp nginx-app
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl get po -a
|
||||
NAME READY STATUS RESTARTS AGE
|
||||
nginx-app-8df569cb7-4gd89 1/1 Running 0 3m
|
||||
ubuntu 0/1 Completed 0 20s
|
||||
```
|
||||
|
||||
#### docker attach
|
||||
|
||||
How do I attach to a process that is already running in a container? Checkout [kubectl attach](/docs/user-guide/kubectl/{{page.version}}/#attach).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
55c103fa1296 nginx "nginx -g 'daemon of…" 5 minutes ago Up 5 minutes 0.0.0.0:80->80/tcp nginx-app
|
||||
|
||||
$ docker attach 55c103fa1296
|
||||
...
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl get pods
|
||||
NAME READY STATUS RESTARTS AGE
|
||||
nginx-app-5jyvm 1/1 Running 0 10m
|
||||
|
||||
$ kubectl attach -it nginx-app-5jyvm
|
||||
...
|
||||
```
|
||||
|
||||
#### docker exec
|
||||
|
||||
How do I execute a command in a container? Checkout [kubectl exec](/docs/user-guide/kubectl/{{page.version}}/#exec).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
55c103fa1296 nginx "nginx -g 'daemon of…" 6 minutes ago Up 6 minutes 0.0.0.0:80->80/tcp nginx-app
|
||||
|
||||
$ docker exec 55c103fa1296 cat /etc/hostname
|
||||
55c103fa1296
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl get po
|
||||
NAME READY STATUS RESTARTS AGE
|
||||
nginx-app-5jyvm 1/1 Running 0 10m
|
||||
|
||||
$ kubectl exec nginx-app-5jyvm -- cat /etc/hostname
|
||||
nginx-app-5jyvm
|
||||
```
|
||||
|
||||
What about interactive commands?
|
||||
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker exec -ti 55c103fa1296 /bin/sh
|
||||
# exit
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl exec -ti nginx-app-5jyvm -- /bin/sh
|
||||
# exit
|
||||
```
|
||||
|
||||
For more information see [Getting a Shell to a Running Container](/docs/tasks/debug-application-cluster/get-shell-running-container/).
|
||||
|
||||
#### docker logs
|
||||
|
||||
How do I follow stdout/stderr of a running process? Checkout [kubectl logs](/docs/user-guide/kubectl/{{page.version}}/#logs).
|
||||
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker logs -f a9e
|
||||
192.168.9.1 - - [14/Jul/2015:01:04:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.35.0" "-"
|
||||
192.168.9.1 - - [14/Jul/2015:01:04:03 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.35.0" "-"
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl logs -f nginx-app-zibvs
|
||||
10.240.63.110 - - [14/Jul/2015:01:09:01 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
|
||||
10.240.63.110 - - [14/Jul/2015:01:09:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
|
||||
```
|
||||
|
||||
Now's a good time to mention slight difference between pods and containers; by default pods will not terminate if their processes exit. Instead it will restart the process. This is similar to the docker run option `--restart=always` with one major difference. In docker, the output for each invocation of the process is concatenated, but for Kubernetes, each invocation is separate. To see the output from a previous run in Kubernetes, do this:
|
||||
|
||||
```shell
|
||||
$ kubectl logs --previous nginx-app-zibvs
|
||||
10.240.63.110 - - [14/Jul/2015:01:09:01 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
|
||||
10.240.63.110 - - [14/Jul/2015:01:09:02 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.26.0" "-"
|
||||
```
|
||||
|
||||
See [Logging and Monitoring Cluster Activity](/docs/concepts/cluster-administration/logging/) for more information.
|
||||
|
||||
#### docker stop and docker rm
|
||||
|
||||
How do I stop and delete a running process? Checkout [kubectl delete](/docs/user-guide/kubectl/{{page.version}}/#delete).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker ps
|
||||
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
|
||||
a9ec34d98787 nginx "nginx -g 'daemon of" 22 hours ago Up 22 hours 0.0.0.0:80->80/tcp, 443/tcp nginx-app
|
||||
|
||||
$ docker stop a9ec34d98787
|
||||
a9ec34d98787
|
||||
|
||||
$ docker rm a9ec34d98787
|
||||
a9ec34d98787
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl get deployment nginx-app
|
||||
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
|
||||
nginx-app 1 1 1 1 2m
|
||||
|
||||
$ kubectl get po -l run=nginx-app
|
||||
NAME READY STATUS RESTARTS AGE
|
||||
nginx-app-2883164633-aklf7 1/1 Running 0 2m
|
||||
|
||||
$ kubectl delete deployment nginx-app
|
||||
deployment "nginx-app" deleted
|
||||
|
||||
$ kubectl get po -l run=nginx-app
|
||||
# Return nothing
|
||||
```
|
||||
|
||||
Notice that we don't delete the pod directly. With kubectl we want to delete the Deployment that owns the pod. If we delete the pod directly, the Deployment will recreate the pod.
|
||||
|
||||
#### docker login
|
||||
|
||||
There is no direct analog of `docker login` in kubectl. If you are interested in using Kubernetes with a private registry, see [Using a Private Registry](/docs/concepts/containers/images/#using-a-private-registry).
|
||||
|
||||
#### docker version
|
||||
|
||||
How do I get the version of my client and server? Checkout [kubectl version](/docs/user-guide/kubectl/{{page.version}}/#version).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker version
|
||||
Client version: 1.7.0
|
||||
Client API version: 1.19
|
||||
Go version (client): go1.4.2
|
||||
Git commit (client): 0baf609
|
||||
OS/Arch (client): linux/amd64
|
||||
Server version: 1.7.0
|
||||
Server API version: 1.19
|
||||
Go version (server): go1.4.2
|
||||
Git commit (server): 0baf609
|
||||
OS/Arch (server): linux/amd64
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl version
|
||||
Client Version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.9+a3d1dfa6f4335", GitCommit:"9b77fed11a9843ce3780f70dd251e92901c43072", GitTreeState:"dirty", BuildDate:"2017-08-29T20:32:58Z", OpenPaasKubernetesVersion:"v1.03.02", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"}
|
||||
Server Version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.9+a3d1dfa6f4335", GitCommit:"9b77fed11a9843ce3780f70dd251e92901c43072", GitTreeState:"dirty", BuildDate:"2017-08-29T20:32:58Z", OpenPaasKubernetesVersion:"v1.03.02", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"}
|
||||
```
|
||||
|
||||
#### docker info
|
||||
|
||||
How do I get miscellaneous info about my environment and configuration? Checkout [kubectl cluster-info](/docs/user-guide/kubectl/{{page.version}}/#cluster-info).
|
||||
|
||||
With docker:
|
||||
|
||||
```shell
|
||||
$ docker info
|
||||
Containers: 40
|
||||
Images: 168
|
||||
Storage Driver: aufs
|
||||
Root Dir: /usr/local/google/docker/aufs
|
||||
Backing Filesystem: extfs
|
||||
Dirs: 248
|
||||
Dirperm1 Supported: false
|
||||
Execution Driver: native-0.2
|
||||
Logging Driver: json-file
|
||||
Kernel Version: 3.13.0-53-generic
|
||||
Operating System: Ubuntu 14.04.2 LTS
|
||||
CPUs: 12
|
||||
Total Memory: 31.32 GiB
|
||||
Name: k8s-is-fun.mtv.corp.google.com
|
||||
ID: ADUV:GCYR:B3VJ:HMPO:LNPQ:KD5S:YKFQ:76VN:IANZ:7TFV:ZBF4:BYJO
|
||||
WARNING: No swap limit support
|
||||
```
|
||||
|
||||
With kubectl:
|
||||
|
||||
```shell
|
||||
$ kubectl cluster-info
|
||||
Kubernetes master is running at https://108.59.85.141
|
||||
KubeDNS is running at https://108.59.85.141/api/v1/namespaces/kube-system/services/kube-dns/proxy
|
||||
KubeUI is running at https://108.59.85.141/api/v1/namespaces/kube-system/services/kube-ui/proxy
|
||||
Grafana is running at https://108.59.85.141/api/v1/namespaces/kube-system/services/monitoring-grafana/proxy
|
||||
Heapster is running at https://108.59.85.141/api/v1/namespaces/kube-system/services/monitoring-heapster/proxy
|
||||
InfluxDB is running at https://108.59.85.141/api/v1/namespaces/kube-system/services/monitoring-influxdb/proxy
|
||||
```
|
||||
@@ -0,0 +1,64 @@
|
||||
---
|
||||
title: JSONPath Support
|
||||
---
|
||||
|
||||
JSONPath template is composed of JSONPath expressions enclosed by {}.
|
||||
And we add three functions in addition to the original JSONPath syntax:
|
||||
|
||||
1. The `$` operator is optional since the expression always starts from the root object by default.
|
||||
2. We can use `""` to quote text inside JSONPath expressions.
|
||||
3. We can use `range` operator to iterate lists.
|
||||
|
||||
The result object is printed as its String() function.
|
||||
|
||||
Given the input:
|
||||
|
||||
```json
|
||||
{
|
||||
"kind": "List",
|
||||
"items":[
|
||||
{
|
||||
"kind":"None",
|
||||
"metadata":{"name":"127.0.0.1"},
|
||||
"status":{
|
||||
"capacity":{"cpu":"4"},
|
||||
"addresses":[{"type": "LegacyHostIP", "address":"127.0.0.1"}]
|
||||
}
|
||||
},
|
||||
{
|
||||
"kind":"None",
|
||||
"metadata":{"name":"127.0.0.2"},
|
||||
"status":{
|
||||
"capacity":{"cpu":"8"},
|
||||
"addresses":[
|
||||
{"type": "LegacyHostIP", "address":"127.0.0.2"},
|
||||
{"type": "another", "address":"127.0.0.3"}
|
||||
]
|
||||
}
|
||||
}
|
||||
],
|
||||
"users":[
|
||||
{
|
||||
"name": "myself",
|
||||
"user": {}
|
||||
},
|
||||
{
|
||||
"name": "e2e",
|
||||
"user": {"username": "admin", "password": "secret"}
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
Function | Description | Example | Result
|
||||
---------|--------------------|--------------------|------------------
|
||||
text | the plain text | kind is {.kind} | kind is List
|
||||
@ | the current object | {@} | the same as input
|
||||
. or [] | child operator | {.kind} or {['kind']}| List
|
||||
.. | recursive descent | {..name} | 127.0.0.1 127.0.0.2 myself e2e
|
||||
* | wildcard. Get all objects| {.items[*].metadata.name} | [127.0.0.1 127.0.0.2]
|
||||
[start:end :step] | subscript operator | {.users[0].name}| myself
|
||||
[,] | union operator | {.items[*]['metadata.name', 'status.capacity']} | 127.0.0.1 127.0.0.2 map[cpu:4] map[cpu:8]
|
||||
?() | filter | {.users[?(@.name=="e2e")].user.password} | secret
|
||||
range, end | iterate list | {range .items[*]}[{.metadata.name}, {.status.capacity}] {end} | [127.0.0.1, map[cpu:4]] [127.0.0.2, map[cpu:8]]
|
||||
"" | quote interpreted string | {range .items[*]}{.metadata.name}{"\t"}{end} | 127.0.0.1 127.0.0.2
|
||||
@@ -0,0 +1,320 @@
|
||||
---
|
||||
approvers:
|
||||
- bgrant0607
|
||||
- hw-qiaolei
|
||||
title: Overview of kubectl
|
||||
---
|
||||
|
||||
`kubectl` is a command line interface for running commands against Kubernetes clusters. This overview covers `kubectl` syntax, describes the command operations, and provides common examples. For details about each command, including all the supported flags and subcommands, see the [kubectl](/docs/user-guide/kubectl/) reference documentation. For installation instructions see [installing kubectl](/docs/tasks/kubectl/install/).
|
||||
|
||||
## Syntax
|
||||
|
||||
Use the following syntax to run `kubectl` commands from your terminal window:
|
||||
|
||||
```shell
|
||||
kubectl [command] [TYPE] [NAME] [flags]
|
||||
```
|
||||
|
||||
where `command`, `TYPE`, `NAME`, and `flags` are:
|
||||
|
||||
* `command`: Specifies the operation that you want to perform on one or more resources, for example `create`, `get`, `describe`, `delete`.
|
||||
|
||||
* `TYPE`: Specifies the [resource type](#resource-types). Resource types are case-sensitive and you can specify the singular, plural, or abbreviated forms. For example, the following commands produce the same output:
|
||||
|
||||
$ kubectl get pod pod1
|
||||
$ kubectl get pods pod1
|
||||
$ kubectl get po pod1
|
||||
|
||||
* `NAME`: Specifies the name of the resource. Names are case-sensitive. If the name is omitted, details for all resources are displayed, for example `$ kubectl get pods`.
|
||||
|
||||
When performing an operation on multiple resources, you can specify each resource by type and name or specify one or more files:
|
||||
|
||||
* To specify resources by type and name:
|
||||
|
||||
* To group resources if they are all the same type: `TYPE1 name1 name2 name<#>`.<br/>
|
||||
Example: `$ kubectl get pod example-pod1 example-pod2`
|
||||
|
||||
* To specify multiple resource types individually: `TYPE1/name1 TYPE1/name2 TYPE2/name3 TYPE<#>/name<#>`.<br/>
|
||||
Example: `$ kubectl get pod/example-pod1 replicationcontroller/example-rc1`
|
||||
|
||||
* To specify resources with one or more files: `-f file1 -f file2 -f file<#>`
|
||||
|
||||
* [Use YAML rather than JSON](/docs/concepts/configuration/overview/#general-config-tips) since YAML tends to be more user-friendly, especially for configuration files.<br/>
|
||||
Example: `$ kubectl get pod -f ./pod.yaml`
|
||||
* `flags`: Specifies optional flags. For example, you can use the `-s` or `--server` flags to specify the address and port of the Kubernetes API server.<br/>
|
||||
**Important**: Flags that you specify from the command line override default values and any corresponding environment variables.
|
||||
|
||||
If you need help, just run `kubectl help` from the terminal window.
|
||||
|
||||
## Operations
|
||||
|
||||
The following table includes short descriptions and the general syntax for all of the `kubectl` operations:
|
||||
|
||||
Operation | Syntax | Description
|
||||
-------------------- | -------------------- | --------------------
|
||||
`annotate` | `kubectl annotate (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]` | Add or update the annotations of one or more resources.
|
||||
`api-versions` | `kubectl api-versions [flags]` | List the API versions that are available.
|
||||
`apply` | `kubectl apply -f FILENAME [flags]`| Apply a configuration change to a resource from a file or stdin.
|
||||
`attach` | `kubectl attach POD -c CONTAINER [-i] [-t] [flags]` | Attach to a running container either to view the output stream or interact with the container (stdin).
|
||||
`autoscale` | `kubectl autoscale (-f FILENAME | TYPE NAME | TYPE/NAME) [--min=MINPODS] --max=MAXPODS [--cpu-percent=CPU] [flags]` | Automatically scale the set of pods that are managed by a replication controller.
|
||||
`cluster-info` | `kubectl cluster-info [flags]` | Display endpoint information about the master and services in the cluster.
|
||||
`config` | `kubectl config SUBCOMMAND [flags]` | Modifies kubeconfig files. See the individual subcommands for details.
|
||||
`create` | `kubectl create -f FILENAME [flags]` | Create one or more resources from a file or stdin.
|
||||
`delete` | `kubectl delete (-f FILENAME | TYPE [NAME | /NAME | -l label | --all]) [flags]` | Delete resources either from a file, stdin, or specifying label selectors, names, resource selectors, or resources.
|
||||
`describe` | `kubectl describe (-f FILENAME | TYPE [NAME_PREFIX | /NAME | -l label]) [flags]` | Display the detailed state of one or more resources.
|
||||
`edit` | `kubectl edit (-f FILENAME | TYPE NAME | TYPE/NAME) [flags]` | Edit and update the definition of one or more resources on the server by using the default editor.
|
||||
`exec` | `kubectl exec POD [-c CONTAINER] [-i] [-t] [flags] [-- COMMAND [args...]]` | Execute a command against a container in a pod,
|
||||
`explain` | `kubectl explain [--include-extended-apis=true] [--recursive=false] [flags]` | Get documentation of various resources. For instance pods, nodes, services, etc.
|
||||
`expose` | `kubectl expose (-f FILENAME | TYPE NAME | TYPE/NAME) [--port=port] [--protocol=TCP|UDP] [--target-port=number-or-name] [--name=name] [----external-ip=external-ip-of-service] [--type=type] [flags]` | Expose a replication controller, service, or pod as a new Kubernetes service.
|
||||
`get` | `kubectl get (-f FILENAME | TYPE [NAME | /NAME | -l label]) [--watch] [--sort-by=FIELD] [[-o | --output]=OUTPUT_FORMAT] [flags]` | List one or more resources.
|
||||
`label` | `kubectl label (-f FILENAME | TYPE NAME | TYPE/NAME) KEY_1=VAL_1 ... KEY_N=VAL_N [--overwrite] [--all] [--resource-version=version] [flags]` | Add or update the labels of one or more resources.
|
||||
`logs` | `kubectl logs POD [-c CONTAINER] [--follow] [flags]` | Print the logs for a container in a pod.
|
||||
`patch` | `kubectl patch (-f FILENAME | TYPE NAME | TYPE/NAME) --patch PATCH [flags]` | Update one or more fields of a resource by using the strategic merge patch process.
|
||||
`port-forward` | `kubectl port-forward POD [LOCAL_PORT:]REMOTE_PORT [...[LOCAL_PORT_N:]REMOTE_PORT_N] [flags]` | Forward one or more local ports to a pod.
|
||||
`proxy` | `kubectl proxy [--port=PORT] [--www=static-dir] [--www-prefix=prefix] [--api-prefix=prefix] [flags]` | Run a proxy to the Kubernetes API server.
|
||||
`replace` | `kubectl replace -f FILENAME` | Replace a resource from a file or stdin.
|
||||
`rolling-update` | `kubectl rolling-update OLD_CONTROLLER_NAME ([NEW_CONTROLLER_NAME] --image=NEW_CONTAINER_IMAGE | -f NEW_CONTROLLER_SPEC) [flags]` | Perform a rolling update by gradually replacing the specified replication controller and its pods.
|
||||
`run` | `kubectl run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [flags]` | Run a specified image on the cluster.
|
||||
`scale` | `kubectl scale (-f FILENAME | TYPE NAME | TYPE/NAME) --replicas=COUNT [--resource-version=version] [--current-replicas=count] [flags]` | Update the size of the specified replication controller.
|
||||
`stop` | `kubectl stop` | Deprecated: Instead, see `kubectl delete`.
|
||||
`version` | `kubectl version [--client] [flags]` | Display the Kubernetes version running on the client and server.
|
||||
|
||||
Remember: For more about command operations, see the [kubectl](/docs/user-guide/kubectl/) reference documentation.
|
||||
|
||||
## Resource types
|
||||
|
||||
The following table includes a list of all the supported resource types and their abbreviated aliases:
|
||||
|
||||
Resource type | Abbreviated alias
|
||||
-------------------- | --------------------
|
||||
`apiservices` |
|
||||
`certificatesigningrequests` |`csr`
|
||||
`clusters` |
|
||||
`clusterrolebindings` |
|
||||
`clusterroles` |
|
||||
`componentstatuses` |`cs`
|
||||
`configmaps` |`cm`
|
||||
`controllerrevisions` |
|
||||
`cronjobs` |
|
||||
`customresourcedefinition` |`crd`
|
||||
`daemonsets` |`ds`
|
||||
`deployments` |`deploy`
|
||||
`endpoints` |`ep`
|
||||
`events` |`ev`
|
||||
`horizontalpodautoscalers` |`hpa`
|
||||
`ingresses` |`ing`
|
||||
`jobs` |
|
||||
`limitranges` |`limits`
|
||||
`namespaces` |`ns`
|
||||
`networkpolicies` |`netpol`
|
||||
`nodes` |`no`
|
||||
`persistentvolumeclaims` |`pvc`
|
||||
`persistentvolumes` |`pv`
|
||||
`poddisruptionbudget` |`pdb`
|
||||
`podpreset` |
|
||||
`pods` |`po`
|
||||
`podsecuritypolicies` |`psp`
|
||||
`podtemplates` |
|
||||
`replicasets` |`rs`
|
||||
`replicationcontrollers` |`rc`
|
||||
`resourcequotas` |`quota`
|
||||
`rolebindings` |
|
||||
`roles` |
|
||||
`secrets` |
|
||||
`serviceaccounts` |`sa`
|
||||
`services` |`svc`
|
||||
`statefulsets` |
|
||||
`storageclasses` |
|
||||
|
||||
## Output options
|
||||
|
||||
Use the following sections for information about how you can format or sort the output of certain commands. For details about which commands support the various output options, see the [kubectl](/docs/user-guide/kubectl/) reference documentation.
|
||||
|
||||
### Formatting output
|
||||
|
||||
The default output format for all `kubectl` commands is the human readable plain-text format. To output details to your terminal window in a specific format, you can add either the `-o` or `-output` flags to a supported `kubectl` command.
|
||||
|
||||
#### Syntax
|
||||
|
||||
```shell
|
||||
kubectl [command] [TYPE] [NAME] -o=<output_format>
|
||||
```
|
||||
|
||||
Depending on the `kubectl` operation, the following output formats are supported:
|
||||
|
||||
Output format | Description
|
||||
--------------| -----------
|
||||
`-o=custom-columns=<spec>` | Print a table using a comma separated list of [custom columns](#custom-columns).
|
||||
`-o=custom-columns-file=<filename>` | Print a table using the [custom columns](#custom-columns) template in the `<filename>` file.
|
||||
`-o=json` | Output a JSON formatted API object.
|
||||
`-o=jsonpath=<template>` | Print the fields defined in a [jsonpath](/docs/user-guide/jsonpath) expression.
|
||||
`-o=jsonpath-file=<filename>` | Print the fields defined by the [jsonpath](/docs/user-guide/jsonpath) expression in the `<filename>` file.
|
||||
`-o=name` | Print only the resource name and nothing else.
|
||||
`-o=wide` | Output in the plain-text format with any additional information. For pods, the node name is included.
|
||||
`-o=yaml` | Output a YAML formatted API object.
|
||||
|
||||
##### Example
|
||||
|
||||
In this example, the following command outputs the details for a single pod as a YAML formatted object:
|
||||
|
||||
`$ kubectl get pod web-pod-13je7 -o=yaml`
|
||||
|
||||
Remember: See the [kubectl](/docs/user-guide/kubectl/) reference documentation for details about which output format is supported by each command.
|
||||
|
||||
#### Custom columns
|
||||
|
||||
To define custom columns and output only the details that you want into a table, you can use the `custom-columns` option. You can choose to define the custom columns inline or use a template file: `-o=custom-columns=<spec>` or `-o=custom-columns-file=<filename>`.
|
||||
|
||||
##### Examples
|
||||
|
||||
Inline:
|
||||
|
||||
```shell
|
||||
$ kubectl get pods <pod-name> -o=custom-columns=NAME:.metadata.name,RSRC:.metadata.resourceVersion
|
||||
```
|
||||
|
||||
Template file:
|
||||
|
||||
```shell
|
||||
$ kubectl get pods <pod-name> -o=custom-columns-file=template.txt
|
||||
```
|
||||
|
||||
where the `template.txt` file contains:
|
||||
|
||||
```
|
||||
NAME RSRC
|
||||
metadata.name metadata.resourceVersion
|
||||
```
|
||||
The result of running either command is:
|
||||
|
||||
```shell
|
||||
NAME RSRC
|
||||
submit-queue 610995
|
||||
```
|
||||
|
||||
### Sorting list objects
|
||||
|
||||
To output objects to a sorted list in your terminal window, you can add the `--sort-by` flag to a supported `kubectl` command. Sort your objects by specifying any numeric or string field with the `--sort-by` flag. To specify a field, use a [jsonpath](/docs/user-guide/jsonpath) expression.
|
||||
|
||||
#### Syntax
|
||||
|
||||
```shell
|
||||
kubectl [command] [TYPE] [NAME] --sort-by=<jsonpath_exp>
|
||||
```
|
||||
|
||||
##### Example
|
||||
|
||||
To print a list of pods sorted by name, you run:
|
||||
|
||||
`$ kubectl get pods --sort-by=.metadata.name`
|
||||
|
||||
## Examples: Common operations
|
||||
|
||||
Use the following set of examples to help you familiarize yourself with running the commonly used `kubectl` operations:
|
||||
|
||||
`kubectl create` - Create a resource from a file or stdin.
|
||||
|
||||
```shell
|
||||
// Create a service using the definition in example-service.yaml.
|
||||
$ kubectl create -f example-service.yaml
|
||||
|
||||
// Create a replication controller using the definition in example-controller.yaml.
|
||||
$ kubectl create -f example-controller.yaml
|
||||
|
||||
// Create the objects that are defined in any .yaml, .yml, or .json file within the <directory> directory.
|
||||
$ kubectl create -f <directory>
|
||||
```
|
||||
|
||||
`kubectl get` - List one or more resources.
|
||||
|
||||
```shell
|
||||
// List all pods in plain-text output format.
|
||||
$ kubectl get pods
|
||||
|
||||
// List all pods in plain-text output format and includes additional information (such as node name).
|
||||
$ kubectl get pods -o wide
|
||||
|
||||
// List the replication controller with the specified name in plain-text output format. Tip: You can shorten and replace the 'replicationcontroller' resource type with the alias 'rc'.
|
||||
$ kubectl get replicationcontroller <rc-name>
|
||||
|
||||
// List all replication controllers and services together in plain-text output format.
|
||||
$ kubectl get rc,services
|
||||
|
||||
// List all daemon sets, including uninitialized ones, in plain-text output format.
|
||||
$ kubectl get ds --include-uninitialized
|
||||
|
||||
// List all pods running on node server01
|
||||
$ kubectl get pods --field-selector=spec.nodeName=server01
|
||||
```
|
||||
|
||||
`kubectl describe` - Display detailed state of one or more resources, including the uninitialized ones by default.
|
||||
|
||||
```shell
|
||||
// Display the details of the node with name <node-name>.
|
||||
$ kubectl describe nodes <node-name>
|
||||
|
||||
// Display the details of the pod with name <pod-name>.
|
||||
$ kubectl describe pods/<pod-name>
|
||||
|
||||
// Display the details of all the pods that are managed by the replication controller named <rc-name>.
|
||||
// Remember: Any pods that are created by the replication controller get prefixed with the name of the replication controller.
|
||||
$ kubectl describe pods <rc-name>
|
||||
|
||||
// Describe all pods, not including uninitialized ones
|
||||
$ kubectl describe pods --include-uninitialized=false
|
||||
```
|
||||
|
||||
**Note:** The `kubectl get` command is usually used for retrieving one or more
|
||||
resources of the same resource type. It features a rich set of flags that allows
|
||||
you to customize the output format using the `-o` or `--output` flag, for example.
|
||||
You can specify the `-w` or `--watch` flag to start watching updates to a particular
|
||||
object. The `kubectl describe` command is more focused on describing the many
|
||||
related aspects of a specified resource. It may invoke several API calls to the
|
||||
API server to build a view for the user. For example, the `kubectl describe node`
|
||||
command retrieves not only the information about the node, but also a summary of
|
||||
the pods running on it, the events generated for the node etc.
|
||||
{: .note}
|
||||
|
||||
`kubectl delete` - Delete resources either from a file, stdin, or specifying label selectors, names, resource selectors, or resources.
|
||||
|
||||
```shell
|
||||
// Delete a pod using the type and name specified in the pod.yaml file.
|
||||
$ kubectl delete -f pod.yaml
|
||||
|
||||
// Delete all the pods and services that have the label name=<label-name>.
|
||||
$ kubectl delete pods,services -l name=<label-name>
|
||||
|
||||
// Delete all the pods and services that have the label name=<label-name>, including uninitialized ones.
|
||||
$ kubectl delete pods,services -l name=<label-name> --include-uninitialized
|
||||
|
||||
// Delete all pods, including uninitialized ones.
|
||||
$ kubectl delete pods --all
|
||||
```
|
||||
|
||||
`kubectl exec` - Execute a command against a container in a pod.
|
||||
|
||||
```shell
|
||||
// Get output from running 'date' from pod <pod-name>. By default, output is from the first container.
|
||||
$ kubectl exec <pod-name> date
|
||||
|
||||
// Get output from running 'date' in container <container-name> of pod <pod-name>.
|
||||
$ kubectl exec <pod-name> -c <container-name> date
|
||||
|
||||
// Get an interactive TTY and run /bin/bash from pod <pod-name>. By default, output is from the first container.
|
||||
$ kubectl exec -ti <pod-name> /bin/bash
|
||||
```
|
||||
|
||||
`kubectl logs` - Print the logs for a container in a pod.
|
||||
|
||||
```shell
|
||||
// Return a snapshot of the logs from pod <pod-name>.
|
||||
$ kubectl logs <pod-name>
|
||||
|
||||
// Start streaming the logs from pod <pod-name>. This is similar to the 'tail -f' Linux command.
|
||||
$ kubectl logs -f <pod-name>
|
||||
```
|
||||
|
||||
|
||||
## Next steps
|
||||
|
||||
Start using the [kubectl](/docs/user-guide/kubectl/) commands.
|
||||
@@ -167,7 +167,7 @@ In Kubernetes 1.9, our goal is to address any feedback on the apps/v1beta2 group
|
||||
<td>ReplicaSet</td>
|
||||
<td>apps</td>
|
||||
<td>v1</td>
|
||||
<td>StatefulSet</td>
|
||||
<td>ReplicaSet</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>apps</td>
|
||||
@@ -258,4 +258,4 @@ Because users will continue to depend on extensions/v1beta1, apps/v1beta1, and a
|
||||
<td>v1beta2</td>
|
||||
<td>StatefulSet</td>
|
||||
</tr>
|
||||
</table>
|
||||
</table>
|
||||
|
||||
Reference in New Issue
Block a user