---
schema_version: "1"
id: 7676416977363dbbdf431c31c22afb817b96f2d7ba1e98c70b36a7f46529b3ac
title: 部署协调服务整体
collection: tableau
version: current
locale: zh-cn
portal_url: https://docs.salesforce.com/tableau/current/zh-cn/server-linux/distrib_ha_zk.md
canonical_url: https://help.tableau.com/current/server-linux/zh-cn/distrib_ha_zk.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 7b0582760188a28e9bb4168f85e07f92e0de858aa5fb8957ad82bfdeba214675
description: Deploy a Coordination Service (ZooKeeper) ensemble to maintain quorum in a cluster.
---
[跳转到主要内容](#main-content)

# 部署协调服务整体

协调服务基于 [Apache ZooKeeper](https://cwiki.apache.org/confluence/display/ZOOKEEPER/Index)（一种开源项目）而构建，用于协调服务器上的活动，可保证发生故障时的法定数量，并且作为关于服务器拓扑、配置和状态的“信任”来源。服务将自动安装在初始 Tableau Server 节点上，但在添加附加节点时不会安装其他实例。由于 Tableau Server 的成功运行取决于正常运行的协调服务，因此我们建议您部署新的协调服务整体，以为三个或更多节点的服务器安装添加其他协调服务实例。如果协调服务的一个实例有问题，这样做可以提供冗余和改进可用性。

- [硬件要求](#HardwareReqs)
- [协调服务法定数量](#ZKquorum)
- [部署新的协调服务整体](#DeployZKEnsemble)

## 硬件要求

您为 Tableau Server 使用的硬件可能会影响协调服务的运行情况。特别是：

- **内存**。协调服务将状态信息保留在内存中。按照设计，内存占用空间很小，通常不是总体服务器性能中的因素。
- **磁盘速度**。由于服务将状态信息存储在磁盘上，因此，如果单独的节点计算机上的磁盘速度很快，服务将能从中受益。
- 节点之间的**连接速度**。服务在群集节点之间连续不断地通信；快速的连接速度可帮助实现高效的同步。

由于协调服务是 I/O 密集型服务，因此，如果您在满足或刚好超过最低硬件要求的计算机上运行 Tableau Server，则可能需要配置一个协调服务整体，以将服务放在并不用于其他服务器进程的节点上。这减少了由于服务器进程之间争用 I/O 而导致延迟的机会。有关如何在专用仅协调服务节点上部署整体的信息，请参见[使用仅协调服务节点配置 Tableau Server 以实现高可用性](https://help.tableau.com/current/server-linux/zh-cn/distrib_ha_external_zk.htm)。

## 协调服务法定数量

为了确保协调服务可正常工作，服务需要一个_法定数量_ — 即最小服务实例数。这意味着安装中的节点数会影响您想要在整体中配置的协调服务实例数。

#### 要使用的协调服务实例数

Tableau Server 上一个整体中可以有的最大协调服务实例数取决于部署中的 Tableau Server 节点数。根据以下准则配置协调服务整体：

| 服务器节点总数 | 整体中建议的协调服务节点数（必须为 1、3 或 5） | 说明 |
| --- | --- | --- |
| 1-2 个节点 | 1 个节点 | 这是默认值，除非您想要将协调服务移出初始节点并移到其他节点上，否则不需要更改。 |
| 3-4 个节点 | 3 个节点 | 3 节点协调服务整体允许其中一个整体节点发生故障，而不会导致 Tableau Server 失败。 |
| 5 个或更多节点 | 3 个节点  
或 5 个节点 | 您最多可安装 5 个协调服务实例。3 节点协调服务整体允许其中一个整体节点发生故障，而不会导致 Tableau Server 失败。5 节点整体允许两个整体节点发生故障，而不会导致 Tableau Server 失败。  
  
对于大多数安装，三个协调服务节点是足够的，并且由于协调服务的 I/O 密集型性质，这是性能最高的配置。  
  
如果高可用性是您的绝对优先级，您可能需要考虑部署 5 节点协调服务整体。这在一个或多个节点发生故障但需要更多的系统资源时提供最多的冗余。最多两个整体节点可能会发生故障，而不会影响 Tableau Server（只要节点上任何其他服务也存在于仍在运行的节点上）。  
  
若要减少性能影响，请在运行较少的其他服务的节点上定位协调服务，或者考虑使用仅协调服务节点。有关详细信息，请参见[使用仅协调服务节点配置 Tableau Server 以实现高可用性](https://help.tableau.com/current/server-linux/zh-cn/distrib_ha_external_zk.htm)。 |

## 部署新的协调服务整体

如果您总共安装了三个或更多个节点，则还应该部署一个协调服务整体。如果不这样做，则每次对服务器配置或拓扑进行更改时都会出现警告消息。您可以忽略此消息，但作为最优做法，您应部署一个多节点协调服务整体。

安装 Tableau Server 时，协调服务的单个实例会安装在初始节点上。TSM 和 Tableau Server 依靠协调服务来正常运行，因此为了提供冗余并确保多节点安装的可用性，请通过部署协调服务整体来配置协调服务的其他实例。协调服务整体安装后附带一个、三个或五个协调服务实例。在 Tableau Server 的三节点安装中，建议的协调服务实例数为三个，每个节点一个。

如果存在其他待处理更改，请不要尝试部署协调服务整体。在部署新的协调服务整体之前，请放弃或应用任何待处理更改。

**注意：**此操作包括您可能需要使用 TSM 命令行执行的步骤。

以下步骤说明如何在现有的三节点 Tableau Server 群集上部署新的协调服务整体，并清理旧协调服务整体。

1. 在初始节点上，打开终端会话。
2. 停止 Tableau Server：
    
    `tsm stop`
    
    如果出现提示，请以 TSM 管理员身份登录。
    
    某些 TSM 进程将继续运行，其中包括管理控制器和管理代理。
3. 确认没有任何待处理更改：
    
    `tsm pending-changes list`
    
    如果存在待处理更改，则需要放弃或应用这些更改。应用待处理更改需要一些时间：
    
    - 放弃更改
        
        tsm pending-changes discard
    
    或
    
    - 应用更改：
        
        tsm pending-changes apply
    
    等待命令完成，然后您将返回到系统提示符。
4. 获取群集中每个节点的节点 ID：
    
    `tsm topology list-nodes -v`
5. 使用 `tsm topology deploy-coordination-service` 命令，以通过将协调服务添加到指定节点来添加新的协调服务整体。您必须指定协调服务应添加到的节点，使用实际节点 ID 来标识每个节点。除非部署失败，否则该命令还会将新整体设为“生产”整体（正在使用的整体），并移除旧整体。如果发生这种情况，请参见下面的步骤 6。
    
    **注意**：将显示"y/n"提示，确认将重新启动服务器。若要在不输入的情况下运行命令，请包括 `--ignore-prompt` 选项。
    
    例如，将协调服务部署到三节点群集的所有三个节点，这些节点分别为 node1、node2 和 node3：
    
    `tsm topology deploy-coordination-service -n node1,node2,node3`
    
    等待命令完成，然后您将返回到系统提示符。
6. （可选）如果部署失败，则需要运行 `tsm topology cleanup-coordination-service` 命令以移除未成功部署的整体。有关运行该命令的详细信息，请参见[tsm topology cleanup-coordination-service](https://help.tableau.com/current/server-linux/zh-cn/cli_topology_tsm.htm#TSMCleanupCoordination)。
7. 启动 Tableau Server：
    
    `tsm start`