🤖

본 콘텐츠의 이미지 및 내용은 AI로 생성되었습니다.

⚠️

본 콘텐츠의 이미지 및 내용을 무단으로 복제, 배포, 수정하여 사용할 경우 저작권법에 의해 법적 제재를 받을 수 있습니다.

이미지 로딩 중...

AWS 소개와 계정 생성 완벽 가이드 - 슬라이드 1/7
A

AI Generated

2025. 12. 18. · 7 Views

AWS 소개와 계정 생성 완벽 가이드

클라우드 컴퓨팅의 개념부터 AWS 계정 생성, MFA 보안 설정까지 초급 개발자를 위한 단계별 가이드입니다. 실무에서 바로 활용할 수 있는 실전 팁과 주의사항을 담았습니다.


목차

  1. 클라우드_컴퓨팅이란
  2. AWS_소개와_역사
  3. 온프레미스_vs_클라우드
  4. AWS_프리티어_소개
  5. 계정_생성_단계별_가이드
  6. MFA_설정하기

1. 클라우드 컴퓨팅이란

어느 날 신입 개발자 김개발 씨가 회사 회의실에서 이런 이야기를 들었습니다. "우리 서비스, 이번에 클라우드로 이전합니다." 옆에 앉은 선배는 환호했지만, 김개발 씨는 머릿속이 복잡해졌습니다.

클라우드가 정확히 무엇일까요?

클라우드 컴퓨팅은 인터넷을 통해 컴퓨팅 자원을 빌려 쓰는 서비스입니다. 마치 전기를 발전소에서 생산해 각 가정으로 공급하듯이, 서버와 스토리지를 필요한 만큼만 사용하고 비용을 지불합니다.

직접 서버를 구매하고 관리하는 대신, 필요할 때 즉시 사용할 수 있습니다.

다음 코드를 살펴봅시다.

// 전통적인 방식: 서버 구매 필요
// 1. 서버 구매 (수천만원 투자)
// 2. 설치 및 설정 (수주 소요)
// 3. 유지보수 인력 필요

// 클라우드 방식: 필요할 때 즉시 사용
const AWS = require('aws-sdk');
const ec2 = new AWS.EC2();

// 클릭 한 번으로 서버 생성
const params = {
  ImageId: 'ami-0c55b159cbfafe1f0',
  InstanceType: 't2.micro',
  MinCount: 1,
  MaxCount: 1
};

ec2.runInstances(params, (err, data) => {
  if (err) console.log(err);
  else console.log('서버 생성 완료:', data);
});

김개발 씨는 퇴근 후 선배에게 조심스럽게 물었습니다. "선배님, 클라우드가 정확히 뭔가요?

구름이랑 무슨 상관이죠?" 선배 박시니어 씨는 웃으며 커피를 한 모금 마신 뒤 설명을 시작했습니다. "좋은 질문이에요.

클라우드라는 이름은 사실 비유에서 온 거예요. 우리가 하늘의 구름을 보면, 어디서 시작하고 끝나는지 정확히 알 수 없잖아요?" 클라우드 컴퓨팅이란 무엇일까요?

가장 쉽게 이해하려면 전기 서비스를 떠올리면 됩니다. 옛날에는 각 공장마다 자체 발전기가 있었습니다.

전기가 필요하면 직접 발전기를 돌려야 했죠. 하지만 지금은 어떤가요?

콘센트에 플러그를 꽂으면 바로 전기를 쓸 수 있습니다. 발전소가 어디 있는지, 어떻게 전기를 만드는지 알 필요가 없습니다.

클라우드 컴퓨팅도 똑같습니다. 과거에는 회사마다 자체 서버실이 있었습니다.

서버를 직접 구매하고, 설치하고, 관리해야 했죠. 하지만 이제는 인터넷만 연결하면 전 세계 어디서든 서버를 사용할 수 있습니다.

그렇다면 왜 클라우드가 필요할까요? 김개발 씨가 입사하기 전, 회사에는 큰 문제가 있었습니다. 서비스 사용자가 평소에는 1000명 정도인데, 특정 이벤트 기간에는 10만 명으로 급증했습니다.

이를 대비해 항상 10만 명을 수용할 수 있는 서버를 유지해야 했죠. 문제는 비용이었습니다.

일 년 중 350일은 서버 용량의 90%가 놀고 있었습니다. 전기세만 월 500만 원이 나갔습니다.

게다가 서버가 고장 나면 직접 수리해야 했고, 새벽에 장애가 발생하면 담당자가 급히 출근해야 했습니다. 클라우드는 이런 문제를 어떻게 해결할까요? 첫째, 필요한 만큼만 사용할 수 있습니다.

평소에는 작은 서버를 쓰다가, 이벤트 기간에만 서버를 늘립니다. 이벤트가 끝나면 다시 줄이면 됩니다.

사용한 만큼만 비용을 지불하죠. 둘째, 즉시 확장이 가능합니다.

과거에는 서버를 새로 구매하면 배송에 2주, 설치에 1주가 걸렸습니다. 클라우드는 클릭 한 번으로 5분 안에 서버를 추가할 수 있습니다.

셋째, 관리 부담이 줄어듭니다. 서버 하드웨어 고장, 네트워크 장애, 보안 업데이트 같은 일을 클라우드 제공사가 처리해 줍니다.

개발자는 코드 작성에만 집중할 수 있습니다. 실제 코드를 볼까요? 위의 코드는 AWS SDK를 사용해 서버를 생성하는 예제입니다.

과거 같으면 서버를 주문하고, 배송받고, 설치하는 데 몇 주가 걸렸을 일입니다. 하지만 이제는 코드 몇 줄로 몇 분 안에 서버를 만들 수 있습니다.

