본문 바로가기
Infra/프라이빗 클라우드 인프라

Auto Scaling

by shinebee* 2020. 7. 17.
  • Auto Scaling
    • 자동 확장 기능을 사용하면 instance의 수를 동적으로 늘리거나 줄일 수 있다.
    • 비정상적인 상태의 instance를 감지하면, 해당 인스턴스를 종료하고, 새 인스턴스를 생성하여 고 가용성을 구성할 수 있다. 
    • loadbalance가 없어도 auto scaling은 가능하지만 거의 필요하다.
    • 시스템을 편하게 관리하기 위해 사용한다.
    • scale out  ->  일정 이상의 시스템을 사용하면 확장
    • scale in  ->  축소
    • auto scaling은 scale in / out만 사용한다.
    • 자동으로  scale을 in / out 한다.
    • vm 하나의 부하량만 체크  ->  다른 vm의 부하량과 같기 때문에

 

 

  • OS::Heat::AutoScalingGroup 
    • 자동 확장 리소스의 그룹을 지정한다.
    • 최소 사이지를 지정하지 않으면 계속 늘어날 수 있다. 
      ->  쓸모없는 인스턴스가 계속 만들어진다  ->  비용 & 리소스가 낭비된다.
    • 필수 속성 : max_size, min_size, resource
    • 선택 속성 : cooldown, desired_capacity, rolling_update

 

  • OS::Heat::ScalingPolicy
    • 자동 확장 그룹의 scale up / down 정책을 지정한다.
    • 필수 속성 : adjustment_type, auto_scaling_group_id, scaling_adjustment
    • 선택 속성 : cooldown, min_adjustment_step
    • adjustment_type  ->  change_in_capacity / exact_capacity / percentage_change_in_capacity

 

  • OS::Aodh::GnocchAggregationByResourcesAlarm
    • stack으로 생성된 instance의 CPU 사용률, 메모리 사용률, 디스크 IOPS 및 사용률 등을 gnocchi에 의해 사용량을 측정한다.
    • cpu 사용량에 따라 알람 발생시킨다.
    • 알람 만드는 리소스 타입
    • Trigger를 작동시킬 알람 지정
    • Alarm action으로 SaclingPolicy를 호출  ->  AutoScalingGroup 호출
    • Aodh 알림의 기준을 넘어서면 trigger가 Heat Stack에 알려주며, 필요한 스케일링을 진행.
    • 필수 속성 : metric, query, resource_type, threshold
    • 선택 속성 : aggregation_method, alarm_acions, comparison_operator, evaluation_periods, granularity

'Infra > 프라이빗 클라우드 인프라' 카테고리의 다른 글

LBaaS를 통한 Loadbalance  (0) 2020.07.13
NFS를 Cinder로 사용하기  (0) 2020.07.10
Swift deivce add  (0) 2020.07.08
Object Storage(swift) 서비스 관리  (0) 2020.07.08
Image 생성 - error  (0) 2020.07.07

댓글