Q80 — AWS SAA-C03 Ch.15
Question 80 of 100 | ← Chapter 15
Q1180. A company is using an AWS Lambda function in a VPC. The Lambda function needs to access dependencies that exceed the size of the Lambda layer quota. The data that the Lambda function retrieves must be encrypted in transit.Which solution will meet these requirements with the LEAST operational overhead?
- A. Store the dependencies in an Amazon Elastic File System (Amazon EFS) file system. Mount the file system to the Lambde function. Retrieve the dependencies from the file system. ✓
- B. Store the dependencies on an Amazon EC2 instance that has an instance store volume and web server software. Use HTTPS API calls to retrieve the dependencies each time the Lambda function runs.
- C. Store the dependencies on an Amazon EC2 instance that hosts an NFS file server. Read the files from the EC2 instance each time the Lambda function runs.
- D. Store the dependencies in two separate Lambda layers. Redesign the application to have two Lambda functions that use different Lambda layers.
Correct Answer: A. Store the dependencies in an Amazon Elastic File System (Amazon EFS) file system. Mount the file system to the Lambde function. Retrieve the dependencies from the file system.
Explanation
To meet the requirements of accessing dependencies that exceed the Lambda layer quota and ensuring that the data retrieved by the Lambda function is encrypted in transit with the least operational overhead, the best solution is A. Store the dependencies in an Amazon Elastic File System (Amazon EFS) file system. Mount the file system to the Lambda function. Retrieve the dependencies from the file system.Analysis of Options:Option A: Store the dependencies in an Amazon EFS file system. Mount the file system to the Lambda function. Retrieve the dependencies from the file system.Advantage: Amazon EFS provides scalable, shared file storage that can be mounted to AWS Lambda functions within a VPC. This allows you to store dependencies that exceed the Lambda layer quota. Encryption in Transit: EFS supports encryption in transit using TLS, ensuring that data is encrypted when accessed by the Lambda function.Operational Overhead: This solution has minimal operational overhead because EFS is a fully managed service, and mounting it to a Lambda function is straightforward. Option B: Store the dependencies on an Amazon EC2 instance that has an instance store volume and web server software. Use HTTPS API calls to retrieve the dependencies each time the Lambda function runs. Limitation: This solution requires managing an EC2 instance, which increases operational overhead. Additionally, retrieving dependencies via HTTPS API calls each time the Lambda function runs can introduce latency and complexity.Encryption in Transit: While HTTPS ensures encryption in transit, the overall solution is more complex and less efficient than using EFS.Option C: Store the dependencies on an Amazon EC2 instance that hosts an NFS file server. Read the files from the EC2 instance each time the Lambda function runs. Limitation: Similar to Option B, this solution requires managing an EC2 instance and an NFS file server, which increases operational overhead.Encryption in Transit: You would need to ensure that the NFS connection is encrypted, which adds complexity.Performance: Reading files from an NFS server each time the Lambda function runs can introduce latency and is less efficient than using EFS.Option D: Store the dependencies in two separate Lambda layers. Redesign the application to have two Lambda functions that use different Lambda layers.Limitation: This solution does not address the issue of dependencies exceeding the Lambda layer quota. Even if you split the dependencies into two layers, there is still a limit to the size of each layer, and you may still exceed it.Operational Overhead: Redesigning the application to use two Lambda functions increases complexity and operational overhead.Conclusion:A. Store the dependencies in an Amazon EFS file system. Mount the file system to the Lambda function. Retrieve the dependencies from the file system. is the best solution to meet the requirements with the least operational overhead. It provides scalable, shared file storage that can be mounted to the Lambda function, supports encryption in transit, and is a fully managed service, reducing operational complexity.