Як вибрати сервер 1С, SQL і терміналів



Напевно, кожному сисадміну хоч раз у житті доводилося вирішувати завдання впровадження продуктів 1С, розгортання SQL-баз і створення термінальних серверів. До нас регулярно звертаються замовники з проханням підібрати сервер під яку-небудь з цих завдань, а то і під всі відразу. Тут є три можливих підходи, і ми хочемо поділитися своїм досвідом в підборі обладнання, можливо, комусь він сильно полегшить життя.

Основним критерієм при виборі серверів для організації є набір сервісів, які будуть використовуватися, і кількість користувачів.

Сьогодні ми розглянемо вибір серверного «заліза» для невеликої організації на 25-30 користувачів, з розподіленою інфраструктурою (торгові точки, склад), якій потрібні термінальний сервер і програма «1С: Підприємство». Цими сервісами будуть користуватися всі співробітники.

Більшість малих компаній, для здешевлення вартості обладнання, воліють мінімізувати кількість придбаної техніки і просять адміністраторів «впихнути» всі запитані ними сервіси в один фізичний сервер. Бажання зрозуміле і виправданим, але тут є нюанси».

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

  1. Один сервер з файловою 1С. Поганий варіант, далі ми його розглядати не будемо.
  2. Один сервер з двома віртуальними машинами.
  3. Два фізичних сервера, один термінальний, другий з БД і 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.

Висновок
Звичайно, запропоновані конфігурації — далеко не єдині варіанти обладнання, наприклад, для впровадження того ж 1С. Тут дуже багато залежить від поточної інфраструктури, рівня навантаження та її збільшення в майбутньому, а також бюджету. Тому завжди можна підібрати або схожі моделі серверів, або більш потужні і дорогі.
Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.