2

短い hostnameを使用するように Couchbase 2.2 を構成する必要があります。

現在、私はCouchbase 2.0.1を使用していますが、この場合、解決策は簡単でした:

  1. /opt/couchbase/var/lib/couchbase/ipおよび ファイルに短いホスト名を設定し/opt/couchbase/var/lib/couchbase/ip_startます。
  2. in関数を に変更extra="-name ns_1@$ip"します。このパラメーターは、erl の実行に使用されました ( )extra="-sname ns_1@$ip"_start()/opt/couchbase/bin/couchbase-server-run ns_bootstrap -- $extra

この手順により、短いホスト名でノードを構成し、これらに基づいてクラスターを作成できます。

Couchbase 2.2 では、 erlがbabysitterを使用して実行されるため、これを行うことはできません。短いホスト名を使用するようにベビーシッターを設定しようとしましたが、うまくいきませんでした...

サーバーは、短いホスト名のみを処理するプライベート仮想化環境にデプロイされました。

各ノードには、パブリック IP とプライベート IP の 2 つの IP があります。pingそれ自体からコマンドを実行すると、プライベート IPを取得し、他のノードからコマンドを ping してパブリック IPを取得します。

たとえば、ノードが 1 つある場合: myhost-00 (プライベート IP: 192.168.8.170 パブリック IP: 10.254.171.29)

それ自体から:

$ ping myhost-00
PING myhost-00 (192.168.8.170) 56(84) bytes of data.

他のノードから:

$ ping myhost-00
PING myhost-00 (10.254.171.29) 56(84) bytes of data.

何か案は?

4

2 に答える 2

2

回避策を見つけました:

まず、Couchbase ファイルは一切変更していません。

次に、各 /etc/hosts ファイルの短いホスト名に偽のドメインを追加します。ファイルに、現在のノードのプライベート IP と、偽のドメインを持つ他のノードのパブリック IP を追加します。

For example, assuming I have 2 hosts: 
myhost-00 (private IP: 192.168.8.170 public IP: 10.254.171.29) 
myhost-01 (private IP: 192.168.8.168 public IP: 10.254.171.30)

myhost-00 /etc/hosts file:
...
192.168.8.170 myhost-00.mydomain
10.254.171.30 myhost-01.mydomain
...

myhost-01 /etc/hosts file:
...
10.254.171.29 myhost-00.mydomain
192.168.8.168 myhost-01.mydomain
...

最後に、ホスト名と偽のドメイン (myhost-00.mydomain および myhost-01.mydomain) を使用してクラスターを作成します。

于 2014-06-10T16:25:01.177 に答える
0

現時点では、Couchbase はノード名に短い名前を使用することを許可していません。この状況について議論し、確認するチケットの更新があります。

長いホスト名については、http ://docs.couchbase.com/couchbase-manual-2.2/#couchbase-getting-started-hostnamesおよびhttp://docs.couchbase.com/couchbase-manualでホスト名を使用する手順を確認できます。 -2.5/cb-install/#using-hostnames、バージョンによって異なります。クラスターの作成時にホスト名を活用したり、クラスターにノードを追加したり、REST API コマンドを使用して IP アドレスからホスト名に変更したりできます。詳細については、ドキュメントを参照してください。

于 2014-06-10T00:12:50.370 に答える