본문 바로가기
반응형

It71

Azure 클라우드로 CI/CD 파이프라인을 통한 웹 배포 실습기(Jenkins으로 CI webhook 설정) - 3 새로운 Item 생성GitHub 토큰 생성위 사항을 체크합니다.Jenkins과 연동GitHub깃허브 -> 연결할 레포지토리 -> Settings -> webhooks -> add webhookJekins 주소 뒤에 /github-webhook/ 추가Jenkins크리덴셜 등록Username : 본인의 GitHub 아이디Password : 위에서 발급 받은 GitHub tokenID : Credentials 이름테스트깃허브에서 README 를 수정하고 커밋합니다.젠킨슨에 바로 연동되는 것을 확인할 수 있습니다. 2026. 4. 22.
Azure 클라우드로 CI/CD 파이프라인을 통한 웹 배포 실습기(AKS로 웹서버와 Docker 이미지 배포하기) - 2 웹 페이지는 오픈소스를 이용했습니다.도커 -> 도커허브1. 도커를 통해 웹서버, 웹 리소스 배포하기1-1 웹 리소스 가져오기git clone https://github.com/KDT-EEM/TickettingWeb.gitcd TickettingWeb1-2 도커파일 생성Dockerfilevi Dockerfile# 1. PHP와 Apache가 포함된 공식 이미지 사용FROM php:7.4-apache# 2. 작업 디렉토리 설정WORKDIR /var/www/html# 3. 프로젝트 파일 복사 (현재 디렉토리의 모든 파일을 Docker 이미지로 복사)COPY . .# 4. PHP 모듈 설치 (필요한 경우 추가)RUN docker-php-ext-install mysqli pdo pdo_mysql# 5. Apach.. 2026. 4. 22.
Microsoft Azure AKS 생성 방법 AKS(Azure Kubernetes Service) 클러스터는 Azure에서 관리하는 Kubernetes 환경입니다. 클러스터란 Kubernetes에서 여러 대의 서버(노드)를 묶어 하나의 시스템처럼 작동하게 만든 것을 말합니다.이번 프로젝트에는 노드(Node) 를 사용할 것입니다.AKS 클러스터 생성 2026. 4. 22.
Microsoft Azure VM 생성 방법 VM이란?VM (Virtual Machine) 은 물리적인 하드웨어를 가상화하여 만든 가상 컴퓨터입니다. 즉, 물리적 서버에서 하나 이상의 가상 서버를 운영할 수 있게 해주는 소프트웨어 기반의 컴퓨터입니다. VM은 독립적으로 실행되며, 고유한 운영 체제(OS)를 실행하고, 애플리케이션을 설치하고 실행할 수 있습니다.Azure에서 제공하는 Virtual Machine (VM) 과 AWS에서 제공하는 EC2 (Elastic Compute Cloud) 인스턴스는 매우 유사한 서비스로, 두 서비스 모두 클라우드 환경에서 가상 서버를 제공합니다.VM 생성하기기본사항디스크네트워킹보안그룹 생성SSH를 이용한 접속ssh "사용자 이름"@"공용IP" 2026. 4. 22.
Microsoft Azure 가용성 집합 가용성 집합이란?Azure의 가용성 집합(Availability Set) 은 클라우드 환경에서 애플리케이션의 고가용성을 보장하기 위한 중요한 기능입니다. 가용성 집합은 동일 데이터 센터 내에서 장애 도메인(Fault Domain) 과 업데이트 도메인(Update Domain) 으로 리소스를 분산 배치하여, 하드웨어 장애나 유지보수 작업으로 인한 서비스 중단을 최소화합니다. 이는 Azure 환경에서 안정성을 높이는 기본적인 방법 중 하나로, 특히 단일 데이터 센터 내에서 발생할 수 있는 장애를 대비하기 위해 설계되었습니다.AWS와 비교하면, Azure의 가용성 집합은 AWS의 가용 영역(Availability Zone) 보다 작은 범위에서 고가용성을 제공하는 개념입니다. AWS의 가용 영역이 물리적으로 분.. 2026. 4. 22.
[인프라] GitHub Actions + Docker를 이용한 Spring Boot 빌드 자동화 워크플로 분석 이번 글에서는 GitHub Actions와 Dockerfile을 이용해 Spring Boot 애플리케이션을 자동으로 테스트하는 과정을 정리해보겠습니다. 전체 흐름은 Gradle을 사용한 빌드부터, JAR 실행, 간단한 HTTP 테스트까지 포함되어 있어 CI/CD 파이프라인을 구성하는 기본 뼈대를 이해하는 데 도움이 됩니다.1. GitHub Actions 워크플로 분석워크플로는 다음과 같은 구조로 되어 있습니다.수동 실행 트리거(workflow_dispatch)Java 17 환경 설정Gradle 설치 및ㅊ 실행 권한 부여./gradlew clean build로 프로젝트 빌드java -jar 명령으로 서버 실행curl 명령으로 간단한 API 엔드포인트 테스트02mmpark01_gradle_build.ymal.. 2026. 4. 21.
[인프라] 웹 서버 스트레스 테스트 (EC2 + hey + Grafana) 실습 개요이번 실습에서는 AWS EC2에 구축된 웹 서버를 대상으로 스트레스 테스트(Stress Test) 를 수행하고,서버의 자원 사용량을 Grafana 대시보드를 통해 실시간으로 모니터링하는 과정을 진행하였습니다.부하 발생 도구로는 hey를 사용하였으며,웹 서버와는 별도의 EC2 인스턴스에서 hey를 실행함으로써 실제 서비스 환경에서 발생할 수 있는 트래픽 부하를 유사하게 재현하였습니다.🛠️ 구성 아키텍처[부하 발생 EC2 (hey)] ───────────> [웹 서버 EC2 (node_exporter)] │ [Prometheus + Grafana 대시보드]⚙️ 실습환경 구성항목세부.. 2026. 4. 20.
[인프라] Ubuntu EC2 서버에 Swap 설정하기 개요AWS EC2 프리티어(t2.micro, t4g.small 등)의 메모리는 1~2GB 수준으로 매우 작기 때문에Jenkins, Docker, WAS, Web 서버 등을 함께 운용하면 메모리가 쉽게 부족해질 수 있습니다.이럴 경우 메모리가 부족하면 프로세스가 강제 종료(OOM)되거나서버가 비정상적으로 느려질 수 있기 때문에 Swap 영역을 설정해주는 것이 매우 중요합니다.Swap이란?Swap은 RAM이 부족할 때, 디스크 일부를 임시 메모리처럼 사용하는 공간입니다.항목설명장점RAM 부족 시 서버가 죽지 않고 버틸 수 있음단점속도가 RAM보다 매우 느림 (디스크 기반)활용Jenkins 빌드, Java WAS, Docker 등 메모리 일시 폭증 상황에서 유용Swap 4GB 설정 방법 (Ubuntu 기준)1.. 2026. 4. 20.
[인프라] Prometheus + Node Exporter 연동하기 직전 게시물과 이어집니다.1. node-exporter Docker로 실행docker run -d \ --name node-exporter \ -p 9100:9100 \ --restart always \ --hostname [호스트이름 ex)jenkins-server] \ prom/node-exporter모니터링 당하는 서버에 직접 ssh로 접속하여 실행해야 합니다.옵션설명-d백그라운드 실행 (detached mode)--restart always컨테이너가 중지돼도 자동 재시작서버 재부팅 후에도 자동 시작-p 9100:9100외부에서 접근 가능하도록 포트 매핑--name node-exporter이름 지정 (중복 방지 및 관리 용이)2. EC2 보안 그룹 포트 추가서비스포트설명node-export.. 2026. 4. 20.
[인프라] AWS EC2에 Prometheus + Grafana 모니터링 서버 구축하기 (Docker 기반) 실시간 모니터링 환경을 구성하기 위해 Prometheus와 Grafana를 이용한 모니터링 서버를 구축하였습니다.이 글은 AWS EC2에서 Docker 기반으로 Prometheus와 Grafana를 설치한 과정을 정리한 것입니다.인프라 구성 정보항목내용인스턴스명monitoring-server위치퍼블릭 서브넷OSUbuntu 22.04 (amd64)설치 방식Docker + docker-compose모니터링 도구Prometheus + Grafana설치 준비 과정# Docker 설치sudo apt updatesudo apt install docker.io -y# docker-compose 설치sudo apt install docker-compose -y디렉토리 구조 및 설정 파일monitoring/├── doc.. 2026. 4. 20.
반응형