Cloud 7

Git Action을 활용한 CI/CD Pipeline 구축하기

시작하며개발자라면 누구나 CI/CD라는 용어를 들어봤을 것입니다. 저도 AWS 프리티어를 이용해 간단히 CI/CD 파이프라인을 구축해본 경험만 있고, 사내에서는 이미 구축된 시스템을 사용해왔기 때문에 직접적인 경험은 부족했습니다. 이 글에서는 사내에서 신규 프로젝트의 CI/CD 파이프라인을 구축한 경험을 공유하고자 합니다. 저처럼 경험이 부족한 분들에게 간접적인 경험을 통해 조금이나마 도움이 되길 바랍니다. 실제 구축하면서 여러 차례 Git Action Failure가 발생하여 구글링을 통해 해결하였으며, 모든 설정 파일을 완벽하게 외우지는 못하지만, 대략적인 그림이 그려진다면 다른 환경에서도 작업이 가능할 것이라 생각됩니다.먼저 CI/CD란 무엇인가? 대표적인 CI/CD 툴로는 Jenkins, GitH..

Cloud/AWS 2024.06.11

AWS 기초개념

AWS 기초개념 리전 전세계의 지리적으로 분리된 물리적 위치 단위 1개 리전은 최소 2개이상의 가용영역을 보유 리전 선택시 고려사항 지연시간 법률 및 규제 준수 서비스 가용성 비용 가용영역(Availability Zones) 1개 AZ는 완전히 격리된 1개 이상의 데이터 센터(DC) 모음으로 구성된다. 각 AZ는 지진 등 자연재해를 고려하여 물리적으로 떨어진 위치에 존재 POP(Point of Presence Location) 최종 사용자에게 빠른 컨텐츠 배포를 위한 캐시 서비스 컨텐츠를 제공시 지연시간 감소를 위한 글로번 CDN인 AWS CloudFront 서비스를 호스팅 엣지 로케이션 : AWS CDN서비스 CloudFront를 위한 캐시 서버들의 모음 리전 엣지 캐시 : 엣지 로케이션에 컨텐츠가 ..

Cloud/AWS 2024.03.12

클라우드 서비스 모델 개념정리

SasS(software as a Service) - 구글의 Gmail,MS Office 365,더존 ERP등과 같이 응용 프로그램(Application)을 인터넷 및 웹 브라우저를 통해 제공하는 서비스 PasS(Platform as a Service) - 운영체제 및 미들웨어, SW 개발 혹은 데이터 분석을 위한 도구 등 웹 기반 서비스, 애플리케이션 혹은 SW 등의 개발을 위한 표준 플랫폼 환경을 제공하는 서비스 - AWS Elastic Beanstalk 등 IaaS(Infrastructure as a Service) - 물리적 서버(CPU, Memory 등), 네트워크, 스토리지 등을 가상화하여 다수의 고객을 대상으로 유연하게 제공하는 인프라 서비스 - AWS EC2 등

Cloud/AWS 2024.03.07

도커 아키텍처

도커의 특징 애플리케이션을 신속하게 구축, 테스트, 배포 할 수 있는 오픈소스 플랫폼 컨테이너 기반의 오픈소스 가상화 도구 도커의 장점 운영의 표준화 - 작은 컨테이너 기반의 애플리케이션 사용 - 손쉽게 배포 수정 및 롤백 가능 CI/CD 제공 - 지속적인 통합과 개발 제공 - 환경표준화 및 버전 간 충돌 제거 마이크로서비스(MSA) - 표준화된 코드 배포 활용으로 분산 애플리케이션 구축 가능 도커 아키텍처 이해 도커 아키텍처의 개념 도커 엔진

Cloud/Docker 2024.03.06

가상화의 개념

가상화란? 물리적인 자원들을 통합하고 논리적으로 재구성하여 자원을 효율적으로 사용하는 기술 가상화 기술의 등장 배경 자원의 효율적인 운영 On Demand 기능 개발 효율성 대두 보안성 향상 - 분리와 격리를 통한 안전하 접근 제공 대상에 다른 가상화 분류 서버 가상화(EC2) - 1대의 물리적인 서버를 분할하여 여러대의 논리적인 가상 서버로 구성 스토리지 가상화(S3, EBS) - 다수의 물리적인 저장소를 하나 이상의 볼륨이나 드라이브로 나누는 기술 네트워크 가상화(VPC) - 한정된 물리적인 네트워크 자원을 여러 가상적인 독립적인 네트워크 환경으로 구축 데스크탑 가상화(Dass) - 다른 컴퓨터에서 실행되는 화면을 원격의 데스크탑에서 볼 수 있는 기술 하이퍼바이저에 따른 분류 위치와 역할 - TYPE..

Cloud/Docker 2024.03.06

Git 정리

브런치 생성 / 이동 / 삭제 생성 git branch 브런치이름 브런치 확인 git branch 이동 git switch 브런치이름 생성과 동시에 이동 git switch -c 브런치이름 삭제 git branch -d 브런치이름 reset git reset --hard 돌아갈 커밋 해시 Ex) git reset --hard a2a8158 revert git revert 돌아갈 커밋 해시 Ex) git revert 04901be ※ 만약 revert시 A라는 파일을 추가 한 커밋(커밋A)이 있다. 그런데 이후 커밋에서 A파일을 수정한 커밋(커밋B)내역이 있을 경우 커밋A로 revert시 A파일을 삭제해아하는데, 문제가 발생한다. 문제의 파일을 add 혹은 rm으로 정리후 git revert --conti..

Cloud/Git 2023.10.11

AWS WAF(403 Fobidden)

시작하며 프로젝트 개발 테스트시 발생된 에러와 대처방법을 기록하였다. 인프라 영역을 누군가가 조작하고, 정보교환이 되지않아 발생하였다. 프로젝트에서 서버와 서버간의 통신을 할때 RestTemple을 사용하였다. 서버간의 통신구간에 try-catch문으로 예외처리를 한 부분에서 발생된 에러이다. 로그상 403 Forbidden이 발생하였고, 해당 403 에러의 경우 접근권한과 맞지 않는 접근 요청이 왔을 경우 발생하는 에러라고한다. 해당 부분은 대량의 트래픽이 서버로 전송되는 부분이였고, 관련되어 이전에 상용 서버에서 비슷한 경험이 있었다. 이전 경험을 토대로 수정하려했지만, AWS를 잘 몰라 이거 저거 만지고 찾아보며 삽질하며 해결한 방법이다. AWS의 WAF & Shield 설정으로 이동 좌측 메뉴의 ..

Cloud/AWS 2023.08.26