共用方式為


使用 SQL Server 巨量數據叢集部署的資源

適用於:SQL Server 2019 (15.x)

Important

MICROSOFT SQL Server 2019 巨量數據叢集已淘汰。 SQL Server 2019 巨量數據叢集的支援已於 2025 年 2 月 28 日結束。 如需詳細資訊,請參閱 Microsoft SQL Server 平臺上的公告部落格文章和巨量數據選項。

本文說明 SQL Server 巨量數據叢集部署的資源。

巨量資料叢集會根據配置檔來部署 Pod。 如需詳細資訊,請參閱 預設組態

本文說明使用 aks-dev-test-ha 設定檔部署的 Pod,且其中包含 Spark 集區。 查詢 Kubernetes 以查看在您的叢集中部署的 Pods。 下列範例會傳回特定命名空間下的 Pod 清單。

kubectl get pods -n <namespace>

<namespace> 替換為您的大數據叢集名稱。

如需詳細資訊,請參閱 如何在 Kubernetes 上部署 SQL Server 巨量數據叢集

下圖顯示巨量數據叢集中部署的元件:

big-data-cluster-diagram

如需架構的相關信息,請參閱 SQL Server 巨量數據叢集簡介

Deployed pods

下表列出部署在大數據叢集中的 Pods。

Name Area
control-<nnnn> Control
controldb-<#> Control
controlwd-<nnnn> Control
logsdb-<#> Control
logsui-<nnnn> Control
metricsdb-<#> Control
metricsdc-<nnnn> Control
metricsui-<nnnn> Control
mgmtproxy-<nnnn> Control
zookeeper-<#> Control
dns-<nnnn> Control
master-<#n> Master instance
operator-<nnnn> Master instance
compute-<#n>-<#m> Compute pool
data-<#>-<#> Data pool
storage-<#>-<#> Storage pool
nmnode-<#>-<#> Storage pool
sparkhead-<#> Storage pool
appproxy-<#m> Application pool
gateway-<#> Gateway service

並非所有 Pod 都包含在每個巨量數據叢集中。 具有高可用性或 Active Directory 整合的部署包含特定 Pod。

高可用性特定容器:

  • operator-<nnnn>
  • zookeeper-<#>

Active Directory 專用的伺服器組件:

  • dns-<nnnn>

下列各節說明 Pod,並列出每個 Pod 中的容器。

Control

控件 Pod 會提供控制服務。

Pod name Count Kubernetes 控制器類型 容器
control-# 1 ReplicaSet - controller

- security-support

- fluentbit
controldb 1 StatefulSet - mssql-server

- fluentbit
controlwd 1 ReplicaSet - controlwatchdog
logsdb-# 1 StatefulSet - elasticsearch
logsui 1 ReplicaSet - kibana
metricsdb-# 1 StatefulSet - influxdb
metricsdc 每個 Kubernetes 節點 1 個。 DaemonSet - telegraf
metricsui-nnnn 1 ReplicaSet - grafana
mgmtproxy-nnnn 1 ReplicaSet - service-proxy

- fluentbit
dns-nnnn 0 或 1 用於 Active Directory 整合 ReplicaSet - dns

- fluentbit

Master instance

master-<#n> 是 SQL Server 主要實例。

  • 透過 DDL 管理數據集區
  • 透過 DML作數據集區中的數據
  • 將分析查詢執行轉移至資料池
Pod name Count Kubernetes 控制器類型 容器
master-<#n> 1 或更多個用於高可用性。 StatefulSet - mssql-server

- fluentbit

- collectd

- mssql-ha-supervisor *
operator* 0 或 1 的高可用性 ReplicaSet - mssql-ha-operator

* 僅限高可用性部署。 運算子會實作並註冊 SQL Server 和可用性群組資源的自定義資源定義。 部署操作元時,它會將自身註冊為監聽器,接收在 Kubernetes 叢集中部署 SQL Server 資源的通知。 mssql-ha-supervisor 支援可用性群組。

每個 master Pod 都包含一個 SQL Server 實例。 高可用性部署包含 3 個 Pod。 每個 Pod 都包含 SQL Server 實例,其中包含 SQL Server Always On 可用性群組中的資料庫。

視工作負載情況,在部署時添加額外的 Pod。

Compute pool

計算集區提供用於計算的 SQL Server 實例。

Pod name Count Kubernetes 控制器類型 容器
compute-<#n>-<#m> 1 或更多。 StatefulSet - mssql-server

- fluentbit

- collectd
  • #n 識別計算集區。
  • #m 會識別集區內的實例標識碼。

計算集區 SQL Server 實例是無狀態的。 它們只需要 tempdb 的儲存空間。

視工作負載情況,在部署時添加額外的 Pod。

Data pool

數據集區會提供 SQL Server 實例來儲存和計算。

Pod name Count Kubernetes 控制器類型 容器
data-<#n>-<#m> 0 或更多 StatefulSet - mssql-server

- fluentbit

- collectd
  • #n 識別數據集區。
  • #m 會識別集區內的實例標識碼。

視工作負載情況,在部署時包含額外的 Pod。

Storage pool

儲存集區通過 Spark 提供資料引入,儲存在 HDFS 中,並通過 HDFS 和 SQL Server 端點存取資料。

Pod name Count Kubernetes 控制器類型 容器
storage-0-# 1 或更多。 視工作負載情況,在部署時包含額外的 Pod。 StatefulSet - hadoop

- mssql-server

- fluentbit

nmnode-0-# 1 或更多個高可用性配置 StatefulSet - hadoop

- fluentbit
sparkehead-# 1 或更多個高可用性配置 StatefulSet - hadoop-yarn-jobhistory

- hadoop-livy-sparkhistory

- hadoop-hivemetastore

-- fluentbit
zookeeper 0 或 3 以取得高可用性。 StatefulSet - zookeeper

- fluentbit

Application pool

應用程式集區包含在一些測試組態配置檔中。 應用程式集區會裝載您在部署巨量數據叢集應用程式時所定義的應用程式服務 Proxy。

appproxy 是位於應用程式集區應用程式前方的 Web API。 它會對用戶進行身份驗證,然後將請求路由傳送至應用程式。

Pod name Kubernetes 控制器類型 容器
appproxy ReplicaSet - app-service-proxy

- fluentbit

如需詳細資訊,請參閱 巨量數據叢集上的應用程式部署簡介

視工作負載情況,在部署時包含額外的 Pod。

Gateway service

閘道服務提供 Knox 閘道以存取 Spark、HDFS、Yarn、Yarn UI 和 Spark UI。

Pod name Kubernetes 控制器類型 容器
gateway-<#> StatefulSet - knox

- fluentbit

僅支援一個閘道。

開放原始碼容器參考

如需特定開放原始碼專案和版本,請參閱 開放原始碼軟體參考

Next steps

若要深入瞭解 SQL Server 巨量數據叢集,請參閱下列資源: