Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: velero csi plugin #424

Merged
merged 19 commits into from
May 28, 2024
Merged

feat: velero csi plugin #424

merged 19 commits into from
May 28, 2024

Conversation

justicorn
Copy link
Contributor

@justicorn justicorn commented May 23, 2024

Description

Adding the CSI plugin to Velero
...

Related Issue

Fixes #

Relates to #

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Other (security config, docs update, etc)

Checklist before merging

@blancharda
Copy link
Member

In the original PR we opted to leave out additional plugins by default, but left the door open to circle back later..

I think it's later now 😆

cc @mjnagel -- I think the original concern was around clarity on supported defaults (totally valid). There was also an assumption that the aws plugin would support S3 compatible storage providers.

Regarding the S3 compatibility assumption: I think that was bunk (and I'm the one that pushed it lol). Initial testing with rook-ceph appeared to be working, but we also may have inadvertently still had all the plugins enabled when we ran those tests. While the assumption may hold true for some providers, I don't think there's a guarantee, and we're much more likely to encounter storage providers that support the CSI API.

Regarding default support: I think the need for this is present in multiple envs, and this feels like a pretty minor change that expands default capability without negatively impact existing users or change current workflows..

If it's not clear -- I'm sold 😆
Curious your thoughts though.

@blancharda
Copy link
Member

Regarding the S3 compatibility assumption: I think that was bunk (and I'm the one that pushed it lol).

I also think in the original discussion around it, I/we may have partially conflated S3 compatible object storage (not really related to velero) with the storage driver (very much related to velero lol) which is easy to do when they're both installed by the same tool at the same time and often named very similarly..

TLDR.. bad assumptions are bad 🙈

Copy link
Contributor

@mjnagel mjnagel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this makes sense to add to expand the plugin/provider support. To make sure I understand - it may be helpful to have an example backup config we could show/link for how to use CSI (even just in this PR for myself to reference/validate). I'm not sure if that's something we could easily add a test for here also or not?

@justicorn justicorn changed the title initial add velero csi images and init containers feat: velero csi plugin May 24, 2024
@justicorn
Copy link
Contributor Author

I think this makes sense to add to expand the plugin/provider support. To make sure I understand - it may be helpful to have an example backup config we could show/link for how to use CSI (even just in this PR for myself to reference/validate). I'm not sure if that's something we could easily add a test for here also or not?

I included a section in the readme identifying that additional configuration would be required to get this working, this is just enabling the CSI plugin itself. Turning on snapshotVolume and configuring the CSI's snapshot location, etc would be required to test it. In the case of CI testing, it appears to be using the AWS EBS CSI, and that would utilize the AWS plugin, which was already included.

@mjnagel mjnagel merged commit c7e49e9 into main May 28, 2024
9 checks passed
@mjnagel mjnagel deleted the csi-plugin branch May 28, 2024 20:28
mjnagel pushed a commit that referenced this pull request Jun 6, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.22.1](v0.22.0...v0.22.1)
(2024-06-06)


### Bug Fixes

* add saml configuration to k3d standard bundle
([#425](#425))
([15b41d7](15b41d7))
* de-duplicate renovate matches
([#435](#435))
([4f9dbbb](4f9dbbb))
* default keycloak realm envs
([#455](#455))
([3a2b48f](3a2b48f))
* exemption race conditions
([#407](#407))
([d1b3b56](d1b3b56))
* integrated docs
([#431](#431))
([72238fa](72238fa))
* keycloak schema for package cr
([#436](#436))
([e32ce9a](e32ce9a))
* networkpolicy for keycloak smtp egress
([4059954](4059954))
* nightly testing eks config architecture
([#452](#452))
([a0bbd1f](a0bbd1f))
* remove deprecated registry login and add env setup
([#443](#443))
([ca6b76f](ca6b76f))
* remove go mod
([#441](#441))
([0de9693](0de9693))
* remove no-tea and update uds version
([#446](#446))
([434844b](434844b))
* use updated k3s
([#426](#426))
([1da1c49](1da1c49))


### Miscellaneous

* add checks before killing pods when updating istio annotations
([#457](#457))
([a62f9a0](a62f9a0))
* add debug logs to save logs for easier searching
([#430](#430))
([319101b](319101b))
* add velero csi plugin
([#424](#424))
([c7e49e9](c7e49e9))
* **deps:** update githubactions
([#413](#413))
([ebd834e](ebd834e))
* **deps:** update istio to v1.22.1
([#405](#405))
([ad4b861](ad4b861))
* **deps:** update jest to v29.1.4
([#438](#438))
([c3ecc8b](c3ecc8b))
* **deps:** update keycloak to v0.4.4
([#460](#460))
([936f40b](936f40b))
* **deps:** update keycloak to v0.4.5
([#461](#461))
([3592012](3592012))
* **deps:** update keycloak to v24.0.5
([#453](#453))
([6b0c6fc](6b0c6fc))
* **deps:** update keycloak to v24.0.5
([#454](#454))
([89911f0](89911f0))
* **deps:** update pepr
([#419](#419))
([d8f0309](d8f0309))
* **deps:** update pepr to v0.4.5
([#447](#447))
([f1dba17](f1dba17))
* **deps:** update prometheus-stack
([#422](#422))
([a96193e](a96193e))
* **deps:** update uds-common to v0.4.4
([#442](#442))
([bf6debd](bf6debd))
* **deps:** update uds-k3d to v0.7.0
([#428](#428))
([23b59a2](23b59a2))
* **deps:** update velero
([#408](#408))
([ffbefda](ffbefda))
* **deps:** update velero
([#440](#440))
([4b1a3ea](4b1a3ea))
* **deps:** update velero to v6.6.0
([#456](#456))
([aff37c1](aff37c1))
* **deps:** update zarf to v0.34.0
([#434](#434))
([9badf9d](9badf9d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
rjferguson21 pushed a commit that referenced this pull request Jul 11, 2024
## Description
Adding the CSI plugin to Velero
...

## Related Issue

Fixes #
<!-- or -->
Relates to #

## Type of change

- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Other (security config, docs update, etc)

## Checklist before merging

- [x] Test, docs, adr added or updated as needed
- [x] [Contributor Guide
Steps](https://github.com/defenseunicorns/uds-template-capability/blob/main/CONTRIBUTING.md)(https://github.com/defenseunicorns/uds-template-capability/blob/main/CONTRIBUTING.md#submitting-a-pull-request)
followed

---------

Co-authored-by: Micah Nagel <micah.nagel@defenseunicorns.com>
rjferguson21 pushed a commit that referenced this pull request Jul 11, 2024
🤖 I have created a release *beep* *boop*
---


##
[0.22.1](v0.22.0...v0.22.1)
(2024-06-06)


### Bug Fixes

* add saml configuration to k3d standard bundle
([#425](#425))
([15b41d7](15b41d7))
* de-duplicate renovate matches
([#435](#435))
([4f9dbbb](4f9dbbb))
* default keycloak realm envs
([#455](#455))
([3a2b48f](3a2b48f))
* exemption race conditions
([#407](#407))
([d1b3b56](d1b3b56))
* integrated docs
([#431](#431))
([72238fa](72238fa))
* keycloak schema for package cr
([#436](#436))
([e32ce9a](e32ce9a))
* networkpolicy for keycloak smtp egress
([4059954](4059954))
* nightly testing eks config architecture
([#452](#452))
([a0bbd1f](a0bbd1f))
* remove deprecated registry login and add env setup
([#443](#443))
([ca6b76f](ca6b76f))
* remove go mod
([#441](#441))
([0de9693](0de9693))
* remove no-tea and update uds version
([#446](#446))
([434844b](434844b))
* use updated k3s
([#426](#426))
([1da1c49](1da1c49))


### Miscellaneous

* add checks before killing pods when updating istio annotations
([#457](#457))
([a62f9a0](a62f9a0))
* add debug logs to save logs for easier searching
([#430](#430))
([319101b](319101b))
* add velero csi plugin
([#424](#424))
([c7e49e9](c7e49e9))
* **deps:** update githubactions
([#413](#413))
([ebd834e](ebd834e))
* **deps:** update istio to v1.22.1
([#405](#405))
([ad4b861](ad4b861))
* **deps:** update jest to v29.1.4
([#438](#438))
([c3ecc8b](c3ecc8b))
* **deps:** update keycloak to v0.4.4
([#460](#460))
([936f40b](936f40b))
* **deps:** update keycloak to v0.4.5
([#461](#461))
([3592012](3592012))
* **deps:** update keycloak to v24.0.5
([#453](#453))
([6b0c6fc](6b0c6fc))
* **deps:** update keycloak to v24.0.5
([#454](#454))
([89911f0](89911f0))
* **deps:** update pepr
([#419](#419))
([d8f0309](d8f0309))
* **deps:** update pepr to v0.4.5
([#447](#447))
([f1dba17](f1dba17))
* **deps:** update prometheus-stack
([#422](#422))
([a96193e](a96193e))
* **deps:** update uds-common to v0.4.4
([#442](#442))
([bf6debd](bf6debd))
* **deps:** update uds-k3d to v0.7.0
([#428](#428))
([23b59a2](23b59a2))
* **deps:** update velero
([#408](#408))
([ffbefda](ffbefda))
* **deps:** update velero
([#440](#440))
([4b1a3ea](4b1a3ea))
* **deps:** update velero to v6.6.0
([#456](#456))
([aff37c1](aff37c1))
* **deps:** update zarf to v0.34.0
([#434](#434))
([9badf9d](9badf9d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants