|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Proveedor de CAPI
El recurso CAPIProvider permite gestionar los manifiestos del Operador de la API de Clúster de manera declarativa. Se utiliza para aprovisionar y configurar proveedores de la API de Clúster como AWS, vSphere, etc.
CAPIProvider sigue un modelo GitOps: los campos de especificación son entradas de usuario declarativas. El controlador solo actualiza el estado.
Cada campo proporcionado por el recurso del Operador de la API de Clúster de sentido ascendente CAPIProviderSpec también está disponible en la especificación del recurso CAPIProvider. No dudes en consultar la configuración de sentido ascendente guías para escenarios avanzados.
Todos los proveedores de CAPI certificados están configurados utilizando una configuración embebida. Para anularlo, es necesario crear un ClusterctlConfig personalizado.
Uso
Para utilizar el recurso CAPIProvider:
-
Crea un recurso
CAPIProvidercon el nombre del proveedor deseado, tipo, credenciales, configuración y características. -
El controlador
CAPIProviderse encargará de crear los manifiestos requeridos del Operador de la API de Clúster basándose en la especificación delCAPIProvider. -
El campo de estado en el recurso
CAPIProviderreflejará el estado de los manifiestos generados. -
Gestiona el objeto
CAPIProviderde manera declarativa para aplicar cambios a los manifiestos del proveedor generados.
Aquí hay un ejemplo de manifiesto CAPIProvider:
apiVersion: turtles-capi.cattle.io/v1alpha1
kind: CAPIProvider
metadata:
name: aws-infra
namespace: capi-providers
spec:
name: aws
type: infrastructure
enableAutomaticUpdate: true
credentials:
rancherCloudCredential: aws-creds # Rancher credentials secret for AWS
configSecret:
name: aws-config
features:
clusterResourceSet: true
Esto generará un proveedor de infraestructura AWS con el mapeo suministrado para el secreto de credenciales de Rancher y características personalizadas habilitadas.
El controlador CAPIProvider poseerá todos los recursos del proveedor generados, permitiendo la recolección de basura al eliminar el objeto CAPIProvider.
Especificación
Los campos clave en la especificación del CAPIProvider son:
-
name- Nombre del proveedor (aws, vsphere, etc.). Hereda demetadata.namesi no se especifica. -
type- Tipo de recurso del proveedor (se puede establecer encore,controlPlane,bootstrap,infrastructure,addon,ipamoruntimeextension). -
credentials- Credenciales de origen para la especificación del proveedor. -
configSecret- Nombre del secreto de configuración del proveedor, donde se almacenarán las variables y las credenciales sincronizadas. Por defecto, si no se especifica, heredará el nombre del recursoCAPIProvider. -
features- Características del proveedor habilitadas. -
variables- Variables es un mapa de variables de entorno que se añadirán al contenido delconfigSecret. -
version- La versión indica la versión del proveedor. -
enableAutomaticUpdate- Permitir que el proveedor se actualice automáticamente. Solo habilitado por defecto en los proveedores instalados del gráfico de Turtles. -
fetchConfig- FetchConfig determina cómo el operador obtendrá los componentes y metadatos para el proveedor.-
oci- OCI que se utilizará para obtener los componentes y metadatos del proveedor desde un artefacto OCI. Debes establecer el campoproviderSpec.Versionpara que el operador seleccione la versión deseada del lanzamiento desde GitHub. Si falta providerSpec.Version, se utiliza la última versión del proveedor por defecto de clusterctl. -
selector- Selector que se utilizará para obtener los componentes y metadatos del proveedor desde ConfigMaps almacenados dentro del clúster. Se espera que cada ConfigMap contenga componentes y metadatos solo para una versión específica. -
url- URL que se utilizará para obtener los componentes y metadatos del proveedor desde un repositorio de GitHub.
-
Fijación de versión y actualizaciones automáticas
El CAPIProvider version se puede establecer en cualquier momento para fijar el proveedor a una versión específica. Además, se puede alternar automaticUpdates para permitir actualizaciones automáticas a la última versión disponible. La última versión disponible se determina por la configuración de clusterctl embebida para proveedores certificados, y se puede anular o configurar para proveedores personalizados utilizando ClusterctlConfig.