본문 바로가기

전체 글14

[모니터링] Prometheus Alertmanager 사용해서 Discord 알림보내기 Prometheus는 지표를 수집하고 알림 규칙을 평가하는 역할을 하며, 실제로 알림메세지를 보내는 건 Alertmanager가 담당한다.하지만 Alertmanager에는 디스코드로 메시지를 보내는 기능이 없다.그래서 중간에 위치한 alertmanager-discord 가 Alertmanager로 부터 알림을 받아 discord로 메세지를 보내는 브릿지 역할을 해준다. 따라서 아래 오픈소스를 활용해서 alertmanager-discord를 활용한 Alertmanager - Discord 연동 시스템을 개발했다.https://github.com/benjojo/alertmanager-discord GitHub - benjojo/alertmanager-discord: Take your alertmanager .. 2025. 8. 4.
ECS Fargate Task 실행 에러 : exec format error 문제상황로컬에서 ECS에 docker push 완료 후 테스크가 실행되지 않는 오류가 발생했다.콘솔에 들어가서 확인해보니 컨테이너 시작-중지가 계속 반복되고 있었다. Cloudwatch Logs를 통해 로그를 확인했다.원인을 찾아보니..현재 Mac M1에서 작업을 진행중인데 Fargate 테스크의 기본 아키텍쳐는 X86_64고 해당 부분을 ARM 아키텍쳐로 별도로 지정해주지 않은 것이 문제였다. (아무생각없이 빌드해버림..)https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#runtime-platform Amazon ECS task definition parameters for the Farg.. 2025. 6. 11.
AWS 네트워크 - VPC 간 연결(VPC Peering, Transit Gateway), 온프레미스-VPC 연결 (Direct Connect, Site-to-Site VPN) VPC 란 AWS에서 제공하는 가상 네트워크 서비스.하나의 VPC에 다양한 역할을 하는 시스템을 두면 VPC 내부의 통신 제어가 복잡해지므로, 일반적으로 몇개의 VPC 혹은 여러개의 AWS 계정에 나누어 시스템을 배치시킨다.VPC는 독립된 네트워크 공간으로, 다른 시스템들 사이에 임의로 통신을 수행할 수 없다. 따라서 VPC간 통신을 위해서는 VPC 피어링, AWS Transit Gateway 라는 별도의 서비스가 필요하다. VPC 간 연결VPC PeeringVPC 사이를 연결하는 기능을 제공한다.연결한 VPC는 각각의 VPC에 상대 VPC의 CIDR로의 라우팅을 설정해 상대 VPC의 가상 서버와 통신할 수 있다. 서로 다른 리전에 위치한 VPC간 피어링 설정 시에는 프라이빗 IP를 통해 통신 가능하다... 2025. 6. 1.
Ubuntu 22.04에서 awscli 설치 관련 이슈 문제상황ubuntu에서 awscli 설치하려고 하니 다음과 같은 에러가 발생했다.Ubuntu 22.04에서는 awscli가 apt 패키지로 제공되지 않는다.→ Ubuntu 24.04용 패키지(noble)는 제공되지 않는다는 의미“Candidate 없음” → 설치할 수 있는 버전이 없다는 것해결 방안pipx로 설치하기→ Ubuntu는 시스템의 Python 환경을 보호하기 위해 pip로 직접 시스템 전역에 설치하는 걸 금지하기때문에 pip보다는 pipx 권장됨# 파이썬 설치sudo apt update && sudo apt install python3.12-venv# 가상환경 디렉토리 생성 및 가상환경 활성화python3 -m venv venv && source venv/bin/activatepip insta.. 2025. 4. 15.
EC2에서 OpenVPN 서버 Docker container로 구축하기 OpenVPNOpenVPN은 가상 네트워크 인터페이스(TUN/TAP) 를 생성하여 사용자의 트래픽을 VPN 서버로 우회시키는 방식으로 작동한다.UDP 1194 포트를 기본 사용 (포트 변경 가능)클라이언트는 .ovpn 설정 파일을 통해 서버와 TLS 기반으로 통신사설망 자원(RDS, EC2 등)에 안전하게 접근 가능이전에는 AWS Marketplace에서 제공하는 OpenVPN 솔루션을 사용했지만, 사용자 수에 제한이 있고 새로운 방식으로 시도해보고자 이번에는 Docker 기반으로 구성했다.다만 ovpn 파일을 직접 관리해야 한다는 점에서 보안상 취약하다는 단점이 존재한다.하지만 현재 상황은.. 소수의 인원이 단기간 사용하는 목적이고 일정 기간 이후에는 VPN 서버를 삭제할 계획이기 때문에 나쁘지 않은 .. 2025. 4. 7.
EC2 Instance Connect Endpoint(EIC Endpoint)로 VSCode에서 원격 접속하기 AWS EC2 Instance Connect Endpoint를 사용하면 퍼블릭 IP 없이도 SSH 접속이 가능하며, IAM을 이용해 접속을 제어할 수 있다.하지만 일반적인 SSH 클라이언트(예: VS Code Remote-SSH)와는 호환되지 않아 추가적인 설정이 필요하다.따라서 EC2 내부에서 직접 SSH 키를 생성하여 로컬에서 SSH 접속을 위한 인증 수단으로 사용해야 한다.그러면 드는 의문은..EIC Endpoint를 사용하는 이유가 SSH 키 관리를 안 하려고 하는 건데, 결국 SSH 키를 직접 생성해서 관리해야 한다면 의미가 있는가? 라는 생각이 들게 된다.그래서 "EIC Endpoint를 사용하면서 SSH 키 관리 부담 줄이기”를 위해 찾아보니 다음과 같은 방법이 있었다.SSH 키를 AWS S.. 2025. 3. 20.