Administra los interruptores de funciones

¿Qué es un interruptor de funciones y por qué lo tenemos?

Algunos clientes de dispositivos de Google Distributed Cloud (GDC) aislado deben completar un proceso de acreditación para satisfacer un conjunto de requisitos de cumplimiento. Es posible que estos clientes tengan funciones específicas que deben someterse a una revisión de acreditación por parte de un tercero antes de que se puedan habilitar para las cargas de trabajo de producción.

Es posible que algunas funciones requieran varias versiones para finalizarse y no deberían exponerse a todos los clientes hasta que sean estables y estén listas. Sin embargo, es posible que otros clientes deseen trabajar con Google para realizar pruebas de prueba de concepto con la función no lanzada.

GDC introduce varios conceptos para contener funciones antes de que estén listas:

  • Umbral de nivel de la función de implementación (umbral de implementación): Define el nivel mínimo que se usará para el dispositivo. Se establece en el momento del inicio.

  • Recurso FeatureGate: Define la configuración de nivel superior que hace un seguimiento del nivel de madurez predeterminado por función. El recurso también realiza un seguimiento de cualquier anulación de funciones que haya agregado el operador.

  • Nivel de la función: Realiza un seguimiento del nivel de madurez en el que se establece una función determinada. Una función se habilita cuando es mayor o igual que el umbral de implementación.

Los valores posibles del nivel de la función en orden ascendente son: DEV, TEST, PREVIEW, PRODUCTION y ACCREDITED.

Por ejemplo, si el umbral de implementación se establece en PRODUCTION, se habilitan las funciones establecidas con el nivel de función ACCREDITED o PRODUCTION. Si el umbral de implementación se establece en ACCREDITED, solo se habilitan las funciones con el nivel ACCREDITED.

Los niveles o las puertas de funciones no son lo mismo que las pruebas A/B que puedes ver en los productos de consumo. Los interruptores de funciones están activados o desactivados para todo el dispositivo de GDC. Los indicadores de funciones están diseñados para activarse después de que se complete la revisión de acreditación y permanecer activos.

Las implementaciones con requisitos de acreditación deben tener su propia configuración de FeatureGate, que debe coincidir con lo que se acreditó para esa versión o las anteriores.

Uso a nivel de la función

Existen tres definiciones de recursos personalizados relacionadas con la configuración de marcas y niveles de funciones:

  • Stage: Define el umbral de implementación para un clúster. Almacena el umbral mínimo de la etapa de implementación, que es el valor con el que se comparan los interruptores de funciones para determinar si se habilitan las funciones.
  • FeatureGate: Almacena la etapa predeterminada de cada función y realiza un seguimiento de cualquier anulación.
  • SubcomponentOverride: El sistema de marcas de funciones lo usa para anular la etapa predeterminada de una función y habilitarla. Aparece en otros contextos.

El valor de la etapa es el umbral mínimo de implementación almacenado en cada clúster. Este parámetro solo se debe establecer durante el bootstrapping y nunca se debe cambiar después. Se habilitan todas las funciones con un valor de etapa de la función igual o mayor. Para anular la etapa predeterminada de una puerta de lanzamiento de funciones, consulta OOPS-P0072.

Los interruptores de funciones son similares a una actualización. No se cambian imágenes ni versiones, pero es, de hecho, el paso final de una actualización para habilitar las funciones que se agregaron en una actualización anterior. La habilitación de esta función puede ocurrir semanas o meses después de la actualización inicial, según el tiempo que lleve la acreditación. Sigue realizando actualizaciones con regularidad para incorporar correcciones y parches mientras se lleva a cabo la acreditación.

Cuando se anulan las funciones, GDC activa un reconciliador para reiniciar todos los Pods que dependen de la función. Esto se debe hacer durante un período de mantenimiento, ya que algunos cambios pueden requerir tiempo de inactividad.

Algunas funciones tienen un manual de servicio complementario que describe cuándo se debe habilitar y qué se debe buscar después de que se aplica la anulación. Esto puede ser para casos que requieren más que un reinicio del pod o que deben realizarse después de que se habiliten otras funciones.

Puedes encontrar estos manuales de ejecución de funciones en el manual de servicio adjunto al componente operable pertinente.

La lista de interruptores de funciones activos está disponible en la documentación de Etapas de las funciones.