Capacités : ressources Kubernetes - Amazon EKS

Aidez à améliorer cette page

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Capacités : ressources Kubernetes

Une fois que vous avez activé une fonctionnalité sur votre cluster, vous interagissez le plus souvent avec elle en créant et en gérant des ressources personnalisées Kubernetes dans votre cluster. Chaque fonctionnalité fournit son propre ensemble de définitions de ressources personnalisées (CRDs) qui étendent l'API Kubernetes avec des fonctionnalités spécifiques aux fonctionnalités.

Ressources sur Argo CD

Lorsque vous activez la fonctionnalité Argo CD, vous pouvez créer et gérer les ressources Kubernetes suivantes :

Application

Définit un déploiement depuis un dépôt Git vers un cluster cible. Applicationles ressources spécifient le référentiel source, l'espace de noms cible et la politique de synchronisation. Vous pouvez créer jusqu'à 1 000 Application ressources par instance de fonctionnalité Argo CD.

ApplicationSet

Génère plusieurs Application ressources à partir de modèles, permettant ainsi des déploiements multi-clusters et multi-environnements. ApplicationSetles ressources utilisent des générateurs pour créer Application des ressources dynamiquement en fonction de listes de clusters, de répertoires Git ou d'autres sources.

AppProject

Fournit un regroupement logique et un contrôle d'accès pour les Application ressources. AppProjectles ressources définissent les référentiels, les clusters et les espaces de noms que les Application ressources peuvent utiliser, ce qui permet la mutualisation et les limites de sécurité.

Exemple Application de ressource :

apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: my-app namespace: argocd spec: project: default source: repoURL: https://github.com/org/repo targetRevision: main path: manifests destination: server: https://kubernetes.default.svc namespace: production

Pour plus d'informations sur les ressources et les concepts d'Argo CD, consultezConcepts d'Argo CD.

ressources kro

Lorsque vous activez la fonctionnalité Kro, vous pouvez créer et gérer les ressources Kubernetes suivantes :

ResourceGraphDefinition (RGD)

Définit une API personnalisée qui compose plusieurs Kubernetes et AWS ressources dans une abstraction de niveau supérieur. Les équipes de la plateforme créent ResourceGraphDefinition des ressources pour fournir des modèles réutilisables avec des glissières de sécurité.

Instances de ressources personnalisées

Après avoir créé une ResourceGraphDefinition ressource, vous pouvez créer des instances de l'API personnalisée définie par leResourceGraphDefinition. kro crée et gère automatiquement les ressources spécifiées dans leResourceGraphDefinition.

Exemple ResourceGraphDefinition de ressource :

apiVersion: kro.run/v1alpha1 kind: ResourceGraphDefinition metadata: name: web-application spec: schema: apiVersion: v1alpha1 kind: WebApplication spec: name: string replicas: integer resources: - id: deployment template: apiVersion: apps/v1 kind: Deployment # ... deployment spec - id: service template: apiVersion: v1 kind: Service # ... service spec

Exemple d'WebApplicationinstance :

apiVersion: v1alpha1 kind: WebApplication metadata: name: my-web-app namespace: default spec: name: my-web-app replicas: 3

Lorsque vous appliquez cette instance, kro crée automatiquement les Service ressources Deployment et définies dans leResourceGraphDefinition.

Pour plus d'informations sur les ressources et les concepts de Kro, consultezconcepts kro.

Ressources de l'ACK

Lorsque vous activez la fonctionnalité ACK, vous pouvez créer et gérer des ressources à l'aide AWS des ressources personnalisées de Kubernetes. ACK en fournit plus de 200 CRDs pour plus de 50 AWS services, ce qui vous permet de définir AWS des ressources parallèlement à vos charges de travail Kubernetes et de gérer des ressources d' AWS infrastructure dédiées avec Kubernetes.

Exemples de ressources ACK :

S3 Bucket

Bucketles ressources créent et gèrent les compartiments Amazon S3 avec des politiques de versionnement, de chiffrement et de cycle de vie.

RDS DBInstance

DBInstanceprovisionner les ressources et gérer les instances de base de données Amazon RDS avec des sauvegardes et des fenêtres de maintenance automatisées.

Tableau DynamoDB

Tableles ressources créent et gèrent des tables DynamoDB avec une capacité provisionnée ou à la demande.

IAM Role

Roleles ressources définissent les rôles IAM avec des politiques de confiance et des politiques d'autorisation pour l'accès aux AWS services.

Fonction Lambda

Functionles ressources créent et gèrent les fonctions Lambda avec la configuration du code, de l'environnement d'exécution et des rôles d'exécution.

Exemple de spécification d'une Bucket ressource :

apiVersion: s3.services.k8s.aws/v1alpha1 kind: Bucket metadata: name: my-app-bucket spec: name: my-unique-bucket-name-12345 versioning: status: Enabled encryption: rules: - applyServerSideEncryptionByDefault: sseAlgorithm: AES256

Pour plus d'informations sur les ressources et les concepts d'ACK, consultezConcepts d'ACK.

Limites des ressources

Les capacités EKS sont soumises aux limites de ressources suivantes :

Limites d'utilisation du CD Argo :

  • 1 000 Application ressources maximum par instance de capacité Argo CD

  • Maximum de 100 clusters distants configurés par instance de capacité Argo CD

Limites de configuration des ressources :

  • 64 ressources Kubernetes maximum par Application ressource dans Argo CD

  • 64 ressources Kubernetes maximum par in kro ResourceGraphDefinition

Note

Ces limites s'appliquent au nombre de ressources gérées par chaque instance de fonctionnalité. Si vous avez besoin de limites plus élevées, vous pouvez déployer des fonctionnalités sur plusieurs clusters.

Étapes suivantes

Pour les tâches spécifiques aux fonctionnalités et la configuration avancée, consultez les rubriques suivantes :

  • Concepts d'ACK— Comprendre les concepts ACK et le cycle de vie des ressources

  • Travailler avec Argo CD— Utilisation des fonctionnalités d'Argo CD pour GitOps les flux de travail

  • concepts kro— Comprendre les concepts Kro et la composition des ressources