runInstances 함수는 새로운 가상 서버를 생성합니다. ImageId는 서버에 설치할 운영체제를 지정하고, InstanceType은 서버 사양을 결정합니다.

t2.micro는 가장 작은 사양으로, AWS 프리티어에서 무료로 사용할 수 있습니다. 실무에서는 어떻게 활용할까요? 스타트업 '달려라개발'은 배달 앱을 운영합니다.

점심시간(12-1시)과 저녁시간(6-8시)에 주문이 몰립니다. 클라우드를 사용하기 전에는 피크 시간을 대비해 항상 큰 서버를 유지했습니다.

월 서버 비용만 300만 원이었죠. 클라우드로 이전한 후에는 어떻게 됐을까요?

평소에는 작은 서버 2대를 운영하고, 점심·저녁 시간에만 자동으로 10대로 늘립니다. 시간이 지나면 다시 2대로 줄어듭니다.

월 비용이 80만 원으로 감소했습니다. 70%가 절감된 거죠.

주의할 점도 있습니다 초보자들이 흔히 하는 실수가 있습니다. "클라우드는 무조건 저렴하다"고 생각하는 거죠.

하지만 잘못 사용하면 오히려 비용이 더 나올 수 있습니다. 예를 들어 서버를 생성한 뒤 삭제하지 않고 놔두면 계속 과금됩니다.

테스트용 서버를 만들고 잊어버려서 몇 달 후 수백만 원의 청구서를 받은 사례도 있습니다. 따라서 사용하지 않는 자원은 반드시 삭제해야 합니다.

정리하며 김개발 씨는 이제 클라우드가 무엇인지 이해했습니다. "아, 서버를 소유하는 게 아니라 빌려 쓰는 거군요!" 박시니어 씨가 고개를 끄덕입니다.

"정확해요. 마치 집을 사는 것과 월세 사는 것의 차이죠." 클라우드 컴퓨팅은 현대 소프트웨어 개발의 필수 요소가 되었습니다.

초기 투자 비용 없이 빠르게 시작할 수 있고, 필요에 따라 유연하게 확장할 수 있습니다. 여러분도 클라우드의 장점을 활용해 보세요.

실전 팁

💡 - 사용하지 않는 서버는 즉시 삭제하여 불필요한 비용을 방지하세요

  • 비용 알림 설정을 통해 예상치 못한 요금을 미리 파악하세요
  • 프리티어 자원을 최대한 활용하여 무료로 학습하세요

2. AWS 소개와 역사

팀 회의에서 팀장님이 말했습니다. "우리 서비스는 AWS로 구축합니다." 김개발 씨는 고개를 끄덕였지만, 속으로는 궁금했습니다.

AWS가 왜 이렇게 유명한 걸까요? 다른 클라우드 서비스도 많은데 말이죠.

**AWS(Amazon Web Services)**는 아마존이 제공하는 세계 최대의 클라우드 컴퓨팅 플랫폼입니다. 200개 이상의 서비스를 제공하며, 전 세계 시장 점유율 1위를 차지합니다.

넷플릭스, 삼성, 나스닥 등 수많은 기업이 AWS를 사용합니다.

다음 코드를 살펴봅시다.

// AWS 주요 서비스 예시
const AWS = require('aws-sdk');

// EC2: 가상 서버
const ec2 = new AWS.EC2();

// S3: 파일 저장소
const s3 = new AWS.S3();
s3.putObject({
  Bucket: 'my-app-images',
  Key: 'profile.jpg',
  Body: fileContent
});

// Lambda: 서버리스 함수
const lambda = new AWS.Lambda();

// RDS: 관계형 데이터베이스
const rds = new AWS.RDS();

// 모든 서비스가 코드로 제어 가능
console.log('AWS로 전체 인프라를 코드로 관리');

점심시간에 김개발 씨는 선배에게 물었습니다. "선배님, AWS가 왜 이렇게 유명해요?

네이버 클라우드도 있고, 구글 클라우드도 있잖아요." 박시니어 씨는 잠시 생각하더니 흥미로운 이야기를 시작했습니다. "AWS의 탄생 스토리를 알면 이해가 쉬울 거예요." AWS는 어떻게 시작됐을까요? 2000년대 초반, 아마존은 큰 문제를 겪고 있었습니다.

쇼핑몰 특성상 크리스마스 시즌에 트래픽이 폭증했습니다. 평소의 10배가 넘는 서버가 필요했죠.

하지만 나머지 11개월은 대부분의 서버가 놀고 있었습니다. 엔지니어들은 고민했습니다.

"이 남는 서버를 다른 회사에 빌려주면 어떨까?" 아마존은 이미 세계 최고 수준의 인프라를 구축했습니다. 규모의 경제로 비용도 저렴했죠.

2006년, AWS가 공식 출시됐습니다. 왜 AWS가 1위가 됐을까요? 첫 번째 이유는 선발 주자의 이점입니다.

AWS는 2006년에 시작했고, 마이크로소프트 Azure는 2010년, 구글 클라우드는 2011년에 뒤늦게 시작했습니다. 4-5년의 격차는 기술 업계에서 엄청난 차이입니다.

두 번째는 서비스 다양성입니다. AWS는 200개 이상의 서비스를 제공합니다.

단순히 서버만 빌려주는 게 아닙니다. 데이터베이스, 스토리지, 네트워킹, 인공지능, 머신러닝, IoT까지 없는 게 없습니다.

한 플랫폼에서 모든 것을 해결할 수 있죠. 세 번째는 글로벌 인프라입니다.

