Kubernetes: Rancher RKE2
Storage: Rook-Ceph
Cluster is behind a corporate proxy.
Using Minio Server for S3 Object Storage.
Our team is working towards Testing out and building configurations to utilize a Kasten Instance in our Kubernetes Cluster. So far we have been able to successfully execute backup and restore, including cluster-to-cluster import restore operations.
However we are having some difficulties with the Disaster Recovery Feature. So far we have accomplished:
- Enabling DR
- Executing the K10-disaster-recovery-policy
The Cluster is setup with the k10-dr-secret, and the location profile is set.
When we call the k10-restore chart install, we are passing in our clusterID and profile.name, however we are getting an error from the spun up logs for the kasten-io-restore-k10restore pod.
When attempting to run the k10restore chart, and I am receiving a tls error:
{"Container":"container","File":"pkg/format/format.go","Function":"github.com/kanisterio/kanister/pkg/format.LogWithCtx","Line":90,"LogKind":"datapath","Out":"\u001b131mERROR\u001b10m can't connect to storage: error retrieving storage config from bucket \"kasten\": Get \"https://myminio.backup.com/kasten/k10/%3D/migration/%3D/k10/repo/.storageconfig\": tls: failed to verify certificate: x509: certificate signed by unknown authority","Pod":"data-mover-svc-dxlms","hostname":"kasten-io-restore-k10restore-9zjc4","level":"info","msg":"Pod Update","time":"2024-06-27T18:50:50.772043997Z"}
{"File":"kasten.io/k10/kio/dr/utils.go","Function":"kasten.io/k10/kio/dr.RestoreStatusForError","Line":149,"cluster_name":"40787e0a-8885-4515-a7fa-d40114712ebc","error":{"message":"Failed to initialize Kopia API server","function":"kasten.io/k10/kio/kopiaapiserver.SetupAPIServerForDRRestore","linenumber":373,"file":"kasten.io/k10/kio/kopiaapiserver/api_server.go:373","cause":{"message":"Failed to connect to the backup repository","function":"kasten.io/k10/kio/kopia.ConnectToKopiaRepository","linenumber":700,"file":"kasten.io/k10/kio/kopia/repository.go:700","cause":{"message":"Failed to exec command in pod: command terminated with exit code 1.\nstdout: \nstderr: \u001b131mERROR\u001b10m can't connect to storage: error retrieving storage config from bucket \"kasten\": Get \"https://myminio.backup.com/kasten/k10/%3D/migration/%3D/k10/repo/.storageconfig\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}}},"hostname":"kasten-io-restore-k10restore-9zjc4","level":"error","msg":"Failed to setup Kopia API server for DR metadata import","time":"2024-06-27T18:50:50.859Z"}
{"File":"kasten.io/k10/kio/exec/phases/phase/dr_restore.go","Function":"kasten.io/k10/kio/exec/phases/phase.RunK10DRRestore","Line":100,"cluster_name":"40787e0a-8885-4515-a7fa-d40114712ebc","error":{"message":"Failed to setup Kopia API server for DR metadata import","function":"kasten.io/k10/kio/dr.Import","linenumber":47,"file":"kasten.io/k10/kio/dr/import.go:47","cause":{"message":"Failed to initialize Kopia API server","function":"kasten.io/k10/kio/kopiaapiserver.SetupAPIServerForDRRestore","linenumber":373,"file":"kasten.io/k10/kio/kopiaapiserver/api_server.go:373","cause":{"message":"Failed to connect to the backup repository","function":"kasten.io/k10/kio/kopia.ConnectToKopiaRepository","linenumber":700,"file":"kasten.io/k10/kio/kopia/repository.go:700","cause":{"message":"Failed to exec command in pod: command terminated with exit code 1.\nstdout: \nstderr: \u001b131mERROR\u001b10m can't connect to storage: error retrieving storage config from bucket \"kasten\": Get \"https://myminio.backup.com/kasten/k10/%3D/migration/%3D/k10/repo/.storageconfig\": tls: failed to verify certificate: x509: certificate signed by unknown authority"}}}},"hostname":"kasten-io-restore-k10restore-9zjc4","level":"error","msg":"Failed to perform Disaster Recovery using quick mode workflow","time":"2024-06-27T18:50:50.860Z"}
Error: {"message":"Failed to perform K10 Disaster Recovery","function":"kasten.io/k10/kio/tools/restorectl.runRestoreCommand.func1","linenumber":71,"file":"kasten.io/k10/kio/tools/restorectl/restore.go:71","fields":"{"name":"error","value":"Failed to setup Kopia API server for DR metadata import"}]}
We suspect the issue is needing to Trust our Corporate Certificates, something we have already run into and resolved with our Kasten helm install.
However the k10-restore helm chart has no values for specifying volumes, volumemounts, or init containers.
How do we get the k10-restore to trust the needed certificates?
Or should k10-restore be utilizing the same trusted certificates from our Kasten instance?
Is there some other error in the background we havn’t noticed?