분류 전체보기
AWS API Monitoring with terraform
AWS API Monitoring with terraform
2023.09.10소개 AWS를 사용하다 보면, 중요한 API의 경우 모니터링과 더불어 Notification이 필요할 때가 있다. 그중에 하나 예를 든다면, AccessKey 발급이다. AccessKey이 유출당했을 경우 해당 사용자 혹은 계정의 모든 API를 호출할 수 있기에 매우 위험하다. 또한 사용자가 계정을 해킹당했을 때 AccessKey를 새롭게 발급받아 사용할 수 있는 위험이 있다. 이러한 것을 알아차리기 위해서, Credential 한 것들은 Notification을 할 필요가 있다. 이번에 예시는 AccessKey를 생성했을 때 알림을 받는 것을 만들어보는 것이다. 구현 사용할 서비스들은 CloudTrail, CloudWatch Log Group, S3, EventBridge, SNS이다. 1. Cloud..
AWS DevOps Engineer Professional (DOP-C02) 준비
AWS DevOps Engineer Professional (DOP-C02) 준비
2023.08.12DOP 준비 계기 AWS SAA를 딴 지 벌써 5개월이라는 시간이 지났다. SAA를 따고난 후 실무에 공부한 지식을 적용할 수 있는 기회도 많았고, 실제로 적용도 했다. 그러면서 AWS의 더많은 서비스를 공부해 내것으로 만들고, 실무에 적용하고 싶었다. SAA는 이론적인 부분이 많았다면, DOP는 실무적인 내용에 가깝다고 생각했기에 준비하게 됐다. 준비 방법 준비 방법은 SAA를 준비했을 때와 많이 다르지 않다. SAA때는 인강과 책으로 준비 했지만, 이번에는 인강으로만 준비할 예정이다. 마찬가지로 Dump 문제는 최소화 할 예정이다. 그리고 좋은 점이 SAA에서 공부했던 내용이 포함돼 있어서 시험 준비 부담이 그렇게 많진 않았다. 유데미 인강 시험 신청은 따로 알아보지 않기로 하고, SAA를 합격하고 ..
AWS Event Scheduler 구현 (EventBridge + SNS + SQS) with terraform
AWS Event Scheduler 구현 (EventBridge + SNS + SQS) with terraform
2023.08.07스케줄러 비용을 줄여보자 지금까지 경험한 서비스들은 스케줄러가 필요했다. 예를 들어서 00시에 값들을 변경, 카카오 메시지를 발송, 배치성 쿼리 등등이 존재했다. SpringBoot의 @Scheduled 어노테이션으로 구현하고 있다. 스케줄러가 동작하는 인스턴스는 Scale-Out이 되면 문제가 발생할 수 있다. 따라서 스케줄러 인스턴스는 다른 애플리케이션과 분리돼야 했다. 배치성 쿼리나, 어느 정도의 비즈니스 로직이 들어갈 수 있으므로 인스턴스의 사양을 아예 낮은 거는 사용할 수 없다. 따라서 t3.small로 결정했다. 1년 RI로 했을 때 가격은 아래와 같다. 한 달의 가격은 11.46USD 큰 비용은 아니다. 그럼에도 비용을 줄이고 싶다. 해당 이벤트를 어떻게 처리하는 것에 대한 구현은 없다. 이..
AWS Bastion Host (사용자 관리) with terraform
AWS Bastion Host (사용자 관리) with terraform
2023.07.09Bastion Host 사용하는 이유 AWS에서 VPC를 별도로 생성한 후 Private 서브넷에 리소스들을 생성했다면, VPC 외부에서접근 하기 위해서는 VPN, Direct Connect 방법을 사용해야 합니다. 하지만 구축하기에 리소스가 듭니다. 따라서 동일한 VPC에 Public에서 접근 가능한 인스턴스를 생성한 후 ssh를 통해 연결할 수 있는 방법이 있습니다. 그것이 Bastion Host입니다. 제가 사용했던 용도로는 RDS Severless Aurora같은 경우 Private에 밖에 생성을 할 수 없으므로 Public에서 접근이 불가능해 Local에서 애플리케이션을 실행할 수 없었는데, Bastion Host의 ssh를 통해서 접근을 했습니다. 이때 다른 사용자가 Bastion Host를 ..
Terraform Associate (003) 자격증 취득 후기
Terraform Associate (003) 자격증 취득 후기
2023.06.19자격증 취득 동기 나는 DevOps로 커리어를 변경하고 싶기에 관련된 공부를 하고 자격증을 따고 있다. 3월에는 SAA를 취득했다. 이후 CKA를 취득하려고 했으나, 여러 곳의 채용 공고를 보니 항상 등장하는 것이 있었다. 바로 IaC 도구라는 것이 우대 사항이거나 혹은 자격 조건에 항상 등장했다. 내가 DevOps 커리어를 쌓아가기 위해서는 필수적인 요소로 보였다. 따라서 CKA가 아닌 IaC도구 자격증을 취득하며, 공부를 하기로 결심했다. 회사에서 인프라 일을 처리하며, 느낀 점은 Console로 인프라를 다루는 것은 시간이 오래 걸렸고, 문서화가 어려웠다. 인프라를 프로비저닝 할 수 있는 IaC 중에 어떤 것을 공부하기 좋을까 생각했다. Terraform에 대한 내용이 굉장히 많았고, Terrafo..
Cloudfront cache auto invalidate
Cloudfront cache auto invalidate
2023.06.051. 개요 S3를 Cloudfront로 배포하는 것은 매우 바람직한 일인데, 이때 불편함을 느낀 적이 있다. 일반적으로 Cloudfront를 사용했을 때 얻을 수 있는 이점인 cache가 있다. cache의 지속 시간을 설정할 수 있지만, S3의 객체를 새로 생성한 경우는 괜찮다. 하지만 업데이트 즉 Put을 한 경우 Cloudfront의 cache는 이전의 데이터가 남아 있어 문제를 일으킬 수 있다. 따라서 수동으로 cache를 날려줘야 하는데, 매우 귀찮은 일이고, 쉽게 잊을 수 있는 일이다. 아키텍처와 실제 동작을 아래에서 살펴볼 예정이다. 모두 실습을 진행할 수 있도록, Terrafrom 코드 또한 Github로 제공한다. TerrafromCode 2. 아키텍쳐 해당 문제를 자동화할 수 있는 방법..