Как правильно настроить Google Cloud CDN?

R3
На сайте с 09.01.2014
Offline
49
590
Вопрос к знатокам Google Cloud Platform.

Не могу разобраться с настройкой Cloud CDN. Для его работы нужно использовать Балансировщик нагрузки. Есть внешний сервер с веб-страницами. Делаю строго по инструкции "Setting up Cloud CDN with an external origin" https://cloud.google.com/cdn/docs/setting-up-cdn-with-external-origin

  1. Создал группу конечных точек https://yadi.sk/i/IdtQ4rXNlS1Mwg 
  2. Создал Балансировщик нагрузки, выбрал ранее созданную группу конечных точек. В конфигурации интерфейсной ВМ создал сертификат, управляемый Google. Страница балансировщика https://yadi.sk/i/8J5vGBD2eL_L-A 

Инструкция на этом заканчивает. И дальше не понимаю, что с этим делать. 

Насколько я понимаю логику балансировщика, это должно работать так:
  1. Google прикрепил ip к балансировщику. Если использовать его напрямую, он будет перенаправлять на указанную конечную точку (в моём случае домен asdfgtyu10.xyz).
  2. Нужно как-то связать выданный ip с доменом asdfgtyu10.xyz. Инструкцию не нашёл. В основной инструкции об этом нет указаний. Натолкнул на мысль о домене вопрос, найденный в интернете https://switch-case.ru/71632449

Попробовал добавить вторую конфигурацию интерфейс с HTTP протоколом https://yadi.sk/i/Qw0Q4H43Sfk8Pg также добавил правило обработки хостов (подглядел на странице https://switch-case.ru/71632449https://yadi.sk/i/rIY8IIf-rneTmw 

IP с HTTP-протоколом 34.107.213.145 выдает ошибку 502 http://34.107.213.145/
IP с HTTPS-протоколом выдает ошибку 404 при открытии в формате http://34.120.190.159/ В формате https://34.120.190.159/ или http://34.120.190.159:443/ вообще не открывается.

Также попробовал указать А-записи с IP-адресами к поддоменам. 
Результат такой же, как при открытии через IP-адрес.

Как привязать выданный IP к домену, который указан в группе конечных точек (asdfgtyu10.xyz) - не понимаю. По логике, насколько я понял, балансировщик должен работать на том же домене. Но если я укажу A-запись для домена, как балансировщик поймет на какой сервер отправлять трафик, если в конечной точке указан домен, а не IP сервера? То есть балансировщик будет указывать сам на себя. Если же укажу в качестве конечной точки IP-сервера, и в А-записи пропишу IP балансировщика, то на стороне Google не будет связи с конкретным доменом, потому что он не будет нигде указан. И у меня к серверу с 1 IP-адресом подключено несколько доменов. Куда балансировщик в итоге будет направлять трафик?

Перепробовал все варианты. Сейчас в A-записи домена указан IP балансировщика с протоколом HTTPS (34.120.190.159), в группе конечных точек в качестве конечной точки сети указан IP моего внешнего сервера 165.22.64.183 с портом 443. Идей не осталось.

Подскажите, пожалуйста, как правильно настроить Cloud CDN, используя Балансировщик нагрузки и внешний сервер?


Andreyka
На сайте с 19.02.2005
Offline
822
#1

Не совсем так. Надо создать сайт на поддомене cdn. asdfgtyu10.xyz и направить на него CDN

Затем полученный IP уже связывается с доменом  asdfgtyu10.xyz через dns

Не стоит плодить сущности без необходимости
R3
На сайте с 09.01.2014
Offline
49
#2
Andreyka #:

Не совсем так. Надо создать сайт на поддомене cdn. asdfgtyu10.xyz и направить на него CDN

Затем полученный IP уже связывается с доменом  asdfgtyu10.xyz через dns

Надо создать сайт на поддомене cdn. asdfgtyu10.xyz и направить на него CDN"

Направить на него CDN - это как? Google предоставляет 1 ip при создании Балансировщика нагрузки. Через А-запись направить на CDN? Или прописать ns-адреса Google? 

"Затем полученный IP уже связывается с доменом  asdfgtyu10.xyz через dns"

Какой ip? Который выдается при создании Балансировщика? Так он же используется в поддомене cdn, опять же его использовать? Или какой то еще IP нужно получить? 

Если в качестве сервера-источника будет указан asdfgtyu10.xyz, куда будет ссылаться Балансировщик, ведь я привяжу домен к IP Google? И для чего тогда вообще была привязка поддомена cdn в таком случае?

Не так много мест в настройках, где можно указать домен или ip. 

1) Могу привязать домен к выданному IP;

2) Могу указать домен в качестве конечной точки;

3) Могу указать IP в качестве конечной точки, а нужный домен прописать в заголовок Host.

Всё.

Пока ничего не понял из вашего ответа. Если не сложно, распишите, пожалуйста, подробнее.

Andreyka
На сайте с 19.02.2005
Offline
822
#3

  • Делаем поддомен cdn, который отдает сайт.
  • В CDN указывает поддомен cdn как эндпоинт.
  • Далее в DNS настраиваем основной домен на IP/CNAME которое отдает CDN

Что тут непонятного?


R3
На сайте с 09.01.2014
Offline
49
#4
Andreyka #:

  • Делаем поддомен cdn, который отдает сайт.
  • В CDN указывает поддомен cdn как эндпоинт.
  • Далее в DNS настраиваем основной домен на IP/CNAME которое отдает CDN

Что тут непонятного?


Попробовал сделать, как вы описали. Не сработало, может что-то не так сделал.

1) Завёл поддомен cdn.asdfgtyu10.xyz, прописал А-запись IP своего сервера https://yadi.sk/i/gcjTFujSS1zCGA 

2) Указал домен  cdn.asdfgtyu10.xyz в качестве конечной точки https://yadi.sk/i/gputFSJHHu0uIA

3) Для домена  asdfgtyu10.xyz и www.asdfgtyu10.xyz прописал IP, который выдал Google https://yadi.sk/i/vlDEXpBfdbc00Q https://yadi.sk/i/RBHvoqQbG1FkUw

В настройках балансировщика также указан пользовательский заголовок запроса Host https://yadi.sk/i/MJU2qzgKLoUqrg (Это есть в инструкции от Google).

Для теста залил картинку на сервер http://cdn.asdfgtyu10.xyz/image01.jpg По ссылке http://asdfgtyu10.xyz/image01.jpg она недоступна (502 server error).

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий