미리보기
기본 정보
최적화된 인프라 구축과 개발 및 운영의 원활한 통합 및 배포를 위해 끊임없는 개선을 지향하는 임상규 입니다.
자격증
Certified Kubernetes Administrator
- | Linux Foundation
2024.03.
AWS Certified Solutions Architect – Associate
- | AWS
2023.12.
기술 스택
AWS, Kubernetes, Linux, Docker, 네트워크, Terraform, Ansible, Jenkins, Shell Script, GitHub, Prometheus, MySQL
프로젝트
Kubernetes Manifest를 이용한 인프라 구축
개인
- 사용자가 웹 애플리케이션에 접속하면 요청은 쿠버네티스 클러스터 내의 워커 노드로 전달됩니다.
- 들어온 트래픽은 Ingress 리소스와 Ingress NGINX 컨트롤러를 사용해 트래픽을 라우팅합니다.
- API 서버 배포는 사용자의 요청을 처리하고, 필요한 데이터를 MySQL 데이터베이스에 저장하거나 검색하는 역할을 합니다.
- MySQL 데이터베이스는 Persistent Volume (PV)과 Persistent Volume Claim (PVC)을 사용하여 데이터를 저장합니다.
- 모니터링과 알림을 위해, 프로메테우스 서버 구성요소가 배치되어 있으며, 이는 메트릭을 수집하고 알람 규칙을 정의합니다.
- 발생할 수 있는 이슈에 대해 알림을 받기 위해 Alertmanager가 설정되어 있고, 이는 슬랙으로 알림을 전송합니다.
- 개발자는 이 모든 구성요소와 서비스를 관리하며, 필요에 따라 구성을 변경하거나 시스템을 업데이트 할 수 있습니다.
EKS로 애플리케이션 운영 및 구축
개인
- 애플리케이션을 EKS 클러스터를 통해 운영 및 구축되도록 컨테이너를 구성하였습니다.
- Terraform을 통해 AWS 인프라, EKS 클러스터 등을 구성하였습니다.
- ALB Ingress Controller와 Cert-manager를 통한 트래픽 관리 및 TLS 인증서 자동화를 하였고 도커로 애플리케이션은 컨테이너화하여 ECR로 푸쉬하고 이미지를 빌드하였습니다.
- 그 후 위 과정을 GitHub Actions를 통해 이미지 빌드 및 테스트, 자동 병합을 설정했습니다.
- 또한, ArgoCD를 통해 배포 자동화 및 클러스터 상태 모니터링을 구현하고, HPA와 Metric Server를 설정하여 서비스 스케일링을 자동화했습니다.
AWS를 이용한 MSA 아키텍처 구축
개인
- 이 아키텍처는 공용 서브넷 내의 ALB를 통해 들어오는 트래픽을 여러 개의 프라이빗 서브넷에 분산시켜 처리합니다.
- 각 프라이빗 서브넷은 ECS를 사용하여 주문 / 관리자 페이지 / 관리 대시보드 서비스를 컨테이너로 관리를 최적화하고, 서비스의 배포를 지원합니다.
- 메시지 큐(MQ) 시스템은 액티브-스탠바이 구성으로 설계되어 메시지 기반 통신의 신뢰성을 보장하며, 주문된 데이터는 RDS에 저장됩니다.
- 주문될 때 변경된 데이터는 MSK에서 보내주고 대시보드 애플리케이션에서 변경된 데이터를 받아 대시보드에 업데이트됩니다.
AWS를 이용한 게시판 서비스 배포
개인
- 사용자의 요청은 Route 53을 통해 DNS로 관리되며, ALB를 통해 SSL을 이용한 암호화된 통신으로 구성하였습니다.
- NAT 게이트웨이를 통해 인터넷 접근을 관리하여 보안성을 강화하였고, OpenVPN을 통해 웹 애플리케이션 인스턴스에 접근할 때 보안된 네트워크 접속을 제공하였습니다.
- 내부적으로는 Spring Boot로 구현된 웹 애플리케이션을 EC2 인스턴스에서 호스팅하여, JDBC를 통해 RDS for MySQL 데이터베이스와 연결함으로써, 데이터 관리와 접근을 구현했습니다.
- 효율적인 개발 Workflow를 위해 Jenkins와 Ansible을 통합한 CI/CD 파이프라인을 구현했습니다.
- 코드 변경 사항이 GitHub에 커밋 및 푸시될 때마다 자동으로 Jenkins 작업이 트리거되어 연속적인 빌드 프로세스가 시작됩니다.
- 빌드가 성공하면 Ansible은 자동화된 스크립트를 실행하여 EC2 인스턴스에 Spring Boot 애플리케이션을 빠르고 안정적으로 배포합니다.
포트폴리오
교육
서경대학교
대학교(학사) | 경영학부
2017.03. ~ 2021.02. | 졸업