Как отделить PublicIpAddress от LoadBalancer в Azure с помощью клиента Java?

У меня есть общедоступный IP-адрес в Azure, связанный с балансировщиком нагрузки. Я пытаюсь использовать клиент Java, чтобы отделить LB от IP.

Я пробовал довольно много вещей, но последняя попытка была следующей:

LoadBalancer lb = myPublicIpAddress.getAssignedLoadBalancerFrontend().parent();
LoadBalancerFrontend frontEnd = myPublicIpAddress.getAssignedLoadBalancerFrontend();
lb.update().updatePublicFrontend(frontEnd.name()).withoutPublicIPAddress().parent().apply()

Отсюда я получаю ошибку:

CloudException: Frontend IP Configuration must reference either a Subnet, Public IP Address or Public IP Prefix

myPublicIpAddress - это объект PublicIpAddress, полученный напрямую из Azure. Исключение меня смущает, потому что интерфейс привязан к общедоступному IP-адресу

изменить: Также следует отметить, что в этом сообщении здесь используется Azure подает команды и проходит через сетевой адаптер. Я пытался воспроизвести это с помощью java-клиента, но сетевая карта в моем проекте настроена иначе, и это не работает.

Для репликации: создайте общедоступный IP-адрес в Azure. Создайте LB в Azure и свяжите его с IP. Попытайтесь диссоциировать с помощью описанного выше метода.


person Old Schooled    schedule 02.05.2019    source источник


Ответы (1)


Общедоступный IP-адрес для балансировщика нагрузки Azure не совпадает с общедоступным IP-адресом для виртуальной машины Azure. Балансировщик нагрузки должен быть создан как минимум с общедоступным IP-адресом. Это означает, что вы не удаляете все общедоступные IP-адреса из балансировщика нагрузки.

Чтобы отсоединить общедоступный IP-адрес от балансировщика нагрузки, необходимо удалить конфигурацию IP-адреса в интерфейсе балансировщика нагрузки. Я думаю, что метод _ 1_, который вы использовали, является правильным. На что следует обратить внимание, так это на то, что если вы хотите удалить общедоступный IP-адрес из балансировщика нагрузки, с ним должно быть связано несколько общедоступных IP-адресов. Вы должны оставить хотя бы один общедоступный IP-адрес для балансировщика нагрузки.

person Charles Xu    schedule 03.05.2019
comment
Ты качаешь мои носки, Чарльз. В нем говорится, что я не должен говорить «спасибо» или «+1» в этом комментарии, однако я очень, очень благодарен, так что спасибо YouVeryMuch! Ответ заключается в том, что IP-адреса не могут быть удалены из LB, если там нет другого IP-адреса. LB должен иметь IP. Спасибо, Чарльз. - person Old Schooled; 03.05.2019