AWS는 전 세계 33개 지역에 105개의 가용 영역을 운영합니다. 서울에도 데이터센터가 있어서, 한국 사용자들에게 빠른 서비스를 제공할 수 있습니다.

주요 서비스를 살펴볼까요? **EC2(Elastic Compute Cloud)**는 가상 서버 서비스입니다. 클릭 몇 번으로 리눅스나 윈도우 서버를 만들 수 있습니다.

게임 서버, 웹 서버, API 서버 등 모든 종류의 서버를 구동할 수 있죠. **S3(Simple Storage Service)**는 파일 저장소입니다.

사진, 동영상, 백업 파일 등 어떤 파일이든 저장할 수 있습니다. 용량 제한이 없고, 내구성이 99.999999999%(9가 11개!)에 달합니다.

사실상 절대 잃어버리지 않는다는 의미죠. **RDS(Relational Database Service)**는 관계형 데이터베이스 서비스입니다.

MySQL, PostgreSQL, Oracle 등을 자동으로 관리해 줍니다. 백업, 패치, 장애 복구를 알아서 처리합니다.

Lambda는 서버리스 컴퓨팅 서비스입니다. 서버를 직접 관리하지 않고, 함수 코드만 작성하면 됩니다.

이미지 리사이징, 데이터 처리, API 백엔드 등에 활용됩니다. 실제 기업들은 어떻게 사용할까요? 넷플릭스는 전체 서비스를 AWS에서 운영합니다.

하루 2억 5천만 시간 이상의 영상을 스트리밍합니다. 전 세계 어디서든 빠르고 안정적인 서비스를 제공하죠.

삼성전자는 스마트폰 제조 공정에 AWS 머신러닝을 활용합니다. 불량품을 자동으로 감지하여 품질을 높였습니다.

국내 스타트업 '토스'도 AWS를 사용합니다. 금융 서비스 특성상 보안과 안정성이 중요한데, AWS의 인증과 보안 기능을 활용합니다.

다른 클라우드와 비교하면? 마이크로소프트 Azure는 윈도우 기반 기업에 강점이 있습니다. 오피스 365, Active Directory와 연동이 쉽습니다.

구글 **GCP(Google Cloud Platform)**는 빅데이터와 AI 분야에 강합니다. 구글의 검색 기술과 AI 연구를 활용할 수 있죠.

네이버 **NCP(Naver Cloud Platform)**는 한국 시장에 특화됐습니다. 파파고 번역, 클로바 AI, 네이버페이 연동이 쉽습니다.

하지만 시장 점유율을 보면 AWS가 압도적입니다. 2024년 기준 약 32%로 1위입니다.

Azure가 23%, GCP가 10%를 차지합니다. 나머지 35%를 수많은 업체가 나눠 가집니다.

주의할 점 AWS는 서비스가 워낙 많아서 초보자에게는 복잡할 수 있습니다. 어떤 서비스를 써야 할지 헷갈리죠.

처음에는 EC2, S3, RDS 같은 핵심 서비스부터 익히는 게 좋습니다. 또한 영어 문서가 많습니다.

한글 문서도 있지만, 최신 기능은 영어가 먼저 나옵니다. 영어에 익숙해지는 게 도움이 됩니다.

정리하며 김개발 씨는 이제 AWS가 왜 업계 표준이 됐는지 이해했습니다. "역사도 길고, 서비스도 많고, 안정성도 검증됐으니 많이 쓰는 거군요." 박시니어 씨가 덧붙입니다.

"맞아요. 게다가 한번 AWS를 배우면 다른 클라우드도 이해하기 쉬워요.

기본 개념이 비슷하거든요." AWS를 배우는 것은 단순히 하나의 도구를 익히는 게 아닙니다. 현대적인 클라우드 아키텍처와 인프라 관리 방식을 배우는 것입니다.

이는 여러분의 커리어에 큰 자산이 될 것입니다.

실전 팁

💡 - AWS 프리티어로 12개월간 무료로 학습할 수 있습니다

  • AWS 공식 문서는 한글 번역이 잘 되어 있으니 적극 활용하세요
  • **핵심 서비스(EC2, S3, RDS)**부터 차근차근 익히세요

3. 온프레미스 vs 클라우드

회의실에서 인프라 담당 선배가 한숨을 쉬며 말했습니다. "작년까지만 해도 우리 회사 서버실에서 밤새 장애 대응했는데..." 옆에서 듣던 김개발 씨는 궁금했습니다.

예전 방식과 클라우드는 정확히 뭐가 다를까요?

온프레미스는 회사가 직접 서버를 구매하고 관리하는 전통적인 방식입니다. 클라우드는 인터넷으로 서버를 빌려 쓰는 방식이죠.

초기 비용, 확장성, 관리 편의성에서 큰 차이가 있습니다.

다음 코드를 살펴봅시다.

// 온프레미스: 서버 사양을 미리 결정
const serverSpec = {
  cpu: '16코어',
  ram: '64GB',
  disk: '2TB SSD',
  구매비용: 15000000, // 1500만원
  설치기간: '4주',
  유지보수: '직접 관리 필요'
};

// 클라우드: 필요할 때 즉시 변경
const cloudInstance = {
  type: 't2.micro', // 시작은 작게
  비용: '시간당 약 15원',
  설치기간: '5분',
  확장: () => {
    // 트래픽 증가 시 자동 확장
    return 't2.large'; // 몇 분 만에 업그레이드
  }
};

김개발 씨는 입사 전 면접에서 재미있는 질문을 받았습니다. "우리 회사는 작년에 온프레미스에서 클라우드로 이전했어요.

왜 그랬을까요?" 당시에는 대답하지 못했지만, 이제는 알 것 같습니다. 박시니어 씨의 경험담을 들어볼까요.

