Synopsis
This command helps to diagnose, validate and debug the cluster and its environment. See subcommands for various functionalities.
Usage:
gkectl diagnose [command]
Available Commands:
cluster Diagnose a cluster.
snapshot Take a snapshot of the cluster.
Flags:
--cluster string The name of the kubeconfig cluster to use
--cluster-name string The name of the cluster that is managed by the Admin Control Plane.
-h, --help help for diagnose
--kubeconfig string The file path of the kubeconfig file for the Admin Control Plane. If not specified, $KUBECONFIG environment variable or ${HOME}/.kube/config is used. --cluster-name can be used to specify the target user cluster.
-n, --namespace string If present, the namespace scope for this CLI request
--config string The seed config file used to create the cluster.
--user string The name of the kubeconfig user to use
Global Flags:
--add_dir_header If true, adds the file directory to the header
--alsologtostderr log to standard error as well as files
--log_file string If non-empty, use this log file
--log_file_max_size uint Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
--skip-validation-all Skip all validations.
--skip-validation-config Skip lightweight config validations.
--skip-validation-dns Skip DNS validations.
--skip-validation-docker Skip Docker-related validations.
--skip-validation-gcp Skip gcp validations.
--skip-validation-infra Skip provider-related validations.
--skip-validation-internet Skip internet validations.
--skip-validation-load-balancer Skip load balancer-related validations.
--skip-validation-net-config Skip network configuration validations.
--skip-validation-node-ips Skip node IPs-related validations.
--skip-validation-proxy Skip proxy validations.
--skip-validation-tod Skip TOD validations.
--skip-validation-vips Skip VIPs-related validations.
--skip_headers If true, avoid header prefixes in the log messages
--skip_log_headers If true, avoid headers when opening log files
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
-v, --v Level number for the log level verbosity (default 0)
Use "gkectl diagnose [command] --help" for more information about a command.
gkectl diagnose cluster
This command performs health checks on the cluster and reports errors if there are any.
Usage:
gkectl diagnose cluster [flags]
Flags:
-h, --help help for cluster
Global Flags:
--add_dir_header If true, adds the file directory to the header
--alsologtostderr log to standard error as well as files
--cluster string The name of the kubeconfig cluster to use
--cluster-name string The name of the cluster that is managed by the Admin Control Plane.
--kubeconfig string The file path of the kubeconfig file for the Admin Control Plane. If not specified, $KUBECONFIG environment variable or ${HOME}/.kube/config is used. --cluster-name can be used to specify the target user cluster.
--log_file string If non-empty, use this log file
--log_file_max_size uint Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
-n, --namespace string If present, the namespace scope for this CLI request
--seed-config string The seed config file used to create the cluster.
--skip-validation-all Skip all validations.
--skip-validation-config Skip lightweight config validations.
--skip-validation-dns Skip DNS validations.
--skip-validation-docker Skip Docker-related validations.
--skip-validation-gcp Skip gcp validations.
--skip-validation-infra Skip provider-related validations.
--skip-validation-internet Skip internet validations.
--skip-validation-load-balancer Skip load balancer-related validations.
--skip-validation-net-config Skip network configuration validations.
--skip-validation-node-ips Skip node IPs-related validations.
--skip-validation-proxy Skip proxy validations.
--skip-validation-tod Skip TOD validations.
--skip-validation-vips Skip VIPs-related validations.
--skip_headers If true, avoid header prefixes in the log messages
--skip_log_headers If true, avoid headers when opening log files
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
--user string The name of the kubeconfig user to use
-v, --v Level number for the log level verbosity (default 0)
gkectl diagnose snapshot
This command takes a snapshot of the cluster's logs, configurations and other data.
Usage:
gkectl diagnose snapshot [flags]
Flags:
--admin-ssh-key-path string Override the private key to use when creating a snapshot. Found, base64 encoded, in create-config.yaml at admincluster.spec.ssh.privatekey.
--dry-run In dry-run mode, the command does not take the snapshot. Instead, it prints out the actions to be taken and the snapshot configuration.
--log-since duration The time duration for collecting logs in system-with-logs, and all-with-logs scenarios. If the flag is used, the snapshot only collect logs newer than a relative duration like 5s, 2m, or 3h.
Now we only support this flag for logs collected by kubectl and journalctl. Defaults to all logs.
-h, --help help for snapshot
--output string The output file of the snapshot.
--scenario string The scenario of the snapshot. This is ignored when --config flag is specified. The supported scenarios are:
- system: snapshot of system components, no logs, current default
- system-with-logs: snapshot of system components, including logs
- all: snapshot of all components, no logs
- all-with-logs: snapshot of all components, including logs (default "system")
--snapshot-config string The config file of the snapshot. When this flag is omitted, a default configuration is applied.
Global Flags:
--add_dir_header If true, adds the file directory to the header
--alsologtostderr log to standard error as well as files
--cluster string The name of the kubeconfig cluster to use
--cluster-name string The name of the cluster that is managed by the Admin Control Plane.
--kubeconfig string The file path of the kubeconfig file for the Admin Control Plane. If not specified, $KUBECONFIG environment variable or ${HOME}/.kube/config is used. --cluster-name can be used to specify the target user cluster.
--log_file string If non-empty, use this log file
--log_file_max_size uint Defines the maximum size a log file can grow to. Unit is megabytes. If the value is 0, the maximum file size is unlimited. (default 1800)
-n, --namespace string If present, the namespace scope for this CLI request
--seed-config string The seed config file used to create the cluster.
--skip-validation-all Skip all validations.
--skip-validation-config Skip lightweight config validations.
--skip-validation-dns Skip DNS validations.
--skip-validation-docker Skip Docker-related validations.
--skip-validation-gcp Skip gcp validations.
--skip-validation-infra Skip provider-related validations.
--skip-validation-internet Skip internet validations.
--skip-validation-load-balancer Skip load balancer-related validations.
--skip-validation-net-config Skip network configuration validations.
--skip-validation-node-ips Skip node IPs-related validations.
--skip-validation-proxy Skip proxy validations.
--skip-validation-tod Skip TOD validations.
--skip-validation-vips Skip VIPs-related validations.
--skip_headers If true, avoid header prefixes in the log messages
--skip_log_headers If true, avoid headers when opening log files
--stderrthreshold severity logs at or above this threshold go to stderr (default 2)
--user string The name of the kubeconfig user to use
-v, --v Level number for the log level verbosity (default 0)