IT
-
서버리스 애플리케이션을 위한 CI/CD 워크플로우 만들기 #4IT/AWS 2023. 1. 16. 23:01
aws code suite와 aws partner network의 지원에도 불구하고, 사용자 요구사항에 딱 알맞지 않은 상황들이 있을 수 있습니다. 이런 경우를 위해서 aws는 커스텀하게 파이프라인을 구성할 수 있도록 합니다. 1) aws CodePipeline으로부터 aws step functions로 통합합니다. 2) 더 복잡한 robust 에러 핸들링, 재시도 등과 함께 릴리스 프로세스의 일부로 동작하게 할 수 있습니다. 3) aws step functions는 더 풍부한 시각화와 Cloudwatch 로그를 제공합니다. 4) 비동기 / 수동 승인 태스크 추가를 간편하게 해줍니다. * Step Functions는 CodeBuild의 대체 상품이 아니며, 더 복잡한 커스텀의 워크플로를 제어하기 위한 상..
-
서버리스 애플리케이션을 위한 CI/CD 워크플로우 만들기 #3IT/AWS 2023. 1. 15. 23:31
- CodeCommit은 완전 관리형 git 리포지토리입니다. - 파일 전송 간 / 유휴 상태에서도 자동으로 암호화합니다. - AWS IAM과 사용할 수 있습니다. 이번 포스팅에서는 리포지토리에서 clone, 변화를 주기 위해서 git helper를 통해서 IAM 크리덴셜을 사용할 예정입니다. 일전에 #1에서 만들었던 리포지토리로 이동합니다. 해당 콘솔에서 확인할 수 있는 화면은 다음과 같습니다. 여기서는 배포된 코드 내용 / Pull Request 이력 / 커밋 이력 / 브랜치 등을 확인할 수 있습니다. 다음의 서비스는 CodeBuild입니다. - 완전 관리형 빌드 서비스로, 소스 코드를 컴파일할 수 있고, 테스트 수행 그리고 소프트웨어 패키지를 만듭니다. - 리포지토리에 코드를 푸시하면 빌드, 실행 ..
-
서버리스 애플리케이션을 위한 CI/CD 워크플로우 만들기 #2IT/AWS 2023. 1. 14. 21:49
앞서 #1편에서 프로덕션 레벨에서 구동하게끔 만들었던 CD(Continuous Deployment) 파이프라인을 만들었습니다. 여기서는 안전하게 변화시키는 예제에 대해서 설명합니다. SAM(Serverless Application Model)이라는 것을 통해서 진행합니다. SAM은 매크로 혹은 Cloud Formation 상의 리소스들을 변형할 수 있습니다. - S3, Amazon Kinesis, AWS Step Function 등의 리소스들을 SAM 템플릿 안에 포함하여 변경할 수 있습니다. AWS SAM은 변수 / 매핑 / 아웃풋 등을 지원합니다. 또한, AWS SAM은 Cloud Formation에서처럼 내장함수를 사용합니다. - Join / Git / Ref / GetAttr 등 - Fn::Joi..
-
SES 메일 보내기IT/AWS 2023. 1. 13. 23:27
안녕하세요, 오늘은 AWS SES를 통해서 메일을 세팅하고 보내는 내용을 다뤄볼 예정입니다. Step 1: 자격 증명 생성 먼저 보낼 이메일 주소를 세팅합니다. AWS SES > 구성: 확인된 자격 증명 > 자격 증명 생성으로 이동해서 이메일 주소를 입력합니다. Step 2: 자격 증명 생성 다음으로 해당 메일의 인증 과정을 거칩니다. 입력한 메일의 메일 박스로 들어가, 상단의 인증 메일을 클릭합니다. Step 3: 자격 증명 확인 SES 대시보드에서 자격 증명이 확인된 것을 보실 수 있습니다. Step 4: 테스트 메일 전송 그런 다음에 해당 내용이 정상적으로 적용되어 있는지 테스트 메일을 보내볼 수 있습니다. 시나리오 > 사용자 지정 > 수신자 설정 이후 발송합니다. 해당 내용 하기와 같이 이메일이 ..
-
서버리스 애플리케이션을 위한 CI/CD 워크플로우 만들기 #1IT/AWS 2023. 1. 11. 23:58
1. CI란? Continuous Integration 지속적 통합은 소스가 변할 때마다 만들어 둔 source control 혹은 code base에 통합됩니다. 2. CD란? CD는 조직의 경험적인 측면과 스킬적인 측면에서 나뉩니다. 1) Continuous Delivery : 지속적인 제공 프로덕션 이전 환경인 스테이지 환경에 자동화 툴을 통해서 빌드하고, 사전 프로덕션 환경으로 스테이징하는 곳으로 수동적인 프로세스를 거쳐 프로덕션 레벨로 배포를 할 수 있습니다. 2) Continuous Deployment : 지속적 배포 엔드 투 엔드 간의 자동화된 테스팅과 robust integration(의역 ; 체계화된 통합), 그리고 완전 자동화된 프로세스로 배포 변화를 반영하고 싶으실 경우 지속적인 배포..
-
AWS EBS 스토리지 비용이 많이 발생하는 경우 팁IT/AWS 2022. 12. 28. 23:15
안녕하세요, 오늘은 EBS 볼륨 스토리지 비용이 많이 발생하는 경우에 대한 내용입니다. EBS 스토리지의 수명 주기를 관리하지 않아 EC2 스냅샷으로 인한 비용이 계속 증가할 수 있습니다. 스냅샷 수명 주기를 설정해서 스토리지 비용을 줄이는 방법을 정리해 봤습니다. 1. 인스턴스에 태그 dlm : managed 추가 2. DLM Policy 추가 DLM이라고 하여, Data Lifecycle Manager라는 제품이 있습니다. 이를 통해 스냅샷 / EBS-backed AMI 등을 관리할 수 있습니다. Amazon EC2(Amazon Elastic Compute Cloud) 콘솔의 [Elastic Block Store] 아래에서 [Lifecycle Manager]를 선택하여, 위와 같이 설정하고 위의 이..
-
Redshift CPU가 높을 경우 트러블 슈팅 방법IT/AWS 2022. 12. 28. 22:39
안녕하세요, 오랜만입니다. 오늘은 Redshift의 Cluster CPU가 갑자기 높아졌었던 당시 트러블 슈팅했던 내용에 대해서 다뤄보겠습니다. CPU utilization의 경우 지난 6시간 기준으로 조회해 보았을때, 리더 노드가 아닌 컴퓨팅 노드들의 CPU가 평균 35%인 것을 확인하였습니다. 문제 시점 실행중인 쿼리는 없었음에도 Compute instance의 35% 전후 cpu 사용률을 보였습니다. 또한, 해당 시간 워크로드 실행 분석 차트에서도 plan / wait / comit / execution이 실행 중인 상태가 아니었습니다. 해당 내용의 경우, 부적절한 배포 키 또는 배포 스타일이 해당 문제의 원인이 아닐까 생각되었습니다. 왜냐하면, 부적절한 배포 키 혹은 배포 스타일은 노드 전체에서 ..
-
GCP 키 탈취시 조치 사항IT/GCP 2022. 12. 17. 13:35
안녕하세요! GCP 키 탈취가 이루어졌을 경우에는 먼저, 케이스를 오픈해서 환불신청을 진행합니다. 키 유출시 취하실 수 있는 내용은 다음과 같습니다. API키를 어드민으로 만들지 않고 관련된 권한만 허용하기 API키에 최대 할당량을 설정하기 카드랑 연결되어 있는 어카운트는 꼭 관리를 하고, 사용을 안할 경우에는 카드정보를 삭제하거나 삭제 요청 진행하기 그리고 하기 스크립트들은 인스턴스 삭제 / delete protection 해제 후 삭제, 디스크 삭제 관련 스크립트입니다. 하기 내용을 통해서 인스턴스 중 TERMINATE 된 인스턴스 검색하기 gcloud compute instances list | grep TERMINATE 인스턴스 삭제하기 gcloud compute instances list | g..