LabEx에서 AWS 시작하기

AWSBeginner
지금 연습하기

소개

첫 번째 과제는 환영 메시지를 변경하고 결과를 관찰하는 것입니다. 명령을 입력할 위치, 응답을 읽는 방법, AWS View에서 같은 리소스를 확인하는 방법을 배웁니다.

AWS나 Linux 경험은 필요하지 않습니다. 명령을 하나씩 입력하고 뒤에 나오는 설명에 따라 결과를 확인하세요. 도구와 연결은 이미 준비되어 있으므로 개인 AWS 계정이나 액세스 키가 필요하지 않습니다.

몇 가지 Linux 터미널 기본 조작을 연습하고, AWS CLI가 사용하는 계정과 신원을 확인합니다. 그런 다음 설정 값 하나를 생성하고 업데이트한 뒤 연습용 리소스를 삭제합니다. 각 실습은 새로운 환경에서 시작하므로 이후 실습을 위해 이 환경을 열어 둘 필요가 없습니다.

인증 시험 관련 주제

이 실습은 다음 시험 주제에 대한 실습 경험을 제공합니다.

AWS 작업 공간 알아보기

이 단계에서는 작업할 위치를 선택하고 준비된 Terminal에서 명령 입력을 연습합니다.

**Amazon Web Services(AWS)**는 파일 저장이나 애플리케이션 실행 같은 작업에 필요한 서비스를 제공합니다. 리소스는 파일이나 이름이 있는 설정처럼 서비스가 관리하는 대상입니다. 웹사이트나 명령을 통해 리소스를 관리할 수 있습니다.

인터페이스 적합한 용도 고려할 점
AWS Management Console(웹 대시보드) 서비스 탐색, 리소스나 차트 확인, 양식을 통한 간헐적인 변경. 클릭으로 많은 변경을 반복하면 시간이 걸리고 재사용할 절차로 저장하기가 어렵습니다.
AWS CLI(명령줄 도구) 정확한 작업, 반복 작업, 스크립트를 통한 자동화. 명령 옵션을 익히고 텍스트 응답을 읽는 방법을 배워야 합니다.

엔지니어는 두 방식을 함께 사용하는 경우가 많습니다. 아래 공식 Console 예시는 서비스 검색과 대시보드 카드를 보여 주며, 계정 정보와 비용은 예시입니다. 화면 배치는 시간이 지나면서 달라질 수 있습니다.

서비스 검색과 대시보드 카드가 있는 공식 AWS Console 홈

출처: AWS Console 가이드.

LabEx는 CLI가 설치된 컴퓨터인 **가상 머신(VM)**을 제공합니다. 명령은 작업을 명확하게 기록하므로 반복하거나 나중에 자동화할 수 있습니다. 명령을 제안하거나 실행하는 AI 에이전트와 함께 작업할 때도 이를 검토할 수 있습니다. 이 실습들은 CLI 연습에 중점을 두며 필요할 때 Console 작업 흐름을 소개합니다.

이 실습에서는 Terminal로 변경하고 옆의 AWS View 탭에서 같은 서비스 상태를 관찰합니다. AWS View는 실습 리소스를 확인하는 전용 뷰이며 공식 Console과 별개입니다. 개인 AWS 계정에 로그인할 필요는 없습니다.

Terminal은 서비스 요청을 보내고 AWS View는 같은 리소스 상태를 읽습니다

개념도: 두 인터페이스는 같은 실습 리소스를 참조합니다. 완료 검사는 작업 결과로 만들어진 상태를 읽습니다. 개인 AWS 계정의 변경은 이 실습의 검사 범위에 포함되지 않습니다. 시스템이 같은 리소스에 접근할 권한을 갖고 있다면 Console에서 수행한 작업도 검사할 수 있습니다.

Terminal을 클릭하세요. labex:project/ $ 같은 프롬프트는 명령을 받을 준비가 되었음을 뜻합니다. 명령을 입력하거나 붙여 넣고 Enter를 누른 뒤 프롬프트가 돌아올 때까지 기다리세요. 프롬프트 자체는 입력하지 마세요.

현재 디렉터리(폴더)를 확인합니다.

pwd

