03장. AWS를 사용하기 위한 도구
💡 AWS에는 서비스를 원활히 사용하도록 지원하는 도구가 있다.
🎨 3.1 AWS에서 제공하는 유용한 도구
📌 3.1.1 AWS를 사용하기 위해 알아야 할 기본 개념
- AWS는 클라우드 서비스이므로 '사용한 만큼 비용을 지불한다.'가 기본이다.
- 즉, 필요한 것을 필요한 만큼 사용한다는 의미이다.
- 따라서, '자신에게 최적화된 상태로 관리한다.'가 클라우드를 잘 사용하는 요령이다.
- AWS는 서비스를 종합적으로 제공하기 때문에 웹 사이트나 시스템 구축에 필요한 기능 및 소프트웨어를 갖추고 있다.
- 그러나 운영 방버에 따라 요금이 증가할지 모르기 때문에 적절하게 선택해야한다.
💡 AWS 계정은 아마존에서 쇼핑할 때 사용하는 계정과 다르다.
📌 3.1.4 root 사용자
- AWS 계정은 모든 조작이 가능한 관리자 권한을 가지고 있기 때문에 root 사용자라고 부른다.
- 모든 권한을 가지고 있다는 점은 편리하지만 치명적이다. 이러한 이유로 AWS는 IAM이라는 서비스만 사용하는 사용자를 별도로 관리하고 있다.
🎨 3.2 관리 콘솔과 대시보드
📌 3.2.1 관리 콘솔이란?
- 관리 콘솔은 웹 브라우저에서 AWS 서비스를 관리하는 화면(사용자 환경)이다.
- 서비스별로 고유 화면(대시보드)가 존재하고 설정, 리전 선택 등 다양한 관리를 수행한다.
📌 3.2.2 리전 선택
- 관리 콘솔은 지역을 대표하는 리전 단위로 조작한다.
- 같은 EC2 서비스라도 리전에 따라 다른 것으로 간주한다.
- 리전에 따라 사용할 수 있는 서비스와 사용할 수 없는 서비스가 있다.
-사용할 수 없는 서비스를 선택하면 사용 가능한 리전으로 전환하라는 경고가 표시된다.
💎 AWS CLI란?
- AWS CLI(Common Line Interface)는 로컬의 명령어 단말기 혹은 서버에서 명령어나 스크립트로 AWS 서비스를 빠르게 수행하기 위한 CLI(명령줄 환경)이다.
- AWS의 다양한 서비스는 관리 콘솔에서 시각적으로 진행하지만, 여러 가지 조작을 한 번에 실행하거나 좀 더 자동화 된 방법으로 조작할 때에는 AWS CLI가 편리하다.
💡 AWS CLI에 대한 명령어 예
- i-12345678이라는 이름의 EC2 인스턴스를 시작한다.
$ aws ec2 start-instances --instance-ids i-12345678
- S3 패키지의 목록을 표시한다.
$ aws s3 ls
🎨 3.3 AWS IAM과 접근 권한
💡 IAM은 AWS의 인증 방식이다. AWS는 서비스 여러 개를 사용하기 때문에
적절한 관리를 위한 인증 방식이 꼭 필요하다.
💡 IAM에는 사용자 외에 그룹이나 역할이 있고, 일괄로 관리하기 쉽게 되어있다.
📌 3.3.1 AWS IAM이란
- AWS IAM(Identity and Access Management/ID와 접속 관리)의 약어로 AWS의 인증 기능이다.
- AWS 계정과 비슷하지만 AWS 계정은 계약을 관리하는 계정인데 반해, IAM은 각 서비스에 대한 접속을 관리하는 기능이다.
- 사람에 대해 부여하는 IAM을 IAM 사용자라고 한다.
- 서비스나 프로그램 등에 부여하는 IAM은 IAM 역할이다.
📌 3.3.2 IAM 그룹과 IAM 정책
- IAM 사용자, IAM 역할 두 가지 모두에 필요한 최소한의 기능을 부여하고, 필요한 사람에게만 전달하여 운영하는 것이 기본이다.
- 계정 하나를 여러 사람이 돌려쓰는 것도 바람직하지 않다.
- 사용자는 IAM 그룹으로 그룹화 할 수 있다 그룹화하면 같은 권한을 부여하고 싶은 사용자를 일괄로 관리할 수 있다.
- IAM 정책은 실행자(사용자, 역할, 그룹)가 어떤 서비스에 접속할 수 있는지 정해진 규칙을 설정하는 기능이다.
📌 3.3.3 IAM 정책 설정하기
- IAM 정책은 무엇에 대해서(EC2나 S3 등)어떤 조작을(시작 및 정지, 파일 쓰기 및 읽기, 삭제 등)허가할지 말지를 설정하는 것이다.
- 실행자(사용자, 역할, 그룹)가 '어떤 일을 할 수 있는가'의 형태로 설정이 가능하고, 조작 대상(서버 및 폴더 등)에 대해서 '무엇을 허가할 것인가'의 형태로도 설정할 수 있다.
- 전자를 자격 기반 정책, 후자를 리소스 기반 정책이라고 한다.
- IAM 정책은 자기만의 정책을 생성하는 것이 가능하지만(고객 관리형 정책), 정할 항목이 많고 실수하기 쉽기 때문에 기본적으로는 미리 준비된 AWS 관리 정책을 사용하는 것을 추천한다.
🎨 3.4 Amazon CloudWatch: EC2의 리소스 감시
💡 Amazon CloudWatch는 서버의 모니터링을 도와주는 서비스이다.
📌 3.4.1 Amazon CloudWatch란
- 서버나 시스템은 감시가 필요하다.
- 물리적인 부분에 대해서는 AWS가 관리해줄 수 있을지 몰라도, 설치한 시스템이나 소프트웨어의 감시는 본인 스스로가 해야한다. 이 때 사용하는 것이 Amazon CloudWatch이다.
- Amazon CloudWatch는 각 AWS 서비스의 리소스 모니터링과 관리를 담당하는 서비스이다.
- AWS의 각 서비스에서 지표(여러 관점에서 동작을 평가하는 수치), 로그 등을 수집, 기록한다.
- 수집한 로그가 임계 값을 넘으면 특정 동작이 일어나도록 설정할 수 있기 때문에 감시 상황에 대처하는 관리도 가능하다.
- 기본 요금은 없고 종량제 요금제로 사용한 만큼만 지불한다.
- 또한 Amazon CloudWatch는 지원하는 서비스와 지원하지 않는 서비스가 있다.
📌 3.4.2 사용 가능한 조작과 Amazon CloudWatch Logs
- Amazon CloudWatch로 CPU 사용률, 볼륨의 읽기 쓰기 횟수나 바이트 수, 네트워크 송수신 패킷 수 등을 감시할 수 있다.
- 또한 Amazon CloudWatch Logs를 통해 각종 로그를 기록할 수도 있다.
- Lamda함수를 실행할 때 로그가 기록되며 이 로그는 범용적인 로그이다.
🎨 3.5 AWS Billing and Cost Management
💡 AWS는 종량제인 만큼 비용 관리가 중요하다.
ㅤ 이러한 비용 관리를 도와주는 서비스가 AWS Billing and Cost Management이다.
📌 3.5.1 AWS Billing and Cost Management란
- AWS 비용 관리이다.
- 서비스 해지도 AWS Billing and Cost Management에서 실시한다.
- AWS Cost Explorer를 사용하면 매월 어느 정도 비용이 발생했는지 서비스 단위별로 확인할 수 있다.
- AWS Budgets은 비용이 특정 임계 값을 넘었을 때 알림을 발송할 수 있는 구조로 되어 있다.
- AWS에는 다양한 도구가 있지만 사용하고 판단하는 것은 사람이다.
- 자신에게 어떤 서비스가 바람직한가를 잘 분석해야한다.
- 서비스를 적절하게 선택했다고 해도 잘 운영하지 못하면 역시 비용이 들게 된다.
- 사용하지 않는 서비스나 실제로 불필요한 서비스를 유지하여 비요이 발생하는지
실태파악도 중요하다.
🙃 잘못 설정해서 매월 1일 메일 받는 사람이 바로 나예요. . . .
🎨 3.6 리전과 가용 영역
💡 리전이란 간단히 말하면 데이터 센터이다.
ㅤ AWS는 세계 각국에 데이터 센터가 있고, 전 세계적인 확장성을 가질 수 있다.
📌 3.6.1 리전과 가용 영역
- AWS는 전 세계 25지역(2021. 03)에 서버와 데이터 센터를 가지고 있다.
- 이러한 지리적 분류가 리전이다.
- 각 리전에는 여러 가용 영역(AZ)이 각각 물리적으로 독립된 설비로 설치되어있다.
데이터 센터의 설비가 여러 장소에 분산되어 있다고 생각하면 이해하기 쉽다.
- AZ는 각각 클라우드의 독립된 파티션이며, 병용함으로써 서비스의 중단을 방지한다.
📌 3.6.2 리전과 서비스
- 리전은 단순히 데이터 센터라는 의미는 아니다.
- 리전에 따라서 제공되는 서비스와 제공되지 않는 서비스가 있기 때문에 서비스 제공의 모체이기도 하다.
#Women-in-Spring
#2024-11-완독-그림으로-이해하는-aws-구조와-기술