托管 非托管_如何在托管的Kubernetes上备份Neo4J
托管 非托管
在下面的視頻中,我將解釋如何對在托管Kubernetes環(huán)境中運行的Neo4J實例進行完整和增量備份。 我們將使用其他Pod進行遠程備份,并將備份數(shù)據(jù)存儲在托管環(huán)境提供的持久卷上。
如果您想知道如何將Neo4J部署到托管Kubernetes,請查看以前的文章,這些文章顯示了集群和單核實例的示例。
自己嘗試
您可以在以下GitHub存儲庫中找到Kubernetes資源。
cd /tmp/ git clone https: //github.com/sdaschner/neo4j-tools cd neo4j-tools/首先,我們創(chuàng)建持久性卷,稍后將在其上存儲備份:
kubectl apply -f backup/neo4j-backup-pvc.yaml這將為我們的備份卷創(chuàng)建一個卷聲明,該備份卷是由我們的存儲提供商創(chuàng)建的。 片刻之后,我們應(yīng)該有一個額外的持久卷:
kubectl get pvc NAME STATUS VOLUME STORAGECLASS AGE backupdir-graphdb-neo4j-core- 0 Bound pvc-072c4f08-[...] ibmc-file-gold 2m20s [...]現(xiàn)在,我們可以創(chuàng)建一個備份Pod,該Pod遠程連接到Neo4J實例(在我的示例中為core-0實例)以進行完整備份。
kubectl apply -f backup/neo4j-backup.yaml kubectl get pods NAME READY STATUS RESTARTS AGE neo4j-backup 0 / 1 Completed 0 23s如果我們查看pods日志輸出,我們將看到它對Neo4J實例進行了完整備份,類似于視頻中所示。 吊艙限制了我們的backupdir-卷。
現(xiàn)在,如果我們從相同的YAML描述中刪除完成的pod并創(chuàng)建一個新的pod,我們將看到它只會進行增量備份,因為它將綁定相同的持久卷并注意到現(xiàn)有的備份。
kubectl delete pod neo4j-backup kubectl apply -f backup/neo4j-backup.yamlpod日志輸出將顯示現(xiàn)在僅進行了增量備份。
對于創(chuàng)建這些備份Pod的托管方式而言,可以使用以下Kubernetes作業(yè)來創(chuàng)建Pod,類似于Kubernetes副本集管理其Pod的方式。
kubectl apply -f backup/neo4j-backup-job.yaml kubectl get pods NAME READY STATUS RESTARTS AGE neo4j-backup-5ljhj 0 / 1 Completed 0 23s翻譯自: https://www.javacodegeeks.com/2020/06/how-to-backup-neo4j-on-managed-kubernetes.html
托管 非托管
總結(jié)
以上是生活随笔為你收集整理的托管 非托管_如何在托管的Kubernetes上备份Neo4J的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 解放军电脑系统(中国部队电脑系统)
- 下一篇: restful rest_HATEOAS