목록AWS/Lambda (6)
강
AWS Lambda 환경에서 ML 추론 작업 수행해보기 서론 해당 글에서는 다양한 ML 프레임워크 중 Tensorflow를 사용해 간단한 딥러닝 추론을 진행하는 방법에 대해 다룹니다. Tensorflow 추론 코드에 대한 이해도가 어느정도 있다고 가정하고 진행합니다. 1. 깃허브 구성 AWS Lambda에서 실행시킬 코드와 관련 라이브러리 환경 구성을 위해 깃허브를 이용합니다. 해당 깃허브 링크를 예시로 설명합니다. https://github.com/workdd/lambda-container-example model 폴더에는 추론을 위한 모델이 담겨져 있습니다 imagenet_class_index.json는 정확도 측정을 위한 imagenet의 정답 라벨 데이터가 json 형식으로 저장되어 있습니다 la..
문제 직면 람다에서 주기적으로 web에 request요청을 보내야 하는 작업을 해야했다. 기존에 python3.7 버전에서 람다를 즐겨 사용했던 나는 람다에서 리눅스 커맨드를 실행하는 방법으로 작업을 진행하려 했었다. 예시로 import os def lambda_handler(event,context): os.system("curl https://naver.com") python 내장 라이브러리인 os를 이용하여 람다에서 curl 명령어를 실행하려고 했었다. 하지만 어째서인지 아래와 같은 에러가 발생했다. bin/sh: curl: command not found 현재 람다가 사용하는 리눅스에 curl 명령어가 없다는 메세지였다. Stackoverflow를 통해 조금 더 공부해 보니, python3.7까지..
서버리스 아키텍쳐를 AWS 에서는 Lambda, MicroSoft에서는 Azure Function으로 제공하고 있다. 두 제공 업체에서 모두 병렬적인 워크로드를 서버리스 환경에서 돌려보았다. AWS Lambda에서는 높은 처리량을 보였던 반면 Azure Function에서는 병렬적인 처리도 순차적으로 진행하는 경향을 보였다. 따라서 내부 구조에 대해 이해해 보려고 정리해보았다. Benchmarking Parallelism in FaaS Platforms 이라는 논문을 참고하여 구조에 대해 이해했다. 3.2. AWS Lambda architecture Control Plane은 사용자가 AWS Lambda 와Invoke Service 등을 구성하는 부분이다. Data Plane은 내부적으로 실행 환경을 구..
이번 포스트에서는 AWS Lambda로 MapReduce실험을 실제로 돌려보고 어떻게 동작 하는지에 대해 정리했습니다. 원문 내용의 주소와 깃헙 주소는 다음과 같습니다. https://aws.amazon.com/blogs/compute/ad-hoc-big-data-processing-made-simple-with-serverless-mapreduce/ https://github.com/awslabs/lambda-refarch-mapreduce 다음의 블로그를 참조하여 이해해 큰 도움을 얻었습니다. 코드에 대한 자세한 설명을 포함하므로 본 포스트를 읽기 전에 참고해 보시면 좋을 것 같습니다. https://jeongchul.tistory.com/622?category=495790 python3.6으로 구동..
AWS Lambda로 MapReduce 작업을 구현되어있는 코드를 수정하여 구성해볼 것 입니다. 이번 포스트에서는 원문에서 코드가 python2.6의 버전만을 지원하므로 python3.6으로 돌릴 수 있도록 변경해 볼 것 입니다. 원문 내용의 주소와 깃헙 주소는 다음과 같습니다. https://aws.amazon.com/blogs/compute/ad-hoc-big-data-processing-made-simple-with-serverless-mapreduce/ https://github.com/awslabs/lambda-refarch-mapreduce 다음의 블로그를 참조하여 이해해 큰 도움을 얻었습니다. https://jeongchul.tistory.com/622?category=495790 pytho..
1. EFS 생성 일단은 efs와 연결할 것인데, efs가 당연히 있어야 하므로 생성합니다. vpc는 특별한 사항이 아니면 default vpc를 이용하고 2번째 단계도 모두 디폴트 값으로 넘어갑니다. 위 그림이 중요하다. 이 부분 때문에 정말 많은 시간이 소요 되었었습니다. 보안적으로 빡빡하게 할 것이 아니라면, 체크박스를 모두 건너뛰고 Set policy를 합니다. 알아서 잘 생성해준다. 그리고 access points를 생성해줍니다. access point는 로컬 디렉토리가 efs 디렉토리와 연결될 수 있도록 access end point를 제공합니다. 저는 위와 같이 했습니다. 여기서 주의할 점은 Directory에 경로를 단지 '/' (root 디렉토리)로 하면, 접근할 때 permission ..