Les services Knative conviennent aux services web hébergés, aux applications serverless, aux tâches d'IA et aux systèmes événementiels. Ils s'adaptent automatiquement au trafic entrant, y compris en réduisant le nombre de pods à zéro en l'absence de requêtes. Vous ne payez ainsi que pour ce que vous utilisez et pouvez vous concentrer sur la logique de votre application plutôt que sur l'infrastructure. Les services Knative simplifient également considérablement la gestion des versions.
Prérequis
Avant de commencer, assurez-vous d'avoir :
Knative déployé dans votre cluster ACS. Consultez la rubrique Déployer Knative.
Déployer un service Knative
Connectez-vous à la console ACS. Dans le volet de navigation de gauche, cliquez sur Clusters.
Sur la page Clusters, cliquez sur l'ID du cluster à gérer. Dans le volet de navigation de gauche de la page des détails du cluster, choisissez Applications > Knative.
Cliquez sur l'onglet Services. Dans la barre de navigation supérieure, sélectionnez le namespace de votre service.
Déployez le service à l'aide de l'assistant de la console ou de l'éditeur YAML.
Utiliser la console
Cliquez sur Create Service et renseignez la configuration.
| Paramètre | Description |
|---|---|
| Service Name | Saisissez un nom pour le service. |
| Image Name | Cliquez sur Select Image. Dans la boîte de dialogue Select Image, choisissez une image. Vous pouvez également saisir l'adresse d'un registre d'images privé au format domainname/namespace/imagename:tag. Exemple : registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go |
| Image Version | Cliquez sur Select Image Version. Exemple de version : 73fbdd56 |
| Access Protocol | Sélectionnez HTTP ou gRPC. |
| Container Port | Port du conteneur à exposer. Valeurs valides : 1–65535. |
Cliquez sur Advanced pour configurer des paramètres supplémentaires.
| Paramètre | Description |
|---|---|
| Internal Access Only | Si cette option est sélectionnée, le service n'est pas accessible depuis Internet. |
| Maximum Concurrent Requests | Nombre maximal de requêtes simultanées gérées par le conteneur. Valeur par défaut : 0 (illimité). |
| Minimum Pods | Nombre minimal de pods à maintenir en cours d'exécution en l'absence de requêtes. Définissez cette valeur sur 0 pour activer la mise à l'échelle à zéro. |
| Maximum Pods | Nombre maximal de pods autorisés. |
| Resource Limit | Limites supérieures pour les ressources CPU (cœurs), mémoire (octets ou mebibytes) et GPU. |
| Lifecycle | Spécifiez Command et Parameter pour remplacer le point d'entrée par défaut de l'image. Si seul Parameter est défini, la commande par défaut de l'image est utilisée avec le paramètre spécifié. Si les deux sont définis, les valeurs par défaut de l'image sont toutes deux remplacées. |
| Environment Variables | Paires clé-valeur transmises au conteneur. |
| Volume | Montez un stockage local ou des revendications de volume persistant (PVC). Pour le stockage local, choisissez HostPath, ConfigMap, Secret ou EmptyDir. Pour les PVC, sélectionnez Cloud Storage. |
Utiliser l'éditeur YAML
Dans le coin supérieur droit de l'onglet Services, cliquez sur Create from Template.
-
Collez votre code YAML dans l'éditeur et cliquez sur Create. L'exemple suivant crée un service nommé
helloworld-go:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: helloworld-go # [1] spec: template: spec: containers: - image: registry-vpc.cn-beijing.aliyuncs.com/knative-sample/helloworld-go:73fbdd56 # [2] env: - name: TARGET # [3] value: "Knative"[1] Nom du service. Utilisé comme partie intégrante du nom de domaine par défaut. [2] Image du conteneur, incluant l'adresse du registre et le tag de version de l'image. [3] Variable d'environnement transmise à l'application.
Vous pouvez consulter, modifier ou supprimer le service à tout moment depuis l'onglet Services.
Accéder au service Knative
Pour accéder au service via son nom de domaine, faites pointer le nom de domaine vers l'adresse IP de la passerelle.
Sur l'onglet Services, cliquez sur le nom du service.
-
Dans la section Basic Information, notez l'adresse IP de la passerelle et le nom de domaine.

-
Ajoutez une entrée à votre fichier hosts local pour mapper le nom de domaine à l'adresse IP de la passerelle :
121.xx.xxx.xx helloworld-go.default.example.com -
Utilisez le nom de domaine pour accéder au service Knative.

Étapes suivantes
Configurer un nom de domaine personnalisé — remplacez le domaine example.com par défaut par le vôtre.
Configurer un certificat pour accéder aux services Knative via HTTPS — activez TLS pour un accès sécurisé.
Créer une révision — gérez plusieurs versions de votre service et répartissez le trafic entre elles.
Configurer la mise à l'échelle automatique basée sur le nombre de requêtes — affinez les paramètres de mise à l'échelle à zéro et de concurrence.
Knative Eventing — connectez votre service à des sources d'événements pour des architectures événementielles.