URL-адрес сервера HTTPS Loadbalncer не может загрузить страницу отрисовки

Мои приложения используют http для запуска всех служб с помощью docker-compose. Приложение работает без проблем, и мы пытаемся настроить балансировщик нагрузки HTTPS для всех служб.

Мы создали LoadBalancer, используя эту документацию. https://cloud.google.com/iap/docs/load-balancer-howto#console_1

Мы добавили три серверных службы и установили правила хоста и пути для всех серверных служб.

Но при попытке просмотреть ниже URL-адреса HTTPS

https: // Loadbalancer-ip: / strapi

https: // Loadbalancer-ip: / auth

https: // Loadbalancer-ip: / images / 1.

Я получаю страницу 404. Но он работает отдельно только для All unmatched (по умолчанию).

2 ответа

Я хочу помочь вам исправить ваше текущее ограничение.

Перенаправление URL-адресов перенаправляет посетителей вашего домена с одного URL-адреса на другой.

Перед развертыванием карты URL-адресов убедитесь, что вы проверили конфигурацию карты URL-адресов, чтобы убедиться, что карта направляет запросы в соответствующие серверные ВМ, как задумано. Вы можете сделать это, добавив тесты в конфигурацию карты URL.

Использовать команда для проверки конфигурации карты URL.

      
gcloud compute url-maps validate --source PATH_TO_URL_MAP_CONFIG_FILE

PATH_TO_URL_MAP_CONFIG_FILE : замените на путь к файлу, который содержит конфигурацию карты URL-адресов для проверки.

Проверка изменений в существующей карте URL-адресов балансировщика нагрузки

Если у вас есть балансировщик нагрузки, которому необходимо внести изменения в карту URL-адресов, вы можете протестировать эти изменения конфигурации, прежде чем вносить их в действие.

  1. Экспортируйте существующую карту URL-адресов балансировщика нагрузки в файл YAML.
      gcloud compute url-maps export URL_MAP_NAME \
   --destination PATH_TO_URL_MAP_CONFIG_FILE \
   --global

  1. Отредактируйте файл YAML с новой конфигурацией. Например, если вы хотите отредактировать внешний балансировщик нагрузки HTTP(S) и отправлять все запросы с путем к новой вызванной серверной службе, вы можете добавить тесты в конфигурацию карты URL следующим образом:

Существующая конфигурация карты URL-адресов с одним значением по умолчанию:

       kind: compute#urlMap
 name: URL_MAP_NAME
 defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service

Отредактированная конфигурация карты URL-адресов с добавленным сопоставлением путей и тестами для обоих значений по умолчанию. и новый серверная служба:

       kind: compute#urlMap
 name: URL_MAP_NAME
 defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
 hostRules:
 - hosts:
   - '*'
   pathMatcher: pathmap
 pathMatchers:
 - defaultService: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
   name: pathmap
   pathRules:
   - paths:
     - /video
     - /video/*
     service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/video-backend-service
 tests:
 - description: Test routing to existing web service
   host: foobar
   path: /
   service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/web-backend-service
 - description: Test routing to new video service
   host: foobar
   path: /video
   service: https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendService/video-backend-service
  1. Подтвердите новую конфигурацию.
      gcloud compute url-maps validate --source PATH_TO_URL_MAP_CONFIG_FILE

Если все тесты пройдены успешно, вы должны увидеть сообщение об успешном завершении, например:

      Successfully validated [https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/urlMaps/URL_MAP_CONFIG_FILE_NAME

Если тесты не пройдут, появляется сообщение об ошибке. Внесите необходимые исправления в файл конфигурации карты URL-адресов и повторите попытку проверки.

      Error: Invalid value for field 'urlMap.tests': ''.
Test failure: Expect URL 'HOST/PATH' to map to service 'EXPECTED_BACKEND_SERVICE', but actually mapped to 'ACTUAL_BACKEND_SERVICE'.
  1. Как только вы узнаете, что новая конфигурация работает и не влияет на вашу существующую, вы можете импортировать ее в карту URL-адресов. Обратите внимание, что на этом шаге также будет развернута карта URL-адресов с новой конфигурацией.
      gcloud compute url-maps import URL_MAP_NAME \
   --source PATH_TO_URL_MAP_CONFIG_FILE \
   --global

Важно: если вы изначально настроили балансировщик нагрузки в облачной консоли, имя карты URL совпадает с именем балансировщика нагрузки.

Веселиться!

  1. Вы имели в виду страницу с кодом статуса 404, Или просто нет доступа к своей странице?

  2. Убедитесь, что вы указали правильный IP-адрес И порт серверных служб.

  3. Вы хотите нанести на карту Loadbalancer-ip:/strapi к service-ip:/strapi или же service-ip:?

Другие вопросы по тегам