Restore to Local Directory Example
It is possible to restore any Kubernetes Object(s) to file without loading them into a cluster. To do so, the where restore option should point to the local directory:
* restore where=/tmp/bacula/restores
...
$ cd /@kubernetes/namespaces/
cwd is: /@kubernetes/namespaces/
$ ls
bacula/
cattle-system/
default/
graphite/
ingress/
plugintest/
$ add plugintest
25 files marked.
$ done
Bootstrap records written to /opt/bacula/working/bacula-devel-dir.restore.2.bsr
The Job will require the following (*=>InChanger):
Volume(s) Storage(s) SD Device(s)
===========================================================================
Vol005 File1 FileChgr1
Volumes marked with "*" are in the Autochanger.
25 files selected to be restored.
Run Restore job
JobName: RestoreFiles
Bootstrap: /opt/bacula/working/bacula-devel-dir.restore.2.bsr
Where: /tmp/bacula/restores
Replace: Always
FileSet: Full Set
Backup Client: bacula-devel-fd
Restore Client: bacula-devel-fd
Storage: File1
When: 2019-09-30 12:58:16
Catalog: MyCatalog
Priority: 10
Plugin Options: *None*
OK to run? (yes/mod/no): mod
Parameters to modify:
1: Level
2: Storage
3: Job
4: FileSet
5: Restore Client
6: When
7: Priority
8: Bootstrap
9: Where
10: File Relocation
11: Replace
12: JobId
13: Plugin Options
Select parameter to modify (1-13): 13
Automatically selected : kubernetes: config=/home/radekk/.kube/config debug=1
Plugin Restore Options
config: *None* (*None*)
host: *None* (*None*)
token: *None* (*None*)
verify_ssl: *None* (True)
ssl_ca_cert: *None* (*None*)
outputformat: *None* (RAW)
fdaddress: *None* (*FDAddress*)
fdport: *None* (9104)
pluginhost: *None* (*FDAddress*)
pluginport: *None* (9104)
Use above plugin configuration? (yes/mod/no): mod
You have the following choices:
1: config (K8S config file)
2: host (K8S API server URL/Host)
3: token (K8S Bearertoken)
4: verify_ssl (K8S API server cert verification)
5: ssl_ca_cert (Custom CA Certs file to use)
6: outputformat (Output format when saving to file (JSON, YAML))
7: fdaddress (The address for listen to incoming backup pod data)
8: fdport (The port for opening socket for listen)
9: pluginhost (The endpoint address for backup pod to connect)
10: pluginport (The endpoint port to connect)
Select parameter to modify (1-8): 8
Please enter a value for outputformat: JSON
Plugin Restore Options
config: *None* (*None*)
host: *None* (*None*)
token: *None* (*None*)
verify_ssl: *None* (True)
ssl_ca_cert: *None* (*None*)
outputformat: *None* (RAW)
fdaddress: *None* (*FDAddress*)
fdport: *None* (9104)
pluginhost: *None* (*FDAddress*)
pluginport: JSON (9104)
Use above plugin configuration? (yes/mod/no): yes
Run Restore job
JobName: RestoreFiles
Bootstrap: /opt/bacula/working/bacula-devel-dir.restore.2.bsr
Where: /tmp/bacula/restores
Replace: Always
FileSet: Full Set
Backup Client: bacula-devel-fd
Restore Client: bacula-devel-fd
Storage: File1
When: 2019-09-30 12:58:16
Catalog: MyCatalog
Priority: 10
Plugin Options: User specified
OK to run? (yes/mod/no):
Job queued. JobId=1085
Output format conversion at restore time will format all data in a human readable format. You can find an example of this restore below.
# cat /tmp/bacula/restores/namespaces/plugintest/plugintest.json
{
"apiVersion": "v1",
"kind": "Namespace",
"metadata": {
"annotations": {
"field.cattle.io/projectId": "c-hb9ls:p-bm6cw",
"lifecycle.cattle.io/create.namespace-auth": "true"
},
"cluster_name": null,
"creation_timestamp": "2019-09-25T16:31:03",
"deletion_grace_period_seconds": null,
"deletion_timestamp": null,
"finalizers": [
"controller.cattle.io/namespace-auth"
],
"generate_name": null,
"generation": null,
"initializers": null,
"labels": {
"field.cattle.io/projectId": "p-bm6cw"
},
"name": "plugintest",
"namespace": null,
"owner_references": null,
"resource_version": "11622",
"self_link": "/api/v1/namespaces/plugintest",
"uid": "dd873930-dfb1-11e9-aad0-022014368e80"
},
"spec": {
"finalizers": [
"kubernetes"
]
},
"status": {
"phase": "Active"
}
}
The supported output transformations are: JSON
and YAML
.
See also
Go back to Kubernetes Restore Examples.
Go back to the Kubernetes Restore page.
Go back to the Kubernetes Operations page.
Go back to the main Kubernetes Plugin page.