# EFS Mount with Access Point

This article provides the steps to configure Amazon Elastic File System (EFS) with access points for an Amazon EKS cluster. It includes EFS file system creation, access point configuration, PersistentVolume and PersistentVolumeClaim updates, and Helm chart configuration. This setup enables shared persistent storage access across OvalEdge UI and Job pods deployed in Kubernetes environments.

### Prerequisites

Ensure the following prerequisites are met before starting the configuration:

* AWS account access is available
* Read and write permissions are available for Amazon EFS
* Configure the Amazon EKS cluster before starting the EFS integration steps.
* Helm is installed and configured
* Install the EFS CSI driver in the Amazon EKS cluster.
* Required Helm charts are available for deployment

## Create an Amazon EFS File System

1. Log in to the AWS Management Console.
2. Navigate to the Amazon EFS service.
3. Click Create file system.<br>

   <figure><img src="/files/FLgR3LFveBOALZafmxyU" alt=""><figcaption></figcaption></figure>
4. Click Customize to configure the EFS settings.<br>

   <figure><img src="/files/oUn5YxUWgGMMu0XHUQea" alt=""><figcaption></figcaption></figure>
5. Provide the EFS file system name.<br>

   <figure><img src="/files/fyafOGTqv3eADVD1ae6B" alt=""><figcaption></figcaption></figure>
6. To select Network Configuration, perform the following actions:
   * Select the required VPC
   * Select the required Security Groups<br>

     <figure><img src="/files/Uq2S9klNkbmWFtOkf1me" alt=""><figcaption></figcaption></figure>
7. To create a file system, click Next and then click Create.<br>

   <figure><img src="/files/bk5HO7RhdpBnOiJ1nruV" alt=""><figcaption></figcaption></figure>

## Create EFS Access Points

1. Open Access points by performing the following actions:
   * Select the created EFS file system
   * Click Access points<br>

     <figure><img src="/files/gA9uBmAIlPIMlTMFNZOg" alt=""><figcaption></figcaption></figure>
2. Click Create access point.<br>

   <figure><img src="/files/2PGGacE8pSTaM7zq8fu8" alt=""><figcaption></figcaption></figure>
3. Provide a name for the Access point and specify the root directory path as "/any-name".
4. Under "POSIX user," set:
   * USERID: 777
   * Group ID: 777
   * Secondary GroupID: 777
5. Set permissions for the root directory:
   * OWNER USER ID: 777
   * OWNER GROUP ID: 777
   * Access point: 777
6. Follow the same configuration as shown in the following screenshot

   <figure><img src="/files/ZqeF24SFR4m9LdmQFBoL" alt=""><figcaption></figcaption></figure>

   <figure><img src="/files/EJzGmz9i0LUrmDX7cXDb" alt=""><figcaption></figcaption></figure>
7. Repeat the same process to create access points for the following directories:
   * third-party-jars  (csp-lib.jar, lineage.jar, required jars)
   * Oelogs
   * Certs
   * esdata

## Update Helm Charts

1. Navigate to the Helm chart directory&#x20;
2. Update the PersistentVolume and PersistentVolumeClaim YAML files with the EFS file system ID and access point ID obtained from the EFS.

{% hint style="info" %}
No additional storage class configuration is required if the storage class already exists in the templates.
{% endhint %}

### Configure JARS&#x20;

1. Persistent Volume\
   Replace \<fs-filesystem\_ID> and \<AccessPointID> with the actual EFS file system ID and access point ID.

   ```
   apiVersion: v1
   kind: PersistentVolume
   metadata:
    name: efs-pv-jars
   spec:
    capacity:
      storage: 2Gi
    volumeMode: Filesystem
    accessModes:
      - ReadWriteMany
    persistentVolumeReclaimPolicy: Retain
    storageClassName: efs-sc
    csi:
      driver: efs.csi.aws.com
      volumeHandle: <fs-filesystem_ID>::<AccessPointID>
   ```
2. PersistentVolumeClaim

   ```
   apiVersion: v1
   kind: PersistentVolumeClaim
   metadata:
    name: efs-claim-jars
   spec:
    accessModes:
      - ReadWriteMany
    storageClassName: efs-sc
    resources:
      requests:
        storage: 2Gi
   ```

### Configure Certs&#x20;

1. Persistent Volume\
   Replace \<fileSystem-id> & \<AccessPointID> with the actual file system ID and access point ID of "certs" from EFS.

   ```
   apiVersion: v1
   kind: PersistentVolume
   metadata:
    name: efs-pv-certs
   spec:
    capacity:
      storage: 1Gi
    volumeMode: Filesystem
    accessModes:
      - ReadWriteMany
    persistentVolumeReclaimPolicy: Retain
    storageClassName: efs-sc
    csi:
      driver: efs.csi.aws.com
      volumeHandle: <fs-filesystem_ID>::<AccessPointID>
   ```
2. PersistentVolumeClaim

   ```
   apiVersion: v1
   kind: PersistentVolumeClaim
   metadata:
    name: efs-claim-certs
   spec:
    accessModes:
      - ReadWriteMany
    storageClassName: efs-sc
    resources:
      requests:
        storage: 1Gi
   ```

### Configure Files&#x20;

1. Persistent Volume\
   Replace \<fileSystem-id> & \<AccessPointID> with the actual file system ID and access point ID of "files" from EFS.<br>

   ```
   apiVersion: v1
   kind: PersistentVolume
   metadata:
    name: efs-pv-files
   spec:
    capacity:
      storage: 7Gi
    volumeMode: Filesystem
    accessModes:
      - ReadWriteMany
    persistentVolumeReclaimPolicy: Retain
    storageClassName: efs-sc
    csi:
      driver: efs.csi.aws.com
      volumeHandle: <fs-filesystem_ID>::<AccessPointID>
   ```
2. PersistentVolumeClaim

   ```
   apiVersion: v1
   kind: PersistentVolumeClaim
   metadata:
    name: efs-claim-files
   spec:
    accessModes:
      - ReadWriteMany
    storageClassName: efs-sc
    resources:
      requests:
        storage: 7Gi
   ```
3. Attach the PersistentVolumeClaims to the UI and Job pod deployment YAML files.<br>

   ```
   volumes:
    - name: efs-volume-jars
      persistentVolumeClaim:
        claimName: efs-claim-jars
    - name: efs-volume-certs
      persistentVolumeClaim:
        claimName: efs-claim-certs
        - name: efs-volume-files
      persistentVolumeClaim:
        claimName: efs-claim-files
   volumeMounts:
    - name: efs-volume-jars
      mountPath: /home/ovaledge/third_party_jars
    - name: efs-volume-certs
      mountPath: /home/ovaledge/certificates
    - name: efs-volume-files
      mountPath: /home/ovaledgefiles 
   ```

## Install Updated Helm Charts

1. Navigate to Helm Chart Directory
2. Open the directory containing the updated Helm charts.
3. Run the following command:

   ```
   helm install ovaledge ovaledge
   ```
4. This command deploys the application with the updated EFS PersistentVolume and PersistentVolumeClaim configurations.

***

Copyright © 2026, OvalEdge LLC, Peachtree Corners, GA, USA.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.ovaledge.com/release8.1/deployment-and-maintenance/configuration/efs-mount-with-access-point.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
