La ressource ALIYUN::FC::Service crée un service Function Compute.
Toutes les fonctions d'un service partagent des configurations telles que l'autorisation et la journalisation, ainsi que des ressources comme les Logstores et les rôles RAM. Un service constitue l'unité de base d'exploitation et de maintenance (O&M) et représente une application. Les fonctions qui constituent une même application appartiennent à un seul service. Les services sont indépendants et ne partagent pas leurs ressources.
Syntaxe
{
"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
}
}
Propriétés
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
Description |
String |
No |
Yes |
Description du service. |
None. |
|
VpcConfig |
Map |
No |
Yes |
Configuration VPC permettant aux fonctions d'accéder au VPC spécifié. |
Pour supprimer la configuration VPC lors d'une mise à jour de la pile :
Remarque
Function Compute nécessite des autorisations de gestion ENI pour l'accès au VPC. Accordez l'autorisation ecs:CreateNetworkInterface à Function Compute. |
|
ServiceName |
String |
Yes |
No |
Nom du service. |
Le nom doit comporter entre 1 et 128 caractères et peut contenir des lettres, des chiffres, des traits de soulignement (_) et des tirets (-). Il doit commencer par une lettre ou un trait de soulignement (_). |
|
Role |
String |
No |
Yes |
ARN du rôle RAM qui accorde des autorisations à Function Compute. |
Le rôle RAM est utilisé dans les scénarios suivants :
|
|
NasConfig |
Map |
No |
Yes |
Configuration NAS permettant aux fonctions d'accéder aux ressources NAS spécifiées. |
Pour supprimer la configuration NAS lors d'une mise à jour de la pile :
|
|
LogConfig |
Map |
No |
Yes |
Configuration des journaux. Les journaux des fonctions sont écrits dans le Logstore spécifié. |
|
|
TracingConfig |
Map |
No |
Yes |
Configuration du service managé pour OpenTelemetry. |
Active l'enregistrement de la durée des requêtes, le suivi des démarrages à froid et la surveillance de la durée d'exécution des fonctions. |
|
InternetAccess |
Boolean |
No |
Yes |
Indique si les fonctions peuvent accéder à Internet. |
Valeurs valides :
|
|
DeletionForce |
Boolean |
No |
Yes |
Indique s'il faut forcer la suppression du service. |
Cette propriété prend effet lorsque VpcConfig est spécifié. Valeurs valides :
Si le service utilise un vSwitch ou un groupe de sécurité créé dans la pile actuelle, vous n'avez pas besoin de spécifier DeletionForce. Après la suppression, assurez-vous que les fonctions du service ne sont pas invoquées dans l'heure qui suit afin que les ENI et la pile soient supprimées comme prévu. |
|
Tags |
List |
No |
Yes |
Tags. |
Vous pouvez ajouter jusqu'à 20 tags. |
|
VpcBindings |
List |
No |
Yes |
ID des VPC à lier à Function Compute. |
Par défaut, les fonctions peuvent être invoquées via des endpoints publics et privés. Pour invoquer des fonctions via des VPC spécifiques, liez ces VPC à Function Compute. Vous pouvez spécifier jusqu'à 20 VPC. |
|
OssMountConfig |
Map |
No |
Yes |
Configuration de montage OSS. |
Syntaxe LogConfig
"LogConfig": {
"Project": String,
"Logstore": String,
"EnableRequestMetrics": Boolean,
"LogBeginRule": String
}
Propriétés LogConfig
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
Project |
String |
No |
Yes |
Nom du projet LogHub. |
None. |
|
Logstore |
String |
No |
Yes |
Nom du Logstore LogHub. |
None. |
|
EnableRequestMetrics |
Boolean |
No |
Yes |
Indique s'il faut activer la surveillance des requêtes. |
Valeurs valides :
|
|
LogBeginRule |
String |
No |
Yes |
Règle de segmentation des journaux. |
None. |
Syntaxe VpcConfig
"VpcConfig": {
"SecurityGroupId": String,
"VSwitchIds": List,
"VpcId": String,
"ZoneId": String
}
Propriétés VpcConfig
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
SecurityGroupId |
String |
Yes |
Yes |
ID du groupe de sécurité. |
None. |
|
VSwitchIds |
List |
Yes |
Yes |
ID des vSwitches. |
None. |
|
VpcId |
String |
Yes |
Yes |
ID du VPC. |
None. |
|
ZoneId |
String |
No |
Yes |
ID de la zone. |
None. |
Syntaxe NasConfig
"NasConfig": {
"MountPoints": List,
"UserId": Integer,
"GroupId": Integer
}
Propriétés NasConfig
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
MountPoints |
List |
Yes |
Yes |
Points de montage. |
|
|
UserId |
Integer |
Yes |
Yes |
ID de l'utilisateur. |
Valeurs valides : -1 à 65534. |
|
GroupId |
Integer |
Yes |
Yes |
ID du groupe. |
Valeurs valides : -1 à 65534. |
Syntaxe TracingConfig
"TracingConfig": {
"Type": String,
"Params": Map
}
Propriétés TracingConfig
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
Type |
String |
No |
Yes |
Type du système de traçage. |
None. |
|
Params |
Map |
No |
Yes |
Paramètres du service managé pour OpenTelemetry. |
None. |
Syntaxe Tags
"Tags": [
{
"Key": String,
"Value": String
}
]
Propriétés Tags
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
Key |
String |
Yes |
No |
Clé du tag. |
La clé doit comporter entre 1 et 128 caractères et ne peut pas contenir |
|
Value |
String |
No |
No |
Valeur du tag. |
La valeur peut comporter jusqu'à 128 caractères et ne peut pas contenir |
Syntaxe OssMountConfig
"OssMountConfig": {
"MountPoints": List
}
Propriété OssMountConfig
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
MountPoints |
List |
Yes |
Yes |
Configurations des points de montage OSS. |
Syntaxe MountPoints
"MountPoints": [
{
"ServerAddr": String,
"MountDir": String
}
]
Propriétés MountPoints
|
Property |
Type |
Required |
Editable |
Description |
Constraint |
|
ServerAddr |
String |
Yes |
Yes |
Adresse du serveur NAS. |
None. |
|
MountDir |
String |
Yes |
Yes |
Répertoire de montage local. |
None. |
Valeurs de retour
Fn::GetAtt
ServiceId : ID unique du service.
ServiceName : nom du service.
Tags : tags.
Role : rôle RAM.
LogProject : projet de journalisation.
Logstore : Logstore.
InternetAccess : indique si les fonctions peuvent accéder à Internet.
VpcId : ID du VPC.
Exemples
Format YAML
ROSTemplateFormatVersion: '2015-09-01'
Description: Test FC
Parameters: {}
Resources:
Service:
Type: ALIYUN::FC::Service
Properties:
ServiceName: mytest
Outputs: {}
Format JSON
{
"ROSTemplateFormatVersion": "2015-09-01",
"Description": "Test FC",
"Parameters": {
},
"Resources": {
"Service": {
"Type": "ALIYUN::FC::Service",
"Properties": {
"ServiceName": "mytest"
}
}
},
"Outputs": {
}
}