튜토리얼 2: 테스트용 EC2 인스턴스 시작하고 연결하기
튜토리얼 2: 테스트용 EC2 인스턴스 시작하고 연결하기 (Tutorial 2: Launch a test EC2 instance and connect to it)
| 속성 | 값 |
|---|---|
| 튜토리얼 목표 | 테스트 목적으로 사용할 수 있는 Amazon EC2 인스턴스를 시작하는 방법을 배워요. 이 인스턴스는 고급 구성이 없고 민감한 정보를 저장하지 않아요. 또한 필수 인스턴스 구성 설정, 인스턴스에 연결하는 방법, 인스턴스를 중지하는 방법도 배워요. |
| EC2 경험 수준 | 초급 (Beginner) |
| 소요 시간 | 30분 |
| 비용 | Free Tier(프리 티어) 대상. AWS 계정을 만들면 AWS 프리 티어로 Amazon EC2를 무료로 시작할 수 있어요. 2025년 7월 15일 이전에 AWS 계정을 만들었고, 계정이 12개월 미만이며, Amazon EC2 프리 티어 혜택을 이미 초과하지 않았다면 이 튜토리얼을 완료해도 비용이 들지 않아요. 이 튜토리얼이 프리 티어 혜택 범위 안의 옵션을 고르도록 도와주기 때문이에요. 그렇지 않으면 인스턴스를 시작한 시점부터 종료할 때까지 표준 Amazon EC2 사용 요금이 부과돼요. 2025년 7월 15일 이후에 AWS 계정을 만들었고, 계정이 6개월 미만이며, 크레딧을 모두 사용하지 않았다면 이 튜토리얼을 완료해도 비용이 들지 않아요. 프리 티어 자격 여부를 확인하는 방법은 'Amazon EC2 프리 티어 사용량 추적하기'를 참고하세요. |
| 사전 준비 | '튜토리얼 1: 첫 번째 Amazon EC2 인스턴스 시작하기'를 완료하세요. |
튜토리얼 개요 (Tutorial overview)
이 튜토리얼은 테스트 목적으로 사용할 수 있는 EC2 인스턴스를 시작하고 싶은 초보자를 위해 설계됐어요. 핵심 인스턴스 구성 필드를 설명한 뒤, EC2 콘솔의 기본값을 사용해 테스트 인스턴스를 시작하는 단계를 안내해요. 인스턴스를 시작한 후에는 로그인 — 우리는 이를 '연결(connect)'이라고 불러요 — 방법을 보여줘요. 또한 이 튜토리얼에서 인스턴스에 연결하는 데 필수인 키 페어를 만드는 방법도 보여줘요. 마지막으로 비용 관리를 돕기 위해 사용 요금이 발생하지 않도록 인스턴스를 중지하는 방법을 보여줘요.
이 튜토리얼에서는 Linux 인스턴스를 시작해요. 이 튜토리얼의 단계는 다른 운영체제의 인스턴스를 시작하는 데도 사용할 수 있지만, 인스턴스에 연결하는 지침은 Linux 인스턴스에 특화돼 있어요.
이 튜토리얼은 다음의 짧은 작업으로 나뉘어 있어요. 각 작업을 완료한 뒤 다음 작업으로 넘어가야 해요.
- 작업 1: 인스턴스 시작에 필요한 핵심 구성 요소 익히기
- 작업 2: 기술 다이어그램 검토하기
- 작업 3: 키 페어 만들기
- 작업 4: 테스트 인스턴스 시작하기
- 작업 5: 인스턴스 찾기
- 작업 6: 인스턴스 구성 보기
- 작업 7: 인스턴스 연결에 필요한 핵심 구성 요소 익히기
- 작업 8: 인스턴스에 연결하기
- 작업 9: 인스턴스 중지하기
작업 1: 인스턴스 시작에 필요한 핵심 구성 요소 익히기
이 작업에서는 EC2 인스턴스를 시작하는 데 필요한 핵심 구성 요소를 탐색해요. 이들은 AMI, 인스턴스 유형, 키 페어, 보안 그룹, 네트워크(VPC와 서브넷), Amazon EBS 볼륨이에요. 선택적 구성 요소인 Name 태그도 탐색해요.
이 구성 요소를 시각화하는 데 도움이 되도록, 인스턴스를 임대 주택처럼 생각해 보세요. 집을 임대하면 부동산을 소유·유지 관리하지 않아도 살 곳을 얻을 수 있듯이, EC2 인스턴스는 기본 인프라를 소유·유지 관리하지 않아도 컴퓨팅 파워를 제공해요.
어떤 종류의 인스턴스를 시작할지 결정할 때는 집에서 원하는 기준을 고려하듯 인스턴스의 구성 기준을 고려해요. 이 비유는 단순화하지만, 구성 요소에 익숙해질 때까지 시각화하는 유용한 방법이에요.
- AMI – 집의 건축 자재와 편의 시설: AMI(Amazon Machine Image)는 인스턴스가 시작할 때 갖는 운영체제와 애플리케이션을 결정해요. 이는 집의 건축 자재(벽돌, 강철, 목재)와 편의 시설(가전, 가구)을 고르는 것과 같아요. 기본 AMI는 기본 가전만 있는 가구 없는 집과 같고, 사전 설치된 소프트웨어가 있는 사용자 지정 AMI는 완전히 가구가 갖춰진 집과 같아요.
- 인스턴스 유형 – 집의 크기와 전력: 인스턴스 유형은 EC2 인스턴스의 크기와 성능을 정의해요. 집의 크기, 방 수, 에너지 용량을 고르는 것과 비슷해요. 각 인스턴스 유형은 인스턴스의 CPU, 메모리, 스토리지, 네트워킹 용량을 결정해요. 선택한 AMI가 선택 가능한 인스턴스 유형을 제한할 수도 있어요.
- 키 페어 – 현관문 열쇠: 키 페어는 집의 현관문 잠금장치와 열쇠와 같아요. 공개 키는 인스턴스의 잠금장치 역할을 하고, 개인 키는 로컬 컴퓨터에 안전하게 보관해야 하는 열쇠예요. 다른 사람이 개인 키를 손에 넣으면 집의 현관문 열쇠를 가진 사람이 집에 들어갈 수 있는 것처럼 인스턴스에 액세스할 수 있어요.
- 네트워크(VPC와 서브넷) – 부지 경계, 구역, 집 번호: VPC(가상 프라이빗 클라우드)는 집이 위치한 전체 부지와 같고, 서브넷은 집 주변의 구역으로 나뉜 영역이에요. 부지에 여러 채의 집(인스턴스)이 있다면 목적에 따라 별도의 영역(다른 서브넷)으로 구획할 수 있어요. 어떤 집은 방문객이 정원을 자유롭게 돌아다닐 수 있게 하고(인터넷 액세스가 있는 공용 서브넷), 어떤 집은 출입을 제한하기 위해 정원을 담장으로 막아요(인터넷 액세스가 없는 사설 서브넷). 각 서브넷은 집 번호처럼 서브넷 안의 인스턴스에 할당할 수 있는 IP 주소 범위를 포함해요.
- 보안 그룹 – 문지기: 보안 그룹은 문지기처럼 누가 집을 방문할 수 있는지 제어해요. 인스턴스에 도달할 수 있는 트래픽을 제어하는 규칙 집합을 적용해요. 예를 들어 특정 IP 주소에서 SSH 트래픽을 허용하는 규칙은 문지기가 특정 사람만 들여보내 식료품을 배달하게 하는 것과 같아요. 마찬가지로 어디에서든 HTTPS 트래픽을 허용하는 것은 대중이 집의 외관을 구경하도록 하는 것과 같아요.
- Amazon EBS 볼륨 – 저장 유닛: EBS 볼륨은 소지품을 보관할 수 있는 저장 유닛과 같아요. 각 인스턴스에는 루트 볼륨(AMI가 저장되는 곳)이 있고, 필요 시 언제든 볼륨(스토리지)을 더 추가할 수 있어요.
- Name 태그 – 집 이름: Name 태그는 집에 붙는 표지판처럼 작동해, 누가 살고 있는지 쉽게 식별할 수 있게 해줘요. Name 태그는 인스턴스를 구분하기 쉽게 하지만, 인스턴스를 시작할 때 필수는 아니에요.
작업 2: 기술 다이어그램 검토하기
이 작업에서는 AWS 문서에서 사용하는 일반적인 기술 다이어그램에 익숙해져요. 다음 다이어그램은 이 튜토리얼에서 시작할 테스트 인스턴스의 구성을 나타내요. 이전 작업에서 이러한 구성 요소를 임대 주택 비유로 소개했어요. 이제 실제 EC2 구성 요소 자체에 집중할 거예요. 번호가 매겨진 라벨은 뒤따르는 설명과 대응돼요.
- AMI – AMI는 인스턴스를 시작할 때 선택하는 이미지예요. 인스턴스에서 실행할 운영체제와 소프트웨어를 포함하는 템플릿이에요. 예를 들어 Linux 인스턴스를 시작하려면 Amazon Linux 2023 AMI를 선택할 수 있고, Windows 인스턴스를 시작하려면 Microsoft Windows Server 2022 Base AMI를 선택할 수 있어요. Amazon EC2 콘솔의 AMI 카탈로그에는 수천 개의 이미지가 있어요.
- 인스턴스 유형 – 인스턴스 유형은 인스턴스에 사용되는 호스트 컴퓨터의 CPU, 메모리, 스토리지, 네트워킹 용량을 결정하는 하드웨어예요. Amazon EC2는 각각 하드웨어 구성과 크기가 다른 600개 이상의 인스턴스 유형을 제공하므로 애플리케이션 요구에 가장 잘 맞는 것을 고를 수 있어요.
- 키 페어 – 키 페어는 인스턴스에 연결할 때 본인임을 증명하는 데 사용하는 보안 자격 증명 집합이에요. 공개 키는 인스턴스에 있고 개인 키는 로컬 컴퓨터에 있어요. EC2에서 인스턴스에 연결한다는 것은 로컬 컴퓨터에서 인스턴스에 로그인하는 것을 말해요. 인스턴스에 안전하게 연결하는 다른 방법도 있지만, 이 튜토리얼에서는 키 페어를 사용해요.
- 네트워크 – 네트워크는 VPC와 하나 이상의 서브넷으로 구성돼요. VPC는 AWS 클라우드 안의 가상 네트워크예요. 모든 AWS 고객은 자기 AWS 계정 전용 VPC를 가져요. VPC의 서브넷에 인스턴스를 시작해요. 서브넷은 VPC 안의 IP 주소 범위예요. 기본 서브넷은 공용 서브넷으로, Amazon 네트워크 외부에서 인스턴스에 공용 IP 주소를 할당하고 인터넷 액세스를 제공한다는 뜻이에요.
- 보안 그룹 – 보안 그룹은 인스턴스로의 트래픽을 제어하는 방화벽 역할을 해요. 특정 유형의 트래픽이 인스턴스에 들어올 수 있게 하는 규칙을 포함해요. 로컬 컴퓨터에서 SSH로 인스턴스에 연결하려면(키 페어 사용) 로컬 컴퓨터에서 SSH 트래픽을 허용하는 규칙이 필요해요.
- EBS 볼륨 – Amazon EBS 볼륨은 물리적 하드 드라이브처럼 작동하는 스토리지 디바이스예요. 인스턴스에는 인스턴스를 부팅하는 데 필요한 운영체제와 소프트웨어가 있는 AMI를 저장하는 특별한 EBS 볼륨인 루트 볼륨이 함께 제공돼요. 선택적으로 데이터 볼륨을 추가할 수 있어요. 단, 테스트 인스턴스는 민감한 데이터를 저장하지 않으므로 추가 암호화 데이터 볼륨이 필요 없어요.
축하해요! 이 튜토리얼의 개념적 작업을 완료했어요. 다음 작업에서는 Amazon EC2 콘솔을 사용해 배운 구성 요소를 만들 거예요.
작업 3: 키 페어 만들기
이 작업에서는 키 페어를 만들어요. 키 페어는 두 부분으로 구성돼요: 인스턴스에 추가할 공개 키와, 인스턴스에 안전하게 연결하는 데 사용할 일치하는 개인 키예요. 다음 작업에서 인스턴스를 시작할 때 이 키 페어를 선택하면 공개 키가 인스턴스에 자동으로 추가돼요. 액세스 권한이 있는 사람은 누구나 인스턴스에 연결할 수 있으므로 개인 키를 로컬 컴퓨터에 안전하게 저장하는 것이 중요해요.
테스트 인스턴스를 시작할 때 기존 키 페어를 사용하려면 이 작업을 건너뛰어도 돼요. 그렇지 않으면 새 키 페어를 만들려면 계속 진행하세요.
시작하기 전에 (Before you start)
앞의 표에 나열된 사전 준비를 완료했는지 확인하세요. 여기에는 관리자 사용자로 AWS Management Console에 로그인하는 것이 포함돼요.
다음 단계로 키 페어를 만들려면
- Amazon EC2 콘솔을 엽니다: https://console.aws.amazon.com/ec2/ 로 이동하세요.
- Key pairs 콘솔 페이지로 이동합니다: 탐색 창의 Network & Security 아래에서 Key Pairs를 선택하세요.
- 이전에 키 페어를 만들었다면 표에 표시돼요.
- 키 페어가 없으면 표는 비어 있어요.
- 새 키 페어를 만듭니다: Create key pair 버튼(오른쪽 위)을 선택해 Create key pair 웹 기반 양식을 열고 키 페어 세부 정보를 다음과 같이 입력하세요.
- 키 페어 이름 지정: Name에
test-instance-key-pair처럼 키 페어를 알아볼 수 있는 이름을 입력하세요. 이름은 최대 255자의 ASCII 문자일 수 있어요. 앞뒤 공백은 포함할 수 없어요. - 키 페어 유형 선택: Key pair type에서
ED25519를 선택하세요. Linux 인스턴스는 RSA와 ED25519 키 유형을 모두 지원하는 반면, Windows 인스턴스는 RSA만 지원해요. 이 튜토리얼에서는 Linux 인스턴스를 시작할 것이므로 ED25519 키를 사용할 수 있어요. - 개인 키 파일 형식 선택: Private key file format에서
.pem을 선택하세요. 이것은 개인 키 파일이 저장될 형식이에요.
- 키 페어 이름 지정: Name에
- 공개 키를 Amazon EC2에 저장하고 개인 키를 다운로드합니다: Create key pair 버튼(오른쪽 아래)을 선택하세요. Amazon EC2가 공개 키를 저장하고, 브라우저가 개인 키 파일을 로컬 컴퓨터로 자동 다운로드해요. 파일 이름은 키 페어에 지정한 이름에 따라 정해지고, 확장자는 선택한 파일 형식이에요. 개인 키 파일을 컴퓨터의 안전한 위치로 옮기세요.
중요 개인 키 파일을 저장할 기회는 이번이 유일해요.
- 키의 권한을 설정합니다(macOS와 Linux 사용자): macOS나 Linux 컴퓨터에서 SSH로 인스턴스에 연결할 계획이라면 개인 키 파일에 올바른 권한을 설정해야 해요. 터미널 창을 열고
test-instance-key-pair를 키 페어 이름으로 바꿔 다음 명령을 실행하세요:
chmod 400 test-instance-key-pair.pem
이 명령은 개인 키 파일을 본인만 읽을 수 있게 하며, 이는 인스턴스에 안전한 연결을 설정하는 데 필요해요. 이 권한이 없으면 이 키 페어로 연결할 수 없어요.
축하해요! 키 페어를 성공적으로 만들었어요!
작업 4: 테스트 인스턴스 시작하기
이 작업에서는 EC2 시작 인스턴스 마법사를 사용해 테스트 인스턴스를 빠르게 시작할 거예요. Linux 인스턴스의 주요 인스턴스 구성 설정을 구성하고 다른 필드에는 기본값을 사용할 거예요. 비용 관리에 도움이 되도록 Free tier eligible 구성 요소를 선택하는 것을 권장해요.
다음 단계로 테스트 인스턴스를 시작하려면
- Amazon EC2 콘솔을 엽니다: https://console.aws.amazon.com/ec2/ 로 이동하세요.
- EC2 시작 인스턴스 마법사를 엽니다: EC2 대시보드에서 Launch instance를 선택하세요. Launch an instance 웹 기반 양식이 열려요. 이것이 EC2 시작 인스턴스 마법사예요.
- 인스턴스 이름을 지정합니다: Name and tags 아래 Name에
Test instance같은 설명적인 이름을 입력하세요. 인스턴스 이름은 키가Name, 값이 지정한 이름인 태그예요. 팁: 테스트 인스턴스에는 이름 태그로 충분해요. 그러나 프로덕션 인스턴스에서는 모든 리소스에 걸쳐 태그 지정을 표준화하는 태깅 정책을 수립하는 것이 모범 사례예요. - 운영체제와 소프트웨어를 선택합니다 — AMI(Amazon Machine Image): Application and OS Images (Amazon Machine Image) 아래 **Amazon Machine Image (AMI)**에서 기본 선택은 Amazon Linux 2023 AMI예요. 이 AMI는 Free tier eligible로 표시돼요. 이 튜토리얼에서는 Linux 인스턴스를 시작할 것이므로 기본 설정을 그대로 두어 프리 티어 한도 안에 유지하세요.
- 하드웨어를 선택합니다 — 인스턴스 유형: Instance type 아래 Instance type에서 이 튜토리얼의 기본 선택을 유지하세요. 기본 인스턴스 유형은 프리 티어에서 사용할 수 있고 그 하드웨어는 테스트 인스턴스에 적합해요.
- 키 페어로 안전한 로그인을 준비합니다: Key pair (login) 아래 Key pair name에서 이전 작업에서 만든 키 페어를 선택하세요. 목록에 키 페어가 보이지 않으면 새로고침 아이콘(목록 오른쪽)을 선택하세요. 인스턴스가 시작되면 공개 키를 인스턴스에 배치해요. 시작된 후 인스턴스에 연결하려면 이전 작업에서 다운로드한 해당 개인 키를 사용해요.
- 인터넷 액세스를 활성화하도록 네트워크 설정을 구성합니다: Network settings 아래 **Network (your VPC)**와 Subnet 필드는 기본으로 구성돼 있어요. 빠르게 시작하는 데 도움이 되도록 이 튜토리얼의 기본 설정을 유지하세요. 기본 서브넷을 수정하지 않았다면 인스턴스는 인터넷 액세스 권한을 가져요. 팁: 기본 서브넷은 공용 서브넷으로, Amazon 네트워크 외부에서 인스턴스에 공용 IP 주소를 할당하고 인터넷 액세스를 제공한다는 뜻이에요. 테스트 인스턴스에서는 인터넷 액세스를 제공하는 기본 서브넷 설정을 사용해도 괜찮아요. 그러나 프로덕션 인스턴스에서는 반드시 필요한 경우에만 공용 IP 주소를 할당하고 인터넷 액세스가 있는 서브넷을 사용하는 것이 모범 사례예요.
- 인스턴스 방화벽(보안 그룹)을 설정합니다: Network settings 아래 **Firewall (security groups)**에서 Allow SSH traffic from Anywhere (0.0.0.0) 체크박스를 선택한 상태로 유지하세요. 이렇게 하면 모든 IP 주소에서 SSH 트래픽을 허용하는 테스트 인스턴스용 새 보안 그룹이 만들어져요. 보안 그룹은 인스턴스로의 트래픽을 제어하는 방화벽 역할을 해요. 로컬 컴퓨터에서 SSH로 인스턴스에 연결하려면 로컬 컴퓨터에서 SSH 트래픽을 허용하는 규칙이 필요해요. 팁: 인터넷 서비스 제공자가 동적 IP 할당을 사용하면 로컬 컴퓨터의 IP 주소가 시간이 지나며 바뀔 수 있어요. 테스트 목적으로 인스턴스를 사용할 때는 민감한 정보를 저장하지 않는다고 가정하므로 보안 조치를 덜 제한적으로 할 수 있어요. 테스트 인스턴스의 경우 IP 주소가 바뀌어도 항상 연결할 수 있도록 모든 IP 주소(0.0.0.0/0)에서 트래픽을 허용하는 것이 일반적으로 괜찮아요. 그러나 민감한 데이터가 있는 프로덕션 인스턴스에서는 알려진 IP 주소에서만 트래픽을 허용하는 것이 모범 사례예요.
- 인스턴스 스토리지를 구성합니다: Configure storage 아래 Root volume (Encrypted) 필드는 기본으로 구성돼 있어요. 프리 티어 한도 안에 유지하려면 설정을 그대로 두세요. 테스트 인스턴스는 민감한 데이터를 저장하지 않으므로 추가 암호화 데이터 볼륨이 필요 없어요.
- 인스턴스 구성을 검토합니다: 오른쪽 Summary 패널에서 인스턴스를 시작하기 전에 상위 수준 설정을 검토할 수 있어요.
- 인스턴스를 시작합니다: 인스턴스를 시작할 준비가 되면 Summary 패널에서 Launch instance를 선택하세요. Amazon EC2가 지정한 설정으로 인스턴스를 빠르게 시작해요. 설정을 지정하지 않으면 기본값이 사용돼요. Success 배너가 시작을 확인해요.
축하해요! 테스트 인스턴스를 성공적으로 시작했어요!
작업 5: 인스턴스 찾기
이 작업에서는 방금 시작한 인스턴스를 EC2 콘솔에서 찾을 거예요.
EC2 콘솔에서 인스턴스를 찾으려면
- Instances 페이지를 엽니다: 아직 성공 페이지에 있다면 Success 배너에서 인스턴스 ID를 선택하세요. 다른 곳으로 이동했다면 탐색 창에서 Instances를 선택하세요.
- 인스턴스를 찾습니다: Name 열에서 지정한 이름으로 인스턴스를 찾으세요.
작업 6: 인스턴스 구성 보기
이 작업에서는 인스턴스의 구성 세부 정보를 보는 방법에 익숙해져요.
인스턴스 구성을 보려면
- 인스턴스를 찾습니다: Name 열에서 지정한 이름으로 인스턴스를 찾으세요.
- 인스턴스 세부 정보 페이지를 엽니다: 인스턴스 이름 옆의 체크박스를 선택한 뒤 Actions 메뉴(오른쪽 위)를 선택하고 View details를 선택해 구성 검토가 가능한 인스턴스 세부 정보 페이지를 엽니다. 이전 튜토리얼에서는 인스턴스의 ID 링크를 선택해 인스턴스 세부 정보 페이지를 열었어요. EC2 콘솔에서 작업을 완료하는 방법이 한 가지 이상인 걸 발견하게 될 거예요.
- 인스턴스 구성 세부 정보를 탐색합니다: 인스턴스의 구성 세부 정보를 탐색하는 데 몇 분을 들여보세요. 팁: 필드를 빠르게 찾으려면 키보드에서 Ctrl+F 또는 command+F를 누르세요.
- AMI: 인스턴스를 시작하는 데 사용한 AMI를 찾을 수 있나요? Details 탭의 AMI ID와 AMI name에서 정보를 찾을 수 있어요.
- 인스턴스 유형: 인스턴스 유형을 찾을 수 있나요? 예를 들어
t3.micro일 수 있어요. - 키 페어: 인스턴스를 시작할 때 선택한 키 페어를 찾을 수 있나요? Key pair assigned at launch에 지정돼 있어요. 나중에 키 페어를 변경해도 여기의 값은 바뀌지 않는다는 점에 유의하세요.
- VPC: VPC의 ID를 찾을 수 있나요? 모든 네트워킹 관련 구성 설정은 Networking 탭에서 찾을 수 있어요. VPC ID는
vpc-1a2b3c4d같은 형식이에요. - 서브넷: 인스턴스를 시작한 서브넷의 ID를 찾을 수 있나요?
subnet-1a2b3c4d같은 형식이에요. - 공용 IPv4 주소: 인스턴스에 할당된 공용 IPv4 주소를 찾을 수 있나요?
34.242.148.128같은 형식이에요. - 보안 그룹: 어디에서든(0.0.0.0./0) SSH 트래픽을 허용하도록 만들어진 인바운드 규칙을 찾을 수 있나요? 모든 보안 관련 구성 설정은 Security 탭에서 찾을 수 있어요.
- 스토리지: 이 인스턴스용으로 만들어진 볼륨을 찾을 수 있나요? 모든 스토리지 관련 구성 설정은 Storage 탭에서 찾을 수 있어요.
- 인스턴스 태그: 인스턴스에 준 이름은 실제로 태그예요. 인스턴스 태그를 찾을 수 있나요? Tags 탭을 선택하세요. 키는
Name, 값은 제공한 이름이에요. - 인스턴스 상태: 인스턴스의 상태를 확인할 수 있나요?
Running이어야 해요.
다른 인스턴스 구성 필드를 탐색하는 데 몇 분 더 들여도 좋아요. 준비되면 다음 작업으로 진행하세요.
작업 7: 인스턴스 연결에 필요한 핵심 구성 요소 익히기
이 작업에서는 EC2 인스턴스에 연결하는 데 필요한 핵심 구성 요소를 탐색해요. 이들은 연결 프로토콜, 공용 DNS, 보안 그룹, 키 페어, 인스턴스 사용자 이름이에요.
인스턴스에 연결하는 것을 집에 가는 것처럼 시각화해 보세요:
- 연결 프로토콜 – 이동 수단: 집에 가는 방법을 고르는 것처럼, 인스턴스로 데려갈 연결 프로토콜을 선택해요. 이 튜토리얼에서는 인터넷을 통해 컴퓨터를 인스턴스에 연결하는 안전한 터널을 만드는 SSH(Secure Shell)를 사용해요.
- 공용 DNS – 집 주소: 집에 고유한 주소가 있듯이 EC2 인스턴스에는 고유한 공용 DNS 이름(예:
ec2-18-201-118-201.eu-west-1.compute.amazonaws.com)이 있어요. 이 공용 DNS 이름 덕분에 SSH가 인스턴스에 직접 연결할 수 있어요. - 보안 그룹 – 문지기: 집에 누가 들어오고 나갈 수 있는지 제어하는 문지기가 있다고 상상해 보세요. 마찬가지로 EC2 인스턴스에도 인스턴스에 어떤 유형의 네트워크 트래픽이 들어오고 나갈 수 있는지 제어하는 문지기 역할의 보안 그룹이 있어요. 명시적으로 허용한 트래픽(예: 컴퓨터 IP 주소에서 오는 SSH 트래픽)만 들어올 수 있어요.
- 개인 키 – 현관문 열쇠: 인스턴스를 시작할 때 키 페어를 지정했어요. 공개 키는 인스턴스에 배치되고 개인 키는 컴퓨터에 보관해요. 개인 키는 현관문 열쇠 역할을 해요 — 없으면 인스턴스에 들어갈 수 없어요.
- 인스턴스 사용자 이름 – 거주자: 집에 도착하면 거주자임을 증명하기 위해 신원을 밝혀야 해요. 마찬가지로 인스턴스에 연결할 때 사용자 이름을 제공해요. 인스턴스마다 운영체제에 따라 다른 기본 사용자 이름이 있어요. 예를 들어 Amazon Linux 인스턴스는 기본 사용자 이름으로
ec2-user를 사용해요.
연결 명령 EC2 인스턴스에 연결하려면 터미널 창에서 다음 명령을 사용하세요:
ssh -i "test-instance-key-pair.pem" [email protected]
명령이 하는 일을 설명하면:
ssh– 이 명령은 연결 프로토콜을 지정하며 인스턴스에 SSH(Secure Shell) 연결을 시작해요.-i "test-instance-key-pair.pem"–-i플래그는 연결을 인증하는 데 필요한 개인 키 파일을 나타내요. 이 개인 키 파일은 인스턴스를 시작할 때 지정한 키 페어와 일치해야 해요. 개인 키 파일이 특정 폴더에 저장되어 있다면 파일의 전체 경로를 지정하세요.ec2-user– 이것은 인스턴스에 로그인하기 위한 사용자 이름이에요. Amazon Linux 인스턴스의 기본 사용자 이름은ec2-user예요. 다른 AMI는ubuntu(Ubuntu 인스턴스) 같은 다른 기본 사용자 이름을 사용할 수 있어요.@– 이 기호는 사용자 이름과 인스턴스 주소를 구분해요.ec2-18-201-118-201.eu-west-1.compute.amazonaws.com– 이것은 인스턴스의 공용 주소(공용 DNS)로, 공용 IPv4 주소와 AWS 리전을 포함해요. 인스턴스를 고유하게 식별해요.
명령을 실행하면 일어나는 일 명령을 실행하면 SSH가 보안 터널을 설정하고 개인 키로 인증해요. 인스턴스의 보안 그룹이 트래픽을 허용하면 EC2 인스턴스에 액세스할 수 있어요. 이제 컴퓨터에서 마치 컴퓨터 앞에 앉아 있는 것처럼 인스턴스를 제어할 수 있어요. 로컬 머신에서 하듯 명령 실행, 소프트웨어 설치, 파일 관리를 할 수 있어요.
작업 8: 인스턴스에 연결하기
이 작업에서는 컴퓨터의 SSH 클라이언트를 사용해 인스턴스에 연결할 거예요. 이전 작업에서 집에 가는 비유로 인스턴스 연결 구성 요소를 소개했어요. 이제 실제 EC2 인스턴스에 연결하는 데 집중할 거예요.
인스턴스에 연결하는 방법은 다양해요. 사용하는 연결 방법은 인스턴스의 운영체제에 따라 달라져요. Linux 인스턴스를 시작했으므로 로컬 컴퓨터의 SSH 클라이언트를 사용할 거예요.
먼저 컴퓨터에 SSH 클라이언트가 설치되어 있는지 확인하세요 대부분의 컴퓨터에는 SSH 클라이언트가 사전 설치되어 와요. 확인하려면 컴퓨터에서 터미널 창을 열고 다음 명령을 실행하세요:
ssh
명령이 인식되면 연결할 준비가 된 거예요. 명령이 인식되지 않으면 SSH 클라이언트를 설치해야 해요. SSH 클라이언트 설치 지침은 이 튜토리얼의 범위를 벗어나요. 도움이 필요하면 이 사용자 가이드의 'SSH 연결 사전 준비'를 보거나 운영체제에 SSH 클라이언트를 설치하는 방법을 온라인으로 검색하세요.
다음 단계로 인스턴스에 연결하려면
- 연결을 시작합니다: Amazon EC2 콘솔의 인스턴스 세부 정보 페이지에 있다면 Connect 버튼(오른쪽 위)을 선택하세요. 다른 곳으로 이동했다면 탐색 창에서 Instances를 선택하세요. 그런 다음 Instances 페이지에서 인스턴스 이름 옆의 체크박스를 선택하고 Connect 버튼(오른쪽 위)을 선택하세요. Connect to instance 페이지가 열려요.
- 연결 방법을 선택합니다: Connect to instance 페이지에서 SSH client 탭을 선택하세요. 이 페이지의 텍스트를 잠시 검토하세요. 다음에 따라야 할 단계이기 때문이에요.
- SSH 명령을 검토합니다: Example 아래에 인스턴스 세부 정보로 자동 생성·사용자 지정된 명령이 보일 거예요. 개인 키 이름은 시작 시 지정한 공개 키 이름에서 파생돼요. 명령은 대략 다음과 같아요:
ssh -i "test-instance-key-pair.pem" [email protected]
- SSH 명령을 복사합니다: 예시 SSH 명령 옆의 복사 아이콘을 선택하세요.
- 터미널 창을 엽니다: 로컬 컴퓨터에서 터미널 창을 엽니다.
- SSH 명령을 붙여넣고 실행합니다: SSH 명령을 터미널 창에 붙여넣으세요. 개인 키 파일을 특정 폴더에 저장했다면 전체 파일 경로가 포함되도록 명령을 편집하세요. 키보드에서 Enter를 누르세요. 다음과 유사한 응답이 보일 거예요:
The authenticity of host 'ec2-18-201-118-201.eu-west-1.compute.amazonaws.com (18-201-118-201)' can't be established.
ED25519 key fingerprint is SHA256:examplehxj9aOr1MogvKOoMNskVVIRBQBoq0example.This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])?
- 연결을 완료합니다:
yes를 입력하고 키보드에서 Return을 누르세요. 지문 확인은 이 튜토리얼의 범위를 벗어나요. 더 알아보려면 '(선택) 인스턴스 지문 가져오기'를 참고하세요. 연결에 성공하면 터미널 프롬프트가 인스턴스의 공용 DNS를 표시하도록 바뀌어요.
축하해요! 인스턴스에 성공적으로 연결했어요!
작업 9: 인스턴스 중지하기
이 작업에서는 프리 티어 혜택을 보존하기 위해 인스턴스를 중지할 거예요. 인스턴스가 중지되면 인스턴스 비용이 발생하지 않아요. 2025년 7월 15일 이전에 AWS 계정을 만들었고 프리 티어 자격이 된다면 EBS 스토리지 비용은 계속 발생해요.
다음 단계로 인스턴스를 중지하려면
- 중지를 시작합니다: 아직 Connect to instance 페이지에 있다면 브레드크럼에서 Instances를 선택하세요. 다른 곳으로 이동했다면 탐색 창에서 Instances를 선택하세요. 그런 다음 Instances 페이지에서 인스턴스 이름 옆의 체크박스를 선택하고 Instance state 메뉴(오른쪽 위)를 선택한 뒤 Stop instance를 선택하세요. 확인 메시지가 뜨면 Stop을 선택하세요.
- 인스턴스 상태를 모니터링합니다: Instances 페이지에서 Instance state 열을 확인하세요. 인스턴스 상태가
Stopping으로 바뀌었다가Stopped로 바뀌어요. 전체 텍스트가 보이지 않으면 열 너비를 넓혀 보세요. 인스턴스 상태가Stopping에서Stopped로 바뀌었다고 생각되지만 아직 보이지 않으면 새로고침 아이콘(표 위)을 선택해 Instances 표를 새로고침하세요.
핵심 요약 (Key takeaways)
이 튜토리얼에서 다음 핵심 개념을 다뤘어요.
- AMI는 Amazon Machine Image를 말하며, 인스턴스 시작에 필요한 운영체제와 소프트웨어를 포함하는 템플릿이에요.
- 인스턴스 유형은 인스턴스에 사용되는 호스트 컴퓨터의 하드웨어를 말해요. 인스턴스의 CPU, 메모리, 스토리지, 네트워킹 용량을 결정해요.
- 키 페어는 인스턴스에 안전하게 연결하는 데 사용할 수 있는 공개 키와 개인 키 집합을 말해요.
- 네트워크는 VPC(AWS 클라우드 안에서 계정 전용인 가상 프라이빗 클라우드)와 서브넷(VPC 안의 IP 주소 범위)을 말해요.
- 보안 그룹은 어떤 트래픽이 인스턴스에 도달할 수 있는지 제어하는 규칙 집합을 말해요.
- EBS 볼륨은 인스턴스의 데이터 스토리지를 말해요. 모든 인스턴스에는 AMI를 저장하는 루트 볼륨과 하나 이상의 선택적 데이터 볼륨이 있어요.
- 태그는 인스턴스에 선택적으로 할당할 수 있는 메타데이터예요. 인스턴스 이름은 키가
Name, 값이 선택한 값인 태그예요. - 연결은 인터넷을 통해 인스턴스에 액세스하는 것을 말해요.
- SSH는 인스턴스에 연결하는 데 사용할 수 있는 Secure Shell 연결 프로토콜을 말해요.
- 공용 DNS는 인스턴스의 고유한 공용 주소예요.
- 인스턴스 사용자 이름은 인스턴스의 운영체제에 의해 결정되며 연결에 필요해요.
- 인스턴스 중지는 인스턴스 요금을 중지하지만 EBS 스토리지 요금은 계속돼요.
다음 단계 (Next steps)
인스턴스 시작·연결·중지에 대한 자신감을 쌓으려면 이 튜토리얼의 단계를 반복하는 것을 고려해 보세요. 프리 티어 혜택을 보존하려면 시작한 인스턴스를 반드시 종료하세요. 이러한 기본에 익숙해진 뒤에는 더 고급 튜토리얼을 탐색할 수 있어요. 튜토리얼이 더 있으면 '다른 튜토리얼을 찾고 있나요?'를 참고하세요.
2025년 7월 15일 이전에 AWS 계정을 만들었다면 다음 6분짜리 영상을 시청해 보세요: 'How can I avoid charges on my account when using AWS Free Tier services'. 2025년 7월 15일 이후에 AWS 계정을 만들었다면 AWS Billing User Guide의 'Explore AWS services with AWS Free Tier'를 검토해 보세요.