온프레미스 시절의 악몽 2019년, 회사는 자체 서버실을 운영했습니다. 서버 10대가 윙윙거리며 돌아가고 있었죠.

시원하게 유지하려면 에어컨을 24시간 가동해야 했습니다. 여름철 전기세만 월 300만 원이었습니다.

더 큰 문제는 확장이었습니다. 신규 서비스 출시로 서버가 2대 더 필요해졌습니다.

견적을 받아보니 대당 1500만 원, 총 3000만 원이었습니다. 구매 승인을 받고, 주문하고, 배송받고, 설치하는 데 6주가 걸렸습니다.

밤에 서버가 고장 나면 담당자가 급히 출근해야 했습니다. 박시니어 씨는 새벽 3시에 호출받아 서버실로 달려간 적이 여러 번 있었습니다.

"하드디스크가 고장 났네요. 교체용 디스크 주문하겠습니다." 복구까지 이틀이 걸렸습니다.

클라우드로 이전한 후 2020년, 회사는 AWS로 이전했습니다. 첫 번째 변화는 초기 비용이었습니다.

온프레미스에서는 서버를 구매하는 데 수천만 원이 필요했습니다. 하지만 클라우드는 신용카드만 등록하면 바로 시작할 수 있었습니다.

두 번째는 확장 속도였습니다. 예전에는 서버 추가에 6주가 걸렸지만, 이제는 5분이면 됩니다.

클릭 몇 번으로 원하는 만큼 서버를 추가할 수 있었죠. 세 번째는 유연성이었습니다.

온프레미스에서는 한번 구매한 서버를 몇 년간 써야 했습니다. 사양이 부족해도 새로 살 수 없었죠.

클라우드는 언제든 사양을 변경할 수 있습니다. 평소에는 작은 서버를 쓰다가 필요할 때만 큰 서버를 씁니다.

비용을 비교해 볼까요? 온프레미스 3년 총 비용을 계산해 봅시다. 서버 10대 구매에 1억 5천만 원, 서버실 임대료 월 200만 원(3년 7200만 원), 전기세 월 300만 원(3년 1억 800만 원), 운영 인력 2명 연봉(3년 3억 원).

총합은 약 5억 3천만 원입니다. 클라우드는 어떨까요?

같은 사양의 서버를 24시간 운영하면 월 약 300만 원, 3년이면 1억 800만 원입니다. 하지만 실제로는 필요할 때만 쓰니까 더 적습니다.

평균 50% 활용률이라면 5400만 원입니다. 약 10분의 1로 줄어든 거죠.

하지만 온프레미스가 나은 경우도 있습니다 모든 경우에 클라우드가 좋은 건 아닙니다. 예를 들어 은행이나 정부기관처럼 보안이 극도로 중요한 곳은 온프레미스를 선호합니다.

데이터를 외부에 두고 싶지 않기 때문이죠. 또한 서버를 24시간 100% 활용하는 경우라면 온프레미스가 더 저렴할 수 있습니다.

3년 이상 장기간 사용한다면 구매하는 게 나을 수도 있죠. 마치 집을 사는 것과 월세 사는 것의 차이와 비슷합니다.

하이브리드 클라우드라는 절충안 많은 기업이 하이브리드 클라우드를 선택합니다. 핵심 시스템과 민감한 데이터는 온프레미스에 두고, 웹 서버나 개발 환경은 클라우드에 둡니다.

양쪽의 장점을 모두 취하는 거죠. 예를 들어 삼성SDS는 금융 시스템은 자체 데이터센터에서 운영하고, 빅데이터 분석은 AWS에서 합니다.

보안과 유연성을 동시에 확보한 것입니다. 실무 의사결정 기준 신규 스타트업이라면?

당연히 클라우드입니다. 초기 투자 없이 빠르게 시작할 수 있습니다.

트래픽 변동이 큰 서비스라면? 클라우드가 유리합니다.

쇼핑몰, 게임, 교육 서비스처럼 특정 시간에 몰리는 경우죠. 항상 일정한 부하라면?

온프레미스도 고려할 만합니다. 장기적으로는 더 저렴할 수 있습니다.

극도의 보안이 필요하다면? 온프레미스나 프라이빗 클라우드를 고려하세요.

금융, 의료, 국방 분야가 해당됩니다. 정리하며 김개발 씨는 이제 회사가 왜 클라우드로 이전했는지 이해했습니다.

"초기 비용도 없고, 필요할 때 바로 확장하고, 관리도 쉽고... 우리 같은 스타트업에는 딱이네요." 박시니어 씨가 고개를 끄덕입니다.

"맞아요. 예전처럼 새벽에 서버실 달려가는 일도 없어졌고요." 온프레미스와 클라우드는 각각 장단점이 있습니다.

여러분의 상황에 맞는 선택을 하세요. 많은 경우 클라우드가 더 나은 선택이지만, 항상 그런 건 아닙니다.

비용, 보안, 규제를 종합적으로 고려하세요.

실전 팁

💡 - 스타트업이라면 클라우드로 시작하여 초기 비용을 절감하세요

  • 트래픽 패턴을 분석하여 온프레미스와 클라우드 중 선택하세요
  • 하이브리드 방식도 고려해 볼 만합니다

4. AWS 프리티어 소개

김개발 씨는 AWS를 배우고 싶었지만 걱정이 앞섰습니다. "클라우드는 쓴 만큼 돈을 내는 거잖아요.

연습하다가 요금 폭탄 맞으면 어떡하죠?" 선배가 웃으며 말했습니다. "걱정 마세요.

프리티어가 있어요."