pwd는 작업 디렉터리를 출력한다는 뜻입니다. 디렉터리를 변경하는 명령인 cd로 실습 작업 공간에 이동합니다.

cd /home/labex/project

cd가 성공하면 보통 아무것도 출력하지 않습니다. 위치를 확인합니다.

pwd

/home/labex/project가 표시되어야 합니다. ls로 파일 목록을 확인합니다.

ls

cat으로 welcome.txt를 읽습니다.

cat welcome.txt

Welcome to your AWS workspace.가 표시되어야 합니다. 이 파일은 실습 컴퓨터에 있습니다. 다음에는 서비스에 저장된 설정을 다룹니다.

나만의 로컬 복사본을 만듭니다. cp는 원본과 대상을 받습니다.

cp welcome.txt my-welcome.txt

복사본을 읽습니다.

cat my-welcome.txt

같은 텍스트가 표시됩니다. 이 단계의 검사는 복사본과 원본 파일이 변경되지 않았음을 확인합니다.

첫 번째 AWS 설정 만들기

이 단계에서는 AWS 요청을 보내는 주체를 확인하고 환영 설정을 만든 뒤 AWS View에 나타나는 것을 확인합니다.

리소스는 서비스가 관리하는 대상입니다. AWS 계정은 리소스를 묶는 단위이며, 신원이라고 부르는 사용자나 역할이 리소스에 요청을 보냅니다. Terminal 프롬프트의 Linux 사용자 이름은 실습 컴퓨터의 사용자를 나타내며 이 AWS 신원과는 별개입니다.

CLI와 연결은 준비되어 있습니다. 설치된 도구를 확인합니다.

aws --version

응답은 aws-cli/로 시작합니다. **Security Token Service(STS)**에 이 연결에서 사용하는 신원을 요청합니다.

aws sts get-caller-identity

aws는 CLI를 실행하고, sts는 서비스를 선택하며, get-caller-identity는 작업을 지정합니다. 응답은 이름이 있는 필드와 값으로 구성된 텍스트 형식인 JSON을 사용합니다. Account와 Arn을 찾으세요. 계정은 숫자이며 호출자 ARN은 user/getting-started-learner로 끝납니다. ARN은 리소스 식별자입니다. 다음 실습에서 읽는 방법을 배웁니다.

지금은 기존 연결을 확인하는 것이며 로그인하는 것이 아닙니다. 요청을 인증하는 정보인 자격 증명은 이미 준비되어 있으며 비공개로 유지해야 합니다.

이제 Systems Manager Parameter Store를 사용해 이름이 있는 애플리케이션 설정을 만듭니다. 애플리케이션은 환영 메시지를 로컬 파일에 보관하는 대신 중앙 설정에서 읽을 수 있습니다. 이 연습에서는 설정 자체를 변경하고 확인하며, 애플리케이션을 배포할 필요는 없습니다.

파라미터는 이름과 저장된 값으로 이루어집니다. 아래에 제공된 이름을 사용하고 환영 텍스트를 값으로 지정합니다.

aws ssm put-parameter --name /labex/getting-started/greeting --type String --value 'Welcome to AWS' --region us-east-1

명령을 부분별로 살펴보세요.

  • ssm put-parameter: Systems Manager로 파라미터를 기록합니다.
  • --name: 설정 이름입니다. 슬래시는 서비스 안에서 이름을 정리하며 로컬 폴더를 만들지 않습니다.
  • --type String: 일반 텍스트를 저장합니다.
  • --value: 저장할 텍스트입니다. 따옴표는 여러 단어를 하나로 묶습니다.
  • --region us-east-1: 이 위치로 요청을 보냅니다. 예시대로 유지하세요. 다음 실습에서 리전을 알아봅니다.

응답에는 첫 번째 저장 버전인 "Version": 1이 포함됩니다. Terminal 옆의 AWS View를 클릭하세요. us-east-1에서 값이 Welcome to AWS인 greeting을 찾습니다. /labex/reference/team 설정은 준비된 참조 설정이므로 변경하지 마세요.

비교해 보면, 공식 Console의 파라미터 Overview 페이지도 같은 Name, Type, Value 필드를 보여 줍니다. 아래에는 다른 예시 파라미터가 사용되었습니다.

