Condividi tramite


Risorse distribuite con cluster Big Data di SQL Server

Si applica a: SQL Server 2019 (15.x)

Importante

Il componente aggiuntivo per i cluster Big Data di Microsoft SQL Server 2019 verrà ritirato. Il supporto per i cluster Big Data di SQL Server 2019 terminerà il 28 febbraio 2025. Tutti gli utenti esistenti di SQL Server 2019 con Software Assurance saranno completamente supportati nella piattaforma e fino a quel momento il software continuerà a ricevere aggiornamenti cumulativi di SQL Server. Per altre informazioni, vedere il post di blog relativo all'annuncio e Opzioni per i Big Data nella piattaforma Microsoft SQL Server.

Questo articolo descrive le risorse distribuite da un cluster Big Data di SQL Server.

Un cluster Big Data distribuisce i pod in base al profilo di distribuzione. Per informazioni dettagliate, vedere Configurazioni predefinite.

Questo articolo descrive i pod distribuiti con il profilo aks-dev-test-ha e include un pool Spark. Per visualizzare i pod distribuiti nel cluster, è possibile eseguire una query in Kubernetes. Nell'esempio seguente viene restituito un elenco di pod in uno spazio dei nomi specifico.

kubectl get pods -n <namespace>

Sostituire <namespace> con il nome del cluster Big Data.

Per altre informazioni, vedere Come distribuire cluster Big Data di SQL Server in Kubernetes.

Il diagramma seguente mostra i componenti distribuiti in un cluster Big Data:

big-data-cluster-diagram

Per informazioni sull'architettura, vedere Introduzione ai cluster Big Data di SQL Server.

Pod distribuiti

La tabella seguente elenca i pod distribuiti in un cluster Big Data.

Nome Area
control-<nnnn> Controllo
controldb-<#> Controllo
controlwd-<nnnn> Controllo
logsdb-<#> Controllo
logsui-<nnnn> Controllo
metricsdb-<#> Controllo
metricsdc-<nnnn> Controllo
metricsui-<nnnn> Controllo
mgmtproxy-<nnnn> Controllo
zookeeper-<#> Controllo
dns-<nnnn> Controllo
master-<#n> Istanza master
operator-<nnnn> Istanza master
compute-<#n>-<#m> Pool di calcolo
data-<#>-<#> Pool di dati
storage-<#>-<#> Pool di archiviazione
nmnode-<#>-<#> Pool di archiviazione
sparkhead-<#> Pool di archiviazione
appproxy-<#m> Pool di applicazioni
gateway-<#> Servizio gateway

Non tutti i pod sono inclusi in ogni cluster Big Data. Le distribuzioni con disponibilità elevata o integrazione di Active Directory includono POD specifici.

Pod specifici in caso di disponibilità elevata:

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

Pod specifici di Active Directory:

  • dns-<nnnn>

Le sezioni seguenti descrivono i pod ed elencano i contenitori presenti in ogni pod.

Controllo

I pod di controllo forniscono il servizio di controllo.

Nome pod Conteggio Tipo di controller Kubernetes Contenitori
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 1 per nodo Kubernetes. DaemonSet - telegraf
metricsui-nnnn 1 ReplicaSet - grafana
mgmtproxy-nnnn 1 ReplicaSet - service-proxy

- fluentbit
dns-nnnn 0 o 1 per l'integrazione di Active Directory ReplicaSet - dns

- fluentbit

Istanza master

master-<#n> è l'istanza master di SQL Server.

  • Gestisce il pool di dati tramite DDL
  • Modifica i dati nel pool di dati tramite DML
  • Disattiva l'esecuzione di query analitiche nel pool di dati
Nome pod Conteggio Tipo di controller Kubernetes Contenitori
master-<#n> 1 o più in caso di disponibilità elevata. StatefulSet - mssql-server

- fluentbit

- collectd

- mssql-ha-supervisor *
operator* 0 o 1 in caso di disponibilità elevata ReplicaSet - mssql-ha-operator