AWS 프리티어는 신규 가입자에게 12개월간 무료로 제공되는 혜택입니다. EC2 서버 750시간, S3 스토리지 5GB, RDS 데이터베이스 750시간 등을 무료로 사용할 수 있습니다.

학습과 소규모 프로젝트에 충분한 양입니다.

다음 코드를 살펴봅시다.

// 프리티어로 사용 가능한 리소스
const freeT ierResources = {
  // EC2: 월 750시간 (24시간 x 31일)
  ec2: {
    type: 't2.micro',
    hours: 750,
    설명: '1대를 24시간 돌려도 무료'
  },

  // S3: 5GB 스토리지
  s3: {
    storage: '5GB',
    requests: {
      put: 2000,
      get: 20000
    }
  },

  // RDS: 월 750시간
  rds: {
    type: 'db.t2.micro',
    storage: '20GB',
    hours: 750
  },

  // Lambda: 월 100만 요청
  lambda: {
    requests: 1000000,
    computeTime: '400,000 GB-초'
  }
};

console.log('프리티어로 웹 서비스 무료 운영 가능!');

김개발 씨는 조심스럽게 물었습니다. "선배님, AWS 배우고 싶은데 돈이 걱정돼요.

실수로 서버 많이 만들면 어떡해요?" 박시니어 씨는 자신의 경험을 들려줬습니다. "저도 처음엔 그게 걱정이었어요.

그런데 프리티어 덕분에 1년간 무료로 공부했죠." 프리티어란 무엇일까요? AWS는 신규 사용자에게 12개월간 무료 혜택을 제공합니다. 마치 넷플릭스 첫 달 무료 체험 같은 거죠.

하지만 AWS 프리티어는 훨씬 관대합니다. 1년이나 되고, 상당히 많은 양을 무료로 줍니다.

가장 중요한 건 실제 사용 가능한 수준이라는 점입니다. 단순히 맛보기가 아닙니다.

소규모 웹 서비스를 실제로 운영할 수 있을 만큼 충분합니다. 구체적으로 뭘 무료로 쓸 수 있을까요? **EC2(서버)**는 월 750시간이 무료입니다.

한 달은 약 720시간이니까, t2.micro 인스턴스 1대를 24시간 돌려도 무료입니다. 물론 2대를 12시간씩 돌려도 되고요.

리눅스와 윈도우 모두 지원합니다. **S3(스토리지)**는 5GB가 무료입니다.

이미지 파일 수천 개를 저장할 수 있는 양입니다. GET 요청 2만 번, PUT 요청 2천 번도 무료입니다.

작은 웹사이트의 이미지 호스팅으로 충분합니다. **RDS(데이터베이스)**도 월 750시간 무료입니다.

db.t2.micro 인스턴스로 MySQL, PostgreSQL, MariaDB를 돌릴 수 있습니다. 스토리지는 20GB까지 무료죠.

초기 프로젝트에 넉넉한 용량입니다. **Lambda(서버리스 함수)**는 월 100만 요청이 무료입니다.

그리고 컴퓨팅 시간 40만 GB-초도 공짜입니다. 이게 얼마나 많은 양이냐면, 작은 API 서버 정도는 평생 무료로 운영할 수 있는 수준입니다.

**CloudFront(CDN)**는 데이터 전송 50GB와 요청 200만 건이 무료입니다. 웹사이트를 빠르게 제공할 수 있죠.

**DynamoDB(NoSQL DB)**는 25GB 스토리지가 영구 무료입니다. 12개월이 아니라 계속 무료라는 뜻입니다.

실제로 어떻게 활용할 수 있을까요? 김개발 씨는 토이 프로젝트로 간단한 블로그를 만들었습니다. EC2에 Node.js 서버를 올리고, RDS에 MySQL 데이터베이스를 구축했습니다.

이미지는 S3에 저장하고, CloudFront로 빠르게 제공했습니다. 모든 게 프리티어 안에 들어갔습니다.

한 푼도 내지 않고 1년간 운영했죠. 트래픽이 적었기 때문에 프리티어 한도를 넘은 적이 없었습니다.

친구가 물었습니다. "그럼 1년 후에는?" 김개발 씨는 대답했습니다.

"그때는 월 5천 원 정도 나오더라고요. 커피 한 잔 값이죠." 프리티어로 실무 포트폴리오 만들기 많은 신입 개발자가 프리티어로 포트폴리오를 만듭니다.

EC2에 프론트엔드와 백엔드를 배포하고, 도메인을 연결합니다. 면접에서 "실제 서비스를 AWS에 배포해 봤습니다"라고 말할 수 있죠.

실제로 한 취업 준비생은 프리티어로 간단한 쇼핑몰을 만들었습니다. 면접관이 직접 사이트에 접속해서 테스트했고, 큰 인상을 받았습니다.

그 학생은 합격했습니다. 주의할 점 프리티어는 한도가 있습니다.

EC2를 t2.small로 실행하면 무료가 아닙니다. 반드시 t2.micro를 써야 합니다.

또한 월 750시간을 넘으면 과금됩니다. 가장 흔한 실수는 서버를 삭제하지 않는 것입니다.

테스트용 서버를 만들고 잊어버리면, 다음 달에 요금이 나옵니다. 사용하지 않는 리소스는 반드시 삭제하세요.

빌링 알람 설정이 중요합니다. 무료 한도를 넘으려 할 때 이메일로 알려줍니다.

"이번 달 요금이 5달러를 넘었습니다" 같은 알림을 받으면 즉시 확인할 수 있죠. 12개월 후에는? 프리티어가 끝나도 걱정하지 마세요.

Lambda와 DynamoDB 같은 일부 서비스는 영구 무료입니다. 그리고 작은 프로젝트라면 월 1만 원 이내로도 충분히 운영할 수 있습니다.

