2013-10-07 2 views
0

다음은 내가 가진 시나리오입니다.Lighttpd가있는 장애 조치 (failover) 클러스터 Couchbase가 machine2에서 실패했습니다

"mybucket"이라는 couchbase에서 1 개의 버킷을 만들고 mach1과 mach2를 해당 버킷에 대해 서로 장애 조치하도록 구성했습니다.

머신 1 :

**mach1.myserver.com** 
couchbase and lighttpd. 
webapps installed on this machine pointing to couchbase bucket called "mybucket" at mach1.myserver.com 

을 Machine2 :

**mach2.myserver.com** 
couchbase and lighttpd 
webapps installed on this machine pointing to the couchbase bucket called "mybucket" at mach2.myserver.com 

enter image description here

내가 mach1.myserver.com을 URL로 이동하여 웹 어플리케이션 연결 성공적인.

그러나 내가 mach2.myserver.com으로 이동할 때. webapps 연결에 실패했습니다. 둘 다 "mybucket"이라는 동일한 버킷에 연결되어 있습니다.

이 구성에서 뭔가가 누락 되었습니까? 우선, 내가 여기에서 직면하고있는 것이 전혀 의미가 없습니까? 제발 조언 해 줘?

+1

토폴로지를 잘 모르겠다. 보통 Couchbase 클러스터를 배포하는 방법이다. 여러 노드를 배치하고 응용 프로그램에 직접 액세스하여로드 밸런서 또는 장애 조치 인프라를 맨 위에 둘 필요가 없다. . 당신이 무엇을하려고하는지, 그리고 어떻게 응용 프로그램이 개발되었는지 명확히 할 수 있습니까? 나는 –

+0

Thanks @ Tug Grail에 대답하게되어 기쁩니다. 내가하려는 것은 웹 서버가있는 각 컴퓨터에 couchbase도 설치하는 것입니다. 그렇게하면 각 웹 서버가 자체 분산 dbase를 수행하는 자체 couchbase에 연결되기 때문에로드 균형 조정이 웹 서버에서 처리됩니다. 최종 사용자가 가장 가까운 웹 서버에 연결하고 그 웹 서버가 큰 클러스터의 일부인 couchbase에 연결되도록 위치 기반의 일종의로드 균형 조정을 만들어야합니다. 이게 말이 되니? –

답변

1

나는 당신이이 질문 Architecting webserver (NginX/Lighttpd/Apache) with couchbase에 의해 그릇된 것으로 생각하고 답변입니다. 왜냐하면 당신은 couchbase에 대해 물어 봤고 응답은로드 밸런서에 관한 것입니다.

먼저 확장 가능한 응용 프로그램을 빌드하려는 경우 데이터베이스와 응용 프로그램에 대해 동일한 서버를 사용하지 마십시오. 하나의 하드웨어에서 가상 머신 일 수도 있지만 하나의 실제/가상 서버에 웹 서버와 데이터베이스를 배치하지 마십시오. 특히 당신이 couchbase를 사용할 계획이라면. Couchbase는 너무 많은 iops를 먹기를 좋아하므로 웹 서버의 iops가 충분하지 않을 수 있습니다.

내 선택은 webapp 및 couchbase에 대해 별도의 서버를 사용하는 것이었을 것이라고 설명했습니다. 서버 쌍 webapp-couchbase는 대기 시간을 최소화하기 위해 서로 가까이에 (즉, 적어도 하나의 데이터 센터에) 배치되어야합니다. XDCR 복제를 사용하여 couchbase 서버를 독립형 클러스터로 구성해야합니다 (또한 couchbase에 대해 열려야하는 포트를 확인해야합니다). 그런 다음 webapp를 구성하여 가장 가까운 서버에 연결합니다. 하지만이 경우 자신이 "고 가용성"에 신경 써야합니다. this question을 확인하여 조언을 확인하십시오. 하나의 클러스터에 모든 couchbase 서버를 연결하면 클러스터에있는 모든 서버의 문서가 삭제되며 웹 앱에서만 가장 가까운 서버에 연결하더라도 클러스터의 모든 couchbase 서버에서 데이터가 수집됩니다.

더 궁금한 점이 있거나 더 나은 설명이 필요하면 의견을 물어보고 대답을 업데이트하겠습니다.

UPD : couchbase> = 2.1.1을 사용하는 경우 hostnames으로 구성 할 수 있습니다.

+0

이것이 내가 원하는 것입니다. @ m03geek에 대한 정보를 보내 주셔서 감사합니다.늦은 응답에 대한 죄송합니다. 내가 일하고있는 다른 것들과 붙어있어이 질문을 확인하는 것을 잊었다. :-) 다시 한번 감사드립니다. –