Las verificaciones de estado de Cloud Run garantizan que tus instancias de contenedor se ejecuten correctamente y puedan entregar tráfico. Con las verificaciones de estado de Cloud Run, puedes personalizar el momento en que tu contenedor está listo para recibir solicitudes y el momento en que se debe considerar que tu contenedor está en mal estado para requerir un reinicio.
Casos de uso
Puedes configurar los siguientes tipos de sondeos de verificación de estado:
Los sondeos de inicio determinan si el contenedor se inició y está listo para aceptar tráfico.
- Cuando configuras un sondeo de inicio, las verificaciones de funcionamiento y preparación se inhabilitan hasta que el sondeo de inicio determina que el contenedor se inició para evitar interferencias en el inicio del servicio.
- Los sondeos de inicio son útiles en especial si usas verificaciones en funcionamiento en contenedores de inicio lento, ya que evitan que se cierren prematuramente antes de que los contenedores estén en funcionamiento.
Los sondeos de funcionamiento determinan si el contenedor se debe reiniciar.
- En este caso, reiniciar un contenedor puede aumentar la disponibilidad del servicio en caso de errores.
- Los sondeos de funcionamiento están diseñados para reiniciar instancias individuales que no se pueden recuperar de ninguna otra manera. Se deben usar en particular para fallas de instancias irrecuperables, por ejemplo, para detectar un interbloqueo en el que se ejecuta un servicio, pero no puede avanzar. Puedes solicitar un sondeo de funcionamiento para cada contenedor con políticas de la organización personalizadas.
- Cuando un servicio experimenta fallas repetidas de sondeo, Cloud Run limita los reinicios de las instancias para evitar bucles de fallas no controlados.
Sondeos de preparación (versión preliminar)
Los sondeos de preparación determinan cuándo una instancia de tu servicio de Cloud Run debe entregar tráfico. Las verificaciones de preparación comienzan después de que el sondeo de inicio del contenedor se realiza correctamente. Si una instancia no supera su sondeo de disponibilidad más allá del valor del umbral de fallas que configures, Cloud Run dejará de enviarle tráfico nuevo. Cloud Run no finaliza la instancia y le envía tráfico cuando esta comienza a pasar su sondeo de disponibilidad nuevamente.
Configura sondeos de inicio
Cualquier cambio en la configuración conlleva la creación de una revisión nueva. Las revisiones posteriores también adoptarán esta configuración de manera automática, a menos que realices actualizaciones explícitas para cambiarla.
Puedes configurar sondeos de HTTP, TCP y gRPC con la Google Cloud consola, YAML o Terraform:
Console
En la consola de Google Cloud , ve a la página Cloud Run:
Para un servicio nuevo, expande Contenedores, volúmenes, Herramientas de redes y seguridad para mostrar las opciones de verificación de estado. En el servicio existente, haz clic en el servicio que quieras configurar y, luego, en Implementar y editar para ver las opciones de verificación de estado.
En la sección Contenedores, dirígete a Verificaciones de estado y haz clic en Agregar verificación de estado para abrir el panel de configuración Agregar verificación de estado.
En el menú Seleccionar el tipo de verificación de estado, selecciona Verificación de inicio.
En el menú Seleccionar tipo de sondeo, selecciona el tipo de sondeo que quieras usar, por ejemplo, HTTP o gRPC. Se mostrará el formulario de configuración del sondeo.
La configuración del sondeo varía según el tipo de sondeo. Establece la configuración del sondeo:
Si usas sondeos de HTTP, haz lo siguiente:
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo,
/startup,/healtho/are_you_ready) debe coincidir con elpathen la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.Usa el campo Ruta de acceso para especificar la ruta de acceso relativa al extremo, por ejemplo,
/.Selecciona la casilla de verificación Encabezados HTTP para especificar encabezados personalizados opcionales. Especifica el nombre del encabezado en el campo Nombre y el valor del encabezado en el campo Valor. Haz clic en Agregar encabezado HTTP para especificar más encabezados.
Si usas sondeos de gRPC, haz lo siguiente:
- Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
En Puerto, especifica el puerto del contenedor que se usa para el servicio.
En Retraso inicial, especifica la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 a 240 segundos. El valor predeterminado es 0 segundos.
En Período, especifica el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 a 240 segundos. El valor predeterminado es 10 segundos.En Umbral de falla, especifica la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
En Tiempo de espera, especifica la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1.
Haz clic en Agregar para agregar el umbral nuevo.
Haz clic en Crear o Implementar.
gcloud
Inicio de TCP
Ejecuta el comando siguiente:
gcloud run deploy SERVICE \
--image=IMAGE_URL \
--startup-probe tcpSocket.port=CONTAINER_PORT,initialDelaySeconds=DELAY,failureThreshold=THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. CONTAINER_PORT: El puerto de contenedor que se usa para el servicio.
- DELAY: Cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1. - THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- PERIOD: Es el período (en segundos) en el que se realizará el sondeo.
Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 240 segundos. El valor predeterminado es 10 segundos.
Inicio de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
Ejecuta el comando siguiente:
gcloud run deploy SERVICE \
--image=IMAGE_URL \
--startup-probe httpGet.path=PATH,httpGet.port=CONTAINER_PORT,initialDelaySeconds=DELAY,failureThreshold=THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - PATH: Es una ruta relativa al extremo HTTP, por ejemplo,
/health. - Es opcional. CONTAINER_PORT: Se configura como el puerto del contenedor que se usa para el servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera de la sonda. Este valor no puede exceder el valor especificado para periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1.
- Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 240 segundos. El valor predeterminado es 10 segundos.
Inicio de gRPC
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
Ejecuta el comando siguiente:
gcloud run deploy SERVICE \
--image=IMAGE_URL \
--startup-probe grpc.port=CONTAINER_PORT,grpc.service=GRPC_SERVICE,initialDelaySeconds=DELAY,failureThreshold=THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. GRPC_SERVICE: Si se configura, se usa en el campo de servicio de
grpc.health.v1.HealthCheckRequestcuando se llama al RPC degrpc.health.v1.Health.Check. - Es opcional. CONTAINER_PORT: El puerto de contenedor que se usa para el servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera de la sonda. Este valor no puede exceder el valor especificado para periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1.
- Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 240 segundos. El valor predeterminado es 10 segundos.
YAML
Inicio de TCP
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
startupProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: spec: containers: - image: IMAGE_URL startupProbe: tcpSocket: port: CONTAINER_PORT initialDelaySeconds: DELAY timeoutSeconds: TIMEOUT failureThreshold: THRESHOLD periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. CONTAINER_PORT: El puerto de contenedor que se usa para tu servicio.
- DELAY: Cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1. - THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- PERIOD: Es el período (en segundos) en el que se realizará el sondeo.
Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 240 segundos. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
Inicio de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
startupProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: spec: containers: - image: IMAGE_URL startupProbe: httpGet: path: PATH port: CONTAINER_PORT httpHeaders: - name: HEADER_NAME value: HEADER_VALUE initialDelaySeconds: DELAY timeoutSeconds: TIMEOUT failureThreshold: THRESHOLD periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - PATH: Es una ruta relativa al extremo HTTP, por ejemplo,
/health. - Es opcional. CONTAINER_PORT: Se configura como el puerto del contenedor que se usa para el servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Opcional: Se puede usar
httpHeaderspara proporcionar varios encabezados personalizados o repetidos con los campos HEADER_NAME y HEADER_VALUE, como se muestra. - Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera de la sonda. Este valor no puede exceder el valor especificado para periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1.
- Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 240 segundos. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
Inicio de gRPC
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
startupProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: spec: containers: - image: IMAGE_URL startupProbe: grpc: service: GRPC_SERVICE port: CONTAINER_PORT initialDelaySeconds: DELAY timeoutSeconds: TIMEOUT failureThreshold: THRESHOLD periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. GRPC_SERVICE: Si se configura, se usa en el campo de servicio de
grpc.health.v1.HealthCheckRequestcuando se llama al RPC degrpc.health.v1.Health.Check. - Es opcional. CONTAINER_PORT: El puerto de contenedor que se usa para tu servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera de la sonda. Este valor no puede exceder el valor especificado para periodSeconds. Especifica un valor de 1 a 240. El valor predeterminado es 1.
- Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 240 segundos. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
Terraform
Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.
Inicio de TCP
Configura el servicio de Cloud Run con el atributo startup_probe como se muestra a continuación:
Inicio de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
Configura el servicio de Cloud Run con el atributo startup_probe como se muestra a continuación:
Inicio de gRPC
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
Configura el servicio de Cloud Run con el atributo startup_probe como se muestra a continuación:
El sondeo de inicio de TCP predeterminado
Si no configuras de forma explícita un sondeo de inicio de TCP para un servicio de Cloud Run nuevo, Cloud Run configurará automáticamente un sondeo de inicio de TCP con los siguientes valores predeterminados:
startupProbe:
timeoutSeconds: 240
periodSeconds: 240
failureThreshold: 1
Puedes cambiar estos valores predeterminados según las instrucciones de la sección Configuración de sondeo en esta página.
Requisitos y comportamiento del sondeo de inicio
| Tipo de sondeo | Requisitos | Comportamiento |
|---|---|---|
| Inicio de TCP | Ninguno | De forma predeterminada, Cloud Run realiza una conexión TCP para abrir el socket TCP en el puerto especificado. Si Cloud Run no puede establecer una conexión, indica un error. Si un sondeo de inicio no se realiza de forma correcta dentro del tiempo especificado ( failureThreshold * periodSeconds), que no puede superar los 240 segundos, el contenedor se cierra. Consulta también Valores predeterminados de TCP. |
| Inicio de HTTP | Crea un extremo de verificación de estado HTTP Usa HTTP/1 |
Después de configurar el sondeo, Cloud Run realiza una solicitud HTTP GET al extremo de verificación de estado (por ejemplo, /health). Cualquier respuesta 2XX o 3XX es correcta, y todo lo demás indica un error.Si un sondeo de inicio no se completa de forma correcta dentro del tiempo especificado ( failureThreshold * periodSeconds), que no puede superar los 240 segundos, el contenedor se cierra.Si el sondeo de inicio HTTP se completa de forma correcta dentro del tiempo especificado y configuraste un sondeo de funcionamiento HTTP, se inicia el sondeo de funcionamiento HTTP. |
| Inicio de gRPC | Implementa el protocolo de verificación de estado de gRPC en tu servicio de Cloud Run. | Si un sondeo de inicio no se completa de forma correcta dentro del tiempo especificado (failureThreshold * periodSeconds), que no puede superar los 240 segundos, el contenedor se cierra. |
Configura los sondeos de funcionamiento
Cualquier cambio en la configuración conlleva la creación de una revisión nueva. Las revisiones posteriores también adoptarán esta configuración de manera automática, a menos que realices actualizaciones explícitas para cambiarla.
Puedes configurar sondeos de HTTP y gRPC con la Google Cloud consola, YAML o Terraform:
Console
En la consola de Google Cloud , ve a la página Cloud Run:
Para un servicio nuevo, expande Contenedores, volúmenes, Herramientas de redes y seguridad para mostrar las opciones de verificación de estado. En el servicio existente, haz clic en el servicio que quieras configurar y, luego, en Implementar y editar para ver las opciones de verificación de estado.
En la sección Contenedores, dirígete a Verificaciones de estado y haz clic en Agregar verificación de estado para abrir el panel de configuración Agregar verificación de estado.
En el menú Seleccionar el tipo de verificación de estado, selecciona Verificación de funcionamiento.
En el menú Seleccionar tipo de sondeo, selecciona el tipo de sondeo que quieras usar, por ejemplo, HTTP o gRPC. Se mostrará el formulario de configuración del sondeo.
La configuración del sondeo varía según el tipo de sondeo. Establece la configuración del sondeo:
Si usas sondeos de HTTP, haz lo siguiente:
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo,
/startup,/healtho/are_you_ready) debe coincidir con elpathen la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.Usa el campo Ruta de acceso para especificar la ruta de acceso relativa al extremo, por ejemplo,
/.Selecciona la casilla de verificación Encabezados HTTP para especificar encabezados personalizados opcionales. Especifica el nombre del encabezado en el campo Nombre y el valor del encabezado en el campo Valor. Haz clic en Agregar encabezado HTTP para especificar más encabezados.
Si usas sondeos de gRPC, haz lo siguiente:
- Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
En Puerto, especifica el puerto del contenedor que se usa para el servicio.
En Retraso inicial, especifica la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 a 240 segundos. El valor predeterminado es 0 segundos.
En Período, especifica el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 3,600 segundos. El valor predeterminado es 10 segundos.En Umbral de falla, especifica la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
En Tiempo de espera, especifica la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 3,600. El valor predeterminado es 1.
Haz clic en Agregar para agregar el umbral nuevo.
Haz clic en Crear o Implementar.
gcloud
Activo de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
Ejecuta el comando siguiente:
gcloud run deploy SERVICE \
--image=IMAGE_URL \
--liveness-probe httpGet.path=PATH,httpGet.port=CONTAINER_PORT,initialDelaySeconds=DELAY,failureThreshold=THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - PATH: Es una ruta relativa al extremo HTTP, por ejemplo,
/health. - Es opcional. CONTAINER_PORT: Se configura como el puerto del contenedor que se usa para el servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 3,600.El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 3,600 segundos. El valor predeterminado es 10 segundos.
gRPC en funcionamiento
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
Ejecuta el comando siguiente:
gcloud run deploy SERVICE \
--image=IMAGE_URL \
--liveness-probe grpc.port=CONTAINER_PORT,grpc.service=GRPC_SERVICE,initialDelaySeconds=DELAY,failureThreshold=THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. GRPC_SERVICE: Si se configura, se usa en el campo de servicio de
grpc.health.v1.HealthCheckRequestcuando se llama al RPC degrpc.health.v1.Health.Check. - Es opcional. CONTAINER_PORT: El puerto de contenedor que se usa para tu servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 3,600.El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 3,600 segundos. El valor predeterminado es 10 segundos.
YAML
Activo de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
livenessProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: spec: containers: - image: IMAGE_URL livenessProbe: httpGet: path: PATH port: CONTAINER_PORT httpHeaders: - name: HEADER_NAME value: HEADER_VALUE initialDelaySeconds: DELAY timeoutSeconds: TIMEOUT failureThreshold: THRESHOLD periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - PATH: Es una ruta relativa al extremo HTTP, por ejemplo,
/health. - Es opcional. CONTAINER_PORT: Se configura como el puerto del contenedor que se usa para el servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Opcional: Se puede usar
httpHeaderspara proporcionar varios encabezados personalizados o repetidos con los campos HEADER_NAME y HEADER_VALUE, como se muestra. - Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 3,600.El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 3,600 segundos. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
gRPC en funcionamiento
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
livenessProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE spec: template: metadata: spec: containers: - image: IMAGE_URL livenessProbe: grpc: port: CONTAINER_PORT service: GRPC_SERVICE initialDelaySeconds: DELAY timeoutSeconds: TIMEOUT failureThreshold: THRESHOLD periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. GRPC_SERVICE: Si se configura, se usa en el campo de servicio de
grpc.health.v1.HealthCheckRequestcuando se llama al RPC degrpc.health.v1.Health.Check. - Es opcional. CONTAINER_PORT: El puerto de contenedor que se usa para el servicio.
- Es opcional. DELAY: Es la cantidad de segundos que se espera después de que el contenedor se inició antes de realizar el primer sondeo. Especifica un valor de 0 segundos a 240 segundos. El valor predeterminado es 0 segundos.
- Es opcional. THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de apagar el contenedor. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 3,600.El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 segundo a 3,600 segundos. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
Terraform
Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform.
Activo de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
Configura el servicio de Cloud Run con el atributo liveness_probe como se muestra a continuación:
gRPC en funcionamiento
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
Configura el servicio de Cloud Run con el atributo liveness_probe como se muestra a continuación:
Requisitos y comportamiento del sondeo de funcionamiento
| Tipo de sondeo | Requisitos | Comportamiento |
|---|---|---|
| Activo de HTTP | Crea un extremo de verificación de estado HTTP Usa HTTP/1 |
El sondeo de capacidad de respuesta comienza solo después de que el sondeo de inicio se realiza correctamente. Después de configurar el sondeo y de que cualquier sondeo de inicio se realice correctamente, Cloud Run realiza una solicitud HTTP GET al extremo de verificación de estado (por ejemplo, /health). Cualquier respuesta 2XX o 3XX es correcta, y todo lo demás indica un error.Si un sondeo de funcionamiento no se realiza correctamente dentro del tiempo especificado ( failureThreshold * periodSeconds), el contenedor se cierra con una señal SIGKILL. Las solicitudes restantes que el contenedor aún entregaba se finalizan con el código de estado HTTP 503. Después de cerrar el contenedor, el ajuste de escala automático de Cloud Run inicia una instancia de contenedor nueva. |
| gRPC en funcionamiento | Implementa el protocolo de verificación de estado de gRPC en tu servicio de Cloud Run. | Si configuras un sondeo de inicio de gRPC, el sondeo de funcionamiento comienza solo después de que el sondeo de inicio se realiza correctamente. Después de configurar el sondeo de funcionamiento y cualquier sondeo de inicio se realiza correctamente, Cloud Run realiza una solicitud de verificación de estado al servicio. Si un sondeo de funcionamiento no se completa de forma correcta dentro del tiempo especificado ( failureThreshold * periodSeconds), el contenedor se cierra con una señal SIGKILL. Después de cerrar el contenedor, el ajuste de escala automático de Cloud Run inicia una instancia de contenedor nueva. |
Configura los sondeos de preparación
Cualquier cambio en la configuración conlleva la creación de una revisión nueva. Las revisiones posteriores también adoptarán esta configuración de manera automática, a menos que realices actualizaciones explícitas para cambiarla.
Se aplican las siguientes limitaciones a las sondas de disponibilidad:
Si habilitas la afinidad de sesión, Cloud Run seguirá enviando solicitudes a la misma instancia, incluso si falla su verificación de preparación.
Cloud Run podría enviar solicitudes a una instancia recién iniciada antes de que se complete el sondeo de disponibilidad por primera vez.
Si anteriormente configuraste una sonda de disponibilidad para tu servicio de Cloud Run con la API de Cloud Run Admin v1 antes de noviembre de 2025, tus verificaciones de disponibilidad no entrarán en vigencia incluso después de que implementes una nueva configuración para ese servicio. Esto ocurre porque el servicio conserva una configuración anterior. Los servicios que crees después de noviembre de 2025 o los que nunca usaron una sonda de disponibilidad no se verán afectados. Para habilitar las sondas de disponibilidad compatibles en los servicios afectados, haz lo siguiente:
Implementa una revisión nueva que quite la definición anterior del sondeo de preparación.
Implementa otra revisión nueva que agregue la definición de la sonda de disponibilidad pertinente.
Estos pasos borran cualquier configuración anterior y habilitan la funcionalidad del sondeo de preparación.
Puedes configurar un sondeo de disponibilidad con la Google Cloud consola, Google Cloud CLI o YAML:
Console
En la consola de Google Cloud , ve a la página Cloud Run:
Para un servicio nuevo, expande Contenedores, volúmenes, Herramientas de redes y seguridad para mostrar las opciones de verificación de estado. En el servicio existente, haz clic en el servicio que quieras configurar y, luego, en Implementar y editar para ver las opciones de verificación de estado.
En la sección Contenedores, dirígete a Verificaciones de estado y haz clic en Agregar verificación de estado para abrir el panel de configuración Agregar verificación de estado.
En el menú Seleccionar el tipo de verificación de estado, selecciona Verificación de preparación.
En el menú Seleccionar tipo de sondeo, selecciona el tipo de sondeo que quieras usar, por ejemplo, HTTP o gRPC. Se mostrará el formulario de configuración del sondeo.
La configuración del sondeo varía según el tipo de sondeo. Establece la configuración del sondeo:
Si usas sondeos de HTTP, haz lo siguiente:
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo,
/startup,/healtho/are_you_ready) debe coincidir con elpathen la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.Usa el campo Ruta de acceso para especificar la ruta de acceso relativa al extremo, por ejemplo,
/are_you_ready. La ruta de acceso predeterminada es/.
Si usas sondeos de gRPC, haz lo siguiente:
- Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
En Puerto, especifica el puerto del contenedor para tu servicio. El puerto predeterminado es el puerto de entrada principal.
En Período, especifica el período (en segundos) en el que se realizará el sondeo. Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 a 300. El valor predeterminado es 10 segundos.En Umbral de éxito, especifica la cantidad mínima de resultados correctos consecutivos para que el sondeo se considere exitoso después de un error. El valor predeterminado es 2.
En Umbral de falla, especifica la cantidad de veces que se debe reintentar el sondeo antes de informar una falla, lo que provoca que la instancia deje de recibir tráfico. El valor predeterminado es 3.
En Tiempo de espera, especifica la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 300. El valor predeterminado es 1.
Haz clic en Agregar para agregar el umbral nuevo.
Haz clic en Crear o Implementar.
gcloud
Disponibilidad de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
Ejecuta el comando siguiente:
gcloud beta run deploy SERVICE \
--image=IMAGE_URL \
--readiness-probe httpGet.path=PATH,httpGet.port=CONTAINER_PORT,successThreshold=SUCCESS_THRESHOLD,failureThreshold=FAILURE_THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. PATH: Es la ruta relativa al extremo HTTP, por ejemplo,
/are_you_ready. La ruta de acceso predeterminada es/. - Es opcional. CONTAINER_PORT: Es el puerto del contenedor que se usa para tu servicio. El puerto predeterminado es el puerto de entrada principal.
- Es opcional. SUCCESS_THRESHOLD: Es la cantidad mínima de resultados consecutivos para que el sondeo se considere exitoso después de haber fallado. El valor predeterminado es 2.
- Es opcional. FAILURE_THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de informar una falla, lo que hace que la instancia deje de recibir tráfico. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 300. El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo.
Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 a 300. El valor predeterminado es 10 segundos.
Preparación de gRPC
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
Ejecuta el comando siguiente:
gcloud beta run deploy SERVICE \
--image=IMAGE_URL \
--readiness-probe grpc.port=CONTAINER_PORT,grpc.service=GRPC_SERVICE,successThreshold=SUCCESS_THRESHOLD,failureThreshold=FAILURE_THRESHOLD,timeoutSeconds=TIMEOUT,periodSeconds=PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. CONTAINER_PORT: Es el puerto del contenedor que se usa para tu servicio. El puerto predeterminado es el puerto de entrada principal.
- Es opcional. GRPC_SERVICE: Si se configura, se usa en el campo de servicio de
grpc.health.v1.HealthCheckRequestcuando se llama al RPC degrpc.health.v1.Health.Check. - Es opcional. SUCCESS_THRESHOLD: Es la cantidad mínima de resultados consecutivos para que el sondeo se considere exitoso después de haber fallado. El valor predeterminado es 2.
- Es opcional. FAILURE_THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de informar una falla, lo que hace que la instancia deje de recibir tráfico. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 300. El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo.
Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 a 300. El valor predeterminado es 10 segundos.
YAML
Disponibilidad de HTTP
Agrega un extremo HTTP/1 (el valor predeterminado de Cloud Run, no HTTP/2) en el código de servicio para responder al sondeo. El nombre del extremo (por ejemplo, /startup, /health o /are_you_ready) debe coincidir con el path en la configuración del sondeo. Los extremos de verificación de estado de HTTP son accesibles de forma externa y siguen los mismos principios que cualquier otro extremo de servicio HTTP expuesto de forma externa.
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
readinessProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE annotations: run.googleapis.com/launch-stage: BETA spec: template: metadata: spec: containers: - image: IMAGE_URL readinessProbe: httpGet: path: PATH port: CONTAINER_PORT successThreshold: SUCCESS_THRESHOLD failureThreshold: FAILURE_THRESHOLD timeoutSeconds: TIMEOUT periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. PATH: Es la ruta relativa al extremo HTTP, por ejemplo,
/are_you_ready. La ruta de acceso predeterminada es/. - Es opcional. CONTAINER_PORT: Es el puerto del contenedor que se usa para tu servicio. El puerto predeterminado es el puerto de entrada principal.
- Es opcional. SUCCESS_THRESHOLD: Es la cantidad mínima de resultados consecutivos para que el sondeo se considere exitoso después de haber fallado. El valor predeterminado es 2.
- Es opcional. FAILURE_THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de informar una falla, lo que hace que la instancia deje de recibir tráfico. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 300. El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo.
Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 a 300. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
Preparación de gRPC
Asegúrate de que tu imagen de contenedor implemente el protocolo de verificación de estado de gRPC.
-
Si creas un servicio nuevo, omite este paso. Si actualizas un servicio existente, descarga su configuración de YAML:
gcloud run services describe SERVICE --format export > service.yaml
Configura el atributo
readinessProbecomo se muestra a continuación:apiVersion: serving.knative.dev/v1 kind: Service metadata: name: SERVICE annotations: run.googleapis.com/launch-stage: BETA spec: template: metadata: spec: containers: - image: IMAGE_URL readinessProbe: grpc: port: CONTAINER_PORT service: GRPC_SERVICE successThreshold: SUCCESS_THRESHOLD failureThreshold: FAILURE_THRESHOLD timeoutSeconds: TIMEOUT periodSeconds: PERIOD
Reemplaza lo siguiente:
- SERVICE: El nombre de tu servicio de Cloud Run.
- IMAGE_URL: Una referencia a la imagen del contenedor, por ejemplo,
us-docker.pkg.dev/cloudrun/container/hello:latestSi usas Artifact Registry, el repositorio REPO_NAME ya debe estar creado. La URL tiene el formatoLOCATION-docker.pkg.dev/PROJECT_ID/REPO_NAME/PATH:TAG. - Es opcional. CONTAINER_PORT: Es el puerto del contenedor que se usa para tu servicio. El puerto predeterminado es el puerto de entrada principal.
- Es opcional. GRPC_SERVICE: Si se configura, se usa en el campo de servicio de
grpc.health.v1.HealthCheckRequestcuando se llama al RPC degrpc.health.v1.Health.Check. - Es opcional. SUCCESS_THRESHOLD: Es la cantidad mínima de resultados consecutivos para que el sondeo se considere exitoso después de haber fallado. El valor predeterminado es 2.
- Es opcional. FAILURE_THRESHOLD: Es la cantidad de veces que se debe reintentar el sondeo antes de informar una falla, lo que hace que la instancia deje de recibir tráfico. El valor predeterminado es 3.
- Es opcional. TIMEOUT: Es la cantidad de segundos que se espera hasta que se agote el tiempo de espera del sondeo. Este valor no puede exceder el valor especificado para
periodSeconds. Especifica un valor de 1 a 300. El valor predeterminado es 1. - Es opcional. PERIOD: Es el período (en segundos) en el que se realizará el sondeo.
Por ejemplo,
2para realizar el sondeo cada 2 segundos. Especifica un valor de 1 a 300. El valor predeterminado es 10 segundos.
-
Crea o actualiza el servicio con el siguiente comando:
gcloud run services replace service.yaml
Asignación de CPU
- La CPU siempre se asigna cuando se ejecutan los sondeos.
- Todos los sondeos se facturan por el consumo de CPU y memoria, pero no se aplican cargos basados en solicitudes.
¿Qué sigue?
- Obtén más información para configurar un protocolo de verificación de estado de gRPC.