backup.remote.cronjob.yaml 4.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. apiVersion: v1
  2. kind: Secret
  3. metadata:
  4. name: rclone-remote-backup-api-key
  5. type: Opaque
  6. data:
  7. backups.pem: LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tDQpNSUlFdmdJQkFEQU5CZ2txaGtpRzl3MEJBUUVGQUFTQ0JLZ3dnZ1NrQWdFQUFvSUJBUURjbXR3N0t1cnphMmJ1DQplQ3BQRU9PdlFRRmdKU2I1SjFCbUpNelc1a2pUKy9aekdscjNZT3d6ay9QMVM5UWNBNlZ2YzdPdzNnditSZlZ2DQpWQnd4dkozVVRsNGo0eGRnK2JBWnRrNVpGR0dLSnhIMWo4V1E3Q0RGdU14U3NiRFgzRWVhaWlCMmQrcHJLSlZKDQp2YUFva1JBeHJuTG9oS0tpbEo1OTdwTjd0SnVWY0FjbXFWQTdmNFArZEVTNzUzL3pDNDMzWnJCb2lDeVM5cnVMDQpjWTcvVVMySnlxRXNjcXNVK1l4MmxEV1ZxMHZEMVJEeFdUYUJCSGlWb09RbkMvVmZxcjgxTXVaM2loWmQ2cldpDQpxa1dBN3l6eEhhSzZpdmJHNUVVYzZBOTg5VDhEUi9mOU42MDBFb2ZucGNsMVFyQ0g3SlpYUDNzNkZ6WEZSNXl0DQplTzJ4a1dVL0FnTUJBQUVDZ2dFQVJ6eEFjbUMwOXI2UFFlRU90SEpkTzJuUDBtYWMwNmEweVE4SUVEclRlSlJyDQpyQlp1R21TelVTSnREQ0FjMGFFQnlsLy92ZFN0NWNGY2RFTWlTWk5CR2QzbWUwc284UGtmdXVYS0hleTlaSG1pDQpUSHZORGJPYUQ0N1JkOENHUE9ZV1B4cHNTaVVGenUyUGEzenVtenJna2xKbEs1MHMwVGdSaDlQQ3p4YnVpSTNIDQpURmtXOVUxMGhJdC9wZTBDaWFSeTYwOU9zN2x6NCszeTRKMlM2eTJFbTQraVZ3Z2hzVnEyUnloTjhSNUVWRVZ0DQp2UEJmWjZOb1psYk9YOWpwUnZ3bGVCd3E4STQxYmpSeG02elZ5NmZ5MDBSczZLaENwUjM5eERwdkpKMFg0SGU5DQpvRWlsUjNYWnVVRWFZNndvRGs3VzVxcHVCVzRYVUkwMDFGbHpCZFIzYlFLQmdRRDFHN2VzMXZMYnp0eFM1dW5yDQoxQm55U3RPMm16dmd5Z3hxQlZWdGhKY2EyalNJOGNxQ3VucndCYUw3WlZycitDUmt5ekFUM0dCR2tvUGVjQlBWDQo5VVd6MENKeUN4M3NJbDVrVWdrYVVDWkt0QmIvMGxWQUQ4QmlwZGlCZ1JpNHFGd0J5SVQ3eG81dlhDQXVON095DQpqNEM1VzNLQ29Lbk5peDl5ZzBQVldZaDlyUUtCZ1FEbWFHWk5oTFhEcWZpb0k0Y056U3RLa1VseDRBV3BPUFBSDQpHOWgwVlhnaEp4elFDSEw3cmcrWEtaZ04xSmZOQVhnOWpoYnYvay9MaDlIUVFiMjJJMGN6dkJmeXZJQ0RGMW1KDQppS0g1TisvaVgvaUMyVy8vdEEzSGJRazhUaUVleC9GK3MxbFZMb3pibXhNVDJ1SkRuK1hRdGhVWXJwSkRhaWd5DQpSbkFvMjlrMEd3S0JnUURWVlUrVGh1NlA5RWI5Zk8vaWk1UWR0NVQzbmJzTEZyQ2hZbzBOS2xjZVR3ZGtuaFpsDQpuQXMrZDVsNGQ2b2dNYlR6YVlvcDd5aDRwRE5VV25aWlJnWnB6K0Q3SThQaWI3TjZXNUNDcjNuMGtUUm5hdGs2DQpUYnRqNFBkRkdHaTg2QVJVcFFOaDVGcTZnQk9lUm1zSUlqQ21vL3BSeWFhaE9OS2hKN0RWcy96QmJRS0JnUUNnDQp0S3ErWU5VaXYxZ1hkb2hKZ1JRejgzaEZ2QnBXdU1tZXpZeEJRQ2dFLzdIaURES2ZCdjRLMGxFalBHZ1E3bmgrDQpmcS9TL3crTEI1VzVhMUUyVEE3cXI4UUlZNkJEVHpMOWNkWi83SnNkeXhDYnU2dVpyMjE0N3IxbFdaMVNTZVZRDQpHU295OXIvNm9JUkM4Z1dsWTA2NUwzY3hldm03bWJ5bHJHbW9wZ2N1aHdLQmdIWEg2anJvSm1GOXozV1J4dENTDQorREhOVGVtK3cxem91bWRnL201RGtsU1RrNzBvWHlDTWZXRHdPeGw1U2tRUC9CNUMzYVhZMzJyTEt2eWw5bVZNDQpWQkxWNkJ2WXRRVWxZTXJlVHJCaUNpdGErTHpGUmM1Z3NhWEJldi9NZEhtTHdlaUp0bS9zNWpOT2U0RUx5TWoyDQpjcnZqTTFpMTZ6K2JtdDkyV0ZhWkRRZXoNCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0KT0NJX0FQSV9LRVk=
  8. ---
  9. apiVersion: v1
  10. kind: ConfigMap
  11. metadata:
  12. name: rclone-config-oos
  13. data:
  14. rclone.conf: |
  15. [oos]
  16. type = oracleobjectstorage
  17. namespace = iddpv1jwk1nu
  18. region = us-ashburn-1
  19. compartment = ocid1.tenancy.oc1..aaaaaaaatqrfyvsvvwrz4p4y3fbaucueixpm6rg5r5ihpr2szat6cg2ek2aq
  20. provider = user_principal_auth
  21. config_file = /config/oci/config
  22. config_profile = DEFAULT
  23. oci.conf: |
  24. [DEFAULT]
  25. user=ocid1.user.oc1..aaaaaaaapeoqy5glmtljxh6bztwkbcrjk53ux7msfa6ifvxs2ygec364chha
  26. fingerprint=d6:06:e3:9c:59:ef:d6:ae:2a:21:6c:06:07:82:c4:70
  27. tenancy=ocid1.tenancy.oc1..aaaaaaaatqrfyvsvvwrz4p4y3fbaucueixpm6rg5r5ihpr2szat6cg2ek2aq
  28. region=us-ashburn-1
  29. key_file=/config/oci-keys/backups.pem
  30. ---
  31. apiVersion: batch/v1
  32. kind: CronJob
  33. metadata:
  34. name: backup-remote
  35. spec:
  36. schedule: "5 8 * * 0"
  37. jobTemplate:
  38. spec:
  39. template:
  40. spec:
  41. containers:
  42. - args: ["sync", "--verbose", "--verbose", "--cache-workers", "4", "--transfers", "4", "--retries", "32", "--oos-attempt-resume-upload", "--oos-leave-parts-on-error", "/data/repo", "oos:backup"]
  43. image: rclone/rclone:1.68
  44. imagePullPolicy: IfNotPresent
  45. name: rclone-cli
  46. volumeMounts:
  47. - name: restic-repo-vol
  48. mountPath: /data/repo
  49. - name: rclone-conf-vol
  50. mountPath: /config/rclone
  51. - name: oci-conf-vol
  52. mountPath: /config/oci
  53. - name: oci-api-key-vol
  54. mountPath: /config/oci-keys
  55. volumes:
  56. - name: restic-repo-vol
  57. hostPath:
  58. path: /data/backup
  59. type: Directory
  60. - name: rclone-conf-vol
  61. configMap:
  62. name: rclone-config-oos
  63. items:
  64. - key: rclone.conf
  65. path: rclone.conf
  66. - name: oci-conf-vol
  67. configMap:
  68. name: rclone-config-oos
  69. items:
  70. - key: oci.conf
  71. path: config
  72. - name: oci-api-key-vol
  73. secret:
  74. secretName: rclone-remote-backup-api-key
  75. restartPolicy: Never
  76. nodeSelector:
  77. kubernetes.io/hostname: raspberrypi4