The English version of quarkus.io is the official project site. Translated sites are community supported on a best-effort basis.

Servicios de desarrollo para Kubernetes

Dev Services for Kubernetes inicia automáticamente un servidor API de Kubernetes en modo de desarrollo y al ejecutar pruebas. Por lo tanto, no es necesario iniciar un clúster Kubernetes manualmente. La aplicación se configura automáticamente.

Activación y desactivación de los servicios de desarrollo para Kubernetes

Dev Services para Kubernetes se activa automáticamente a menos que:

  • quarkus.kubernetes-client.devservices.enabled se establece en false

  • el master-url está configurado

  • se encuentra un archivo de configuración de Kube válido y quarkus.kubernetes-client.devservices.override-kubeconfig no está configurado como true

  • incluye la dependencia quarkus-test-kubernetes-client

Dev Services para Kubernetes se basa en Docker para iniciar el servidor API. Si su entorno no es compatible con Docker, deberá iniciar el clúster de Kubernetes manualmente o conectarse a un clúster de Kubernetes ya en funcionamiento. Puede configurar el acceso al clúster Kubernetes utilizando un archivo de configuración Kube o las diversas propiedades disponibles en la clase KubernetesClientBuildConfig.

Clúster compartido

La mayoría de las veces es necesario compartir el clúster entre aplicaciones. Dev Services for Kubernetes implementa un mecanismo de descubrimiento de servicios para que sus múltiples aplicaciones Quarkus que se ejecutan en modo dev compartan un único clúster.

Dev Services for Kubernetes inicia el contenedor con la etiqueta quarkus-dev-service-kubernetes que se utiliza para identificar el contenedor.

Si necesitas varios clusters (compartidos), puedes configurar la propiedad de configuración quarkus.kubernetes-client.devservices.service-name e indicar el nombre del cluster. Busca un contenedor con el nombre definido, o inicia uno nuevo si no encuentra ninguno. El nombre de servicio por defecto es kubernetes.

El uso compartido está activado por defecto en el modo de desarrollo, pero desactivado en el modo de prueba. Puede desactivar el uso compartido con quarkus.kubernetes-client.devservices.shared=false.

Configuración del clúster

Dev Services for Kubernetes ofrece tres tipos diferentes de clústeres Kubernetes. Cada versión es compatible con diferentes versiones de la API de Kubernetes. Puede configurar el tipo y la versión mediante las propiedades quarkus.kubernetes-client.devservices.flavor y quarkus.kubernetes-client.devservices.api-version:

quarkus.kubernetes-client.devservices.flavor=api-only # k3s or kind
quarkus.kubernetes-client.devservices.api-version=1.22

api-only sólo inicia un servidor API Kubernetes. Si necesita un clúster Kubernetes con todas las funciones que puede girar Pods, puede utilizar k3s o kind. Tenga en cuenta que ambos requieren para ejecutar en modo privilegiado Docker.

Si no se define api-version, se utilizará la versión más reciente para el tipo dado. De lo contrario, la versión debe coincidir con una versión soportada por el sabor dado.

Related content