베하~~ 지난 주에 이어서
오토스켈링으로 돌아온
수 지 타 산 입니다
다들 환절기 감기 조심하면서 열공해봅세다
복습 먼저 할까요???
팔로팔로팔로미
오토스케일링(Auto Scaling) 이란?
클라우드의 유연성을 돋보이게 하는 핵심기술로 CPU, 메모리, 디스크, 네트워크 트래픽과 같은 시스템 자원들의 메트릭(Metric) 값을 모니터링하여 서버 사이즈나 서버의 수를 자동으로 조절 하는 서비스
스케일링 이란?
인스턴스 혹은 컴퓨팅 파워를 늘리는 것을 말한다.
1. 스케일 업(Scale Up) > 인스턴스의 성능을 16배로 늘려야할 상황이 온다면, 말 그대로 16배 큰 인스턴스를 사용함으로서 성능을 올리는 것을 스케일 업이라고 한다. 하지만 이는 성능과 비용이 비례하지 않는다는 단점이 있다.
2. 스케일 아웃(Scale Out) > 스케일 아웃은 규모를 늘리는 것 이다.성능을 16배 올리고 싶으면 그냥 인스턴스를 16개 가져다가 쓰면 된다.공간의 제약이나 하드웨어적인 제약이 없다. 그리고 성능과 비용이 비례하다는 특징도 가지고 있다. 따라서, 클라우드 환경에서는 Scale Out을 항상 염두하며 설계를 해야 한다. 수요에 따라 인스턴스를 덜 쓸 수도, 더 쓸 수도 있음으로서 유연성을 가질 수 있기 때문이다.
3. 스케일 인(Scale In) scale out으로 늘린 인스턴스를 다시 줄이는 행위로 이해하면 된다.
그럼 다음 내용을 진행하겠습니다
오토스케일링 동작 원리 -> 간단하게 상황을 가정하여 설명해보겠습니다.
1. EC2 인스턴스 클러스터 가 있고 8개의 인스턴스가 필요하다고 가정
2. 하드웨어가 터졌다던지 소프트웨어 문제가 터져서 EC2 한개가 죽음
3. 그럼 이것을 오토스케일링이 감지
4. 그리고 시작구성에 맞는 인스턴스를 생성을 해서 오토 스케일링 클러스터에 넣어줌
조금 더 구체적으로 들어가보겠습니다
오토스켈링 작동 원리를 제대로 이해하셨으면
오토 스케일링 실전 구축 세팅을 진행하겠습니다 :)
1. 시작 템플릿 생성
오토스케일링 그룹을 생성하기에 앞서, 어떤 인스턴스를 어떻게 올릴지 정의하는 템플릿을 생성해야 합니다.
과거에는 시작 구성(Launch Configuration)을 사용했지만 현재는 AWS에서는 시작 템플릿(Template) 방법 사용을 권장하고 있으며, 시작 템플릿이 시작 구성에 비해 버전 등 관리가 더 편하다고 알려져 있습니다.
두 가지 모두 Auto Scaling을 위해 생성해야 하는 서비스지만, 시작 구성(Launch Configuration)의 경우 배포할 소스의 버전이 올라가면 시작 구성을 매번 새로 만들어줘야하는 것에 반해, 시작 Template은 배포할 소스의 버전이 올라가도 해당 템플릿 업데이트를 통해 버전 관리가 가능합니다.
진행하시다 보면 Auto Scaling으로 인스턴스를 증설하기 위해서는 EC2 AMI 이미지가 필요하다는 것을 아시게 될겁니다.
리눅스 서버 인스턴스를 증설해야 할 경우, 갑자기 윈도우 서버 인스턴스를 증설하면 안되기 때문에 미리 만들어놓은 AMI를 고를수도 있고 새 AMI 만들어 증설이 되도록 해야 합니다.
- 최근 사용 : 최근에 사용한 AMI 목록
- 내 AMI : 미리 만들어놓은 내 AMI를 선택
- Quick Start : EC2 인스턴스 생성할떄 AMI를 골랐을때 처럼 고를 수 있음
AMI ? 이미지를 지칭하는 AWS의 서비스 용어. 예를 들어, 내가 원하는 os 내부에 아파치와 톰캣을 설치한 서버를 여러 개 만들거나 오토스켈링에 활용하고 싶다면 그 자체를 하나의 이미지로 만든 후에 생성하는데 활용할 수 있습니다. 혹은 단순히 os(리눅스, 윈도우 등)만을 고려한 여러 개의 서버가 필요하다면 Quick Start를 활용하여 이미지를 만들 수 있습니다.
인스턴스 유형 및 전반적인 인스턴스 초기 세팅을 설정을 해줍니다. 이는 EC2 인스턴스 생성했을때 처럼 항목을 선택해주면 됩니다. 이들은 오토스케일링으로 인스턴스를 여러 개 만들때 어떤 인스턴스 유형으로, 어떤 스토리지로, 어떤 AMI로 만들지 미리 세팅하는 템플릿 개념 입니다.
2. Auto Scaling 그룹 생성
위에서 처럼 시작 템플릿을 생성했으면 따로 EC2 인스턴스를 생성할수도 있고 이를 기반으로 오토 스케일링 그룹을 생성할 수도 있습니다. 템플릿을 선택한 후, 작업 메뉴에서 오토스케일링 그룹을 생성합니다.
이제 EC2 인스턴스를 분배할 VPC와 가용영역(AZ)을 선택합니다. 서울 리전을 기준으로 ap-northeast-2a와 ap-northeast-2c를 선택하겠습니다. 이렇게 가용영역을 두개를 지정하면 Auto Scaling을 통해 인스턴스를 만들 때 가용영역을 번갈아 50% 비중으로 인스턴스를 만들기 때문에 하나의 가용영역에 문제가 생겨도 상대적으로 영향을 덜 받게 됩니다.
오늘은 오토스켈링 작동 원리를 비롯하여
AMI에 대한 내용까지 공부했습니다.
다음 주에도 오토스켈링 실습을 이어서 진행할게요.
오토스켈링이 어떻게 쓰이는지 언제 필요한지를
이해하시는게 중요하겠습니다 ㅎㅎ
그럼 감기 조심하시고
다음 주에 만나요
제에에에에바아아알
'CSP (Cloud Service Provider) > AWS' 카테고리의 다른 글
[AWS] Auto Scaling - 실습2 (1) | 2022.09.30 |
---|---|
[AWS] Expired domain certificate alarm (1) | 2022.09.23 |
[AWS] WAF (0) | 2022.09.23 |
Apache Ignite 소개 및 설치 방법 (0) | 2022.09.19 |
[AWS] RDS 기본 (0) | 2022.09.17 |
댓글