소개
MACH composer는 MACH 기반의 현대적인 디지털 커머스 및 경험 플랫폼을 오케스트레이션하고 확장하기 위한 프레임워크입니다. Terraform 인프라-아이-코드를 기반으로 MACH 서비스 구성을 표준화된 방식으로 관리하며, AWS, Azure 등 클라우드 네이티브 환경에서 마이크로서비스 아키텍처를 구축하고 CI/CD 자동화를 지원합니다.
상세정보
인프라-아이-코드 기반 구성 관리
MACH composer는 Terraform의 힘을 빌려 모든 클라우드 서비스를 인프라-아이-코드 방식으로 관리합니다. YAML 형식의 간단한 구성 파일로 플랫폼의 전체 구조를 정의할 수 있으며, 버전 관리 시스템(Git)과 자연스럽게 통합됩니다.
클라우드 네이티브 및 마이크로서비스 지원
AWS Lambda, Azure Functions, AWS Fargate와 같은 클라우드 네이티브 기술을 완벽히 지원합니다. 워크로드 유형에 따라 컨테이너(실시간 작업) 또는 함수(비동기 작업)를 선택하여 사용할 수 있으며, 마이크로서비스 아키텍처를 효과적으로 구현할 수 있습니다.
멀티 테넌시 지원
하나의 플랫폼이 여러 테넌트(브랜드, 지역 등)를 지원하도록 설계되어 있습니다. 특히 여러 브랜드를 하나의 플랫폼으로 관리해야 하는 기업에게 효율적인 솔루션을 제공합니다.
CI/CD 및 개발자 도구
GitHub Actions, GitLab CI/CD, Azure DevOps 등 모든 CI/CD 솔루션과 통합하여 프로덕션 배포를 자동화할 수 있습니다. 또한 CLI(커맨드라인 인터페이스)를 통해 프로젝트를 편리하게 관리할 수 있습니다.
다운로드·설치 방법
MACH composer는 다양한 방식으로 설치할 수 있습니다. 공식 문서에서는 셸 스크립트, Homebrew(맥), Chocolatey(윈도우), Nix 등 여러 방법을 제공합니다.
셸 스크립트를 사용한 설치 (Linux/macOS):
다음 명령어를 실행하면 최신 릴리스가 다운로드되어 $HOME/bin 디렉토리에 설치됩니다. 이 디렉토리가 PATH에 포함되어 있는지 확인하세요.
curl -sfL https://raw.githubusercontent.com/mach-composer/mach-composer-cli/f08424b1bc38086696767a1ce05e1b0fbb199326/scripts/install-mach-composer.sh | bash
특정 버전을 설치하려면 VERSION 환경 변수를 지정할 수 있습니다.
export VERSION=v2.20.0
curl -sfL https://raw.githubusercontent.com/mach-composer/mach-composer-cli/refs/heads/main/scripts/install-mach-composer.sh | bash
Homebrew를 사용한 설치 (macOS/Linux):
brew tap mach-composer/mach-composer
brew install mach-composer
Chocolatey를 사용한 설치 (Windows):
Windows에서의 Chocolatey를 통한 설치는 현재 불안정합니다. 공식 문서에서는 GitHub 릴리스에서 직접 최신 릴리스를 다운로드할 것을 권장하며, MACH composer를 WSL(Windows Subsystem for Linux)을 통해 실행하는 것을 추천합니다.
기본 사용법/명령어
MACH composer의 핵심 워크플로우는 설정 파일 생성, Terraform 계획, 그리고 적용 단계로 구성됩니다.
설정 파일 생성:
mach-composer generate 명령어는 YAML 구성 파일을 기반으로 Terraform 코드를 생성합니다. 기본적으로 main.yml 파일을 사용하며, 다른 파일을 지정하려면 -f 옵션을 사용합니다.
mach-composer generate
mach-composer generate -f other-file.yml
Terraform 계획 수립:
mach-composer plan 명령어는 변경 사항을 미리 검토할 수 있는 실행 계획을 생성합니다.
mach-composer plan
Terraform 구성 적용:
mach-composer apply 명령어는 실제 클라우드 인프라에 변경 사항을 적용합니다.
mach-composer apply
업데이트 확인:
mach-composer update 명령어를 사용하여 구성된 컴포넌트의 사용 가능한 업데이트를 확인할 수 있습니다.
mach-composer update -f main.yml
이런 경우에 유용합니다
대규모 MACH 플랫폼 구축 시: 여러 브랜드나 지역에 걸쳐 동일한 기술 스택을 기반으로 전자상거래 플랫폼을 표준화하여 구축하고 관리해야 하는 기업에게 이상적입니다. MARS(M&M’S), SportsDirect, Danone 등 글로벌 기업들이 실제 도입 사례로 활용하고 있습니다.
클라우드 네이티브 전환 시: 기존 모놀리식 아키텍처에서 마이크로서비스 기반의 클라우드 네이티브 아키텍처로 전환하는 과정에서 일관된 엔지니어링 방법론과 표준화된 도구가 필요할 때 유용합니다.
DevOps 및 CI/CD 자동화 강화 시: MACH 아키텍처의 배포 프로세스를 자동화하고, 테라폼 기반 인프라 관리와 통합된 개발 워크플로우를 구축하고자 할 때 효과적입니다.
지원 환경·시스템 요구사항
MACH composer는 Linux, macOS, Windows(WSL 권장) 환경에서 사용할 수 있습니다. 주요 지원 클라우드 플랫폼은 AWS, Azure이며, GCP 지원도 계획되어 있습니다. Terraform이 내부적으로 사용되므로, Terraform이 지원하는 모든 인프라와 MACH 서비스를 관리할 수 있습니다.
최신 버전·업데이트
현재 Chocolatey 패키지에서 제공되는 버전은 2.5.0입니다. MACH composer의 최신 릴리스 및 업데이트에 대한 자세한 내용은 공식 GitHub 릴리스 페이지에서 확인할 수 있습니다.
제한 사항·확인 사항
Windows 환경에서의 Chocolatey를 통한 설치는 현재 불안정한 상태입니다. Windows 사용자의 경우 GitHub에서 직접 바이너리를 다운로드하거나 WSL 환경에서 실행하는 것을 공식적으로 권장합니다. MACH composer는 MACH 아키텍처를 채택하고 있는 팀과 조직의 엔지니어링 방법론과 조직 구조에 상당한 영향을 미칠 수 있는 도구입니다.
화면으로 보는 주요 기능
모바일 웹사이트 보기

M&M'S 글로벌 DTC 플랫폼의 모바일 웹사이트 화면으로, 제품 커스터마이징 및 구매 기능을 보여줍니다.
스포츠 제품 보기

SportsDirect/Frasers 그룹의 MACH 아키텍처 기반 전자상거래 플랫폼의 모바일 제품 상세 페이지입니다.
자동차 제품 보기

Suzuki/Louwman 그룹의 MACH 커머스 플랫폼에서 자동차 제품을 보여주는 태블릿 화면입니다.
웹사이트 보기

Glen Dimplex와 같은 기업의 글로벌 웹 플랫폼에서 MACH composer로 배포된 상거래 기능을 보여주는 데스크톱 화면입니다.
시스템 요구사항
별도의 시스템 요구사항이 등록되지 않았습니다.


