Ayude a mejorar esta página
Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.
Recursos de Kubernetes de las capacidades
Una vez que active una capacidad en el clúster, por lo general, interactuará con ella mediante la creación y administración de los recursos personalizados de Kubernetes en el clúster. Cada capacidad proporciona su propio conjunto de definiciones de recursos personalizados (CRD) que amplían la API de Kubernetes con funcionalidades específicas de cada capacidad.
Recursos de Argo CD
Al activar la capacidad de Argo CD, puede crear y administrar los siguientes recursos de Kubernetes:
- Aplicación
-
Define una implementación desde un repositorio de Git a un clúster de destino. Los recursos de
Applicationespecifican el repositorio de origen, el espacio de nombres de destino y la política de sincronización. Puede crear hasta 1000 recursos deApplicationpor instancia de capacidad de Argo CD. - ApplicationSet
-
Genera varios recursos de
Applicationa partir de plantillas, lo que permite implementaciones en varios clústeres y entornos. Los recursos deApplicationSetutilizan generadores para crear recursos deApplicationde forma dinámica en función de listas de clústeres, directorios de Git u otros orígenes. - AppProject
-
Proporciona agrupamiento lógico y control de acceso a los recursos de
Application. Los recursos deAppProjectdefinen qué repositorios, clústeres y espacios de nombres pueden usar los recursos deApplication, lo que permite establecer límites de seguridad y de tenencia múltiple.
Ejemplo de recurso de Application:
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
Para obtener más información sobre los conceptos y recursos de Argo CD, consulte Conceptos de Argo CD.
Recursos de kro
Al activar la capacidad de kro, puede crear y administrar los siguientes recursos de Kubernetes:
- ResourceGraphDefinition (RGD)
-
Define una API personalizada que compone varios Kubernetes y recursos de AWS en una abstracción de nivel superior. Los equipos de plataformas crean recursos de
ResourceGraphDefinitionpara proporcionar patrones reutilizables con barreras de protección. - Instancias de recursos personalizados
-
Tras crear un recurso de
ResourceGraphDefinition, puede crear instancias de la API personalizada definida por laResourceGraphDefinition. kro crea y administra automáticamente los recursos especificados en laResourceGraphDefinition.
Ejemplo de recurso de ResourceGraphDefinition:
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
Ejemplo de instancia de WebApplication:
apiVersion: v1alpha1 kind: WebApplication metadata: name: my-web-app namespace: default spec: name: my-web-app replicas: 3
Al aplicar esta instancia, kro crea automáticamente los recursos de Deployment y Service definidos en la ResourceGraphDefinition.
Para obtener más información sobre los conceptos y recursos de kro, consulte Conceptos de kro.
Recursos de ACK
Al activar la capacidad de ACK, puede crear y administrar los recursos de AWS mediante los recursos personalizados de Kubernetes. ACK proporciona más de 200 CRD para más de 50 servicios de AWS, lo que le permite definir los recursos de AWS junto con sus cargas de trabajo de Kubernetes y administrar los recursos de infraestructura de AWS dedicados con Kubernetes.
Ejemplos de recursos de ACK:
- Bucket de S3
-
Los recursos de
Bucketcrean y administran buckets de Amazon S3 con políticas de control de versiones, cifrado y ciclo de vida. - DBInstance de RDS
-
Los recursos de
DBInstanceaprovisionan y administran las instancias de bases de datos de Amazon RDS con copias de seguridad automatizadas y plazos de mantenimiento. - Tabla de DynamoDB
-
Los recursos de
Tablecrean y administran tablas de DynamoDB con capacidad aprovisionada o bajo demanda. - Rol de IAM
-
Los recursos de
Roledefinen los roles de IAM con políticas de confianza y políticas de permisos para el acceso a los servicios de AWS. - Función Lambda
-
Los recursos de
Functioncrean y administran funciones de Lambda con configuración de código, tiempo de ejecución y rol de ejecución.
Ejemplo de especificación de un recurso de Bucket:
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
Para obtener más información sobre los conceptos y recursos de ACK, consulte Conceptos de ACK.
Límites de recursos
Las capacidades de EKS tienen los siguientes límites de recursos:
Límites de uso de Argo CD:
-
Máximo de 1000 recursos de
Applicationpor instancia de capacidad de Argo CD -
Máximo de 100 clústeres remotos configurados por instancia de capacidad de Argo CD
Límites de configuración de recursos:
-
Máximo 150 recursos de Kubernetes por recurso de
Applicationen Argo CD -
Máximo 64 recursos de Kubernetes por
ResourceGraphDefinitionen kro
nota
Estos límites se aplican a la cantidad de recursos administrados por cada instancia de capacidad. Si necesita límites más elevados, puede implementar capacidades en varios clústeres.
Siguientes pasos
Para obtener información sobre tareas específicas de las capacidades y configuración avanzada, consulte los siguientes temas:
-
Conceptos de ACK: descripción de los conceptos de ACK y el ciclo de vida de los recursos
-
Uso de Argo CD: uso de las capacidades de Argo CD para flujos de trabajo de GitOps
-
Conceptos de kro: descripción de los conceptos de kro y la composición de recursos