분류 전체보기 53

[AWS] Step Function

Step Funtion Documents step function 이 뭘까용? https://aws.amazon.com/ko/step-functions/features/?pg=ln&sec=hs AWS Step Functions 기능 | 서버리스 마이크로서비스 오케스트레이션 | Amazon Web Services AWS Step Functions는 실시간 진단 및 대시보드를 제공하고, Amazon CloudWatch 및 AWS CloudTrail과 통합되며, 전체 상태, 실패한 단계, 입력 및 출력을 비롯한 모든 실행 관련 정보를 기록합니다. 문제가 발생 aws.amazon.com https://docs.aws.amazon.com/ko_kr/step-functions/latest/dg/welcome.htm..

Devops Skill Up/AWS 2024.04.09

[AWS] Private Subnet Instance ssh 접속을 위한 Bastion 장비 생성

private subnet에 생성된 인스턴스는 터미널에서 직접 ssh 접속이 불가능하다. 따라서 public subnet에 인스턴스를 만들어 장비를 통하여 접속하도록 Bastion 장비를 생성하였다. 해당 접속은 nat gateway 설정이 필요하다. 1. public subnet 에 instance(bastion server) 생성 2. bastion server 에 private 인스턴스 접속에 필요한 pem 키 전송 scp -i {pem키 로컬 위치/pem키명.pem} {저장될 pem키명.pem} ec2-user@{bation-server-dns}:{pem키 저장 경로) 3. 그리고 private instance에 ssh 접속 명령어를 치면된다. 간편한 ssh 접속을 위해 스크립트 파일도 작성해보았..

Devops Skill Up/AWS 2024.04.08

[AWS] VPC 엔드포인트 만들기 (S3, SSM - ParameterStore 접근)

프라이빗 서브넷에 생성되어있는 EC2 인스턴스가 VPC 엔드포인트를 사용하여 VPC 외의 서비스에 접근하는 방법을 포스팅하겠습니당. 일단 S3, Parameter Store를 사용하기 위한 System Manager 에 대한 VPC 엔드포인트 생성 방법을 작성해보았습니당 S3 EC2 iam role 설정 S3 FullAccess : 모든 S3 접근 가능 필요에 따라 정책 조정으로 필요한 S3 버킷 접근 권한을 부여할 수 있다. VPC - 엔드포인트 - 엔드포인트 생성 AWS 서비스 서비스 이름 : com.amazonaws.ap-northeast-2.s3 유형 : Gateway VPC, 라우팅 테이블 선택 프라이빗 서브넷에 위치한 장비에서 s3 에 접근하는 엔드포인트를 만드는 것이기 때문에 프라이빗 서브넷..

Devops Skill Up/AWS 2024.04.05

[AWS] 서브넷 CIDR와 도커 대역IP 충돌

ISSUE private subnet의 EC2가 public subnet의 ELB와 통신 불가인 이슈 발생 콘솔상에서는 배포가 성공되는 것 처럼 보임 instance 장비 접속하여 컨테이너 조회하면 배포는 정상적으로 완료 배포된 컨테이너 nginx 와 ELB의 연결 실패로 결과적으로는 배포 실패 TEST 서브넷 변경 private-subnet-02의 문제일 가능성을 두고 해당 instance를 private-subnet-01 에 배포 Public IP 자동할당 제거 기존 public subnet에 배포되어있던 ECS-EC2 ASG Template 으로 생성한 Container Instance라 private subnet에 생성된 Instance임에도 불구하고 public IP 가 할당 문제 가능성을 두고..

Devops Skill Up/AWS 2024.04.04

[AWS] ECS 네트워크 모드

네트워크 모드 선택 호스트 모드 기본 인스턴스의 IP 주소를 사용하여 컨테이너를 실행시키는 port 로 트래픽 수신합니다. 단점 태스크의 인스턴스화를 하나 이상 실행할 수 없습니다. 컨테이너 포트 재매핑 불가 fargate에서 지원하지 않음 브리지 모드 (현 반품마켓 ECS 네트워크 구조) 정적 포트 매핑 단점 80포트에만 매핑 가능 동적 포트 매핑 Docker 가 임시 포트 범위에서 사용하지 않는 포트를 지정 단점 서비스 통신에 대한 서비스를 잠그기가 어렵다 (광범위한 포트에 대해 포트 범위를 인바운드 규칙에 작성해주어야함) AWSVPC 모드 ec2 인스턴스 하나마다 3개의 컨테이너 배치 가능 awsvpc는 ENI를 각 태스크마다 제공한다. 출처 : 네트워크 모드 선택 - Amazon Elastic C..