더 큰 프로젝트라면? 그때는 이미 AWS를 잘 다루게 됐을 겁니다.

비용 최적화하는 법도 알게 되고요. Reserved Instances나 Savings Plans로 비용을 크게 줄일 수 있습니다.

정리하며 김개발 씨는 이제 걱정 없이 AWS를 시작할 수 있게 됐습니다. "1년간 무료니까 마음껏 실험해 봐도 되겠네요!" 박시니어 씨가 조언합니다.

"맞아요. 단, 빌링 알람은 꼭 설정하세요.

그리고 매주 Cost Explorer에서 사용량을 확인하는 습관을 들이세요." AWS 프리티어는 클라우드를 배우는 최고의 방법입니다. 책으로만 공부하는 게 아니라 직접 만지면서 배울 수 있습니다.

지금 바로 시작하세요.

실전 팁

💡 - 빌링 알람을 반드시 설정하여 예상치 못한 요금을 방지하세요

  • 매주 Cost Explorer 확인 습관을 들이세요
  • 사용하지 않는 리소스는 즉시 삭제하세요

5. 계정 생성 단계별 가이드

드디어 김개발 씨가 AWS 계정을 만들기로 결심했습니다. 노트북을 펴고 aws.amazon.com에 접속했지만, 첫 화면부터 영어 투성이입니다.

"이거 어디서부터 시작하지?" 당황하지 마세요. 차근차근 따라하면 10분이면 됩니다.

AWS 계정 생성은 이메일 주소와 신용카드만 있으면 가능합니다. 가입 자체는 무료이고, 프리티어로 1년간 무료 사용할 수 있습니다.

본인 확인을 위한 전화 인증과 결제 수단 등록이 필요합니다.

다음 코드를 살펴봅시다.

// AWS SDK를 사용하기 위한 계정 정보 설정
const AWS = require('aws-sdk');

// 계정 생성 후 받게 될 자격증명
AWS.config.update({
  region: 'ap-northeast-2', // 서울 리전
  accessKeyId: 'YOUR_ACCESS_KEY',
  secretAccessKey: 'YOUR_SECRET_KEY'
});

// 자격증명 확인
const sts = new AWS.STS();
sts.getCallerIdentity({}, (err, data) => {
  if (err) console.log(err);
  else {
    console.log('Account ID:', data.Account);
    console.log('User ARN:', data.Arn);
    console.log('계정 설정 완료!');
  }
});

김개발 씨는 브라우저에 aws.amazon.com을 입력했습니다. 화면 오른쪽 상단에 "AWS 계정 생성" 버튼이 보입니다.

클릭하자 가입 양식이 나타났습니다. 1단계: 기본 정보 입력 첫 화면에서 이메일 주소를 입력합니다.

이 이메일로 모든 알림을 받으니 자주 확인하는 주소를 쓰세요. Gmail이나 네이버 메일 모두 괜찮습니다.

AWS 계정 이름을 정합니다. 회사 이름이나 프로젝트 이름을 넣으면 됩니다.

나중에 여러 계정을 관리할 때 구분하기 위한 거니까, "김개발-학습용" 같은 이름도 좋습니다. 비밀번호를 설정합니다.

최소 8자 이상, 대소문자와 숫자를 섞어야 합니다. 강력한 비밀번호를 사용하세요.

AWS 계정이 해킹당하면 큰 비용이 청구될 수 있습니다. 2단계: 연락처 정보 계정 유형을 선택합니다.

"개인" 또는 "비즈니스" 중 하나를 고르는데, 학습 목적이라면 "개인"을 선택하세요. 기능 차이는 없고 청구서 형식만 다릅니다.

이름, 전화번호, 주소를 입력합니다. 한글로 써도 되지만, 영문으로 쓰는 게 나중에 문제가 없습니다.

주소는 도로명 주소를 영문으로 변환해서 입력하세요. 네이버에 "영문 주소 변환"을 검색하면 쉽게 변환할 수 있습니다.

약관에 동의하고 "계속"을 누릅니다. 3단계: 결제 정보 가장 중요한 단계입니다.

신용카드 또는 체크카드를 등록해야 합니다. "프리티어인데 왜 카드가 필요하죠?" 김개발 씨가 의아해했습니다.

박시니어 씨가 설명합니다. "본인 확인용이에요.

악의적인 사용자가 무료 계정을 마구 만드는 걸 방지하는 거죠. 프리티어 한도 내에서만 쓰면 청구되지 않아요." 카드 정보를 입력하면 즉시 1달러가 승인됩니다.

실제로 결제되지는 않고, 카드가 유효한지 확인만 합니다. 며칠 내로 취소됩니다.

체크카드도 가능할까요? 네, 대부분의 체크카드도 됩니다. 해외 결제가 가능한 카드여야 합니다.

비자, 마스터카드, JCB 모두 지원합니다. 4단계: 본인 확인 전화 인증 단계입니다.

전화번호를 입력하면 자동 음성 전화가 옵니다. 화면에 4자리 PIN 번호가 표시되는데, 전화를 받으면 이 번호를 입력하라고 합니다.

전화를 놓쳤다면? 걱정 마세요.

"다시 전화 걸기"를 누르면 됩니다. 문자로도 받을 수 있습니다.

한국 전화번호는 +82를 붙여야 합니다. 010-1234-5678이라면 +82-10-1234-5678로 입력하세요.

첫 0을 빼지 않아도 AWS가 알아서 처리합니다. 5단계: 지원 플랜 선택 세 가지 옵션이 나타납니다.

Basic 플랜: 무료입니다. 문서와 포럼만 이용할 수 있습니다.

