Проблема с настройкой клиента тестирования масштабируемости VPN - PullRequest
0 голосов
/ 12 ноября 2018

Заранее извиняюсь за мой первый пост, являющийся вопросом!До сих пор я спрашивал об этом на форуме OpenVPN около недели назад, но мне не повезло.Так что пальцы скрещены, мне повезет больше!

Резюме: В настоящее время я работаю над проектом, в котором мы хотим развернуть один VPN-сервер и разрешить до 500 клиентских подключений, передавая данные со скоростью 80-120 Мбит / с через несколько изклиенты одновременно.Кто-нибудь проводил тестирование на масштабируемость или производительность с использованием OpenVPN?Мне не нужно выдвигать большие числа, но я ищу стабильные незанятые клиентские соединения.

Тестовый стенд: Чтобы получить эти цифры, я построил следующий тестовый стенд: • 5 клиентских ПК •1 сервер с 8 ядрами + оперативная память 64 ГБ o Сервер настроен для динамической передачи IP в подсети с более чем 1 тыс. Адресов. • 1 ПК, имитирующий несколько клиентских подключений.o Клиенты будут запускаться с задержкой 10 с между каждым новым соединением.o Клиенты будут использовать один и тот же пароль для аутентификации. o Клиенты будут получать IP-адрес динамически с сервера OpenVPN.

Проблема: Теперь у меня возникла проблема с надежной имитацией 500 клиентских подключений.используя предпочтительно одно физическое устройство и сохраняйте их стабильными.Пока что физические клиентские ПК в выходные не работают.В то время как смоделированные клиентские соединения не будут работать, независимо от того, использую я 5 или 500.

То, что я пробовал до сих пор:

  1. ПК с одним клиентом (следуя Этому руководству):На одном клиентском ПК я создал адаптеры TAP 5/10/15/50/100 b.На клиентском ПК я создал конфигурационные файлы 5/10/15/50/100.с.Теперь я установил клиентские соединения и оставил их без дела.
  2. Проблемы: a.Когда я запускал большее количество соединений 25 / 50+, иногда вновь подключенные клиенты использовали уже назначенные IP-адреса. B.Почти всегда, когда меня оставляют в бездействии, когда я пересылаю RDP на компьютер или запускаю проверку ping через VPN, устройства теряют соединение с сервером.

  3. Я пробовал подобную настройку с использованиемВиртуальные машины на основе Hyper-V

  4. Я пробовал виртуальные машины с клиентскими подключениями, используя клиентские файлы конфигурации со статическим IP.
  5. Я пробовал виртуальные машины с клиентскими подключениями, используя клиентские файлы конфигурациисо статическим IP-адресом и уникальным именем пользователя для каждого клиента.

Потенциальные решения: Мне было интересно, будет ли использование контейнеров Docker OpenVPN каким-либо образом использоваться для имитации этого теста?

Заранее спасибо за любые советы и отзывы о моей настройке!Извините за длинное сообщение, но я не хотел опускать какие-либо подробности.

1 Ответ

0 голосов
/ 16 ноября 2018

Потратив некоторое время на устранение этой проблемы и пройдя через форум OpenVPN, я пришел к следующим выводам:

  1. Запуск нескольких клиентов OpenVPN на одном хост-устройстве просто не будет работать и приведет кнекоторые вопросы.Хорошая новость заключается в том, что если вы хотите провести стресс-тестирование сервера OpenVPN в соответствии с открытым сообществом VPN, это все еще допустимая нагрузка, см. Выдержку из вики OpenVPN ниже:

«Подробнееболее 100 одновременных соединений, несколько параллельных процессов OpenVPN используются на одном и том же клиентском экземпляре;хотя клиенты не смогут должным образом инициализироваться, им все равно следует относиться к серверу относительно реалистично ».

Скрипты Amazon EC2 из вики OpenVPN, использованные в прошлом тесте производительности, выглядят как большая работа и были отредактированы в 2012 году, поэтому мы отказались от того, чтобы заставить их работать на нас.

Наконец, подход докера, кажется, работает просто отлично.На данный момент у нас есть один хост с 250 экземплярами докера.Я начну тестирование на следующей неделе, и если есть люди, заинтересованные в результате и подходе, пожалуйста, напишите мне, и я поделюсь всей информацией, в противном случае я больше не буду спамить эту ветку.

...