2014-11-25 4 views
3

한 번에 모든 노드를 재부팅하는 많은 나쁜 점을 읽으면서 코어 OS 클러스터 노드를 하나씩 재부팅하고 싶습니다 (etcd, ceph가 쿼럼을 유지할 수 없음 등). 올바른 방법은 무엇입니까? , 수동으로 각 기계에 들어가서 reboot 명령을 실행하는 것 외에는?CoreOS 클러스터를 올바르게 재부팅하는 방법은 무엇입니까?

클러스터에서 n 노드를 재부팅하고 노드가 다시 시작될 때까지 기다린 다음 n 노드를 다시 설정하는 일반적인 방법이 있습니까?

감사합니다. 클라우드 config.yaml 파일에서

답변

3

당신은 추가 할 수 있습니다

coreos: 
    update: 
    reboot-strategy: etcd-lock 

클러스터의 기계가 더 이상 한 다음 기계가 때마다 부팅되도록 부팅하기 전에 잠금을 획득한다는 것을 의미한다. 추가 정보는 다음 문서를 참조하십시오.

+2

답장을 보내 주셔서 감사합니다. 이 클라우드 설정에 대해 알고 있습니다. 하지만 실제로 클러스터 노드를 ssh 대신 하나의 명령으로 노드별로 재부팅하고'sudo locksmithctl reboot'을 하나씩 실행 하시겠습니까? –

+1

각 기계에 ssh를 자동화하여 명령을 실행하려면 Fabric을 사용하는 것이 좋습니다. – emassa

+0

1 년 후 여전히 좋은 생각입니다! – Richard

1

Locksmith는 CoreOS 노드를 재부트하기위한 데몬입니다. 나는 etcd 잠금 재부팅 전략을 선택하는 것이 좋습니다 : 기본적으로

coreos: 
    update: 
    reboot-strategy: etcd-lock 

이 내가 원격 제어 내 CoreOS 클러스터에 fleetctl을 사용하고 1 씩 클러스터 하나를 재부팅됩니다. 이 스크립트는 클러스터의 모든 시스템에 재부팅 신호를 보냅니다.

재부팅 전략이 etcd-lock이면 노드가 즉시 재부트되지 않습니다. 전체 클러스터가 다시 부팅 될 때까지 1 씩 재부팅됩니다.

관련 문제