karmadactl promote
Promote resources from legacy clusters to Karmada control plane
Synopsis
Promote resources from legacy clusters to Karmada control plane. Requires the cluster has been joined or registered.
If the resource already exists in Karmada control plane, please edit PropagationPolicy and OverridePolicy to propagate it.
karmadactl promote <RESOURCE_TYPE> <RESOURCE_NAME> -n <NAME_SPACE> -C <CLUSTER_NAME>
Examples
# Promote deployment(default/nginx) from cluster1 to Karmada
karmadactl promote deployment nginx -n default -C cluster1
# Promote deployment(default/nginx) with gvk from cluster1 to Karmada
karmadactl promote deployment.v1.apps nginx -n default -C cluster1
# Dumps the artifacts but does not deploy them to Karmada, same as 'dry run'
karmadactl promote deployment nginx -n default -C cluster1 -o yaml|json
# Promote secret(default/default-token) from cluster1 to Karmada
karmadactl promote secret default-token -n default -C cluster1
# Support to use '--cluster-kubeconfig' to specify the configuration of member cluster
karmadactl promote deployment nginx -n default -C cluster1 --cluster-kubeconfig=<CLUSTER_KUBECONFIG_PATH>
# Support to use '--cluster-kubeconfig' and '--cluster-context' to specify the configuration of member cluster
karmadactl promote deployment nginx -n default -C cluster1 --cluster-kubeconfig=<CLUSTER_KUBECONFIG_PATH> --cluster-context=<CLUSTER_CONTEXT>
Options
-C, --cluster string the name of legacy cluster (eg -C=member1)
--cluster-context string Context name of legacy cluster in kubeconfig. Only works when there are multiple contexts in the kubeconfig.
--cluster-kubeconfig string Path of the legacy cluster's kubeconfig.
--dry-run Run the command in dry-run mode, without making any server requests.
-h, --help help for promote
--karmada-context string The name of the kubeconfig context to use
-n, --namespace string If present, the namespace scope for this CLI request
-o, --output string Output format. One of: json|yaml
Options inherited from parent commands
--add-dir-header If true, adds the file directory to the header of the log messages
--alsologtostderr log to standard error as well as files (no effect when -logtostderr=true)
--kubeconfig string Paths to a kubeconfig. Only required if out-of-cluster.
--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 (no effect when -logtostderr=true)
--log-file string If non-empty, use this log file (no effect when -logtostderr=true)
--log-file-max-size uint Defines the maximum size a log file can grow to (no effect when -logtostderr=true). Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
--logtostderr log to standard error instead of files (default true)
--one-output If true, only write logs to their native severity level (vs also writing to each lower severity level; no effect when -logtostderr=true)
--skip-headers If true, avoid header prefixes in the log messages
--skip-log-headers If true, avoid headers when opening log files (no effect when -logtostderr=true)
--stderrthreshold severity logs at or above this threshold go to stderr when writing to files and stderr (no effect when -logtostderr=true or -alsologtostderr=false) (default 2)
-v, --v Level number for the log level verbosity
--vmodule moduleSpec comma-separated list of pattern=N settings for file-filtered logging
SEE ALSO
- karmadactl - karmadactl controls a Kubernetes Cluster Federation.