오늘도 기록하는 중 GitHub

2025/05 20

Jenkins

플젝에서 CI/CD처음 CI/CD 파이프라인을 구축했을 때 상당히 기뻤다. 이게 없었을 때 소요되는 시간이 너무 아까웠다.. 코드를 수정한 후 push까지 마치면 ec2 인스턴스(혹은 GCP 인스턴스)로 접속해서 실행 중인 어플리케이션에 수정사항을 반영하는 작업을 일일이 진행했었기 때문이다. 다행히 해당 작업의 반은 스크립트로 해결할 수 있었지만 나머지 반은 가내수공업이었다. 그러니 테스트 빌드도 해주고, 직접 배포까지 해주는 기술은 무적권으로 도입해야 했다.당시 처음 다뤄본 건 Github Actions였다. 소규모 팀프로젝트였기 때문에 CI와 CD 작업을 Github Actions 하나로 처리하기 충분했다. 그러나 점점 구현할 수 있는 폭이 넓어지고, 지금에 와선 사용자를 유치할 수 있도록 프로젝트를..

CICD 2025.05.13

AWS로 IaC(IaaS) 시작하기

개요현재 진행 중인 프로젝트의 1차 마감 기한이 다가오고 있다. 기한 전에 배포하고 CICD 파이프라인을 구축하려고 한다. 이전에는 테스트 및 평가 목적으로 인스턴스 하나만 생성하여 배포했는데 이제는 이전보다 확장성과 효율성 면에서 더 나은 인프라 구축이 필요하다. 비용최적화도 고려해야 한다. 이 내용은 나중에 프로젝트의 출시 완료 이후에 다루도록 하고 이번에는 시간을 효율적으로 단축시켜주면서 사전에 설계한대로 리소스의 프로비저닝과 구성을 할 수 있는 CloudFormation을 사용하도록 하겠다2025.05.02 - [Cloud] - [AWS] CloudFormation [AWS] CloudFormationCloudFormation이는 AWS의 서비스 중 하나다. AWS 클라우드 인프라를 특정 코드로 ..

Cloud 2025.05.12

[AWS] CloudWatch

AWS CloudWatchAWS CloudWatch는 Amazon Web Services(AWS) 리소스와 AWS에서 실행되는 애플리케이션을 실시간으로 모니터링하는 서비스다. 리소스 및 애플리케이션에 대해 측정할 수 있는 다양한 변수(지표)를 수집하고 추적할 수 있다. CloudWatch를 활용하면 시스템 전체의 리소스 사용률, 애플리케이션 성능, 운영 상태를 한눈에 파악할 수 있다.CloudWatch는 기본적으로 지표 리포지토리로서 동작한다. AWS 서비스가 지표를 리포지토리에 저장하면, 이를 기반으로 통계를 검색하거나 사용자 지정 지표를 저장해 활용할 수 있다. 이를 통해 시스템의 성능 변화에 대응하고 리소스 사용률을 최적화하는 데 필요한 데이터와 실행 가능한 인사이트를 제공한다.CloudWatch지..

Cloud 2025.05.08

[AWS] Lambda

AWS LambdaAWS Lambda의 개념과 정의AWS Lambda는 아마존 웹 서비스(AWS)에서 제공하는 서버리스 컴퓨팅 서비스다. 개발자가 서버를 직접 프로비저닝하거나 관리하지 않고도 코드를 실행할 수 있게 해준다. 이벤트 기반으로 동작하며, 특정 이벤트가 발생할 때 지정된 코드를 자동으로 실행하는 방식이다. 사용자는 함수(Function) 단위로 코드를 작성하며, 실행된 시간(밀리초 단위)과 요청 수에 따라 비용이 청구된다.서버리스 아키텍처란서버리스 아키텍처는 클라우드 공급자가 서버를 실행하고 고객이 사용량에 따라 요금을 지불하는 클라우드 컴퓨팅 실행 모델이다. 인프라를 관리할 필요 없이 애플리케이션과 서비스를 구축하고 실행하는 방법이다. 서버리스 모델에서 개발자는 서버를 프로비저닝하거나 관리할..

