Amazon AWS36 Cloudwatch의 로그 S3 백업을 자동화 하기(w/ AWS Lambda) Cloudwatch의 로그들을 일별로 S3에 백업해두려고 하는데 매일 콘솔로 직접 백업하기는 번거로우니 Lambda를 이용해서 자동화 하려고 한다. 💡 아래 사항이 준비되어 있어야 한다. 1. Cloudwatch 로그 리전과 일치하는 리전의 S3버킷이 있어야 한다. 2. S3와 Cloudwatch logs에 대한 전체 엑세스 권한을 가진 IAM 사용자가 있어야 한다. 1. 권한 설정 S3에 cloudwatch의 로그 데이터를 추출하기 위해서는, S3에서 데이터 입력을 허용하는 설정이 되어 있어야 한다. 데이터를 백업할 S3 버킷에 접속하여 버킷정책을 설정해 준다. 버킷 정책에 아래 권한 정책을 입력한다. { "Version": "2012-10-17", "Statement": [ { "Action": "s.. 2022. 10. 8. 도커 이미지를 빌드해서 ECR에 Push 하기 회사에서 AWS 서비스 내에서 도커 이미지가 필요한 경우 대부분 저장소로써 AWS ECR(Elastic Container Registry)에 저장해 놓고 불러서 쓴다. 이번에 AWS Batch를 이용하기 위해 도커 이미지를 빌드해서 사용해야 해서 그 과정을 기록해 놓으려 한다. 원하는 도커 이미지를 빌드해보자. 이번에는 AWS Batch에서 주기적으로 JAR 파일을 실행할 수 있도록 하는 이미지가 필요 했다. JAR 파일을 실행하기 위해서는 JAVA 설치가 필요했고, JAR파일을 다운받을 수 있도록 S3 접근이 가능해야 했다. 1. Dockerfile 작성 FROM amazonlinux:2 RUN \ yum update -y && \ # java-11-amazon-corretto : 아마존 리눅스 용 자.. 2022. 9. 25. AWS SAM을 이용해 Fast API를 AWS에 서버리스로 배포하기 회사에서 Lambda와 API Gateway를 이용해서 간단한 API들을 꽤나 여러개 만들 일이 있었다. 처음에는 API 엔드포인트 하나당 하나의 Lambda 함수를 생성하고, API Gateway의 리소스/메소드도 생성해서 연동시켜주는 방식으로 작업했다. 한두개의 API를 만들어서 배포할때에는 좋은 방법이겠지만... 여러개를 만들어야 하는 상황에서는 매우 번거롭고 작업 속도가 나지 않았다. 좀 더 효율적인 방법을 찾아보던 중, Fast API를 생성해서 서버리스로 AWS Lambda에 등록하고 API Gateway에 배포할 수 있는 방법이 있어 시도해 보았다. 결과적으로는 이전에 3개 만들던 시간에 6개정도를 만들 정도로 효율이 좋았고 관리에도 용이했다. Fast API를 Lambda에 올리는 방법은 .. 2022. 9. 18. Ingress 사용을 위한 AWS Loadbalancer Controller 설치 이번에 구성하는 클러스터에 인그레스를 적용하고자 한다. 인그레스는 인그레스 컨트롤러가 있어야 동작해야 하는데, AWS에서는 AWS Loadbalancer Controller가 Ingress Controller의 역할을 수행한다. 💡 Ingress란? 인그레스는 클러스터 외부에서 클러스터 내부 서비스로 HTTP와 HTTPS 경로를 노출한다. 트래픽 라우팅은 인그레스 리소스에 정의된 규칙에 의해 컨트롤된다. 또한, 인그레스는 외부에서 서비스로 접속이 가능한 URL, 로드 밸런스 트래픽, SSL / TLS 종료 그리고 이름-기반의 가상 호스팅을 제공하도록 구성할 수 있다. 1. IAM OIDC 공급자 생성 AWS Loadbalancer Controller를 설치하기 전에, 클러스터에 대한 AWS Identit.. 2022. 9. 4. 이전 1 2 3 4 5 6 7 8 9 다음