개인 학습자라면 이걸로 충분합니다. Developer 플랜: 월 29달러입니다.

이메일로 기술 지원을 받을 수 있습니다. Business 플랜: 월 100달러부터입니다.

24시간 전화 지원을 받을 수 있습니다. 김개발 씨는 "Basic"을 선택했습니다.

나중에 필요하면 언제든 업그레이드할 수 있습니다. 6단계: 완료 및 로그인 "가입 완료!" 화면이 나타납니다.

하지만 아직 끝이 아닙니다. 이메일함을 확인하세요.

AWS에서 환영 이메일이 도착했을 겁니다. "AWS Management Console로 로그인"을 클릭합니다.

이메일과 비밀번호를 입력하면 AWS 콘솔에 접속됩니다. 드디어 AWS를 사용할 수 있게 된 거죠!

첫 로그인 후 해야 할 일 콘솔에 들어가면 영어 화면이 나타납니다. 왼쪽 하단에서 언어를 한국어로 변경할 수 있습니다.

훨씬 편해집니다. 오른쪽 상단의 **리전(Region)**을 확인하세요.

기본값은 "미국 동부(버지니아)"일 수 있습니다. "아시아 태평양(서울)"로 변경하세요.

그래야 한국에서 빠르게 사용할 수 있습니다. 주의할 점 계정을 만들었다고 바로 모든 서비스를 쓸 수 있는 건 아닙니다.

일부 서비스는 계정 활성화에 최대 24시간이 걸립니다. 대부분 몇 분이면 되지만, 간혹 늦을 수 있습니다.

만약 EC2 인스턴스를 만들려는데 "계정이 아직 활성화 중입니다"라는 메시지가 뜬다면? 조금 기다리세요.

커피 한 잔 마시고 오면 됩니다. 정리하며 김개발 씨는 10분 만에 AWS 계정을 만들었습니다.

"생각보다 쉽네요!" 이제 전 세계 최고의 클라우드 인프라를 마음껏 사용할 수 있게 됐습니다. 박시니어 씨가 조언합니다.

"계정을 만들었으면 바로 다음 단계로 넘어가세요. MFA 설정이에요.

보안을 위해 꼭 필요합니다." AWS 계정은 여러분 클라우드 여정의 시작점입니다. 이제 서버를 만들고, 데이터베이스를 구축하고, 전 세계 사용자에게 서비스를 제공할 수 있습니다.

실전 팁

💡 - 자주 확인하는 이메일 주소를 사용하세요

  • **리전을 서울(ap-northeast-2)**로 변경하세요
  • 언어를 한국어로 설정하면 편합니다

6. MFA 설정하기

AWS 계정을 만든 김개발 씨에게 박시니어 씨가 급히 말했습니다. "잠깐!

지금 바로 MFA 설정하세요. 안 그러면 계정 해킹당할 수 있어요." 김개발 씨는 놀랐습니다.

비밀번호도 복잡하게 만들었는데 뭐가 더 필요할까요?

**MFA(Multi-Factor Authentication)**는 2단계 인증으로, 비밀번호 외에 추가 인증을 요구합니다. 스마트폰 앱이나 하드웨어 키로 6자리 숫자를 생성하여 로그인합니다.

AWS 계정 보안의 필수 설정입니다.

다음 코드를 살펴봅시다.

// MFA 없이 로그인
const login = {
  email: 'kimdev@example.com',
  password: 'MyPassword123!',
  결과: '로그인 성공 - 하지만 해커도 비밀번호만 알면 접속 가능'
};

// MFA 설정 후 로그인
const loginWithMFA = {
  email: 'kimdev@example.com',
  password: 'MyPassword123!',
  mfaCode: '123456', // 스마트폰 앱에서 생성된 6자리 코드
  결과: '로그인 성공 - 해커가 비밀번호를 알아도 폰이 없으면 못 들어옴'
};

// AWS CLI에서 MFA 사용 예시
const AWS = require('aws-sdk');
const sts = new AWS.STS();

// 임시 자격증명 발급 (MFA 코드 필요)
sts.getSessionToken({
  SerialNumber: 'arn:aws:iam::123456789012:mfa/user',
  TokenCode: '123456' // MFA 코드
}, (err, data) => {
  if (err) console.log('MFA 인증 실패');
  else console.log('임시 자격증명 발급 완료:', data);
});

김개발 씨는 의문이 들었습니다. "비밀번호도 길고 복잡하게 만들었는데, 그것만으로는 부족한가요?" 박시니어 씨는 실제 사례를 들려줬습니다.

"작년에 한 개발자가 GitHub에 AWS 비밀번호를 실수로 올렸어요. 30분 만에 해커가 발견하고 EC2 인스턴스를 수백 대 만들었죠.

청구 금액이 800만 원이었습니다." MFA가 뭐길래? **MFA(Multi-Factor Authentication)**는 한국어로 다중 인증 또는 2단계 인증이라고 합니다. 은행 앱을 쓸 때 비밀번호 입력 후 OTP를 추가로 입력하는 것과 똑같습니다.

인증 요소는 세 가지 종류가 있습니다. 지식(Something you know): 비밀번호, PIN 번호처럼 내가 아는 것입니다.

소유(Something you have): 스마트폰, 보안 키처럼 내가 가진 것입니다. 생체(Something you are): 지문, 얼굴처럼 내 자체인 것입니다.

MFA는 이 중 두 가지 이상을 조합합니다. AWS는 주로 비밀번호(지식) + 스마트폰 앱(소유)을 사용합니다.

왜 MFA가 중요할까요? 비밀번호는 유출될 수 있습니다. 피싱 사이트에 입력할 수도 있고, 해킹당한 다른 사이트에서 동일한 비밀번호를 썼을 수도 있습니다.

