2017-01-23 6 views
0

메소의 다양한 역할에 대한 가중치의 개념을 이해하고 싶습니다. 나는 role1에 2.0의 가중치를주고 role2에는 5.0의 가중치를 부여하고 mesos 클러스터에서 spark 프레임 워크를 시작하고 같은 양의 자원을 요구했다. 두 가지 역할에 리소스가 할당되는 방식에 어떤 변화도 보이지 않았습니다. 그래서 나는 가중치를주는 것의 중요성을 알고 싶었고 가중치를 사용하여 자원 예약의 예를 보여주고 싶었습니다.아파치 메소에서 다른 역할에 대한 가중치의 중요성은 무엇입니까

답변

1

TYPED_TEST(MasterAllocatorTest, RebalancedForUpdatedWeights)에서이 테스트는 자원 할당이 제대로 업데이트 된 무게에 따라 재조정되도록합니다.

  1. 시작 메소 마스터.
  2. 같은 자원을 가진 세 명의 에이전트를 등록하십시오.
  3. 에이전트를 강제 등록하는 데 필요한 고급 시계.
  4. 총 클러스터 리소스 (3 명의 에이전트) : cpus=6, mem=3072. 그것은 지금까지 실행 만 프레임 워크이기 때문에
  5. Framework1 기본 중량 (1.0)를 사용 role1, 에 등록하고 모든 자원이 프레임 워크로 제공됩니다.
  6. 프레임 워크 2은 기본 가중치를 사용하는 role2과 함께 등록됩니다. 등록시 프레임 워크 1에 대한 미수금이 인 모든 자원으로 인해 쿠폰을받지 못합니다.

    role1 share = 1 (cpus=6, mem=3072) 
        Framework1 share = 1 
    role2 share = 0 
        Framework2 share = 0 
    
  7. 예상 제공이 취소되었습니다.

  8. role2의 무게를 2.0으로 업데이트하십시오. updateWeights은 모든 미결 제안을 취소하고 폐기 할당 된 리소스는 다른 할당이 호출 된 후에 업데이트 된 가중치에서만 사용할 수 있습니다.
  9. 배치 할당을 트리거합니다.

    role1 share = 0.33 (cpus=2, mem=1024) 
        Framework1 share = 1 
    role2 share = 0.66 (cpus=4, mem=2048) 
        Framework2 share = 1 
    
+0

나는 가중치를 업데이트 할 9 단계까지 이해했다. 그런 다음 일괄 할당을 실행하는 방법은 무엇입니까? –

+0

[allocation_interval] (https://github.com/apache/mesos/blob/f1d0cdf1db2a28fa44f7aded0c3760636c0a51de/src/master/flags.cpp#L195)을 변경할 수 있습니다. – janisz