Usar mapas de URL

En esta guía se explica cómo configurar mapas de URLs. Trusted CloudUn mapa de URLs es un conjunto de reglas para enrutar las solicitudes HTTP(S) entrantes a servicios de backendespecíficos. Un mapa de URLs mínimo coincide con todas las rutas de solicitudes entrantes (/*).

Antes de seguir esta guía, familiarízate con los conceptos de mapa de URLs.

Los mapas de URLs se usan con los siguientes Trusted Cloud productos:

Los mapas de URLs que se usan con balanceadores de carga de aplicación externos regionales y balanceadores de carga de aplicación internos regionales también admiten varias funciones de gestión de tráfico avanzada. Para obtener más información, consulta Conceptos de mapa de URLs: gestión avanzada del tráfico.

Valores predeterminados de los mapas de URLs

Los mapas de URLs tienen dos valores predeterminados, tal como se describe en la siguiente tabla.

Tipo predeterminado Ajuste Significado
Predeterminado del mapa de URLs gcloud compute url-maps create

--default-service

El servicio de backend predeterminado especificados se utilizan si ninguno de los matchers de ruta o las reglas de host coincide con la URL entrante.
Valor predeterminado del comparador de rutas gcloud compute url-maps add-path-matcher

--default-service

El servicio de backend predeterminado especificados se utilizan si la ruta de la URL coincide con un comparador de rutas, pero no coincide con ninguno de los --path-rules especificados.

Reglas de host

Una regla de host define un conjunto de hosts con los que se comparan las solicitudes.

En una regla de host, el nombre de host debe ser un nombre de dominio completo (FQDN). El nombre de host no puede ser una dirección IPv4 o IPv6. Por ejemplo:

  • Obras: example.com
  • Obras: web.example.com
  • Obras: *.example.com
  • No funciona: 35.244.221.250

Configurar mapas de URLs

Un mapa de URLs puede enviar tráfico a servicios de backend.

Consola

Para añadir un mapa de URLs mediante la consola Trusted Cloud , sigue estos pasos:

  1. Ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en el Nombre de un balanceador de carga.
  3. En la página Detalles del balanceador de carga, haga clic en Editar del balanceador de carga seleccionado.
  4. Selecciona Reglas de host y ruta.
  5. Haz clic en Añadir regla de host y ruta.
  6. Rellena el campo Host, el campo Paths o ambos, y selecciona un servicio de backend.

    1. Introduce un Nombre de host completo. Por ejemplo: web.example.com.
    2. Introduce la ruta. Por ejemplo, /video.
    3. En la página Reglas de host y ruta, en el menú Backends (Backends), selecciona un servicio de backenddisponibles.
  7. Busca la marca de verificación azul situada a la izquierda de Reglas de host y ruta y haz clic en el botón Actualizar.

gcloud

Para añadir un mapa de URLs con la CLI de Google Cloud, usa el comando url-maps create:

gcloud compute url-maps create URL_MAP_NAME \
   (--default-service=DEFAULT_SERVICE) \
   [--description DESCRIPTION] \
   [--region=REGION]

En el caso de los balanceadores de carga de aplicación externos regionales y los balanceadores de carga de aplicación internos, asegúrate de incluir la marca --region al crear el mapa de URLs.

Para crear un matcher de ruta, usa el comando gcloud compute url-maps add-path-matcher:

gcloud compute url-maps add-path-matcher URL_MAP_NAME \
   (--default-service=DEFAULT_SERVICE) \
   --path-matcher-name PATH_MATCHER \
   [--path-rules="PATH=SERVICE"]

Este comando requiere un servicio de backend predeterminado al que pueda enviar las solicitudes que no coincidan. La marca --path-rules define las asignaciones entre las rutas de solicitud y los servicios de backend. En el siguiente ejemplo, se dirigen las rutas de solicitud /video/ y /video/* al servicio backend video-service:

--path-rules="/video=video-service,/video/*=video-service"

Para crear una regla de host, usa el comando gcloud compute url-maps add-host-rule

gcloud compute url-maps add-host-rule URL_MAP_NAME \
    --hosts=[HOSTS] --path-matcher-name=PATH_MATCHER

Por ejemplo, el siguiente valor de --hosts coincide con las solicitudes de www.example.com y cualquier subdominio de altostrat.com:

--hosts=[*.altostrat.com,www.example.com]

Para cambiar el servicio predeterminado de un mapa de URLs, usa el comando url-maps set-default-service:

gcloud compute url-maps set-default-service URL_MAP_NAME
  (--default-service=DEFAULT_SERVICE)[GCLOUD_WIDE_FLAG ...]

Terraform

Para crear un mapa de URLs regional, usa el recurso google_compute_region_url_map.

resource "google_compute_region_url_map" "default" {
  name            = "regional-l7-xlb-map"
  region          = "us-west1"
  default_service = google_compute_region_backend_service.default.id
}

Mostrar lista de mapas de URLs

Consola

No puedes consultar todas tus asignaciones de URLs en la consola. Trusted Cloud

gcloud

Para mostrar una lista de mapas de URLs con la CLI de Google Cloud, usa el comando url-maps list.

gcloud compute url-maps list

Obtener información sobre un mapa de URLs

Consola

Para obtener información sobre un mapa de URLs, sigue estos pasos:

  1. Ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en el Nombre de un balanceador de carga.
  3. En la página Detalles del balanceador de carga, haz clic en Editar del balanceador de carga seleccionado.
  4. Consulta las reglas de host y ruta.

gcloud

Para obtener información sobre un solo mapa de URLs mediante la CLI de Google Cloud, usa el comando url-maps describe.

gcloud compute url-maps describe URL_MAP_NAME

Eliminar un mapa de URL

Solo puedes eliminar un mapa de URLs después de haber eliminado todos los proxies de destino que lo referencian. Para obtener más información, consulta Eliminar un proxy de destino.

Consola

Para eliminar un mapa de URLs, sigue estos pasos:

  1. Ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en el Nombre de un balanceador de carga.
  3. En la página Detalles del balanceador de carga, haz clic en Editar del balanceador de carga seleccionado.
  4. En la página Detalles del balanceador de carga, consulta las reglas de host y ruta.
  5. Haz clic en la "X" situada a la derecha de un mapa de URLs para eliminarlo. El mapa de URLs desaparece.
  6. Busca la marca de verificación azul situada a la izquierda de Reglas de host y ruta y haz clic en el botón Actualizar.

gcloud

Para eliminar un mapa de URLs con la CLI de Google Cloud, usa el comando url-maps delete. Para poder eliminar un mapa de URLs, primero debe eliminar todos los proxies HTTP de destino que hagan referencia a él.

gcloud compute url-maps delete URL_MAP_NAME [--quiet]

Eliminar un comparador de rutas

Consola

Para eliminar un comparador de rutas, sigue estos pasos:

  1. Ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en el Nombre de un balanceador de carga.
  3. En la página Detalles del balanceador de carga, haz clic en Editar del balanceador de carga seleccionado.
  4. Selecciona Reglas de host y ruta.
  5. En el campo Rutas de un mapa de URLs, haga clic en la "x" del nombre del comparador de rutas.
  6. Busca la marca de verificación azul situada a la izquierda de Reglas de host y ruta y haz clic en el botón Actualizar.

gcloud

Para eliminar un matcher de ruta, usa el comando gcloud compute url-maps remove-path-matcher:

gcloud compute url-maps remove-path-matcher URL_MAP_NAME \
   [--path-matcher-name PATH_MATCHER]

Eliminar una regla de host

Consola

Para eliminar una regla de host, sigue estos pasos:

  1. Si aún no estás en la página Reglas de host y ruta, ve a la página Balanceo de carga.

    Ir a Balanceo de carga

  2. Haz clic en el Nombre de un balanceador de carga.
  3. En la página Detalles del balanceador de carga, haz clic en Editar del balanceador de carga seleccionado.
  4. Selecciona Reglas de host y ruta.
  5. En el campo Hosts (Hosts) de una asignación de URL, haga clic en la "x" del nombre del host.
  6. Busca la marca de verificación azul situada a la izquierda de Reglas de host y ruta y haz clic en el botón Actualizar.

gcloud

Para eliminar una regla de host de tu mapa de URLs, usa el comando gcloud compute url-maps remove-host-rule:

gcloud compute url-maps remove-host-rule URL_MAP_NAME --host=HOST

Por ejemplo, para eliminar una regla de host que contenga el host altostrat.com de un mapa de URLs llamado my-map, ejecutaría el siguiente comando:

gcloud compute url-maps remove-host-rule my-map --host altostrat.com

Guías de gestión del tráfico

No todas las funciones de los mapas de URLs están disponibles para todos los productos. Los mapas de URLs se usan con balanceadores de carga para admitir varias funciones avanzadas de gestión del tráfico.

Consulta la siguiente tabla para obtener información sobre las funciones de los mapas de URLs para las tareas de gestión.

Producto Funciones de los mapas de URLs y guías de gestión del tráfico
Balanceador de carga de aplicación externo regional Funciones del balanceador de carga: gestión del tráfico y del enrutamiento

Información general sobre la gestión del tráfico

Configurar la gestión del tráfico

Configurar una redirección de URL

Configurar el redireccionamiento de HTTP a HTTPS

Nombre de host y ruta

Solicitudes de enrutamiento

Cookies

Balanceador de carga de aplicación interno Funciones del balanceador de carga: gestión del tráfico y del enrutamiento

Información general sobre la gestión del tráfico

Configurar la gestión del tráfico

Configurar redirecciones de URL

Configurar redireccionamientos de HTTP a HTTPS

Cookies

Nombre de host y ruta

Referencia de la API y de la CLI de gcloud

Además de la Trusted Cloud consola, puedes usar la API y la CLI de gcloud para crear mapas de URLs.

API

Para ver las descripciones de las propiedades y los métodos que tienes a tu disposición cuando trabajas con mapas de URLs a través de la API REST, consulta lo siguiente:

Producto Documentación de la API
Balanceador de carga de aplicación externo urlMaps
Balanceador de carga de aplicación interno regionUrlMaps

CLI de gcloud

Para obtener información sobre Google Cloud CLI en Google Cloud CLI, consulta lo siguiente:

  • Regional: --region=[REGION]

Para gestionar el tráfico de forma avanzada, usa archivos YAML e impórtalos con el comando gcloud compute url-maps import.

Siguientes pasos