Cloud 2025.05.07

[AWS] IAM

AWS Identity and Access Management(IAM)IAM란?AWS Identity and Access Management(IAM)은 AWS 리소스에 대한 접근을 안전하게 제어하는 핵심 서비스다. IAM을 통해 사용자 인증(authentication)과 권한 부여(authorization)를 관리하며, AWS 계정 내에서 세분화된 접근 제어를 구현할 수 있다.IAM의 주요 기능은 루트 계정 보호, 사용자/그룹 관리, 역할 기반 접근 제어, 임시 자격 증명 발급으로 구성된다. 특히 루트 계정은 모든 권한을 보유하므로 일상 작업에서 사용을 지양해야 하며, IAM 사용자를 생성해 최소 권한 원칙을 적용하는 것이 필수적이다.IAM의 역할IAM은 AWS 전역 서비스로 리전에 종속되지 않으며, 다..

Cloud 2025.05.07

[AWS] VPC

VPC란?Virtual Private Cloud의 약자로, 독립된 가상 프라이빗 클라우드 네트워크를 의미하며, 이는 사용자만의 격리된 클라우드 네트워크를 구성할 수 있다! VPC 구조VPC 구조에 대해 알아보자. 아래는 1.0.0.0/16 ip CIDR로 구성된 vpc의 예시다. vpc 생성시 가상 라우터도 생성된다. 해당 가상 라우터를 통해서 목적지까지 통신할 수 있게 된다. 또한 vpc에서 서브넷을 통해서 부분 네트워크를 분리하여 구성할 수도 있다. 위와 같은 서브넷 네트워크들은 가상 라우터에 연결돼 통신 환경을 이루고 있다. 또한 서브넷 안을 보면 보안 그룹이 존재하는데 이는 IT 자원의 보안을 위해 구성된 것이며, 네트워크 ACL을 구성해서 필요한 트래픽만 접근가능하게 구성할 수 있다. V..

Cloud 2025.05.02

[AWS] CloudFormation

CloudFormation이는 AWS의 서비스 중 하나다. AWS 클라우드 인프라를 특정 코드로 정의하고 선언해서 자원을 생성하거나 삭제한다. 이러한 인프라를 코드로 정의하는 것을 IaC라 한다. 다음과 같은 순서를 따른다.JSON 혹은 YAML 언어로 정의한다. 이를 cloudformation 프레임워크에 제출하면 해당 프레임워크가 이를 기반으로 스택을 생성한다. 스택은 다수의 AWS 클라우드 인프라들을 정의하는 단위다. 즉, 스택을 생성한다는 것은 템플릿에 정의된 인프라들을 순차적으로 생성한다는 것을 의미한다. 아래는 공식문서에서 볼 수 있는 템플릿 형식이다. YAML 기준!Resources: LogicalResourceName1: Type: AWS::ServiceName::ResourceTy..

Cloud 2025.05.02

Docker 보안 강화하기

Docker 절대 지켜요즘 해킹이다 뭐다 이야기가 많다. 몇 년이 지나고 몇 번이나 트렌드가 바뀌든 보안은 중요한 요소다. 절대적인 안전은 없으나 세심함, 노력, 능력 혹은 경각심에 따라 충분히 완전에 가까운 보안 체계를 구성할 수 있다고 생각한다. 그러니 이번에는 Docker에서 보안를 강화할 수 있도록 하는 방법을 알아보고자 한다. Docker를 기반으로 동작하는 우리 서비스를 절대 지키자. 최신 버전의 Docker간단하고도 중요한 모범 사례 중 하나가 상시 최신 버전으로 업데이트하여 알려진 취약점으로부터 시스템을 보호하는 것이다. 최신 버전은 기능 추가뿐만 아니라 간혹 중요한 보안 패치를 내포하고 있기 때문에 필수적이다. 다음은 우분투 환경에서 docker의 버전을 확인하고 최신 버전이 있다면 업그..

Docker 2025.05.01
반응형