Напевно, кожному системному адміністратору хоча б раз у житті доводилося вирішувати завдання впровадження продуктів 1С, розгортання SQL-баз і створення термінальних серверів. До нас регулярно звертаються замовники з проханням підібрати сервер під якусь із цих задач, а іноді й під усі одразу. Тут є три можливі підходи, і ми хочемо поділитися своїм досвідом у підборі обладнання — можливо, комусь це суттєво полегшить життя.
Основним критерієм при виборі серверів для організації є набір сервісів, які будуть використовуватися, і кількість користувачів.
Сьогодні ми розглянемо вибір серверного «заліза» для невеликої організації на 25–30 користувачів, з розподіленою інфраструктурою — торгові точки, склад, — якій потрібні термінальний сервер і програма «1С: Підприємство». Цими сервісами будуть користуватися всі співробітники.
Більшість малих компаній, щоб здешевити вартість обладнання, намагаються мінімізувати кількість техніки, що купується, і просять адміністраторів «втиснути» всі потрібні сервіси в один фізичний сервер. Бажання зрозуміле й логічне, але тут «є нюанси».
Можна організувати термінальний сервер і використовувати там файлову версію 1С, але при такій кількості користувачів компанія-розробник рекомендує переходити на клієнт-серверний варіант. Тому нам знадобиться ще сервер під «1С: Підприємство» і сервер баз даних. Відразу уточнимо, що організувати термінальний сервер, сервер SQL і сервер 1С на одній операційній системі можливо, але з погляду безпеки та стабільності роботи сервісів це вкрай не рекомендується. А якщо все ж дуже хочеться використовувати один фізичний сервер для всіх трьох ролей, то рекомендуємо застосувати віртуалізацію, наприклад VMWare ESXi або Hyper-V.
Таким чином, маємо три варіанти:
- Один сервер із файловою 1С. Поганий варіант, далі ми його розглядати не будемо.
- Один сервер із двома віртуальними машинами.
- Два фізичні сервери: один термінальний, другий — з БД і 1С.

