보안을 위해서 2차 로그인(OTP) 꼭 해줘라.
멀티 팩터 인증(MFA)
AWS에서는 MFA라는 이름으로 관리되고 있다.
region과 AZ(abailable zone, 가용범위)는 region이 지역이라 한다면 그 지역 내의 건물들을 AZ라 하고. AZ는 서로 직접 연결되어 있어 빠르게 정보를 주고 받을 수 있으므로 한 몸이나 다름 없는 것.
비용과 속도는 서비스하고자 하는 지역에 따라 region마다 다르니 현명하게 알아볼 것.
instance는 컴퓨터 한 대라고 생각하면 된다.
온 디맨드 인스턴스. 일시정지, 재가동을 오가면서 사용한 만큼 비용을 내는 인스턴스는 온 디맨드 인스턴스라고 부른다.
예약 인스턴스라는 것도 있다. 선결제임. 그래서 예약 인스턴스. “수요가 꾸준하거나 예측 가능한 애플리케이션의 경우, 예약 인스턴스를 사용하면 온디맨드 인스턴스 사용과 비교하여 상당한 비용을 절감할 수 있습니다.”라고 한다. 예측 가능한 서비스라면 이걸 사서 싸게 쓰는 게 좋을 것.
스팟 인스턴스는 아마존 웹 서비스에서 노는 컴퓨터를 구매하는 것. 사실상 주식 시장 오르내리는 것 마냥 그 컴퓨터가 놀면 싸게 이용하는데 그 컴퓨터가 갑자기 일을 시작하면 가격이 비싸게 책정되는 그런 것이다. 요금이 가변적이다.
launch instance하면 만들 수 있는데 자세히 알아보자.
1. AMI 선택하기
AMI는 인스턴스를 시작하는 데 필요한 소프트웨어 구성(운영 체제, 애플리케이션 서버, 애플리케이션)이 포함된 템플릿입니다. AWS, 사용자 커뮤니티 또는 AWS Marketplace에서 제공하는 AMI를 선택하거나, 자체 AMI 중 하나를 선택할 수도 있습니다.
설명은 이런데 임대한 컴퓨터에 운영체제를 설치하는 것이라고 보면 된다.
Window, Ubuntu, Amazon Linux...
특히, Window에서 SQL server가 포함된 버전은 무료 버전에서는 이용할 수 없는데 그 이유는 microsoft가 SQL server에서는 고가 정책을 펼치고 있기 때문.
(ex - Microsoft Windows Server 2019 with SQL Server 2017 Standard)
2. instance type 선택하기
Family : 어디에 좋은지 알려줌.
Type : 그냥 유형별로 쉽게 부르기 위함. 제품명 정도로 생각해
다만, 팁을 주자면, type명에서 이 제품이 특화한 부분을 알 수 있다.
t2.micro : T-type. 범용
m4.large : 메모리가 강함.(M-type)
c5.large : cpu가 강함.(C-type)
vCPUs : vertual CPU들. cpu 몇 개 쓸거야?
Memory : 몇 기가?
Network Performance : 성능. 데이터 전송 가능한 정도. 대역폭. ex.최대 5기가비트.
자신이 제공하고자하는 서비스에 맞춰서 사용하라.
문제는 이걸 아는 데 하드웨어적인 지식이 필요하다는 것임.
3. configure instance
우선 기본값으로 다 두고 배포하면 전부 작동은 한다.
network, subnet 등은 기본값으로 두면 된다.
이 포스트를 작성하고 1년 정도 시간이 지난 후 짚어보자면, 현재 리전내에 특정 AZ를 사용하므로 현재 사용하는 AZ(가용역역)의 기본 서브넷을 사용하는 것으로 두는 것이다.
지금도 기본값으로 두고 사용하고 있지만, 왜 그대로 두는 지를 아는 것은 중요하다.
shutdown behavior는 운영체제에서 컴퓨터 껐을 때 어떤 동작을 취할 것인지. stop과 terminate.
stop은 인스턴스는 지우지 않고 정지만 시켜놓음. 비용은 저장장치에 해당한 금액만. 인스턴스에 대한 금액은 청구되지 않음 terminate는 인스턴스도 삭제됨.
실수로 terminate를 누르는 것을 방지하기 위해 termination protection 체크도 가능함.
monitoring은 cpu사용량이라던지 그런 걸 기본 기능보다 더 디테일하게 표시해주는 기능임.
cloudwatch라고 한다. 추가 비용이 듦.
4. add storage
EBS 장착할거니를 묻는 곳임. elastic block store의 줄임말. 추가 용량임.
여기서 root 볼륨을 필수적으로
size는 원하는 만큼 설정하고(무료 계정에선 30GB까지)
volume type은 마그네틱, ssd 등.
IOPS는 저장장치의 성능(속도)를 지정할 수 있는 것을 말함. 볼륨이 지원할 수 있는 요청된 초당 I/O 작업 수입니다.
General Purpose 볼륨은 1GiB당 3 IOPS를 제공합니다. 예를 들어 500GiB라면 1500 IOPS를 기본적으로 제공합니다.
provisioned 볼륨 타입을 사용할 경우 IOPS를 수동으로 설정할 수 있다
Delete on Termination(종료 시 삭제)는 인스턴스가 삭제될 때 저장장치도 같이 삭제할거냐를 묻는 거임. 체크 해지하면 인스턴스가 삭제되어도 저장 장치는 삭제 되지 않음. 내장이냐 외장이냐를 묻는 거라고 물으면 됨. 그런데 저장장치도 비용이 들어가기 때문에 가급적이면 종료 시 같이 삭제하는 것을 추천한다. 체크해라.
5. Tag instance
Name : webserver
Admin : Darren
인스턴스에 대한 설명을 적어주는 것
나중에 인스턴스의 양이 많아지게 되면 각 인스턴스가 무엇을 위해 있는지 알 수 없어지곤 한다. Name을 잘 적어주자.
6. Configure Security Group
보안이니 중요함. 사실 보안도 있지만 접근 권한에 대한 이야기가 더 정확함.
보안 그룹을 설정하는 게 처음 보일 터이다. 보안 그룹은 보안 정책이라고 보면 된다.
Assign a security group이 create할거냐 select할거냐 정해야 하고
만약 create라면 이름과 설명을 알아서 마음대로 적어주면 된다.
중요한 건 보안 그룹 세부 사항들인데 하나씩 보자.
type은 내가 만든 인스턴스에 접속하는 방법(http, ssh...)을 지정. 모두 허용하면 문 열어놓은 꼴.
다만, 웹서버를 만들었다면 다른 사용자들이 들어와야 하므로 http, https 접근은 허용해줘야 함. anywhere로.
단, 원격 조정, 수정이 가능한 ssh는 접근을 my ip 혹은 특정한 ip(custom ip)에만 허락해줘야.
ssh는 인스턴스가 만약 리눅스라면 ssh 타입을 허용해줘야 함. 원격 조정을 의미함.
rdp는 window에서의 원격 조정. (그런데 누가 EC2 인스턴스를 rdp로 만들겠는가?)
OS마다 원격 조정 방식이 다름. 하여튼 SSH와 RDP를 잘 봐둬라.
source는 인스턴스에 도달할 수 있는 트래픽을 판별합니다.
내 IP는 해당 public ip만 가능하단 이야기 (public ip : 공유기 / private ip : 공유기를 통해 전달받은 ip)
위치 무관(anywhere)는 누구나.
뭐, 이렇게 보안 그룹 하나를 만들어 줬다.
끝!!! 인스턴트 하나를 만들었다. 최종적으로 검토하고 launch 하면 된다.
lauch하면 key pair입력하라고 하고 pem 파일 하나를 준다. 이게 통째로 비밀번호인 셈.
다운로드 받자. 열어 보면 알겠지만 존나게 깁니다.
이걸 가지고 있어야만 접속이 가능함.
또, 아마존 측에서 이 비밀번호를 잃어버리면 재발급을 절대로 안해준다.
그러니까 이 pem은 방치하지 말고 잘 관리하라.
'AWS > ☁️ AWS' 카테고리의 다른 글
AWS autoscaling (0) | 2020.01.26 |
---|---|
AWS Scale Out, ELB (0) | 2020.01.26 |
AWS Scale Up, EIP (0) | 2020.01.26 |
AWS AMI, Marketplace (0) | 2020.01.26 |
AWS EC2 - 인스턴스 접속 / Window openSSL (0) | 2020.01.26 |