同步网关和 Couchbase 服务器配置

Sync Gateway and Couchbase server configuration

我有一个 Couchbase 5.0 集群,其中包含 3 个节点和 2 个副本。

我想配置 Sync Gateway 机器以访问所有 Couchbase 服务器集群,因为我不希望它成为单点故障,但我只有 server配置文件,它似乎只有一个 URL.

{
   "log": ["*"],
   "databases": {
       "facts": {
           "server": "http://192.168.1.1:8091",
           "bucket": "bucketName",
           "username":"userName",
           "password":"password",
        "roles":{
        "firstRole": {"admin_channels":[]}
        },
           "users": { "GUEST": { "disabled": true, "admin_channels": ["*"] } },
        "sync":`
    function(doc,oldDoc)
    {
       ...
    }
}

如何配置 Sync Gateway 以了解所有集群 URL?

有一种简单的方法可以配置 URL 以支持集群中的所有 URL。

但首先,重要的是要了解即使您有一个 URL 指向 Couchbase 集群节点之一,Sync-Gateway 从这个 URL 获取拓扑集群并了解所有集群节点.

不过,您可以像这样配置 Sync-Gateway server
如果您有 3 个具有以下 URL 的 Couchbase 节点:
192.168.1.1
192.168.1.2
192.168.1.3
并且您希望 Sync-Gateway 知道所有这些您需要在服务器值中配置以下内容:

"server": "http://192.168.1.1,192.168.1.2,192.168.1.3:8091"

它在配置文件中看起来像下面这样:

{
   "log": ["*"],
   "databases": {
       "facts": {
           "server": "http://192.168.1.1,192.168.1.2,192.168.1.3:8091",
           "bucket": "bucketName",
           "username":"userName",
           "password":"password",
        "roles":{
        "firstRole": {"admin_channels":[]}
        },
           "users": { "GUEST": { "disabled": true, "admin_channels": ["*"] } },
        "sync":`
    function(doc,oldDoc)
    {
       ...
    }
}

我知道它看起来很奇怪,但这就是您配置 Sync-Gateway 的方式。

希望对你有帮助。