* Solo distribuzioni con disponibilità elevata. L'operatore implementa e registra la definizione di risorsa personalizzata per SQL Server e le risorse del gruppo di disponibilità. Quando l'operatore viene distribuito, viene registrato come listener delle notifiche relative alle risorse SQL Server distribuite nel cluster Kubernetes. mssql-ha-supervisor supporta il gruppo di disponibilità.

Ogni pod master contiene un'istanza di SQL Server. Una distribuzione a disponibilità elevata include tre pod, ciascuno dei quali contiene un'istanza di SQL Server con database in un gruppo di disponibilità Always On SQL Server.

È possibile includere altri pod in fase di distribuzione, in base al carico di lavoro.

Pool di calcolo

Il pool di calcolo fornisce un'istanza di SQL Server per il calcolo.

Nome pod Conteggio Tipo di controller Kubernetes Contenitori
compute-<#n>-<#m> 1 o più. StatefulSet - mssql-server

- fluentbit

- collectd
  • #n identifica il pool di calcolo.
  • #m identifica l'ID istanza nel pool.

Le istanze del pool di calcolo SQL Server sono senza stato. Richiedono solo spazio di archiviazione per tempdb.

È possibile includere altri pod in fase di distribuzione, in base al carico di lavoro.

Pool di dati

Il pool di dati fornisce istanze di SQL Server per l'archiviazione e il calcolo.

Nome pod Conteggio Tipo di controller Kubernetes Contenitori
data-<#n>-<#m> 0 o più personalizzati StatefulSet - mssql-server

- fluentbit

- collectd
  • #n identifica il pool di dati.
  • #m identifica l'ID istanza nel pool.

È possibile includere altri pod in fase di distribuzione, in base al carico di lavoro.

Pool di archiviazione

Il pool di archiviazione consente l'inserimento di dati tramite Spark, l'archiviazione in HDFS e l'accesso ai dati tramite HDFS, oltre a fornire endpoint SQL Server.

Nome pod Conteggio Tipo di controller Kubernetes Contenitori
storage-0-# 1 o più. È possibile includere altri pod in fase di distribuzione, in base al carico di lavoro. StatefulSet - hadoop

- mssql-server

- fluentbit

nmnode-0-# 1 o più in caso di disponibilità elevata StatefulSet - hadoop

- fluentbit
sparkehead-# 1 o più in caso di disponibilità elevata StatefulSet - hadoop-yarn-jobhistory

- hadoop-livy-sparkhistory

- hadoop-hivemetastore

-- fluentbit
zookeeper 0 o 3 in caso di disponibilità elevata. StatefulSet - zookeeper

- fluentbit

Pool di applicazioni

Il pool di applicazioni è incluso in alcuni profili di configurazione di test. Esegue l'hosting dei proxy del servizio dell'applicazione definiti quando si distribuiscono le applicazioni per i cluster Big Data.

appproxy è un'API Web che si trova davanti alle applicazioni del pool di applicazioni. Autentica gli utenti e quindi instrada le richieste alle applicazioni.

Nome pod Tipo di controller Kubernetes Contenitori
appproxy ReplicaSet - app-service-proxy

- fluentbit

Per altre informazioni, vedere Introduzione alla distribuzione di applicazioni in un cluster Big Data.

È possibile includere altri pod in fase di distribuzione, in base al carico di lavoro.

Servizio gateway

I servizi gateway forniscono il gateway Knox a Spark, HDFS, Yarn, l'interfaccia utente di Yarn e l'interfaccia utente di Spark.

Nome pod Tipo di controller Kubernetes Contenitori
gateway-<#> StatefulSet - knox

- fluentbit

È supportato un solo gateway.

Riferimenti a contenitori open source

Per progetti e versioni open source specifici, vedere Informazioni di riferimento sul software open source.

Passaggi successivi

Per altre informazioni sui cluster Big Data di SQL Server, vedere le risorse seguenti: