Группа вычислений Engine istance gcloud - изменение IP-адреса при снижении определенного istance - PullRequest
0 голосов
/ 30 октября 2018

У меня огромная проблема с управлением группой istance в gcloud compute engine.

Я установил для 1-го экземпляра группы статический ip XX.XXX.XX.XX, этот ip связан с Доменом.

Если во время масштабирования первый созданный компьютер был отменен, ни один из новых экземпляров не получит этот IP-адрес. Это проблема, потому что мой домен отключился. Я подумал об этом, создав еще один разделенный istance, который пингует домен ... и, если домен не работает, измените (с помощью команд gcloud) ip того нового istances.

Я хочу спросить, есть кто-то, кто нашел какой-то трюк, чтобы решить эту проблему? Спасибо, ребята

РЕДАКТИРОВАТЬ: Хорошо, LB работает, но мне нужно «потоковое вещание» через этот LB, потому что этот LB управляет группой istance, которая управляет потоковым вещанием. Теперь, если я установлю его, я не смогу начать работу (с любого программного обеспечения, такого как OBS и тому подобное): /

Итак, небольшое резюме: У меня есть свой домен example.com У меня есть группа istance istance_group_example Балансировщик нагрузки http_loadb Я устанавливаю на веб-интерфейсе http_loadb свой ip (статический, а не временный), затем перехожу к cloudflare и устанавливаю статический ip. Если я захожу на сайт example.com, я вижу свою пользовательскую страницу.

Теперь проблема в том, что я могу получить доступ к серверу, но если мне нужно создать прямую трансляцию с помощью OBS (например), obs просто на некоторое время загружает соединение, но затем останавливается.

Если я указываю свой DNS напрямую на IP istance внутри группы istance (минуя балансировщик нагрузки), все работает.

1 Ответ

0 голосов
/ 31 октября 2018

Я думаю, что вы на самом деле ищете балансировщик нагрузки HTTP . Балансировщик нагрузки должен принимать статический IP-адрес, на который указывает ваш домен. С его помощью он может перенаправлять трафик в любые экземпляры, которые в данный момент находятся в исправном состоянии (еще одна вещь, которую вы ищете, это проверки работоспособности , которые более или менее соответствуют тому, что вы настроили с другой группой экземпляров, и пинговать (для TCP) или регулярно выполнять запросы GET / HEAD, и, если какой-либо экземпляр не отвечает, он обрабатывается и не получает трафика до восстановления).

Итак, базовая архитектура вашего решения будет выглядеть так:

  • Одна группа управляемых экземпляров настроена на автоматическое масштабирование (если вам это нужно) и автоматическое восстановление (в данном случае это почти обязательно, поэтому любой мертвый экземпляр заменяется на исправный).

  • Проверка работоспособности, установленная для группы экземпляров , которая будет продолжать опрашивать экземпляры на "порту обслуживания", чтобы подтвердить, если они активны или нет. Это важно для обеспечения того, чтобы экземпляры проверялись последовательно и завершались / создавались заново на основе согласованной метрики . Балансировщик нагрузки также будет использовать свою собственную проверку работоспособности.

  • Глобальный балансировщик loead HTTP (Сетевые службы -> Балансировщик нагрузки -> Балансировщик нагрузки HTTP (S)), указывающий на серверную службу, которую вы создадите. Внутренний сервис будет указывать на вашу группу экземпляров и на соответствующие порты для вашего сервиса. Назначьте еще одну проверку здоровья здесь. Это будет полезно, так как LB знает, как только один экземпляр выходит из строя, чтобы он мог вывести его из пула адресатов. Если вам это не нужно, не выбирайте сходство сессий.

  • В качестве внешнего интерфейса LB выберите порт (ы) HTTP (S) или все, что вам нужно, затем под IP-адресом выберите «создать новый статический адрес» и назовите его. Этот IP-адрес будет указывать на ваши записи DNS для вашего домена.

  • После того, как LB будет готов, перейдите к вашим серверам имен (например, CloudDNS, если вы управляете DNS своего домена оттуда, если не к какому-либо решению, которое предоставляет ваш регистратор) и укажите запись A на IP-адрес, который вы присвоили нагрузке. балансир.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...