Ми працюємо виключно маршрутизаторами / брандмауерами OpenBSD для обслуговування FogBugz On Demand. Якщо ви не працюєте в транзитній ролі і не потребуєте надзвичайно високої пропускної здатності в секунду, яку може забезпечити цільове обладнання та інтегроване програмне забезпечення, OpenBSD на твердому апараті стане більш зручним, масштабованим та економічним рішенням.
Порівнюючи OpenBSD з IOS або JUNOS (на мій досвід):
Переваги
- Брандмауер pf є неперевершеним з точки зору гнучкості, керованої конфігурації та інтеграції в інші сервіси (легко працює зі спамом, ftp-проксі тощо). Приклади конфігурації не справедливі.
- Ви отримуєте всі інструменти * nix на своєму шлюзі: syslog, grep, netcat, tcpdump, systat, top, cron тощо.
- Ви можете додати інструменти за необхідності: iperf та iftop, які я вважаю дуже корисними
- tcpdump. Достатньо сказав.
- Інтуїтивна конфігурація для ветеранів Unix
- Безпроблемна інтеграція з існуючим керуванням конфігурацією (cfengine, маріонеткою, сценаріями тощо).
- Особливості наступного жанру безкоштовні і не потребують додаткових модулів.
- Додавання продуктивності дешево
- Ніяких контрактів на підтримку
Недоліки
- IOS / JUNOS спрощує скидання / завантаження всієї конфігурації. Відсутні будь-які інструменти керування конфігурацією, їх буде легше розгортати, коли буде записаний ваш конфігурація.
- Деякі інтерфейси просто недоступні або стабільні на OpenBSD (наприклад, я не знаю добре підтримуваних карт ATM DS3).
- Виробничі пристрої типу Cisco / Juniper високого класу будуть працювати з вищою швидкістю Pps, ніж апаратне забезпечення сервера
- Ніяких контрактів на підтримку
Поки ви не говорите про опорні маршрутизатори в середовищі, подібному до ISP, або крайові маршрутизатори, що взаємодіють із спеціалізованими мережевими підключеннями, OpenBSD повинен бути просто чудовим.
Обладнання
Найголовніше для продуктивності маршрутизатора - це Ваші сетеві сімейні телефони. Швидкий процесор швидко завалиться при помірному навантаженні, якщо у вас є лайно NIC, які переривають кожен пакет, який вони отримують. Шукайте гігабітні NIC, які підтримують принаймні пом’якшення / злиття. Мені пощастило з драйверами Broadcom (bge, bnx) та Intel (em).
Швидкість процесора важливіша, ніж у спеціальному обладнанні, але не те, що слід хвилювати. Будь-який сучасний процесор серверного класу буде обробляти тонну трафіку, перш ніж проявити будь-яку напругу.
Захопіть собі пристойний процесор (кілька ядер ще не дуже допомагають, тому подивіться на сирий ГГц) хорошу оперативну пам’ять ECC, надійний жорсткий диск і надійне шасі. Потім подвоїти все і запустити два вузли як активний / пасивний кластер CARP. З оновленням pfsync 4.5 можна запускати активні / активні, але я цього не перевіряв.
Мої маршрутизатори працюють поруч з нашими балансирами навантаження в конфігураціях з двома вузлами 1U. Кожен вузол має:
- Шасі Supermicro SYS-1025TC-TB (вбудовані Intel Gigabit NIC)
- Процесор Xeon Harpertown Quad Core 2 ГГц (мої балансири навантаження використовують декілька ядер)
- Зареєстрована оперативна пам'ять Kingston ECC об'ємом 4 Гб
- Двопортовий додаток Intel Gigabit NIC
Вони були твердими з моменту розгортання. Все, що стосується цього, є надмірним для навантаження на трафік, але я протестував пропускну здатність до 800 Мбіт / с (NIC-обмежений, процесор здебільшого простоював). Ми широко використовуємо VLAN, тому ці маршрутизатори також мають обробляти багато внутрішнього трафіку.
Ефективність використання енергії є фантастичною, оскільки в кожному шасі 1U є один блок живлення потужністю 700 Вт, що живить два вузли. Ми розподілили маршрутизатори та балансири за допомогою декількох шасі, щоб ми могли втратити ціле шасі і мати майже бездоганну відмову (спасибі pfsync та CARP).
Операційні системи
Деякі інші згадали про використання Linux або FreeBSD замість OpenBSD. Більшість моїх серверів є FreeBSD, але я віддаю перевагу маршрутизаторам OpenBSD з кількох причин:
- Більш чіткий фокус на безпеці та стабільності, ніж Linux та FreeBSD
- Найкраща документація будь-якої ОС з відкритим кодом
- Їх інновація зосереджена навколо цього типу реалізації (див. Pfsync, ftp-proxy, carp, vlan management, ipsec, sasync, ifstated, pflogd тощо), які входять до бази)
- FreeBSD - це багаторазові випуски позаду на їхньому порту PF
- pf є більш елегантним та керованим, ніж iptables, ipchains, ipfw або ipf
- Процес налаштування / встановлення пісні
Це означає, що якщо ви добре знайомі з Linux або FreeBSD і не маєте часу на вкладення коштів, можливо, краще за все поговорити з одним із них.