Продуктивність мережі в OpenStack — наше технічне занурення 2014 року
Наприкінці 2014 року, як і багато інших у галузі, ми були неабияк захоплені OpenStack. Ми вирішили провести серію тестів мережевої продуктивності, порівнюючи різні технології віртуальної комутації, які з ним використовуються: LinuxBridge, Open vSwitch та Docker.
Експерименти були простими: віртуальні машини на OpenStack надсилали TCP-потоки через iperf упродовж 25 секунд, тоді як ми стежили за вікном перевантаження TCP (cwnd) і порогом повільного старту (ssthresh). Мета полягала в тому, щоб побачити, наскільки ефективно працює TCP за різних рішень для мостування.
Результати (з гарними графіками)
Ось графіки з тих тестів. Вони показують, як швидко зростало вікно перевантаження та де відбувалися втрати пакетів.
Графік 1: LinuxBridge — швидке початкове зростання, поодинокі втрати пакетів
Графік 2: Open vSwitch (Neutron ML2) — більше втрат пакетів після пікової пропускної здатності
Графік 3: Docker (з використанням Linux bridge) — східчастий характер зростання
Висновок 2014 року: різні реалізації мостів спричиняли різні рівні втрат пакетів на приймальному боці. Зокрема Open vSwitch демонстрував більшу нестабільність у наших тестах. Ми старанно намагалися зрозуміти й оптимізувати мережевий стек для реальних розгортань OpenStack.
Заднім числом усе очевидно (і трохи болісно)
Озираючись назад, ми вклали в OpenStack чималі зусилля — зокрема два місяці напруженої роботи в будапештському офісі Ericsson, намагаючись стабілізувати його для великого проєкту іспанського телекомунікаційного гіганта Telefónica. Ми навіть переробили частини Open vSwitch, щоб підвищити пропускну здатність. Однак ключові компоненти OpenStack виявилися напрочуд стійкими до стабілізації.
Зрештою Ericsson передав проєкт на аутсорс і тихо відмовився від OpenStack взагалі. Пізніше ми дізналися, що Mirantis — компанія з міцним російським корінням — залучила й нібито відмила понад 100 мільйонів доларів через екосистему OpenStack. Те, що ми сприймали як перспективну хмарну платформу з відкритим кодом, виявилося з доволі каламутними фінансовими підводними течіями.
Зрештою OpenStack дав нам цінний урок: іноді найбільш розрекламовані «революційні» технології в нашій галузі не обов'язково найкраще спроєктовані — чи найчистіші. У 2014 році ми серйозно поставилися до тих TCP-графіків. Сьогодні ми з усмішкою згадуємо своїх молодших, ідеалістичних себе й залишаємося вдячними, що наш шлях зрештою привів до побудови значно простіших, надійніших і прозоріших рішень у LightUp.Cloud.