ALIYUN::FC::Service crea un servicio de Function Compute.
Todas las funciones dentro de un servicio comparten configuraciones, como autorización y registros, así como recursos como logstores y roles de RAM. Un servicio es la unidad básica de operación y mantenimiento, y representa una aplicación. Las funciones que conforman la misma aplicación pertenecen a un único servicio. Los servicios son independientes y no comparten recursos entre sí.
Sintaxis
{
"Type": "ALIYUN::FC::Service",
"Properties": {
"Description": String,
"VpcConfig": Map,
"ServiceName": String,
"Role": String,
"DeletionForce": Boolean,
"Tags": List,
"NasConfig": Map,
"LogConfig": Map,
"TracingConfig": Map,
"InternetAccess": Boolean,
"VpcBindings": List,
"OssMountConfig": Map
}
}
Propiedades
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
Description |
String |
No |
Sí |
La descripción del servicio. |
Ninguna. |
|
VpcConfig |
Map |
No |
Sí |
Las configuraciones de VPC que permiten a las funciones acceder a la VPC especificada. |
Para eliminar las configuraciones de VPC durante una actualización de pila:
Nota
Function Compute requiere permisos de gestión de ENI para el acceso a VPC. Otorgue el permiso ecs:CreateNetworkInterface a Function Compute. |
|
ServiceName |
String |
Sí |
No |
El nombre del servicio. |
El nombre debe tener entre 1 y 128 caracteres, y puede contener letras, dígitos, guiones bajos (_) y guiones (-). Debe comenzar con una letra o un guion bajo (_). |
|
Role |
String |
No |
Sí |
El ARN del rol de RAM que otorga permisos a Function Compute. |
El rol de RAM se utiliza en los siguientes escenarios:
|
|
NasConfig |
Map |
No |
Sí |
Las configuraciones de NAS que permiten a las funciones acceder a los recursos de NAS especificados. |
Para eliminar las configuraciones de NAS durante una actualización de pila:
|
|
LogConfig |
Map |
No |
Sí |
Las configuraciones de registro. Los registros de funciones se escriben en el logstore especificado. |
|
|
TracingConfig |
Map |
No |
Sí |
Las configuraciones de Managed Service for OpenTelemetry. |
Habilita el registro de duración de solicitudes, el seguimiento de inicios en frío y el monitoreo de la duración de ejecución de funciones. |
|
InternetAccess |
Boolean |
No |
Sí |
Especifica si las funciones pueden acceder a Internet. |
Valores válidos:
|
|
DeletionForce |
Boolean |
No |
Sí |
Especifica si se debe eliminar el servicio de forma forzada. |
Esta propiedad surte efecto cuando se especifica VpcConfig. Valores válidos:
Si el servicio utiliza un vSwitch o security group creado en la pila actual, no necesita especificar DeletionForce. Después de la eliminación, asegúrese de que las funciones del servicio no se invoquen durante 1 hora para que las ENI y la pila se eliminen según lo esperado. |
|
Tags |
List |
No |
Sí |
Las etiquetas. |
Puede agregar hasta 20 etiquetas. |
|
VpcBindings |
List |
No |
Sí |
Los ID de VPC para vincular a Function Compute. |
De forma predeterminada, las funciones pueden invocarse a través de endpoints públicos y privados. Para invocar funciones a través de VPC específicas, vincule esas VPC a Function Compute. Puede especificar hasta 20 VPC. |
|
OssMountConfig |
Map |
No |
Sí |
Las configuraciones de montaje de OSS. |
Sintaxis de LogConfig
"LogConfig": {
"Project": String,
"Logstore": String,
"EnableRequestMetrics": Boolean,
"LogBeginRule": String
}
Propiedades de LogConfig
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
Project |
String |
No |
Sí |
El nombre del proyecto de LogHub. |
Ninguna. |
|
Logstore |
String |
No |
Sí |
El nombre del logstore de LogHub. |
Ninguna. |
|
EnableRequestMetrics |
Boolean |
No |
Sí |
Especifica si se debe habilitar el monitoreo de solicitudes. |
Valores válidos:
|
|
LogBeginRule |
String |
No |
Sí |
La regla de segmentación de registros. |
Ninguna. |
Sintaxis de VpcConfig
"VpcConfig": {
"SecurityGroupId": String,
"VSwitchIds": List,
"VpcId": String,
"ZoneId": String
}
Propiedades de VpcConfig
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
SecurityGroupId |
String |
Sí |
Sí |
El ID del security group. |
Ninguna. |
|
VSwitchIds |
List |
Sí |
Sí |
Los ID de los vSwitches. |
Ninguna. |
|
VpcId |
String |
Sí |
Sí |
El ID de la VPC. |
Ninguna. |
|
ZoneId |
String |
No |
Sí |
El ID de la zona. |
Ninguna. |
Sintaxis de NasConfig
"NasConfig": {
"MountPoints": List,
"UserId": Integer,
"GroupId": Integer
}
Propiedades de NasConfig
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
MountPoints |
List |
Sí |
Sí |
Los destinos de montaje. |
|
|
UserId |
Integer |
Sí |
Sí |
El ID del usuario. |
Valores válidos: -1 a 65534. |
|
GroupId |
Integer |
Sí |
Sí |
El ID del grupo. |
Valores válidos: -1 a 65534. |
Sintaxis de TracingConfig
"TracingConfig": {
"Type": String,
"Params": Map
}
Propiedades de TracingConfig
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
Type |
String |
No |
Sí |
El tipo de sistema de rastreo. |
Ninguna. |
|
Params |
Map |
No |
Sí |
Los parámetros de Managed Service for OpenTelemetry. |
Ninguna. |
Sintaxis de Tags
"Tags": [
{
"Key": String,
"Value": String
}
]
Propiedades de Tags
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
Key |
String |
Sí |
No |
La clave de la etiqueta. |
La clave debe tener entre 1 y 128 caracteres, y no puede contener |
|
Value |
String |
No |
No |
El valor de la etiqueta. |
El valor puede tener hasta 128 caracteres, y no puede contener |
Sintaxis de OssMountConfig
"OssMountConfig": {
"MountPoints": List
}
Propiedad de OssMountConfig
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
MountPoints |
List |
Sí |
Sí |
Las configuraciones de destino de montaje de OSS. |
Sintaxis de MountPoints
"MountPoints": [
{
"ServerAddr": String,
"MountDir": String
}
]
Propiedades de MountPoints
|
Propiedad |
Tipo |
Obligatorio |
Editable |
Descripción |
Restricción |
|
ServerAddr |
String |
Sí |
Sí |
La dirección del servidor NAS. |
Ninguna. |
|
MountDir |
String |
Sí |
Sí |
El directorio de montaje local. |
Ninguna. |
Valores de retorno
Fn::GetAtt
ServiceId: el ID único del servicio.
ServiceName: el nombre del servicio.
Tags: las etiquetas.
Role: el rol de RAM.
LogProject: el proyecto de registros.
Logstore: el logstore.
InternetAccess: indica si las funciones pueden acceder a Internet.
VpcId: el ID de la VPC.
Ejemplos
Formato YAML
ROSTemplateFormatVersion: '2015-09-01'
Description: Test FC
Parameters: {}
Resources:
Service:
Type: ALIYUN::FC::Service
Properties:
ServiceName: mytest
Outputs: {}
Formato JSON
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Test FC",
"Parameters": {
},
"Resources": {
"Service": {
"Type": "ALIYUN::FC::Service",
"Properties": {
"ServiceName": "mytest"
}
}
},
"Outputs": {
}
}