Amazon AWS36 AWS Lambda에서 파이썬 모듈 추가하기 Python과 NodeJS의 경우에는 AWS Lambda 콘솔에서 코드를 작성하고 편집 할 수 있다. 콘솔에서 작성한 파이썬 코드를 배포하고 실행하다 보면, 아래와 같은 에러가 발생할 때가 있다. [ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': No module named 'requests’ 이런 에러가 발생한 원인은 코드를 실행할 때 필요한 모듈이 없기 때문이다, 해결방법 필요한 모듈을 로컬에서 특정 디렉토리 위치에 설치해준다. #디렉토리 생성 및 이동 mkdir python cd python/ #모듈 설치 $ pip install requests -t . # 디렉토리 압축, 명령어로 해도 되고 직접 마우스로 해.. 2022. 12. 11. AWS Athena를 사용해서 S3의 데이터에 쿼리 쓰기 S3에 저장되어 있는 데이터들을 조회할 때, AWS의 Athena 서비스를 이용하면 S3의 파일들을 다운받거나 불러오지 않더라도 표준 SQL을 사용해서 쿼리로 편하게 데이터를 조회할 수 있다. Amazon Athena란 무엇인가요? (AWS 문서 설명: https://docs.aws.amazon.com/ko_kr/athena/latest/ug/what-is.html) Amazon Athena는 표준 SQL을 사용하여 Amazon S3(Amazon Simple Storage Service)에 있는 데이터를 직접 간편하게 분석할 수 있는 대화형 쿼리 서비스입니다. AWS Management Console에서 몇 가지 작업을 수행하면 Athena에서 Amazon S3에 저장된 데이터를 지정하고 표준 SQL을 .. 2022. 11. 20. AWS EKS에서 CA(Cluster Autoscaler) 구성하기 eksctl을 사용해서 관리형 노드 그룹으로 클러스터를 구성하면 ClusterConfig에서 설정한대로 노드 그룹에 대한 Auto Scaling group이 자동으로 생성된다. 이후에 eksctl 명령어를 이용해서 오토스케일링 그룹의 min, max, desired size 값 등을 수동으로 변경할 수 있다. 하지만… 이 오토스케일링 그룹은 자동으로 pod의 pending을 인식해서 노드를 늘려주지는 않았다. EKS에는 각 인스턴스의 종류에 따라서 사용 가능한 Pod의 수가 정해져 있는데, 이 pod의 수를 넘어가면 생성되는 pod가 pending 상태로 멈춰있는 현상이 발생한다. 이런 문제 해결을 위해서는 pod의 pending상태를 인식하고 node를 증감시키도록 클러스터 오토스케일링이 필요하다. 아.. 2022. 11. 13. Configmap, Secret 사용하기 대부분의 어플리케이션은 동작하기 위해서 몇가지 설정값이 필요 하다. Pod 배포 후에도 계속해서 수정 가능성이 있는 설정 값들은 Pod 외부에서 관리하도록 하는것이 효율적이다. Pod를 구성하는 Docker image는 한번 build되고 나면 변경이 불가능하므로, Image 내부에 설정파일을 두면 설정이 변경 될 때마다 다시 Build해야 하기 때문이다.쿠버네티스에서는 이렇게 설정값을 따로 관리하도록 Configmap과 Secret 기능을 제공한다. Configmap 설정 Configmap에 환경변수를 직접 설정해서 사용할 수도 있지만, 특정 설정파일을 Configmap으로 사용 할 수도 있다. server.xml, fluentd.conf와 같이 설정 파일 자체를 관리 해야 할때에는 환경변수로 지정하는.. 2022. 10. 16. 이전 1 2 3 4 5 6 7 ··· 9 다음