우리는 약 200 개의 개의 프로세스 (모두 사내에서 개발 됨)가 퍼져있는 서버가 몇 백 개있는 아키텍처를 가지고 있습니다. 일부는으로 제어되고 일부는 데몬으로 실행됩니다. 일부 서버는 모든 서버가 동일하게 구성된 '그룹' 에 있고 다른 서버에는 사용자 지정 구성이 있습니다. 나는 이러한 작업 중 컨트롤을 중앙 집중화하는 임무를 맡았습니다.분산 된 작업 관리를위한 오픈 소스 리눅스 도구를 찾고 있습니다.
하나의 유스 케이스는 상자에 ssh'ed 사용자가 를 시작하고 관련 데몬을 중지하거나 재건과 의 crontab을 다시 설치하여 실시간에 가까운 무언가의 네트워크에 어떤 프로세스를 제어 할 수 있어야한다는 것입니다 . 이미 다양한 비트와 조각이 데이터베이스에서이 모든 것을 을 구동하기 위해 생성되었지만 전반적인 아키텍처는 까지 생각하지 않았습니다.
필자는 각 서버에서 실행될 데몬을 작성하고 피어 - 투 - 피어 네트워킹, 데이터베이스 및 데몬과 crontab 사이를 중재한다고 예상합니다.
어떤 기술이이 프로젝트를 도우려고하는지 조사하고 있습니다.
필자는 피어 투 피어 (peer-to-peer) 안정적인 통신 기술을 찾고 있다고 생각합니다. 내가 100 % 확신 할 수는 없지만. 내 레이더에는 에 Spread, JXTA, Zookeeper 및 JMS가 포함되어 있습니다.
이러한 기술에 대한 사람들의 경험은 무엇이며 다른 기술은 무엇을 체크 아웃해야합니까? 보시다시피, 나는 매우 낮은 데이터 속도 (시간당 최대 1000 바이트)가 매우 일 것입니다. 그러나 안정성 과 성숙한 API가 중요합니다.
우리는 이미 서버 프로비저닝을 위해 cfengine을 사용합니다. 이 노력은 약간 높은 수준입니다. 서버가 작동하는 동안 프로세스 조작. pssh는 흥미 롭습니다. 포인터 덕분에 더 많은 사용자 레벨 도구입니다. API가 필요하고 기본 제공되는 안정성이 필요합니다. – Leonard
재부팅 할 필요없이 진행중인 구성 업데이트에 cfengine을 사용할 수 있습니다. 그것은 많은 일이지만. 꼭두각시가 좋아 보였다. 그것은 cfengine과 같지만 더 많은 것을 해봅시다. IIRC에서는 프로세스 테이블을보고 무언가가 작동하는지 여부를 확인할 수 있습니다. –