你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Bicep 资源定义
可以使用目标操作部署 Spring/apps/deployments 资源类型:
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
若要创建 Microsoft.AppPlatform/Spring/apps/deployments 资源,请将以下 Bicep 添加到模板。
resource symbolicname 'Microsoft.AppPlatform/Spring/apps/deployments@2023-03-01-preview' = {
name: 'string'
sku: {
capacity: int
name: 'string'
tier: 'string'
}
parent: resourceSymbolicName
properties: {
active: bool
deploymentSettings: {
addonConfigs: {
{customized property}: any()
}
containerProbeSettings: {
disableProbe: bool
}
environmentVariables: {
{customized property}: 'string'
}
livenessProbe: {
disableProbe: bool
failureThreshold: int
initialDelaySeconds: int
periodSeconds: int
probeAction: {
type: 'string'
// For remaining properties, see ProbeAction objects
}
successThreshold: int
timeoutSeconds: int
}
readinessProbe: {
disableProbe: bool
failureThreshold: int
initialDelaySeconds: int
periodSeconds: int
probeAction: {
type: 'string'
// For remaining properties, see ProbeAction objects
}
successThreshold: int
timeoutSeconds: int
}
resourceRequests: {
cpu: 'string'
memory: 'string'
}
scale: {
maxReplicas: int
minReplicas: int
rules: [
{
azureQueue: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
queueLength: int
queueName: 'string'
}
custom: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
type: 'string'
}
http: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
}
name: 'string'
tcp: {
auth: [
{
secretRef: 'string'
triggerParameter: 'string'
}
]
metadata: {
{customized property}: 'string'
}
}
}
]
}
startupProbe: {
disableProbe: bool
failureThreshold: int
initialDelaySeconds: int
periodSeconds: int
probeAction: {
type: 'string'
// For remaining properties, see ProbeAction objects
}
successThreshold: int
timeoutSeconds: int
}
terminationGracePeriodSeconds: int
}
source: {
version: 'string'
type: 'string'
// For remaining properties, see UserSourceInfo objects
}
}
}
ProbeAction 对象
设置 类型 属性以指定对象的类型。
对于 ExecAction,请使用:
type: 'ExecAction'
command: [
'string'
]
对于 HTTPGetAction,请使用:
type: 'HTTPGetAction'
path: 'string'
scheme: 'string'
对于 TCPSocketAction,请使用:
type: 'TCPSocketAction'
UserSourceInfo 对象
设置 类型 属性以指定对象的类型。
对于 BuildResult,请使用:
type: 'BuildResult'
buildResultId: 'string'
对于 容器,请使用:
type: 'Container'
customContainer: {
args: [
'string'
]
command: [
'string'
]
containerImage: 'string'
imageRegistryCredential: {
password: 'string'
username: 'string'
}
languageFramework: 'string'
server: 'string'
}
对于 Jar,请使用:
type: 'Jar'
jvmOptions: 'string'
relativePath: 'string'
runtimeVersion: 'string'
对于 NetCoreZip,请使用:
type: 'NetCoreZip'
netCoreMainEntryPath: 'string'
relativePath: 'string'
runtimeVersion: 'string'
对于 源,请使用:
type: 'Source'
artifactSelector: 'string'
relativePath: 'string'
runtimeVersion: 'string'
属性值
Spring/apps/deployments
DeploymentResourceProperties
DeploymentSettings
名字 |
描述 |
价值 |
addonConfigs |
加载项集合 |
DeploymentSettingsAddonConfigs |
containerProbeSettings |
容器生存度和就绪情况探测设置 |
ContainerProbeSettings |
environmentVariables |
环境变量集合 |
DeploymentSettingsEnvironmentVariables |
livenessProbe |
定期探测应用实例的运行情况。 如果探测失败,应用实例将重新启动。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
readinessProbe |
定期探测应用实例服务就绪情况。 如果探测失败,将从服务终结点中删除应用实例。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
resourceRequests |
所需的 CPU 和内存的请求资源数量。 建议使用此字段来表示所需的 CPU 和内存,稍后将弃用旧字段 CPU 和 memoryInGB。 |
ResourceRequests |
规模 |
缩放 Azure Spring Apps 应用实例的属性。 |
缩放 |
startupProbe |
StartupProbe 指示应用实例已成功初始化。 如果指定,则不会执行其他探测,直到成功完成。 如果此探测失败,Pod 将重新启动,就像 livenessProbe 失败一样。 这可用于在应用实例生命周期开始时提供不同的探测参数,这可能需要很长时间才能加载数据或预热缓存,而不是在稳定状态操作期间。 这无法更新。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
terminationGracePeriodSeconds |
应用实例需要正常终止的可选持续时间(以秒为单位)。 删除请求可能会减少。 值必须是非负整数。 值零表示通过终止信号立即停止(没有关闭机会)。 如果此值为 nil,则会改用默认宽限期。 宽限期是在应用实例中运行的进程发送终止信号以及进程强行停止并带有终止信号的时间之后的持续时间(以秒为单位)。 设置此值的时间超过进程的预期清理时间。 默认值为 90 秒。 |
int |
DeploymentSettingsAddonConfigs
名字 |
描述 |
价值 |
{自定义属性} |
|
对于 Bicep,可以使用 any() 函数。 |
ContainerProbeSettings
名字 |
描述 |
价值 |
disableProbe |
指示是否禁用实时性和就绪情况探测 |
bool |
DeploymentSettingsEnvironmentVariables
探针
名字 |
描述 |
价值 |
disableProbe |
指示探测是否已禁用。 |
bool (必需) |
failureThreshold |
探测在成功后被视为失败的最小连续失败。 最小值为 1。 |
int |
initialDelaySeconds |
在启动探测之前启动应用实例后的秒数。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
int |
periodSeconds |
执行探测的频率(以秒为单位)。 最小值为 1。 |
int |
probeAction |
探测的操作。 |
ProbeAction |
successThreshold |
探测在失败后被视为成功的最小连续成功次数。 对于实时性和启动,必须为 1。 最小值为 1。 |
int |
timeoutSeconds |
探测超时的秒数。最小值为 1。 |
int |
ProbeAction
ExecAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“ExecAction”(必需) |
命令 |
命令是在容器内执行的命令行,该命令的工作目录是容器文件系统中的根目录('/')。 该命令不在 shell 中运行,因此传统的 shell 指令('、'等)将不起作用。 若要使用 shell,需要显式调用该 shell。 退出状态为 0 被视为实时/正常,非零状态不正常。 |
string[] |
HttpGetAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“HTTPGetAction”(必需) |
路径 |
在 HTTP 服务器上访问的路径。 |
字符串 |
方案 |
用于连接到主机的方案。 默认为 HTTP。
可能的枚举值:
-
"HTTP" 意味着所使用的方案将 http://
-
"HTTPS" 意味着所使用的方案将 https:// |
“HTTP” “HTTPS” |
TCPSocketAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“TCPSocketAction”(必需) |
ResourceRequests
名字 |
描述 |
价值 |
中央处理器 |
所需的 CPU。 1 核可以表示 1 或 1000 米。 对于基本层,这应为 500 米或 1,标准层应为 {500m、1、2、3、 4} 。 |
字符串 |
记忆 |
所需的内存。 1 GB 可以由 1Gi 或 1024Mi 表示。 对于基本层,这应该是 {512Mi、1Gi、2Gi} 和标准层的 {512Mi、1Gi、2Gi、...、8Gi}。 |
字符串 |
规模
名字 |
描述 |
价值 |
maxReplicas |
自选。 容器副本的最大数目。 如果未设置,则默认为 10。 |
int |
minReplicas |
自选。 容器副本的最小数量。 |
int |
规则 |
缩放规则。 |
ScaleRule[] |
ScaleRule
QueueScaleRule
名字 |
描述 |
价值 |
认证 |
队列缩放规则的身份验证机密。 |
ScaleRuleAuth[] |
queueLength |
队列长度。 |
int |
queueName |
队列名称。 |
字符串 |
ScaleRuleAuth
名字 |
描述 |
价值 |
secretRef |
要从中拉取身份验证参数的 Azure Spring Apps 应用实例机密的名称。 |
字符串 |
triggerParameter |
使用机密的触发器参数 |
字符串 |
CustomScaleRule
HttpScaleRule
TcpScaleRule
UserSourceInfo
BuildResultUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“BuildResult”(必需) |
buildResultId |
同一 Spring 实例下现有成功生成结果的资源 ID。 |
字符串 |
CustomContainerUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Container”(必需) |
customContainer |
自定义容器有效负载 |
CustomContainer |
CustomContainer
名字 |
描述 |
价值 |
args |
入口点的参数。 如果未提供 docker 映像的 CMD,则使用此 CMD。 |
string[] |
命令 |
入口点数组。 未在 shell 中执行。 如果未提供 Docker 映像的 ENTRYPOINT,则使用此条目。 |
string[] |
containerImage |
自定义容器的容器映像。 这应采用 {repository}:{tag} 的形式,没有注册表的服务器名称 |
字符串 |
imageRegistryCredential |
映像注册表的凭据 |
ImageRegistryCredential |
languageFramework |
上传的容器映像的语言框架 |
字符串 |
服务器 |
包含容器映像的注册表的名称 |
字符串 |
ImageRegistryCredential
名字 |
描述 |
价值 |
密码 |
映像注册表凭据的密码 |
字符串 |
username |
映像注册表凭据的用户名 |
字符串 |
JarUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Jar”(必需) |
jvmOptions |
JVM 参数 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
Jar 文件的运行时版本 |
字符串 |
NetCoreZipUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“NetCoreZip”(必需) |
netCoreMainEntryPath |
相对于 zip 根目录的 .NET 可执行文件的路径 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
.Net 文件的运行时版本 |
字符串 |
SourceUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Source”(必需) |
artifactSelector |
要用于多模块项目的部署的项目的选择器。 这应该是 目标模块/项目的相对路径。 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
源文件的运行时版本 |
字符串 |
Sku
名字 |
描述 |
价值 |
能力 |
目标资源的当前容量 |
int |
名字 |
Sku 的名称 |
字符串 |
层 |
Sku 的层 |
字符串 |
快速入门模板
以下快速入门模板部署此资源类型。
ARM 模板资源定义
可以使用目标操作部署 Spring/apps/deployments 资源类型:
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
若要创建 Microsoft.AppPlatform/Spring/apps/deployments 资源,请将以下 JSON 添加到模板。
{
"type": "Microsoft.AppPlatform/Spring/apps/deployments",
"apiVersion": "2023-03-01-preview",
"name": "string",
"sku": {
"capacity": "int",
"name": "string",
"tier": "string"
},
"properties": {
"active": "bool",
"deploymentSettings": {
"addonConfigs": {
"{customized property}": {}
},
"containerProbeSettings": {
"disableProbe": "bool"
},
"environmentVariables": {
"{customized property}": "string"
},
"livenessProbe": {
"disableProbe": "bool",
"failureThreshold": "int",
"initialDelaySeconds": "int",
"periodSeconds": "int",
"probeAction": {
"type": "string"
// For remaining properties, see ProbeAction objects
},
"successThreshold": "int",
"timeoutSeconds": "int"
},
"readinessProbe": {
"disableProbe": "bool",
"failureThreshold": "int",
"initialDelaySeconds": "int",
"periodSeconds": "int",
"probeAction": {
"type": "string"
// For remaining properties, see ProbeAction objects
},
"successThreshold": "int",
"timeoutSeconds": "int"
},
"resourceRequests": {
"cpu": "string",
"memory": "string"
},
"scale": {
"maxReplicas": "int",
"minReplicas": "int",
"rules": [
{
"azureQueue": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"queueLength": "int",
"queueName": "string"
},
"custom": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
},
"type": "string"
},
"http": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
}
},
"name": "string",
"tcp": {
"auth": [
{
"secretRef": "string",
"triggerParameter": "string"
}
],
"metadata": {
"{customized property}": "string"
}
}
}
]
},
"startupProbe": {
"disableProbe": "bool",
"failureThreshold": "int",
"initialDelaySeconds": "int",
"periodSeconds": "int",
"probeAction": {
"type": "string"
// For remaining properties, see ProbeAction objects
},
"successThreshold": "int",
"timeoutSeconds": "int"
},
"terminationGracePeriodSeconds": "int"
},
"source": {
"version": "string",
"type": "string"
// For remaining properties, see UserSourceInfo objects
}
}
}
ProbeAction 对象
设置 类型 属性以指定对象的类型。
对于 ExecAction,请使用:
"type": "ExecAction",
"command": [ "string" ]
对于 HTTPGetAction,请使用:
"type": "HTTPGetAction",
"path": "string",
"scheme": "string"
对于 TCPSocketAction,请使用:
"type": "TCPSocketAction"
UserSourceInfo 对象
设置 类型 属性以指定对象的类型。
对于 BuildResult,请使用:
"type": "BuildResult",
"buildResultId": "string"
对于 容器,请使用:
"type": "Container",
"customContainer": {
"args": [ "string" ],
"command": [ "string" ],
"containerImage": "string",
"imageRegistryCredential": {
"password": "string",
"username": "string"
},
"languageFramework": "string",
"server": "string"
}
对于 Jar,请使用:
"type": "Jar",
"jvmOptions": "string",
"relativePath": "string",
"runtimeVersion": "string"
对于 NetCoreZip,请使用:
"type": "NetCoreZip",
"netCoreMainEntryPath": "string",
"relativePath": "string",
"runtimeVersion": "string"
对于 源,请使用:
"type": "Source",
"artifactSelector": "string",
"relativePath": "string",
"runtimeVersion": "string"
属性值
Spring/apps/deployments
名字 |
描述 |
价值 |
类型 |
资源类型 |
“Microsoft.AppPlatform/Spring/apps/deployments” |
apiVersion |
资源 API 版本 |
'2023-03-01-preview' |
名字 |
资源名称
了解如何在 JSON ARM 模板中设置子资源的名称和类型。 |
string (必需) |
sku |
部署资源的 SKU |
Sku |
性能 |
部署资源的属性 |
DeploymentResourceProperties |
DeploymentResourceProperties
DeploymentSettings
名字 |
描述 |
价值 |
addonConfigs |
加载项集合 |
DeploymentSettingsAddonConfigs |
containerProbeSettings |
容器生存度和就绪情况探测设置 |
ContainerProbeSettings |
environmentVariables |
环境变量集合 |
DeploymentSettingsEnvironmentVariables |
livenessProbe |
定期探测应用实例的运行情况。 如果探测失败,应用实例将重新启动。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
readinessProbe |
定期探测应用实例服务就绪情况。 如果探测失败,将从服务终结点中删除应用实例。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
resourceRequests |
所需的 CPU 和内存的请求资源数量。 建议使用此字段来表示所需的 CPU 和内存,稍后将弃用旧字段 CPU 和 memoryInGB。 |
ResourceRequests |
规模 |
缩放 Azure Spring Apps 应用实例的属性。 |
缩放 |
startupProbe |
StartupProbe 指示应用实例已成功初始化。 如果指定,则不会执行其他探测,直到成功完成。 如果此探测失败,Pod 将重新启动,就像 livenessProbe 失败一样。 这可用于在应用实例生命周期开始时提供不同的探测参数,这可能需要很长时间才能加载数据或预热缓存,而不是在稳定状态操作期间。 这无法更新。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
terminationGracePeriodSeconds |
应用实例需要正常终止的可选持续时间(以秒为单位)。 删除请求可能会减少。 值必须是非负整数。 值零表示通过终止信号立即停止(没有关闭机会)。 如果此值为 nil,则会改用默认宽限期。 宽限期是在应用实例中运行的进程发送终止信号以及进程强行停止并带有终止信号的时间之后的持续时间(以秒为单位)。 设置此值的时间超过进程的预期清理时间。 默认值为 90 秒。 |
int |
DeploymentSettingsAddonConfigs
ContainerProbeSettings
名字 |
描述 |
价值 |
disableProbe |
指示是否禁用实时性和就绪情况探测 |
bool |
DeploymentSettingsEnvironmentVariables
探针
名字 |
描述 |
价值 |
disableProbe |
指示探测是否已禁用。 |
bool (必需) |
failureThreshold |
探测在成功后被视为失败的最小连续失败。 最小值为 1。 |
int |
initialDelaySeconds |
在启动探测之前启动应用实例后的秒数。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
int |
periodSeconds |
执行探测的频率(以秒为单位)。 最小值为 1。 |
int |
probeAction |
探测的操作。 |
ProbeAction |
successThreshold |
探测在失败后被视为成功的最小连续成功次数。 对于实时性和启动,必须为 1。 最小值为 1。 |
int |
timeoutSeconds |
探测超时的秒数。最小值为 1。 |
int |
ProbeAction
ExecAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“ExecAction”(必需) |
命令 |
命令是在容器内执行的命令行,该命令的工作目录是容器文件系统中的根目录('/')。 该命令不在 shell 中运行,因此传统的 shell 指令('、'等)将不起作用。 若要使用 shell,需要显式调用该 shell。 退出状态为 0 被视为实时/正常,非零状态不正常。 |
string[] |
HttpGetAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“HTTPGetAction”(必需) |
路径 |
在 HTTP 服务器上访问的路径。 |
字符串 |
方案 |
用于连接到主机的方案。 默认为 HTTP。
可能的枚举值:
-
"HTTP" 意味着所使用的方案将 http://
-
"HTTPS" 意味着所使用的方案将 https:// |
“HTTP” “HTTPS” |
TCPSocketAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“TCPSocketAction”(必需) |
ResourceRequests
名字 |
描述 |
价值 |
中央处理器 |
所需的 CPU。 1 核可以表示 1 或 1000 米。 对于基本层,这应为 500 米或 1,标准层应为 {500m、1、2、3、 4} 。 |
字符串 |
记忆 |
所需的内存。 1 GB 可以由 1Gi 或 1024Mi 表示。 对于基本层,这应该是 {512Mi、1Gi、2Gi} 和标准层的 {512Mi、1Gi、2Gi、...、8Gi}。 |
字符串 |
规模
名字 |
描述 |
价值 |
maxReplicas |
自选。 容器副本的最大数目。 如果未设置,则默认为 10。 |
int |
minReplicas |
自选。 容器副本的最小数量。 |
int |
规则 |
缩放规则。 |
ScaleRule[] |
ScaleRule
QueueScaleRule
名字 |
描述 |
价值 |
认证 |
队列缩放规则的身份验证机密。 |
ScaleRuleAuth[] |
queueLength |
队列长度。 |
int |
queueName |
队列名称。 |
字符串 |
ScaleRuleAuth
名字 |
描述 |
价值 |
secretRef |
要从中拉取身份验证参数的 Azure Spring Apps 应用实例机密的名称。 |
字符串 |
triggerParameter |
使用机密的触发器参数 |
字符串 |
CustomScaleRule
HttpScaleRule
TcpScaleRule
UserSourceInfo
BuildResultUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“BuildResult”(必需) |
buildResultId |
同一 Spring 实例下现有成功生成结果的资源 ID。 |
字符串 |
CustomContainerUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Container”(必需) |
customContainer |
自定义容器有效负载 |
CustomContainer |
CustomContainer
名字 |
描述 |
价值 |
args |
入口点的参数。 如果未提供 docker 映像的 CMD,则使用此 CMD。 |
string[] |
命令 |
入口点数组。 未在 shell 中执行。 如果未提供 Docker 映像的 ENTRYPOINT,则使用此条目。 |
string[] |
containerImage |
自定义容器的容器映像。 这应采用 {repository}:{tag} 的形式,没有注册表的服务器名称 |
字符串 |
imageRegistryCredential |
映像注册表的凭据 |
ImageRegistryCredential |
languageFramework |
上传的容器映像的语言框架 |
字符串 |
服务器 |
包含容器映像的注册表的名称 |
字符串 |
ImageRegistryCredential
名字 |
描述 |
价值 |
密码 |
映像注册表凭据的密码 |
字符串 |
username |
映像注册表凭据的用户名 |
字符串 |
JarUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Jar”(必需) |
jvmOptions |
JVM 参数 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
Jar 文件的运行时版本 |
字符串 |
NetCoreZipUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“NetCoreZip”(必需) |
netCoreMainEntryPath |
相对于 zip 根目录的 .NET 可执行文件的路径 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
.Net 文件的运行时版本 |
字符串 |
SourceUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Source”(必需) |
artifactSelector |
要用于多模块项目的部署的项目的选择器。 这应该是 目标模块/项目的相对路径。 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
源文件的运行时版本 |
字符串 |
Sku
名字 |
描述 |
价值 |
能力 |
目标资源的当前容量 |
int |
名字 |
Sku 的名称 |
字符串 |
层 |
Sku 的层 |
字符串 |
快速入门模板
以下快速入门模板部署此资源类型。
可以使用目标操作部署 Spring/apps/deployments 资源类型:
有关每个 API 版本中已更改属性的列表,请参阅 更改日志。
若要创建 Microsoft.AppPlatform/Spring/apps/deployments 资源,请将以下 Terraform 添加到模板。
resource "azapi_resource" "symbolicname" {
type = "Microsoft.AppPlatform/Spring/apps/deployments@2023-03-01-preview"
name = "string"
parent_id = "string"
body = jsonencode({
properties = {
active = bool
deploymentSettings = {
addonConfigs = {}
containerProbeSettings = {
disableProbe = bool
}
environmentVariables = {
{customized property} = "string"
}
livenessProbe = {
disableProbe = bool
failureThreshold = int
initialDelaySeconds = int
periodSeconds = int
probeAction = {
type = "string"
// For remaining properties, see ProbeAction objects
}
successThreshold = int
timeoutSeconds = int
}
readinessProbe = {
disableProbe = bool
failureThreshold = int
initialDelaySeconds = int
periodSeconds = int
probeAction = {
type = "string"
// For remaining properties, see ProbeAction objects
}
successThreshold = int
timeoutSeconds = int
}
resourceRequests = {
cpu = "string"
memory = "string"
}
scale = {
maxReplicas = int
minReplicas = int
rules = [
{
azureQueue = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
queueLength = int
queueName = "string"
}
custom = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
type = "string"
}
http = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
}
name = "string"
tcp = {
auth = [
{
secretRef = "string"
triggerParameter = "string"
}
]
metadata = {
{customized property} = "string"
}
}
}
]
}
startupProbe = {
disableProbe = bool
failureThreshold = int
initialDelaySeconds = int
periodSeconds = int
probeAction = {
type = "string"
// For remaining properties, see ProbeAction objects
}
successThreshold = int
timeoutSeconds = int
}
terminationGracePeriodSeconds = int
}
source = {
version = "string"
type = "string"
// For remaining properties, see UserSourceInfo objects
}
}
sku = {
capacity = int
name = "string"
tier = "string"
}
})
}
ProbeAction 对象
设置 类型 属性以指定对象的类型。
对于 ExecAction,请使用:
type = "ExecAction"
command = [
"string"
]
对于 HTTPGetAction,请使用:
type = "HTTPGetAction"
path = "string"
scheme = "string"
对于 TCPSocketAction,请使用:
type = "TCPSocketAction"
UserSourceInfo 对象
设置 类型 属性以指定对象的类型。
对于 BuildResult,请使用:
type = "BuildResult"
buildResultId = "string"
对于 容器,请使用:
type = "Container"
customContainer = {
args = [
"string"
]
command = [
"string"
]
containerImage = "string"
imageRegistryCredential = {
password = "string"
username = "string"
}
languageFramework = "string"
server = "string"
}
对于 Jar,请使用:
type = "Jar"
jvmOptions = "string"
relativePath = "string"
runtimeVersion = "string"
对于 NetCoreZip,请使用:
type = "NetCoreZip"
netCoreMainEntryPath = "string"
relativePath = "string"
runtimeVersion = "string"
对于 源,请使用:
type = "Source"
artifactSelector = "string"
relativePath = "string"
runtimeVersion = "string"
属性值
Spring/apps/deployments
名字 |
描述 |
价值 |
类型 |
资源类型 |
“Microsoft.AppPlatform/Spring/apps/deployments@2023-03-01-preview” |
名字 |
资源名称 |
string (必需) |
parent_id |
此资源的父资源的 ID。 |
类型资源的 ID:应用 |
sku |
部署资源的 SKU |
Sku |
性能 |
部署资源的属性 |
DeploymentResourceProperties |
DeploymentResourceProperties
DeploymentSettings
名字 |
描述 |
价值 |
addonConfigs |
加载项集合 |
DeploymentSettingsAddonConfigs |
containerProbeSettings |
容器生存度和就绪情况探测设置 |
ContainerProbeSettings |
environmentVariables |
环境变量集合 |
DeploymentSettingsEnvironmentVariables |
livenessProbe |
定期探测应用实例的运行情况。 如果探测失败,应用实例将重新启动。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
readinessProbe |
定期探测应用实例服务就绪情况。 如果探测失败,将从服务终结点中删除应用实例。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
resourceRequests |
所需的 CPU 和内存的请求资源数量。 建议使用此字段来表示所需的 CPU 和内存,稍后将弃用旧字段 CPU 和 memoryInGB。 |
ResourceRequests |
规模 |
缩放 Azure Spring Apps 应用实例的属性。 |
缩放 |
startupProbe |
StartupProbe 指示应用实例已成功初始化。 如果指定,则不会执行其他探测,直到成功完成。 如果此探测失败,Pod 将重新启动,就像 livenessProbe 失败一样。 这可用于在应用实例生命周期开始时提供不同的探测参数,这可能需要很长时间才能加载数据或预热缓存,而不是在稳定状态操作期间。 这无法更新。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
探测 |
terminationGracePeriodSeconds |
应用实例需要正常终止的可选持续时间(以秒为单位)。 删除请求可能会减少。 值必须是非负整数。 值零表示通过终止信号立即停止(没有关闭机会)。 如果此值为 nil,则会改用默认宽限期。 宽限期是在应用实例中运行的进程发送终止信号以及进程强行停止并带有终止信号的时间之后的持续时间(以秒为单位)。 设置此值的时间超过进程的预期清理时间。 默认值为 90 秒。 |
int |
DeploymentSettingsAddonConfigs
ContainerProbeSettings
名字 |
描述 |
价值 |
disableProbe |
指示是否禁用实时性和就绪情况探测 |
bool |
DeploymentSettingsEnvironmentVariables
探针
名字 |
描述 |
价值 |
disableProbe |
指示探测是否已禁用。 |
bool (必需) |
failureThreshold |
探测在成功后被视为失败的最小连续失败。 最小值为 1。 |
int |
initialDelaySeconds |
在启动探测之前启动应用实例后的秒数。 详细信息:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes |
int |
periodSeconds |
执行探测的频率(以秒为单位)。 最小值为 1。 |
int |
probeAction |
探测的操作。 |
ProbeAction |
successThreshold |
探测在失败后被视为成功的最小连续成功次数。 对于实时性和启动,必须为 1。 最小值为 1。 |
int |
timeoutSeconds |
探测超时的秒数。最小值为 1。 |
int |
ProbeAction
ExecAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“ExecAction”(必需) |
命令 |
命令是在容器内执行的命令行,该命令的工作目录是容器文件系统中的根目录('/')。 该命令不在 shell 中运行,因此传统的 shell 指令('、'等)将不起作用。 若要使用 shell,需要显式调用该 shell。 退出状态为 0 被视为实时/正常,非零状态不正常。 |
string[] |
HttpGetAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“HTTPGetAction”(必需) |
路径 |
在 HTTP 服务器上访问的路径。 |
字符串 |
方案 |
用于连接到主机的方案。 默认为 HTTP。
可能的枚举值:
-
"HTTP" 意味着所使用的方案将 http://
-
"HTTPS" 意味着所使用的方案将 https:// |
“HTTP” “HTTPS” |
TCPSocketAction
名字 |
描述 |
价值 |
类型 |
要执行运行状况检查的操作的类型。 |
“TCPSocketAction”(必需) |
ResourceRequests
名字 |
描述 |
价值 |
中央处理器 |
所需的 CPU。 1 核可以表示 1 或 1000 米。 对于基本层,这应为 500 米或 1,标准层应为 {500m、1、2、3、 4} 。 |
字符串 |
记忆 |
所需的内存。 1 GB 可以由 1Gi 或 1024Mi 表示。 对于基本层,这应该是 {512Mi、1Gi、2Gi} 和标准层的 {512Mi、1Gi、2Gi、...、8Gi}。 |
字符串 |
规模
名字 |
描述 |
价值 |
maxReplicas |
自选。 容器副本的最大数目。 如果未设置,则默认为 10。 |
int |
minReplicas |
自选。 容器副本的最小数量。 |
int |
规则 |
缩放规则。 |
ScaleRule[] |
ScaleRule
QueueScaleRule
名字 |
描述 |
价值 |
认证 |
队列缩放规则的身份验证机密。 |
ScaleRuleAuth[] |
queueLength |
队列长度。 |
int |
queueName |
队列名称。 |
字符串 |
ScaleRuleAuth
名字 |
描述 |
价值 |
secretRef |
要从中拉取身份验证参数的 Azure Spring Apps 应用实例机密的名称。 |
字符串 |
triggerParameter |
使用机密的触发器参数 |
字符串 |
CustomScaleRule
HttpScaleRule
TcpScaleRule
UserSourceInfo
BuildResultUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“BuildResult”(必需) |
buildResultId |
同一 Spring 实例下现有成功生成结果的资源 ID。 |
字符串 |
CustomContainerUserSourceInfo
CustomContainer
名字 |
描述 |
价值 |
args |
入口点的参数。 如果未提供 docker 映像的 CMD,则使用此 CMD。 |
string[] |
命令 |
入口点数组。 未在 shell 中执行。 如果未提供 Docker 映像的 ENTRYPOINT,则使用此条目。 |
string[] |
containerImage |
自定义容器的容器映像。 这应采用 {repository}:{tag} 的形式,没有注册表的服务器名称 |
字符串 |
imageRegistryCredential |
映像注册表的凭据 |
ImageRegistryCredential |
languageFramework |
上传的容器映像的语言框架 |
字符串 |
服务器 |
包含容器映像的注册表的名称 |
字符串 |
ImageRegistryCredential
名字 |
描述 |
价值 |
密码 |
映像注册表凭据的密码 |
字符串 |
username |
映像注册表凭据的用户名 |
字符串 |
JarUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“Jar”(必需) |
jvmOptions |
JVM 参数 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
Jar 文件的运行时版本 |
字符串 |
NetCoreZipUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“NetCoreZip”(必需) |
netCoreMainEntryPath |
相对于 zip 根目录的 .NET 可执行文件的路径 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
.Net 文件的运行时版本 |
字符串 |
SourceUploadedUserSourceInfo
名字 |
描述 |
价值 |
类型 |
上传的源的类型 |
“源”(必需) |
artifactSelector |
要用于多模块项目的部署的项目的选择器。 这应该是 目标模块/项目的相对路径。 |
字符串 |
relativePath |
存储源的存储的相对路径 |
字符串 |
runtimeVersion |
源文件的运行时版本 |
字符串 |
Sku
名字 |
描述 |
价值 |
能力 |
目标资源的当前容量 |
int |
名字 |
Sku 的名称 |
字符串 |
层 |
Sku 的层 |
字符串 |