인프라 (Infra)

인프라 (Infra)

컨테이너 레지스트리 비교

개요Docker Hub는 가장 널리 쓰이는 컨테이너 이미지 저장소이지만, 이 외에도 AWS의 ECR, Google의 GCR, Azure의 ACR, 그리고 GitHub와 GitLab 레지스트리 등 다양한 컨테이너 레지스트리 서비스들이 존재합니다.이번 글에서는 Docker Hub를 포함한 여러 컨테이너 레지스트리 서비스를 비교해, 어떤 옵션이 프로젝트에 적합한지 알아보겠습니다.서비스Docker HubDocker Hub는 Docker의 제작사인 Docker Inc.에서 제공하는 기본 컨테이너 이미지 레지스트리입니다.기본 설정으로 docker pull 명령어를 사용할 때 별도의 레지스트리를 지정하지 않으면, 자동으로 Docker Hub에서 이미지를 가져옵니다. 예를 들어, docker pull nginx와 같이..

인프라 (Infra)

HeadVer 버저닝 기반 Vercel 자동 배포 구현기

개요솔리드 커넥션의 웹 파트를 개발하며 HeadVer 버저닝을 기반으로 Github Actions와 Vercel을 사용해 CI/CD 자동화를 이루어낸 기록을 정리합니다.솔리드 커넥션 웹, 그리고 배포 방식솔리드 커넥션은 교환학생을 돕기 위한 서비스입니다. 웹 애플리케이션은 Next.js로 개발되었으며, 배포는 Vercel을 통해 이루어지고 있습니다.Vercel은 정말 편리한 기능들을 많이 제공하고 있습니다. 그 중 하나는 Github과 잘 연계하여 빌드/배포를 매우 편리하게 해주는 것인데요, Github에 올라온 커밋들을 모두 자동으로 빌드해주고, 지정된 배포 브랜치에 올라온 내용을 자동으로 배포해줍니다. 서비스 CD를 위해서 배포용 release 브랜치를 만들고, 해당 브랜치에 PR을 올리는 것으로 배..

인프라 (Infra)

EC2 T instance VS M instance 비용 비교

AWS EC2(Elastic Compute Cloud)에는 t2, t3, t4g처럼 t로 시작하는 T instance가 있습니다. 이런 T type instance는 공유 코어를 사용한다는 특징이 있는데요, 이로 인하여 항상 높은 CPU 사용률을 보이지 않는 경우 M instance에 비해 비용을 줄일 수 있습니다.하지만 어느정도 사용할 때 M instance보다 저렴한지 비교하기 어려운데요, 이를 정리해 보았습니다.시작하기 전에 알아둘 점1. T instance는 M instance 특정 종류와 동일한 프로세서를 사용합니다.T instanceM instance프로세서 종류T2M4#2.4GHz 인텔 제온: 하스웰 E5-2676 v3(2.4~3.0Ghz, 15Q4?) 브로드웰 E5-2686 v4(2.3~3..

인프라 (Infra)

AWS ELB 구조 간단 정리

AWS의 로드밸런서 서비스인 ELB는 L4 로드밸런서인 NLB와 L7 로드밸런서인 ALB 등을 지원합니다. ELB를 사용해 보며 경험한 ELB 아키텍처의 구조를 간단하게 정리해 보았습니다. 아래의 에시는 ALB를 기준으로 합니다. 아키텍처의 가장 앞단에는 ELB가 위치합니다. ELB에는 IP가 아닌 DNS 주소가 하나 할당되는데, 이를 Route 53등을 이용해서 연결해서 사용할 수도 있고, 해당 주소를 그냥 사용할 수도 있습니다. ELB에는 각 입력 방식마다 리스너를 설정해 줍니다. 예를 들면 HTTP 80번 포트에 Listner1, HTTP 81번 포트에 Listner2를 할당할 수 있는 방식입니다. 각 리스너에는 대상 그룹(Target Group)을 하나씩 연결해 줍니다. 타깃그룹의 종류는 인스턴스..

인프라 (Infra)

클라우드 서비스(Azure, AWS, GCP, Oracle) Freetier 비교

대표적인 클라우드 Azure, AWS, GCP, Oracle에서 제공하는 프리티어 서비스를 비교해 보았습니다. 지속적으로 추가 중입니다.일반 FreetierAzure은 아래 외에도 30일간 USD200 토큰을 지급합니다.GCP는 아래 외에도 90일간 USD300 토큰을 지급합니다.Oracle의 1oCPU는 1개의 실제 물리적 코어를 의미하며, x86에서는 1oCPU = 2vCPU, Arm에서는 1oCPU = 1vCPU가 됩니다. AzureAWSGCPOracleComputeAzure Virtual MachineAmazon EC2Compute EngineComputeB1s(1vCPU, 1GiB) Linux, Window용 각각 월 750시간 제공(12개월)t3.micro(0.2vCPU, 1GiB) 또는 t2..

인프라 (Infra)

AWS EC2로 code-server 생성하기

웹에서 vscode를 사용할 수 있도록 해주는 code-server를 AWS의 EC2를 이용하여 생성하는 방법을 소개합니다. 1. EC2 인스턴스 생성하기 AWS 계정 생성 등 이전의 절차는 완료된 상태에서, EC2 컨테이너를 생성하겠습니다. 이번에 사용할 컨테이너는 t2.micro로 free tier대상이기에 무료로 사용할 수 있습니다. 또한 code-server는 t2.micro로도 충분할 정도로 가벼운 사양을 가지고 있기에 단순 코딩용으로 이용하기 적합합니다. code-server의 권장 최소사양은 1 GB of RAM, 2 CPU cores 으로 실제로는 t2.micro의 다음 사양인 t2.small 이상의 인스턴스를 사용하는 것이 좋습니다 아시아 태평양 (서울)ap-northeast-2로 지역을..

인프라 (Infra)

EC2 인스턴스 볼륨 확장하기

EC2 인스턴스를 사용하다 보면 예상보다 용량이 더 필요하여 기존에 사용하던 인스턴스의 용량 확장이 필요한 경우가 있습니다. 이러한 경우에 용량을 늘리는 방법을 소개합니다. 콘솔에서 볼륨 확장 우선 AWS 웹에서 볼륨을 확장해 줍니다. EC2 서비스 -> Elastic Block Store -> 볼륨 -> 볼륨 선택 -> 수정 -> 크기 -> 수정 버튼 과정으로 EBS 볼륨의 크기를 늘일 수 있습니다. 최신의 인스턴트 종류들은 대부분 실시간 수정이 가능하나 구형 인스턴스는 안될 수 있습니다. 인스턴스에서 반영 콘솔에서 볼륨을 확장해주었다면, 인스턴스로 들어가 확장된 볼륨을 반영하여 파티션을 수정해주어야 합니다. 파티션 확인 lsblk 위의 명령어를 통하여 파티션을 확인해줍니다. 아래는 출력의 예시입니다...

Muromi
'인프라 (Infra)' 카테고리의 글 목록