Kf usa un mapa de configuración de Kubernetes llamado config-defaults
en el espacio de nombres kf
para almacenar los ajustes de configuración de todo el clúster.
En este documento se explica su estructura y sus campos.
Estructura del configmap config-defaults
El configmap contiene tres tipos de pares clave-valor en el campo .data
:
- Las claves de comentarios que empiezan por
_
contienen ejemplos, notas y advertencias. - Las claves de cadena contienen valores de texto sin formato.
- Las claves de objeto contienen un valor JSON o YAML que se ha codificado como una cadena.
Ejemplo:
_note: "This is some note"
stringKey: "This is a string key that's not encoded as JSON or YAML."
objectKey: |
- "These keys contain nested YAML or JSON."
- true
- 123.45
Sección de ejemplo
La sección de ejemplo de la clave _example
contiene explicaciones de otros campos y ejemplos. Los cambios en esta sección no tienen ningún efecto.
Registro de contenedores de espacios
La propiedad spaceContainerRegistry
es un valor de texto sin formato que especifica el registro de contenedores predeterminado que usa cada espacio para almacenar las imágenes compiladas.
Ejemplo:
spaceContainerRegistry: gcr.io/my-project
Dominios de clúster de espacio
La propiedad spaceClusterDomains
es una matriz YAML codificada como cadena de objetos de dominio.
Cada espacio del clúster añade todos los elementos de la matriz a su lista de dominios a los que los desarrolladores pueden vincular sus aplicaciones.
Campos | |
---|---|
domain |
Nombre de dominio que se va a poner a disposición. Puede contener una de las siguientes sustituciones:
|
gatewayName |
(Opcional)
Anula las rutas de la pasarela de Istio a las que se enlazará.
El valor predeterminado es |
Ejemplo:
spaceClusterDomains: |
# Support canonical and vanity domains
- domain: $(SPACE_NAME).prod.example.com
- domain: $(SPACE_NAME).kf.us-east1.prod.example.com
# Using a dynamic DNS resolver
- domain: $(SPACE_NAME).$(CLUSTER_INGRESS_IP).nip.io
# Creating an internal domain only visible within the cluster
- domain: $(SPACE_NAME)-apps.internal
gatewayName: kf/internal-gateway
Compilador del ciclo de vida de Buildpacks V2
La propiedad buildpacksV2LifecycleBuilder
contiene la versión del archivo binario builder
de Cloud Foundry que se usa para ejecutar compilaciones de buildpack v2.
El valor es una referencia de Git. Para usar una versión específica, añade un símbolo @
seguido de un SHA de Git al final.
Ejemplo:
buildpacksV2LifecycleBuilder: "code.cloudfoundry.org/buildpackapplifecycle/builder@GIT_SHA"
Launcher del ciclo de vida de los paquetes de compilación V2
La propiedad buildpacksV2LifecycleLauncher
contiene la versión del archivo binario launcher
de Cloud Foundry integrado en cada aplicación de buildpack V2.
El valor es una referencia de Git. Para usar una versión específica, añade un símbolo @
seguido de un SHA de Git al final.
Ejemplo:
buildpacksV2LifecycleLauncher: "code.cloudfoundry.org/buildpackapplifecycle/launcher@GIT_SHA"
Lista de paquetes de compilación V2
La propiedad spaceBuildpacksV2
es una cadena codificada en YAML que contiene una lista ordenada de paquetes de compilación predeterminados que se usan para compilar aplicaciones compatibles con el proceso de paquetes de compilación V2.
Campos | |
---|---|
name |
Nombre corto que los desarrolladores pueden usar para hacer referencia al paquete de compilación en los manifiestos de sus aplicaciones. |
url |
La URL usada para obtener el paquete de compilación. |
disabled |
Se usa para evitar que se ejecute este paquete de compilación. |
Lista de Stacks V2
La propiedad spaceBuildpacksV2
es una matriz YAML codificada como cadena que contiene una lista ordenada de pilas que se pueden usar con compilaciones compatibles con Cloud Foundry.
Campos | |
---|---|
name |
Nombre corto que los desarrolladores pueden usar para hacer referencia a la pila en los manifiestos de sus aplicaciones. |
image |
URL de la imagen de contenedor que se va a usar como pila. Para obtener más información, consulta https://kubernetes.io/docs/concepts/containers/images. |
Lista de Stacks V3
La propiedad spaceStacksV3
es una matriz YAML codificada como cadena que contiene una lista ordenada de pilas que se pueden usar con compilaciones de Cloud Native Buildpack.
Campos | |
---|---|
name |
Nombre corto que los desarrolladores pueden usar para hacer referencia a la pila en los manifiestos de sus aplicaciones. |
description |
Breve descripción de la pila que se muestra al ejecutar |
buildImage |
URL de la imagen de contenedor que se va a usar como compilador. Para obtener más información, consulta https://kubernetes.io/docs/concepts/containers/images. |
runImage |
URL de la imagen de contenedor que se usará como base para todas las aplicaciones creadas con . Para obtener más información, consulta https://kubernetes.io/docs/concepts/containers/images. |
nodeSelector |
(Opcional) Un NodeSelector que se usa para indicar en qué nodos se pueden ejecutar las aplicaciones creadas con esta pila. |
Ejemplo:
spaceStacksV3: |
- name: heroku-18
description: The official Heroku stack based on Ubuntu 18.04
buildImage: heroku/pack:18-build
runImage: heroku/pack:18
nodeSelector:
kubernetes.io/os: windows
Usar la pila de la versión 3 de forma predeterminada
La propiedad spaceDefaultToV3Stack
contiene un valor entre comillas true
o false
que indica si los espacios deben usar pilas de la versión 3 si un usuario no especifica ninguna.
Marcas de funciones
La propiedad featureFlags
contiene un mapa YAML codificado como cadena de marcas de funciones
que pueden habilitar e inhabilitar funciones de Kf.
Los nombres de las marcas que no sean compatibles con Kf se ignorarán.
Nombre de la marca | Predeterminado | Finalidad |
---|---|---|
disable_custom_builds |
false |
Inhabilita el acceso de desarrolladores a las canalizaciones de compilación de Tekton arbitrarias. |
enable_dockerfile_builds |
true |
Permite a los desarrolladores compilar código fuente a partir de archivos Dockerfile. |
enable_custom_buildpacks |
true |
Permite a los desarrolladores especificar buildpacks externos en sus aplicaciones. |
enable_custom_stacks |
true |
Permite a los desarrolladores especificar pilas personalizadas en sus aplicaciones. |
Ejemplo:
featureFlags: |
disable_custom_builds: false
enable_dockerfile_builds: true
enable_some_feature: true