k8s-dump

command module
v0.0.0-...-f40eed7 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 11, 2017 License: Apache-2.0 Imports: 28 Imported by: 0

README

k8s-dump

Dump objects from a running Kubernetes cluster

Build: run go build

Options:

./dump --help
      --alsologtostderr                  log to standard error as well as files
      --apiserver-host string            The address of the Kubernetes Apiserver to connect to in the format of protocol://address:port, e.g., http://localhost:8080. If not specified, the assumption is that the binary runs inside a Kubernetes cluster and local discovery is attempted.
      --kubeconfig string                Path to kubeconfig file with authorization and master location information.
      --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
      --namespace string                 Only dump the contents of a particular namespace.
      --output string                    Directory where the dump files should be created.
      --skip-types stringSlice           Types to skip in the dump.  (default [serviceaccount])
      --stderrthreshold severity         logs at or above this threshold go to stderr (default 2)
      -v, --v Level                          log level for V logs
      --vmodule moduleSpec               comma-separated list of pattern=N settings for file-filtered logging

In a terminal open a proxy connection to the cluster using kubectl:

kubectl proxy --port=8080
Starting to serve on 127.0.0.1:8080

Running the command:

./dump \
    --output=$PWD/out \
    --apiserver-host=http://127.0.0.1:8080

will dump all the object types (excluding service accounts) in the directory --output creating one file per namespace. Each

./dump --output=/Users/aledbf/go/src/k8s.io/dump/out --apiserver-host=http://127.0.0.1:8080
I0208 21:00:09.493695   64091 main.go:116] Creating API server client for http://127.0.0.1:8080
I0208 21:00:09.883821   64091 main.go:146] Dumping cluster objects...
I0208 21:00:09.883845   64091 main.go:218] 	dumping namespace xxxxxxx
I0208 21:00:13.830584   64091 main.go:218] 	dumping namespace xxxxxxx
...
I0208 21:00:19.830584   64091 main.go:158] 	done.

Example of a file:


# errors:

# there is no objects of type statefulsets in namespace xxxxxx
# there is no objects of type storageclasses in namespace xxxxxx
# there is no objects of type persistentvolumes in namespace xxxxxx
# there is no objects of type podsecuritypolicies in namespace xxxxxx
# there is no objects of type thirdpartyresources in namespace xxxxxx

# namespace
apiVersion: v1
kind: Namespace
metadata:
  name: xxxxxx

---

# deployments

......
---

# endpoints

......
---

# replicasets

......
---

# secrets

......
---

# services

......
---
```

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL