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

Support EFS CSI by changing volume claim #22

Open
cep21 opened this issue Dec 22, 2020 · 8 comments
Open

Support EFS CSI by changing volume claim #22

cep21 opened this issue Dec 22, 2020 · 8 comments
Labels
waiting-on-response Waiting for a response from the user

Comments

@cep21
Copy link

cep21 commented Dec 22, 2020

Hi,

EFS is great for atlantis since it's not locked to a single AZ. The future of EFS kubernetes is https://github.com/kubernetes-sigs/aws-efs-csi-driver. There's no way (I know of) to use volumeclaimtemplates (which this helm chart uses) with the CSI spec. There are details here: kubernetes-sigs/aws-efs-csi-driver#42

Rather than a storageclass inside the volumeclaimtemplates, can we use our own PersistentVolume (where we can configure a volumeHandle) ?

spirosoik pushed a commit to spirosoik/helm-charts that referenced this issue Aug 3, 2021
* [stable/prometheus-aws-costs-exporter] add chart

* fix this

* add readme
@nilsSure
Copy link

+1

@nitrocode
Copy link
Member

nitrocode commented Dec 30, 2022

Looks like you can provide your own StorageClass using name efs-atlantis

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: efs-atlantis
provisioner: efs.csi.aws.com
parameters:
  provisioningMode: efs-ap
  fileSystemId: <EFS ID>
  directoryPerms: "777"

Then set the volume claim to the new storage class

# values.yaml
volumeClaim:
  storageClassName: efs-atlantis

{{- if .Values.volumeClaim.storageClassName }}
storageClassName: {{ .Values.volumeClaim.storageClassName }} # Storage class of the volume
{{- end }}

kubernetes-sigs/aws-efs-csi-driver#541 (comment)

@GenPage
Copy link
Member

GenPage commented Jan 20, 2023

@cep21 can you confirm if @nitrocode suggestion addresses your issue?

@davirodriguesrezende
Copy link

@nitrocode I tested it and it didn't work for me, can you tell me what else you did?

@Gabryel8818
Copy link

hello everything is fine?

sorry for the intrusion, but I have noticed that the atlantis replicas do not use the same access point when using the aws-efs-csi plugin

Is it possible that atlantis replicas use the same access point?

i tested it and i didn't work for me @nitrocode

@pof-jhansilva
Copy link

Trying to revive this; I'm trying to use EFS with Atlantis and I'm having a hard time while using this Helm Chart.

@Balsir
Copy link
Contributor

Balsir commented Oct 26, 2023

Setting up EFS with the chart is doable on both EC2 and Fargate.

  1. Install and configure aws-efs-csi-driver
  2. Create a StorageClass, PersistentVolumeClaim, and in case of Fargate PersistentVolume outside the chart, because Fargate doesn't support dynamically provisioned PersistentVolume
  3. Set .Values.volumeClaim.enabled to false
  4. Mount the new volume via .Values.extraVolumes and .Values.extraVolumeMounts

StatefulSet creates a new PersistentVolumeClaim for each replica, so if you want a common filesystem for all your pods, you need to create the PVC separately https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#stable-storage

Example from efs-csi docs: https://github.com/kubernetes-sigs/aws-efs-csi-driver/blob/master/examples/kubernetes/statefulset/specs/example.yaml

@GMartinez-Sisti
Copy link
Member

Looks like this is not an issue anymore? Please let us know.

@GMartinez-Sisti GMartinez-Sisti added the waiting-on-response Waiting for a response from the user label May 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
waiting-on-response Waiting for a response from the user
Projects
None yet
Development

No branches or pull requests

9 participants