Для вирішення цих задач можна запропонувати такі конфігурації серверів:
У випадку з одним фізичним сервером ми зупинили вибір на Dell R710 з двома шестиядерними процесорами Xeon X5650, 64 ГБ оперативної пам’яті та шістьма дисками: два SSD у RAID 1 і чотири SAS-диски в RAID 10.
У випадку з двома фізичними серверами ми зупинили вибір на таких конфігураціях:
- Термінальний сервер: IBM x3550 M3 з одним процесором Xeon E5620, 32 ГБ оперативної пам’яті та двома SSD у RAID 1, з додатковою мережевою картою на два гігабітні інтерфейси. У цього сервера також є широкі можливості для апгрейду, оскільки він двопроцесорний, має 18 слотів під модулі пам’яті та підтримує до 288 ГБ ОЗП.
- Сервер баз даних: IBM x3250 M5 з одним процесором Xeon E3-1220v3, 16 ГБ ОЗП, додатковим RAID-контролером SAS/SATA, чотирма SAS-дисками в RAID 10, з додатковою мережевою картою на 2 гігабітні інтерфейси.
Чому ми вибрали саме такі конфігурації? Щоб відповісти на це питання, підрахуємо, що нам потрібно для забезпечення комфортної роботи користувачів у нашій невеликій організації на 25–30 співробітників. Щоб не було непорозумінь: це лише один із прикладів недорогого впровадження 1С, і в багатьох випадках доцільніше вибрати інші конфігурації.
Процесор
З погляду процесорного часу термінальні сесії займають не дуже велику частку. За досвідом впровадження термінальних рішень у різних організаціях, для підтримання комфортної роботи 30 користувачів достатньо буде 4–6 фізичних ядер процесора — по одному ядру на 6–8 сесій.
Для невеликої бази SQL-серверу знадобиться одне ядро. Але ми будемо орієнтуватися на розширення бази в майбутньому або збільшення кількості баз, тому візьмемо два ядра на SQL.
Для сервера «1С: Підприємство» важлива не стільки кількість ядер, скільки їхня тактова частота та частота шини. Тому закладемо ще два ядра на сервер 1С.
І не забудемо, що у випадку використання віртуалізації одне або два ядра нам знадобляться для забезпечення роботи хостової операційної системи.
У підсумку отримуємо:
- для сервера з двома віртуальними машинами потрібно 12 фізичних ядер. Можна й менше, але завжди має залишатися запас потужності. Сервер із двома шестиядерними процесорами ідеально підходить для цього.
- для термінального сервера достатньо одного процесора Xeon E5620 із шістьма ядрами, для сервера баз даних — процесора Xeon E3-1220v3 з чотирма ядрами.
Оперативна пам’ять
Спочатку подивимося, скільки потрібно оперативної пам’яті під сервіси:
- Операційна система Windows Server лише під себе потребує 2 ГБ ОЗП.
- Для SQL і невеликої бази 1С достатньо буде 4–6 ГБ ОЗП.
- Сервер «1С: Підприємство» потребує ще 2–3 ГБ ОЗП.
- Розраховуємо, що кожному користувачу потрібно 700 МБ ОЗП у термінальній сесії, тоді на 30 користувачів знадобиться 21 ГБ.
Тепер застосуємо це до наших варіантів.
- Для одного сервера з двома віртуальними машинами потрібно близько 40 ГБ ОЗП.
- Для термінального сервера достатньо буде 24 ГБ або 32 ГБ ОЗП — візьмемо із запасом, припускаючи майбутнє розширення. Для сервера з базами даних потрібно не менше 8 ГБ, але це «впритул», тому 16 ГБ із запасом. Пам’ять зараз — один із найдешевших компонентів сервера.
Дискова підсистема
Це традиційне вузьке місце багатьох систем. Правильний вибір жорстких дисків дуже важливий для забезпечення швидкодії серверів. При роботі 1С із базою SQL відбувається багато операцій читання/запису за секунду — IOPS. Якщо користувачі працюють на термінальному сервері з тонких клієнтів, тобто повноцінно використовують термінальний сервер як робоче середовище, це сильно навантажує дискову систему сервера. Наприклад, 30 користувачів термінального сервера на RAID 1, SATA 3 Гбіт/с, з дисками WD Velociraptor почуваються некомфортно при роботі з поштою та активному серфінгу в інтернеті. Для термінальних серверів ми рекомендуємо використовувати SSD-накопичувачі. Для серверів баз даних — SAS-диски, зібрані у відмовостійкі масиви.
Окрім накопичувачів, слід приділити увагу й дисковому контролеру. Сучасні сервери мають на борту досить хороші контролери, наприклад HP SmartArray і DELL PERC. Однак некоректно використовувати «набортні» рішення при серйозному навантаженні, коли потрібна максимальна продуктивність. Трохи зекономивши, ви легко можете отримати потужний сервер, який зовсім не витримує навантаження. Тому контролер має бути апаратним, а не програмним, зі своєю енергонезалежною пам’яттю.
Розглянемо варіанти вирішення цього завдання.
- Для одного сервера з двома віртуальними машинами бажано використовувати два RAID-масиви: на одному будуть розміщені файли віртуальної машини термінального сервера, на другому — файли віртуальної машини сервера баз даних і «1C: Підприємства». Для створення першого масиву найкраще використовувати два SSD-накопичувачі в RAID 1 — дзеркало.
Другий масив краще створити з чотирьох SAS-дисків у RAID 10 — дзеркало + страйп, але можна й із двох SSD-накопичувачів у RAID 1. Вибір залежить лише від вартості дисків і моделі сервера.
- Для двох серверів усе те саме, тільки масиви будуть рознесені по серверах. На термінальному — RAID 1 із двох SSD, на сервері баз даних — RAID 10.
Один чи кілька серверів
Як сказано вище, у невеликих організацій досить велике бажання розмістити всі сервіси на одному сервері.
До переваг використання одного сервера та віртуалізації можна віднести нижче енергоспоживання і гнучкіший розподіл ресурсів між віртуальними машинами. Ну і перенесення віртуальних машин, у разі потреби, набагато зручніше, ніж перенесення фізичних ОС.
Однак два сервери мають ширші можливості для апгрейду. Наприклад, у нашому варіанті недорогий IBM x3550 M3 з додаванням ще одного процесора та ОЗП перетворюється на елегантні шорти термінальний сервер на 50 і навіть більше користувачів.
Ще одне «вузьке місце» в нашому випадку, яке необхідно враховувати при виборі двох фізичних серверів, — це обмін даними між ними через мережу. У віртуальних серверів обмін даними йде через віртуальний комутатор. Тут же, для збільшення пропускної здатності мережі, можна встановити в кожен сервер по мережевій карті з двома гігабітними інтерфейсами, які можна агрегувати між собою і напряму з’єднати обидва сервери агрегованими 2-гігабітними лінками. Або ж використовувати мережеві карти з SPF+ 10GBASE, але це дороге задоволення.
Запас потужності
Під час розрахунків і вибору сервера необхідно брати до уваги пікові навантаження. Також обов’язково потрібно пам’ятати, що база даних буде тільки «розростатися», обсяги даних на термінальному сервері будуть збільшуватися, а кількість користувачів може зрости. Багато підприємств економлять на запасі потужності й через пів року-рік стикаються з перебоями в роботі та скаргами користувачів. Це той випадок, коли надмірна економія призводить до нових витрат у майбутньому — скупий платить двічі. Вибрані нами варіанти розраховані із запасом потужності та можливістю апгрейду. Враховано, що в DELL R710 можна буде додати ще два жорсткі диски й ОЗП, а також замінити процесори на продуктивніші.
Тож, якщо вам знадобиться розширення або кількість сервісів збільшиться, тут є великі перспективи, а наявні сервери ще довго ефективно виконуватимуть свої задачі. Можливо, через рік нам несподівано знадобиться збільшити кількість користувачів удвічі — до 60 осіб? Будь ласка.
Якщо ви використовували один сервер DELL R710, то можна докупити недорогий IBM x3550 M3, підняти на ньому гіпервізор, перенести туди віртуальну машину з БД і 1С-сервером, а на DELL усі ресурси віддати віртуальній машині з терміналом. Це буде швидко, і не доведеться «все викидати й купувати нове».
Якщо ж ви використовували два сервери IBM, то x3550 M3 з додаванням другого процесора та невеликої кількості ОЗП перетворюється із середнячка на досить потужну машину. А в x3250 M5 можна оновити процесор з E3-1220v3 до E3-1285v3.
Джерело:https://habr.com/company/pc-administrator/blog/305878/