diagnose

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)