Amazon Web Services 한국 블로그

Amazon EC2 M1 Mac 인스턴스 정식 출시

작년 re:Invent 2021 컨퍼런스에서 Amazon EC2 M1 Mac 인스턴스 미리 보기를 발표했습니다. 많은 분들이 평가판 테스트를 요청했다는 점을 알고 있습니다. 저희는 최선을 다했지만 모두를 만족시킬 수는 없었습니다. 하지만 기다림은 끝났습니다. EC2 M1 Mac 인스턴스의 정식 출시되었습니다.

Amazon EC2 Mac 인스턴스는 Thunderbolt를 통해 AWS Nitro System에 연결된 전용 Mac 미니 컴퓨터로, Mac 미니가 다른 EC2 인스턴스처럼 보이고 작동할 수 있게 해줍니다. Amazon Virtual Private Cloud(VPC),에 연결하고, Amazon Elastic Block Store(EBS) 볼륨에서 부팅하고, EBS 스냅샷, Amazon Machine Image(AMI), 보안 그룹 및 Amazon CloudWatchAWS Systems Manager 등의 기타 AWS 서비스를 사용합니다.

EC2 M1 Mac 인스턴스의 가용성을 통해 Apple이 설계한 M1 System on Chip(SoC)을 기반으로 구축된 머신에 액세스할 수 있습니다. Mac 개발자로서 Apple 실리콘이 포함된 Mac을 기본적으로 지원하도록 앱을 재설계하는 경우 이제 앱을 빌드 및 테스트하고 AWS의 모든 이점을 활용할 수 있습니다. iPhone, iPad, Apple Watch, 및 Apple TV용으로 빌드하는 개발자들도 더 빠른 빌드의 이점을 누릴 수 있습니다. EC2 M1 Mac 인스턴스는 iPhone 및 Mac 앱 빌드 워크로드를 위한 x86 기반 EC2 Mac 인스턴스보다 최대 60% 향상된 가격 성능을 제공합니다.

예를 들어, 제가 작성한 샘플 프로젝트에서 단위 테스트를 정리, 빌드, 보관 및 실행하는 데 걸리는 시간을 테스트했습니다. 새로운 EC2 M1 Mac 인스턴스는 이 작업 세트를 평균 49초 만에 완료합니다. 이는 이전 세대의 EC2 Mac 인스턴스에서 실행 중인 동일한 작업 세트보다 47.8% 빠릅니다.

EC2 M1 Mac 인스턴스를 AWS Management Console 또는 AWS 명령줄 인터페이스(CLI)에서 시작하는 방법을 알아보려면 주제에 대한 마지막 블로그 게시물을 읽어 보시기 바랍니다.

EC2 Mac M1 인스턴스

6개월의 프리뷰 기간 동안 피드백을 수집하고, 필요에 맞도록 서비스를 섬세하게 조정했습니다.

EC2 M1 Mac 인스턴스를 시작하기 위해 설명서에 새로운 FAQ 섹션을 추가했습니다. AWS System Manager 및 CloudWatch와 같은 관리 및 관찰을 위한 에이전트는 AWS Command Line Interface (CLI) 및 저희의 AWS SDK 같은 도구와 함께 모든 macOS AMI에 사전 설치되어 있습니다. EC2 M1 Mac 인스턴스는 파일 스토리지용 Amazon Elastic File System(Amazon EFS), AWS Auto Scaling, AWS Secrets Manager 등의 다른 AWS 서비스와 통합됩니다.

예를 들어 AWS Secrets Manager를 사용하여 App Store에 배포하기 전에 바이너리에 서명하기 위해 사용하는 서명 키 및 인증서와 같은 빌드 암호를 사용하여 안전하게 저장하고 있습니다. 노트북에서 먼저 macOS 키체인에서 인증서를 내보냅니다. 그런 다음 다음 명령을 사용하여 인증서를 Secret Manager에 업로드합니다.

aws secretsmanager create-secret            \
       --name apple-signing-dev-certificate \
       --secret-binary fileb://./secrets/apple_dev_seb.p12 

EC2 M1 Mac 인스턴스에서 빌드 단계 전에 인스턴스를 준비하기 위해 인증서를 다운로드하여 디코딩 (base64로 인코딩) 한 다음, EC2 M1 Mac 인스턴스 키 체인에 저장합니다. 이 키체인은 빌드 중에 Codesign 도구가 해당 인스턴스를 찾습니다.

# Secrets Manager에서 인증서 다운로드
SIGNING_DEV_KEY=$($aws secretsmanager get-secret-value  \
      --secret-id apple-signing-dev-certificate         \
      --query SecretBinary --output text)
	  

# save the certificate as a file
echo $SIGNING_DEV_KEY | base64 -d > seb_dev_certificate.p12

# 키체인에서 인증서 가져오기 
security import seb_dev_certificate.p12 \
                -P "my_cert_password"   \
                -k my.dev.keychain      \
                -T /usr/bin/security -T /usr/bin/codesign -T /usr/bin/xcodebuild

# 디스크에서 인증서 삭제
rm seb_dev_certificate.p12

macOS 명령줄에서 코드 서명 작업을 가져오기 위한 몇 가지 구성 단계가 더 있습니다. 자세한 내용은 제가 만든 이 프레젠테이션 또는 코드 리포지토리에서 확인할 수 있습니다.

EC2 M1 Mac 인스턴스 사용 사례 및 구성에 대해 자세히 알아볼 수 있도록 몇 가지 이벤트를 준비 중입니다. 첫째, 최근에 iOS 개발을 위해 EC2 Mac 인스턴스를 활용하는 방법을 알아보는 온라인 웨비나를 진행했습니다. 무료 등록 단계 후에, 온디맨드로 콘텐츠를 사용할 수 있습니다. 둘째, 올해 말에 1일 대면 개발자 컨퍼런스를 준비하고 있습니다. 컨퍼런스 안건은 기술 콘텐츠와 워크샵으로 가득합니다. 이에 대해 자세히 알아보려면 소셜 미디어를 계속 지켜봐주십시오.

마지막으로 EC2 Mac 인스턴스와 관련이 없는 Apple WWDC 2022 컨퍼런스가 지난달 2022년 6월 6일부터 8일까지 열렸으며, 해당 콘텐츠는 온라인으로 제공됩니다. 일반적인 Apple 시스템 개발에 대해 자세히 알아볼 수 있는 좋은 기회입니다.

지금 시작해 보세요  ;-)

— seb