Name, ARN, Type, Value가 표시된 공식 Parameter Store Overview

출처: AWS Summit DEV206.

생성 명령을 반복했을 때 ParameterAlreadyExists가 표시되면 그 이름은 이미 사용 중입니다. 다음 단계의 명령으로 읽으세요. 무관한 리소스를 삭제하거나 실습 전체를 다시 시작하지 마세요. 완료 검사는 greeting의 초기 값과 참조 설정이 변경되지 않았음을 확인합니다.

환영 메시지 변경하기

이 단계에서는 설정을 읽고 값을 변경한 뒤 Terminal과 AWS View에서 결과를 비교합니다.

Terminal로 돌아갑니다. cat welcome.txt와 달리 이 명령은 서비스 리소스를 읽습니다.

aws ssm get-parameter --name /labex/getting-started/greeting --region us-east-1

Parameter 안에서 Name, Value, Version을 찾습니다. 값은 Welcome to AWS이고 버전은 1입니다.

값만 변경합니다. 새 옵션인 --overwrite는 기존 설정의 업데이트를 허용합니다.

aws ssm put-parameter --name /labex/getting-started/greeting --type String --value 'Hello from the CLI' --overwrite --region us-east-1

첫 번째 업데이트의 응답에는 Version 2가 포함됩니다. 다시 읽습니다.

aws ssm get-parameter --name /labex/getting-started/greeting --region us-east-1

이제 값은 Hello from the CLI입니다. AWS View로 전환하고 greeting이 업데이트될 때까지 기다립니다. 이름은 같고 값과 버전은 바뀝니다. 참조 설정의 값은 여전히 platform입니다.

AWS View에서 업데이트된 greeting과 보존된 참조 설정 확인

결과 예시: 첫 번째 업데이트는 버전 2입니다. 업데이트를 반복하면 더 높은 버전이 나올 수 있습니다. 탭 전환은 상태를 관찰할 뿐 설정을 업데이트하지 않습니다.

연습용 리소스 삭제하기

이 단계에서는 greeting을 삭제하고 참조 설정이 남아 있는지 확인합니다.

Terminal로 돌아갑니다. delete-parameter는 지정한 이름의 서비스 리소스를 삭제합니다.

aws ssm delete-parameter --name /labex/getting-started/greeting --region us-east-1

삭제에 성공해도 아무것도 출력되지 않을 수 있습니다. 남아 있는 파라미터 이름을 조회해 결과를 확인합니다.

aws ssm describe-parameters --region us-east-1

describe-parameters는 이름과 버전 같은 메타데이터를 나열합니다. greeting은 없어야 하고 /labex/reference/team은 남아 있어야 합니다. 참조 설정을 읽어 값을 확인합니다.

aws ssm get-parameter --name /labex/reference/team --region us-east-1

값은 여전히 platform입니다. AWS View로 전환하면 참조 설정만 남아 있습니다. 연결 오류나 Unavailable 메시지는 삭제를 증명하지 못합니다. 성공한 조회로 결과를 확인해야 합니다.

만들었던 로컬 복사본만 삭제합니다. rm은 지정한 이름의 로컬 파일을 삭제합니다.

rm my-welcome.txt

서비스 리소스와 자신의 로컬 복사본을 삭제했습니다. 로컬 welcome.txt 파일은 별개이며 실습 컴퓨터에 남아 있습니다. 참조 설정은 변경하지 마세요. 다음 실습은 새로운 리소스와 자격 증명으로 시작합니다. 이 환경을 유지하는 대신 배운 내용을 다음 실습에 활용하세요.

요약

Terminal 명령을 연습하고 AWS 호출자 신원을 확인했으며 이름이 있는 설정을 생성, 조회, 업데이트, 삭제했습니다. AWS View는 같은 리소스의 변화를 보여 주었습니다. 로컬 파일과 서비스 리소스의 차이도 배웠습니다.

다음 실습인 ‘AWS 리전과 리소스 신원 알아보기’에서는 두 리소스의 이름이 같아도 요청 위치가 중요한 이유를 알아봅니다.