巨量資料叢集的部署組態檔參考
適用於: SQL Server 2019 (15.x)
重要
Microsoft SQL Server 2019 巨量資料叢集附加元件將會淘汰。 SQL Server 2019 巨量資料叢集的支援將於 2025 年 2 月 28 日結束。 平台上將完全支援含軟體保證 SQL Server 2019 的所有現有使用者,而且軟體將會持續透過 SQL Server 累積更新來維護,直到該時間為止。 如需詳細資訊,請參閱公告部落格文章與 Microsoft SQL Server 平台上的巨量資料選項。
本文提供記載 SQL Server 2019 巨量資料叢集部署組態檔結構的 JSON 檔案。
提示
請勿使用此檔案作為實際的部署組態檔。 敬請遵循部署指引中如何使用組態檔的指示。
警告
必須在部署設定檔 control.json 檔案中將參數 imagePullPolicy
設定為 "Always"
。
部署組態檔
使用下列 JSON 檔案,作為巨量資料叢集部署組態檔中的結構和設定參考。
{
"apiVersion": {
"name": "API Version",
"description": "The API version"
},
"metadata": {
"kind": {
"name": "Deployment Type",
"description": "The type of deployment - in this case a 'Cluster'"
},
"name": {
"name": "Cluster Name",
"description": "SQL Server big data cluster name. This is also the name of the Kubernetes namespace to deploy SQLServer big data cluster into."
}
},
"spec": {
"resources": [
{
"spec": {
"type": {
"name": "Pool Type",
"description": "HDFS Name Node"
},
"replicas": {
"name": "HDFS Name Node Replicas",
"description": "The number of replicas you would like in HDFS Name Node pool"
},
"settings": {
"name": "HDFS Name Node pool configurations",
"description": "Configuration key-value pairs for HDFS Name Node pool, overriding service configurations"
}
}
},
{
"spec": {
"type": {
"name": "Pool Type",
"description": "Spark Head Node"
},
"replicas": {
"name": "Spark Head Node Replicas",
"description": "The number of replicas you would like in Spark Head Node pool"
},
"settings": {
"name": "Spark Head Node pool configurations",
"description": "Configuration key-value pairs for Spark Head Node pool, overriding service configurations"
}
}
},
{
"spec": {
"type": {
"name": "Pool Type",
"description": "Zookeeper"
},
"replicas": {
"name": "Zookeeper Node Replicas",
"description": "The number of replicas you would like in Zookeeper pool"
},
"settings": {
"name": "Zookeeper Node pool configurations",
"description": "Configuration key-value pairs for Zookeeper Node pool, overriding service configurations"
}
}
},
{
"spec": {
"type": {
"name": "Pool Type",
"description": "Gateway"
},
"replicas": {
"name": "Gateway Node Replicas",
"description": "The number of replicas you would like in Gateway pool"
},
"settings": {
"name": "Gateway pool configurations",
"description": "Configuration key-value pairs for Gateway pool, overriding service configurations"
},
"endpoints": [
{
"name": {
"name": "Gateway Endpoint Name",
"description": "Endpoint name of gateway pool"
},
"dnsName": {
"name": "Gateway DNS Name",
"description": "External DNS name for gateway pool"
},
"serviceType": {
"name": "Gateway Pool Endpoint Type",
"description": "Endpoint type of gateway pool - NodePort"
},
"port": {
"name": "Gateway Pool Port",
"description": "The port for the gateway endpoint"
}
}
]
}
},
{
"spec": {
"type": {
"name": "Pool Type",
"description": "AppProxy"
},
"replicas": {
"name": "AppProxy Node Replicas",
"description": "The number of replicas you would like in AppProxy pool"
},
"settings": {
"name": "AppProxy pool configurations",
"description": "Configuration key-value pairs for AppProxy pool, overriding service configurations"
},
"endpoints": [
{
"name": {
"name": "AppProxy Endpoint Name",
"description": "Endpoint name of appproxy pool"
},
"dnsName": {
"name": "AppProxy DNS Name",
"description": "External DNS name for appproxy pool"
},
"serviceType": {
"name": "AppProxy Pool Endpoint Type",
"description": "Endpoint type of appproxy pool - NodePort"
},
"port": {
"name": "AppProxy Pool Port",
"description": "The port for the appproxy endpoint"
}
}
]
}
},
{
"metadata": {
"kind": {
"name": "Deployment Type",
"description": "The type of deployment - in this case a Pool"
},
"name": {
"name": "Pool Name",
"description": "The name of the pool. `Default` is only allowed value in current version."
}
},
"spec": {
"type": {
"name": "Pool Type",
"description": "Master"
},
"replicas": {
"name": "Master Pool Replicas",
"description": "The number of replicas you would like in Master pool"
},
"settings": {
"name": "Master pool configurations",
"description": "Configuration key-value pairs for Master pool, overriding service configurations"
},
"storage": {
"className": {
"name": "Kubernetes Storage Class",
"description": "This indicates the name of the Kubernetes Storage Class to use. You must pre-provision the storage class and the persistent volumes or you can use a built in storage class if the platform you are deploying provides this capability."
},
"accessMode": {
"name": "Kubernetes Persistent Volume Access Mode",
"description": "Access mode for the Persistent Volume. Default value is ReadWriteOnce."
},
"size": {
"name": "Kubernetes Persistent Volume Claim Size",
"description": "The size of each Persisted Volume Claim created. Default value is 10Gi."
}
},
"endpoints": [
{
"name": {
"name": "Master Endpoint Name",
"description": "Endpoint name of Master pool"
},
"dnsName": {
"name": "Master DNS Name",
"description": "External DNS name for Master pool"
},
"serviceType": {
"name": "Master Pool Endpoint Type",
"description": "Endpoint type of Master Pool - NodePort"
},
"port": {
"name": "Master Pool Port",
"description": "The port for the master endpoint"
}
}
]
}
},
{
"metadata": {
"kind": {
"name": "Deployment Type",
"description": "The type of deployment - in this case a Pool"
},
"name": {
"name": "Pool Name",
"description": "The name of the pool. `Default` is only allowed value in current version."
}
},
"spec": {
"type": {
"name": "Pool Type",
"description": "Compute"
},
"replicas": {
"name": "Compute Pool Replicas",
"description": "The number of replicas you would like in Compute pool"
},
"settings": {
"name": "Compute pool configurations",
"description": "Configuration key-value pairs for Compute pool, overriding service configurations"
},
"storage": {
"className": {
"name": "Kubernetes Storage Class",
"description": "This indicates the name of the Kubernetes Storage Class to use. You must pre-provision the storage class and the persistent volumes or you can use a built in storage class if the platform you are deploying provides this capability."
},
"accessMode": {
"name": "Kubernetes Persistent Volume Access Mode",
"description": "Access mode for the Persistent Volume. Default value is ReadWriteOnce."
},
"size": {
"name": "Kubernetes Persistent Volume Claim Size",
"description": "The size of each Persisted Volume Claim created. Default value is 10Gi."
}
}
}
},
{
"metadata": {
"kind": {
"name": "Deployment Type",
"description": "The type of deployment - in this case a Pool"
},
"name": {
"name": "Pool Name",
"description": "The name of the pool. `Default` is only allowed value in current version."
}
},
"spec": {
"type": {
"name": "Pool Type",
"description": "Data"
},
"replicas": {
"name": "Data Pool Replicas",
"description": "The number of replicas you would like in Data pool"
},
"settings": {
"name": "Data pool configurations",
"description": "Configuration key-value pairs for Data pool, overriding service configurations"
},
"storage": {
"className": {
"name": "Kubernetes Storage Class",
"description": "This indicates the name of the Kubernetes Storage Class to use. You must pre-provision the storage class and the persistent volumes or you can use a built in storage class if the platform you are deploying provides this capability."
},
"accessMode": {
"name": "Kubernetes Persistent Volume Access Mode",
"description": "Access mode for the Persistent Volume. Default value is ReadWriteOnce."
},
"size": {
"name": "Kubernetes Persistent Volume Claim Size",
"description": "The size of each Persisted Volume Claim created. Default value is 10Gi."
}
}
}
},
{
"metadata": {
"kind": {
"name": "Deployment Type",
"description": "The type of deployment - in this case a Pool"
},
"name": {
"name": "Pool Name",
"description": "The name of the pool. `Default` is only allowed value in current version."
}
},
"spec": {
"type": {
"name": "Pool Type",
"description": "Storage"
},
"replicas": {
"name": "Storage Pool Replicas",
"description": "The number of replicas you would like in Storage pool"
},
"settings": {
"name": "Storage pool configurations",
"description": "Configuration key-value pairs for Storage pool, overriding service configurations"
},
"storage": {
"className": {
"name": "Kubernetes Storage Class",
"description": "This indicates the name of the Kubernetes Storage Class to use. You must pre-provision the storage class and the persistent volumes or you can use a built in storage class if the platform you are deploying provides this capability."
},
"accessMode": {
"name": "Kubernetes Persistent Volume Access Mode",
"description": "Access mode for the Persistent Volume. Default value is ReadWriteOnce."
},
"size": {
"name": "Kubernetes Persistent Volume Claim Size",
"description": "The size of each Persisted Volume Claim created. Default value is 10Gi."
}
}
}
},
{
"metadata": {
"kind": {
"name": "Deployment Type",
"description": "The type of deployment - in this case a Pool"
},
"name": {
"name": "Pool Name",
"description": "The name of the pool. `Default` is only allowed value in current version."
}
},
"spec": {
"type": {
"name": "Pool Type",
"description": "Spark - this is an optional pool that only runs Spark job, it does not run HDFS data node"
},
"replicas": {
"name": "Spark Pool Replicas",
"description": "The number of replicas you would like in Spark pool"
},
"settings": {
"name": "Spark pool configurations",
"description": "Configuration key-value pairs for Spark pool, overriding service configurations"
},
"storage": {
"className": {
"name": "Kubernetes Storage Class",
"description": "This indicates the name of the Kubernetes Storage Class to use. You must pre-provision the storage class and the persistent volumes or you can use a built in storage class if the platform you are deploying provides this capability."
},
"accessMode": {
"name": "Kubernetes Persistent Volume Access Mode",
"description": "Access mode for the Persistent Volume. Default value is ReadWriteOnce."
},
"size": {
"name": "Kubernetes Persistent Volume Claim Size",
"description": "The size of each Persisted Volume Claim created. Default value is 10Gi."
}
}
}
}
],
"services": {
"sql": {
"resources": [
{
"name": "Resource",
"description": "Resource to be included in sql service, includes master, compute, data and storage pool"
}
],
"settings": {
"name": "sql service configurations",
"description": "Configuration key-value pairs for sql service"
}
},
"hdfs": {
"resources": [
{
"name": "Resource",
"description": "Resource to be included in hdfs service, includes name node, zookeeper, storage and spark head pool, optionally includes spark pool"
}
],
"settings": {
"name": "hdfs service configurations",
"description": "Configuration key-value pairs for hdfs service"
}
},
"spark": {
"resources": [
{
"name": "Resource",
"description": "Resource to be included in spark service, includes storage and spark head pool, optionally includes spark pool"
}
],
"settings": {
"name": "spark service configurations",
"description": "Configuration key-value pairs for spark service"
}
}
}
}
}
後續步驟
如需如何使用和自訂部署組態檔的詳細資訊,請參閱如何在 Kubernetes 上部署 SQL Server 巨量資料叢集。