본문 바로가기

AWS5

[AWS CLI] S3 디렉토리 내 오브젝트 전체 복사 AWS console 상으로는 디렉토리 내에 있는 오브젝트 전체를 다운로드 받을 수 없고, 개별 오브젝트를 하나 씩만 다운로드 받을 수 있다. 디렉토리 내 오브젝트 전체를 다운받고자한다면 AWS CLI를 사용해서 복사를 해야한다. $ aws s3 cp s3:/// --recursive 위 커맨드는 / 내에 있는 모든 오브젝트를 에 복사한다는 의미이다. 참고: https://docs.aws.amazon.com/cli/latest/reference/s3/cp.html 2023. 5. 24.
[AWS] EC2 인스턴스 스토리지 용량 Slack 알람 세팅하기 최근에 EC2 인스턴스에서 기동 중인 백오피스 툴이 스토리지 용량이 꽉차서 제대로 동작하지 않았던 적이 있다. 원인을 파악하고 EBS 용량을 증가시키는 동안 백오피스 툴을 사용할 수 없었는데 사후에 대처를 잘하는 것도 중요하지만, 사전에 미리 위험을 감지할 수 있는 시스템을 구축하는 것도 중요하다. 이번 포스팅에서는 crontab을 통해 주기적으로 파이썬 스크립트를 통해 EC2 인스턴스의 스토리지 용량을 확인하고 용량이 모자른다고 판단되면 Slack 알람을 보내는 예제에 대해 알아보겠다. (OS는 Ubuntu 기반으로 설명한다) EC2 인스턴스에 CloudWatch Agent를 설치하여 CloudWatch 알람을 받는 방식도 있지만, 단순히 스토리지 용량을 모니터링하기 위함이라면 어쩌면 배보다 배꼽이 더.. 2023. 3. 12.
[SQS] 메세지 지연 시키기 (+ 15분을 넘어서) SQS 같은 경우 delay queues 라고하는 Consumer에게 메세지 노출을 지연시킬 수 있는 기능을 제공한다. 지연은 최대 15분까지 가능하다. (Visibility Timeout과는 다른 개념이기 때문에 명확하게 차이를 인지해야한다) 이 기능을 사용하면 메세지에 지연을 줄 수 있기 때문에 예약 실행 기능(정해진 시간 뒤에 특정 기능이 실행되어야하는 기능)을 개발할 때 사용될 수 있다. 예를 들어 '회원 가입 후 5분 뒤에 가입 축하 메세지를 보내기' 와 같은 기능이 있을 수 있는데, 회원 가입 도메인 이벤트에 대한 SQS 메세지 or 가입 축하 메세지 전송 SQS 메세지를 5분의 지연을 설정하고 enqueue 하면 5분 뒤에 메세지 핸들러에서 해당 메세지를 consume 하여 대상 유저에게 가.. 2023. 2. 4.
[SQS] Visibility Timeout Consumer가 Queue에서 메세지를 consume 하고 처리를 한 뒤, 해당 메세지를 acknowledge(delete)를 하기 전까지는 메세지는 Queue에 계속 남아있는다. 특정 Consumer가 메세지를 consume 하고 모든 처리가 끝날 때까지 다른 Consumer에서 동일 메세지를 consume하는 것을 막기위해서 SQS에서는 Visibility Timeout을 설정한다. 메세지가 consume 된 뒤에 다른 Consumer에게 다시 보여지기 위한 시간이라고 생각하면 될 것이다. (하지만 이는 메세지가 두 번 전달되는 것을 막기 위함은 아니다) 기본값은 30초이며, 0초~12시간 까지 설정 가능하다. 관련하여 메세지 수의 제한을 확인해야하는데, 제한을 확인하기 전에 짧게 메세지의 상태에 .. 2023. 2. 4.
Terraform으로 AWS Key Pair 등록하기 AWS에서 Key Pair를 생성하고 이를 다운받아 사용할 수 있지만, 반대로 내가 생성한 Key Pair를 AWS에 등록해서 사용할 수도 있다. 이번 포스팅에서는 Key Pair를 생성하고 Terraform을 통해 AWS에 Key Pair를 등록하는 과정에 대해 알아보도록 하겠다. ssh-keygen을 통한 Key Pair 생성 ssh-keygen을 통해 Key Pair를 생성한다. 나는 tf-key-pair라고 이름을 짓도록 하겠다. # -t: 암호화 타입 # -b: 비트 수 # -C: 코멘트 # -f: 파일 저장 경로 # -N: 암호화 옵션 $ ssh-keygen -t rsa -b 4096 -C "" -f "{저장하고자하는 경로}/tf-key-pair" -N "" # key pair 확인 $ ls .. 2021. 11. 19.