Назад | Перейти на главную страницу

Google Cloud Storage - Балансировщик нагрузки - Правила хоста и пути

У меня есть веб-сайт с Балансировщик нагрузки Google Cloud, называется santi.com

у меня есть Сегмент Google Cloud Storage называется santi-pictures

Я успешно настроил Хост и правило пути из этого балансировщика нагрузки в этот сегмент, введя эту информацию в Google Cloud Console.

+-----------+-------------+----------------+
| Hosts     | Paths       | Backends       |
+-----------+-------------+----------------+
| santi.com | /pictures/* | santi-pictures |
+-----------+-------------+----------------+

Он работает правильно, когда я получаю доступ к этому URL-адресу в браузере ...

http://santi.com/pictures/me.jpg

... пока есть фотография в этом месте в ведре:

gs://santi-pictures/pictures/me.jpg

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

gs://santi-pictures/me.jpg

Это уже ведро с изображениями, поэтому мне не имеет смысла помещать в него папку с изображениями.

Спасибо за вашу помощь.

Я тестировал следующие правила хоста и пути и проверял с помощью http: // ip-балансировщика нагрузки / имя-файла и смог получить доступ к файлу, находящемуся в корне сегмента, определенного в конфигурации серверной части балансировщика нагрузки.

| Хосты | Пути | Backends |

| ВЕБ-СЕРВЕР-IP | / * | Имя серверной службы |

Попробуйте скопировать изображение в корень вашего сегмента, определенного в конфигурации бэкэнда балансировщика нагрузки, и добавьте или измените «Правила хоста и пути», чтобы определить путь как «/ *» (без кавычек). Вы должны иметь доступ к изображению, используя "gs: // bucket-name / file-name" или "http: // ip-балансировщика нагрузки / имя-файла"

Надеюсь, поможет.

Тем не менее, по состоянию на 30 декабря 2019 года в Google Cloud CDN это невозможно. Это было невозможно и на AWS, но с прошлогодним предложением AWS Lambda @ Edge вы можете переписывать URL-адреса по своему усмотрению, а также выполнять любые вычисления на периферии, такие как аутентификация или другие настраиваемые рабочие процессы с использованием функций Lambda. Несмотря на то, что исходный плакат смог заставить его работать без перезаписи URL-адреса, IMO это сильная функция, если вам действительно нужны вычисления на границе CDN. Фактически, это одно из больших уникальных ценностных предложений Cloudflare CDN (называемое Cloudflare Workers). Google медленно продвигается к интеграции своих облачных функций с другими сервисами, но я могу представить, что эта интеграция будет существовать в Google Cloud CDN через пару лет.

Я надеялся сделать то же самое, что и @ santiago-arizti, но я не верю, что это возможно на момент написания этого. Согласно Гугл документы:

Обслуживаемый объект облачного хранилища определяется на основе карты URL-адресов и запрашиваемого URL-адреса. Если путь запроса сопоставляется с бакетом серверной части в вашей карте URL-адресов, объект Cloud Storage определяется путем добавления полного пути запроса к сегменту Cloud Storage, указанному картой URL.

Например, если вы сопоставите / static / * с gs: // [EXAMPLE_BUCKET], запрос к https: ///static/path/to/content.jpg будет пытаться обслуживать gs: // [EXAMPLE_BUCKET] / static / путь / к / content.jpg