Infra/AWS
-
[AWS] ECS Fargate + Prometheus + Grafana (with Terraform)Infra/AWS 2024. 4. 1. 11:34
ECS Fargate에 모니터링 시스템을 구축하고자 한다. 조사해보니 Prometheus + Grafana 조합이 가장 합리적이라고 판단했다. 무료이면서 아웃풋이 괜찮다. 자세히 알고 싶다면, 검색하길 바란다. 각설하고, 주요 과정을 기록하고자 한다. 결과는 정말 별거 없지만, 삽질을 며칠 했다.. 자, 먼저 인프라 구성부터 살펴보자. 백엔드와 프론트엔드 서비스 각각에 prometheus/node-exporter container를 추가했다. terrafom 코드로 IoC 작업을 했다. ... resource "aws_ecs_task_definition" "example" { container_definitions = jsonencode([ { name = "node-exporter" image = "..
-
AWS lambda를 이용해 RDS DB cloudwatch 알림 잔디(JANDI) 웹훅(webhook)으로 받기.Infra/AWS 2023. 12. 14. 16:21
오늘 아침 일찍, AWS로 운영중인 개발용 DB가 다운이 됐었다. 모니터링을 살펴본 결과, 사용자가 없는데, 갑자기 이럴수가 있네? 그래서 이슈 발생시 JANDI 메신저로 webhook을 날리도록 만들기로 했다. JANDI 또는 SLACK을 써도 된다. [목차] 1. SNS(Simple Notification Service) topic 생성 2. RDS DB CloudWatch 설정 3. JANDI webhook URL발급 4. Lambda 함수 생성 및 SNS trigger 5. 테스트 & 실행 1. SNS(Simple Notification Service) topic 생성 적당한 이름으로 지정하면 된다. 2. RDS DB CloudWatch 설정 하고 싶은 설정을 맘껏 추가해주자! 3. JANDI w..
-
aws cloudfront를 이용해서 s3에 있는 나의 컨텐츠 보호하기(feat. signed url)Infra/AWS 2023. 8. 23. 18:26
aws에서 동영상 서비스를 구축중에 있다. 그런 와중에 영상 유출 방지를 위한 대책이 필요했다. 기본적으로 public에서 url 접근을 허용해 서비스를 개발하였고, 이제 컨텐츠 보호를 위해 인프라 내부 환경에서만 접근 가능하도록 한다. 첫 번째 방법 vpc를 기준으로 외부에서 접근 못하도록 한다. 그렇게 되면 서버에서는 접근이 되지만, 외부에서 url을 통해 접근을 못하게 된다. 우선 vpc endpoint를 생성해 s3 policy 정책을 수정 했다. 기존 정책에서 vpce를 확인하는 정책을 추가했다. { "Version": "2012-10-17", "Id": "Access-to-bucket-using-specific-endpoint", "Statement": [ { "Effect": "Allow",..
-
[terraform] Error: creating Amazon S3 (Simple Storage) Bucket BucketAlreadyOwnedByYou: Your previous request to create the named bucket succeeded and you already own it.Infra/AWS 2023. 8. 4. 18:19
terraform destroy를 하고 난 후, s3에 버킷이 여전히 존재 한다면? 다시 apply를 할때 중복 에러가 발생된다. 나는 destroy 하더라도 s3 bucket은 그대로 유지하면서 활요하고 싶다. 이유는 테스트 하면서 빈번히 생성/삭제을 하게 되고 terraform.tfstate를 s3에서 관리하기 때문에, 버킷이 지워지는걸 원치 않는다. 이미 버킷이 존재하는 경우, terraform apply를 하게되면 에러가 발생된다. original code : # main.tf ... resource "aws_s3_bucket" "new_bucket" { bucket = "new_bucket" tags = { Name = "new_bucket" } } resource "aws_s3_bucket_a..
-
Amazon EKS 클러스터용 kubeconfig 파일 생성 또는 업데이트 - 자동으로 kubeconfig 파일 생성Infra/AWS 2023. 1. 16. 12:34
https://docs.aws.amazon.com/ko_kr/eks/latest/userguide/create-kubeconfig.html Amazon EKS 클러스터용 kubeconfig 파일 생성 또는 업데이트 - Amazon EKS 이 페이지에 작업이 필요하다는 점을 알려 주셔서 감사합니다. 실망시켜 드려 죄송합니다. 잠깐 시간을 내어 설명서를 향상시킬 수 있는 방법에 대해 말씀해 주십시오. docs.aws.amazon.com $aws eks update-kubeconfig --region region-code --name my-cluster $ kubectl config view kubernetes namespace 만들기 $ kubectl create namespace msa $ kubectl ..
-
Failed Environment update activity. Reason: Configuration validation exception: Invalid option specification (Namespace: 'aws:elasticbeanstalk:container:nodejs:staticfiles', OptionName: '/static'): Unknown configuration setting.Infra/AWS 2020. 8. 7. 17:01
eb config 파일 양식이 버전이 올라가면서 바뀐거 같다. 그래서 수정해줘야한다. .ebextensions/options.config 파일 수정 aws:elasticbeanstalk:container:nodejs:staticfiles: to aws:elasticbeanstalk:environment:proxy:staticfiles: 결과 option_settings: aws:elasticbeanstalk:customoption: NewSignupEmail: me@example.com aws:elasticbeanstalk:application:environment: THEME: "flatly" AWS_REGION: '`{"Ref" : "AWS::Region"}`' STARTUP_SIGNUP_TABLE:..