Devops Skill Up/AWS 2024.04.04

[Grafana] Grafana loki로 컨테이너 로그를 모니터링 해보자

안녕하세유 간만에 블로깅이네유 아무도 안보겠지만유 그냥 쓰는거에유 요즘 그라파나를 열심히 ? 파고있는데 말입쇼 그라파나 로키라는 로그 모니터링 서비스가 있더라구용? 실제 실무자들에게 더 필요로되는 서비스가 아닐까 싶습니다요. 저희회사는 ECS 기반으로 돌아가는 앱이 많기 때문에 컨테이너 로그를 확인하는 것이 가장 유용할 것 같아서 컨테이너 로그를 확인하는 방식으로 적용해보려고 합니다.. 그러면서 AWS CloudWatch 로그랑도 비교를 해보자구요 일단 가보자고 Grafana Loki 란? Grafana Loki는 모든 기능을 갖춘 로깅 스택으로 구성할 수 있는 구성 요소 집합입니다. 다른 로깅 시스템과 달리 Loki는 로그에 대한 메타데이터만 인덱싱한다는 아이디어, 즉 레이블(Prometheus 레이블..

[AWS] ECS EC2 유형 변경하기

ECS 클러스터에서 EC2 인프라로 만든 EC2 의 유형을 변경하려면 오찌해야할까..? ECS 클러스터로 생성된 EC2는 Auto Scaling을 통해서 생성되기 때문에 ASG를 통하여 유형이나 속성을 변경해야합니다요. 1. AWS 콘솔에서 EC2 - AutoScalingGroup으로 들어갑니다. 변경하고 싶은 EC2가 생성되어있는 클러스터 명을 검색하면 찾을 수 있뎌요. EC2ContainerServer-{Cluster name}-~~~ 이런식으로 만들어집니댜 2. 해당 ASG 체크하고 '시작구성' - '시작 템플릿에 복사' - '선택 항목 복사' 3. 새 템플릿을 사용하여 Auto Scaling 그룹 생성 클릭 4. 시작템플릿 버전 생성 클릭 5. AMI, 인스턴스 유형.. emdemd 선택하여 시작..

Devops Skill Up/AWS 2023.11.22

[AWS] ECS 서비스 배포회로 차단기는 배포실패하면 서비스를 날려

ECR - ECS (EC2) - ELB - TG 구조에서 EC2를 삭제 이후 다시 자동으로 생성됨? (왜인지 몰라요) 자동생성된 지 모르고 task definition , service 삭제 이후에 task definition 다시 만들고 service 만듬 그리고 service가 자동 삭제 다시 재 생성하는데 오류 발생 클라우드 포메이션에서 로그 확인 배포회로 차단기가 구동되면서 서비스도 지워진 듯..? https://repost.aws/ko/questions/QU5nk1tyN_TpWbKm85LdWGgA/resource-handler-returned-message-ecs-deployment-circuit-breaker-was-triggered-handlererrorcode-generalserviceex..

Devops Skill Up/AWS 2023.09.25

final) 프로젝트 마무리 회고

드디어 파이널 프로젝트가 끝났다! 내가 할 수 있을까 .. 싶었는데 역시나 항상 함께하는 팀원들이 있어서 영차영차 만들 수 있었다 프로젝트 소개 마라톤 대회 결과 기록 시스템 : 마라마라톤 (mrmrmthon) 개인 사용자와 대회 주최자를 위한 시스템 로그인 기능을 통해 토큰 발급 사용자에 따라 가능한 CRUD 작업이 다름 유저 데이터 베이스를 분리하여 관리 기록 데이터를 기반으로 사용자별 점수를 기록하는 시스템은 데이터 유실을 막기 위해 SQS를 통해 느슨하게 결합 가용성, 내결함성, 확정성, 보안성을 고려하여 시스템 구성 참고로 마라마라톤 이름 제가 아이디어를 냈답니다?(❁´◡`❁) 아키텍쳐 1️⃣ 개발자가 앱 개발을 하여 GitHub에 올리고 새로운 버전을 릴리즈하면 GitHubAction을 통한 ..