심지어 키보드 입력을 몰래 기록하는 악성코드도 있습니다. 하지만 MFA가 켜져 있으면?

해커가 비밀번호를 알아도 로그인할 수 없습니다. 30초마다 바뀌는 6자리 코드를 알아야 하는데, 그건 내 스마트폰에만 있으니까요.

실제로 AWS는 MFA 미설정 계정이 해킹당하는 사례가 압도적으로 많다고 발표했습니다. 반면 MFA를 켠 계정의 해킹 사례는 거의 없습니다.

MFA를 설정해 봅시다 1단계: 인증 앱 다운로드 스마트폰에 인증 앱이 필요합니다. 여러 선택지가 있습니다.

Google Authenticator: 가장 유명합니다. 무료이고 사용법이 간단합니다.

Microsoft Authenticator: 마이크로소프트 계정과 연동됩니다. Authy: 클라우드 백업을 지원합니다.

폰을 잃어버려도 복구할 수 있죠. 김개발 씨는 Google Authenticator를 설치했습니다.

2단계: AWS IAM에서 MFA 활성화 AWS 콘솔에서 오른쪽 상단의 계정 이름을 클릭하고 "보안 자격 증명"을 선택합니다. 영어로는 "Security Credentials"입니다.

화면 중간쯤에 "멀티 팩터 인증(MFA)" 섹션이 있습니다. "MFA 활성화" 버튼을 클릭하세요.

3단계: MFA 디바이스 선택 세 가지 옵션이 나타납니다. 가상 MFA 디바이스: 스마트폰 앱을 사용합니다.

가장 일반적이고 무료입니다. 하드웨어 TOTP 토큰: USB 키나 작은 기기를 구매해야 합니다.

은행에서 주는 OTP 기기와 비슷합니다. 하드웨어 U2F 키: YubiKey 같은 물리적 보안 키입니다.

가장 안전하지만 비쌉니다. 김개발 씨는 "가상 MFA 디바이스"를 선택했습니다.

4단계: QR 코드 스캔 화면에 QR 코드가 나타납니다. 스마트폰의 Google Authenticator 앱을 열고 "+" 버튼을 눌러 QR 코드를 스캔하세요.

QR 코드를 스캔할 수 없다면? "비밀 키 표시"를 눌러 나오는 긴 문자열을 수동으로 입력할 수도 있습니다.

앱에 "AWS (root account)"라는 항목이 추가되고 6자리 숫자가 표시됩니다. 이 숫자는 30초마다 바뀝니다.

5단계: 인증 코드 입력 AWS 화면으로 돌아와서 연속된 두 개의 MFA 코드를 입력합니다. 왜 두 개일까요?

시계가 정확히 맞는지 확인하기 위해서입니다. 첫 번째 코드를 입력하고, 30초를 기다려 새 코드가 나타나면 그것도 입력하세요.

"MFA 할당" 버튼을 누르면 완료됩니다. 6단계: 테스트 로그아웃한 뒤 다시 로그인해 봅시다.

이메일과 비밀번호를 입력하면 MFA 코드를 입력하라는 화면이 나타납니다. 스마트폰 앱을 열어 6자리 코드를 입력하세요.

성공! 이제 여러분의 AWS 계정은 훨씬 안전해졌습니다.

주의할 점 스마트폰을 잃어버리면 어떻게 될까요? MFA 코드를 생성할 수 없어서 로그인이 안 됩니다.

이때는 AWS 고객 지원에 연락해야 합니다. 신분증을 제출하고 본인 확인을 받아야 합니다.

따라서 백업 코드를 저장하는 게 중요합니다. MFA 설정 시 나온 비밀 키(QR 코드 아래 긴 문자열)를 안전한 곳에 보관하세요.

나중에 새 폰에 옮길 때 필요합니다. Authy 같은 앱은 클라우드 백업을 지원해서 이런 문제가 없습니다.

새 폰에 앱을 설치하고 로그인하면 모든 계정이 자동으로 복구됩니다. 루트 계정 vs IAM 사용자 지금 설정한 건 루트 계정의 MFA입니다.

루트 계정은 모든 권한을 가진 최고 관리자 계정입니다. 절대 일상적으로 쓰면 안 됩니다.

실제 작업은 IAM 사용자를 만들어서 합니다. IAM 사용자도 각각 MFA를 설정할 수 있습니다.

박시니어 씨는 루트 계정 로그인은 몇 달에 한 번 정도만 한다고 합니다. 정리하며 김개발 씨는 MFA 설정을 완료했습니다.

"생각보다 간단하네요. 5분도 안 걸렸어요." 박시니어 씨가 말합니다.

"이 5분이 앞으로 수백만 원을 아껴줄 수도 있어요. 해킹당하면 그게 끝이 아니에요.

정신적 스트레스, 업무 중단, 신뢰 손실까지 감수해야 하죠." MFA는 선택이 아니라 필수입니다. AWS뿐 아니라 GitHub, Google, 이메일 등 중요한 계정 모두에 MFA를 설정하세요.

디지털 세상에서 자신을 지키는 가장 확실한 방법입니다.

실전 팁

💡 - 루트 계정에 반드시 MFA 설정하세요

  • 백업 코드를 안전한 곳에 저장하세요
  • IAM 사용자도 각각 MFA를 설정하는 것이 좋습니다

이상으로 학습을 마칩니다. 위 내용을 직접 코드로 작성해보면서 익혀보세요!

#AWS#Cloud#EC2#IAM#Security

댓글 (0)

댓글을 작성하려면 로그인이 필요합니다.