Проблемы с подключением клиента к кластеру k8s [TCP-reset-by-server] - PullRequest
0 голосов
/ 22 июня 2019

На прошлой неделе мы перевели всю нашу сетевую инфраструктуру на новое оборудование. Мы также заменили наш Fortigate 200D на два новых Palo Alto 850.

Мы создали новый IPSec между нашим офисом и шлюзом Azure, следуя этому руководству: https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000Cm6WCAS

Нам удается получить доступ ко всей нашей среде разработки в Azure через наш новый IPSec, но мы столкнулись с проблемой загрузки файлов с узлов k8s.

Например: У меня есть TeamCity на k8s. Когда я загружаю артефакты с моего узла TeamCity, через 2-3 минуты я получаю сообщение «Failed - Network error» в chrome, затем загрузка немедленно останавливается - и на брандмауэре я вижу, что сеанс был RST сервером 'tcp-rst- из-сервера.

Я устраняю неполадки в нашем IPSec между нашим Пало-Альто и Azure с инженерами Пало-Альто и инженерами Azure, и мы не смогли найти никакой неверной конфигурации в нашем Пало-Альто.

Я создал новый экземпляр Windows в Azure с IIS и загрузил большой файл на сервер, чтобы я мог загрузить одновременность из k8s и из обычного экземпляра.

Итак, через 2 минуты я получаю TCP-первый-с сервера по URL-адресу k8s, но прямой сервер все еще загружается, без потерь.

Кроме того, мы не видим никаких капель на нашей стороне. Таким образом, единственное изменение, которое мы сделали во всем этом процессе, - это изменение нашего брандмауэра на другого поставщика.

Кто-нибудь догадывается?

Спасибо всем!

1 Ответ

0 голосов
/ 24 июня 2019

Я боюсь, что ваш тест может быть не слишком надежным (если вы подозреваете проблему, связанную с сетью, например, NIC), так как ваши недавно созданные VM и кластер AKS не обязательно находятся в одной виртуальной сети.

Вместо создания новой виртуальной машины повторно используйте существующий рабочий узел и предоставьте TeamCity через службу NodePort. Это позволит вам исключить любой возможный прокси-сервер между клиентом и веб-сервером (IIS), если таковой имеется в вашей среде AKS.

Стоит добавить какие-либо сведения о настройке кластера AKS (используется Azure CNI?), А также о том, как вы прямо сейчас выставляете свое приложение TeamCity через входной контроллер NGINX или обращаетесь к нему напрямую по индивидуальному IP-адресу POD.

...