Какова оптимальная структура и оборудование для работы с 1С и MS SQL, включая терминальный доступ?

Добрый день! <br/> У меня есть предприятие, использующее 1С, с 20 постоянными пользователями и пиковым количеством до 40-45. Объем базы данных составляет 200 ГБ. <br/> В настоящее время у нас есть две серверные конфигурации: <br/> <br/> **Сервер 1:** <br/> - Xeon E5-2680 v2 (2 процессора), 96 ГБ ОЗУ <br/> - MS SQL и сервер 1С <br/> <br/> **Сервер 2:** <br/> - Xeon x5660 (2 процессора), 32 ГБ ОЗУ <br/> - Терминальный сервер, используется для работы пользователей в 1С через толстый клиент. <br/> <br/> Мы планируем обновление аппаратного обеспечения и оптимизацию инфраструктуры, возможно, с разделением MS SQL и сервера 1С, так как текущая работа 1С оставляет желать лучшего. <br/> <br/> Хотел бы получить ваши рекомендации по выбору оборудования и возможным изменениям в инфраструктуре. <br/> <br/> Рассматривал вариант с использованием серверов на десктопном железе, например, AMD Ryzen 7 7700 с 128 ГБ ECC ОЗУ. Планирую установить PROXMOX и распределить MS SQL и сервер 1С на этой платформе. Однако у меня есть сомнения по поводу мощности процессора: достаточно ли будет 16 ядер при высокой частоте для нашего сценария использования? <br/> <br/> Не могу найти информации о минимальных требованиях к оборудованию для MS SQL и сервера 1С в аналогичных условиях. <br/> <br/> Заранее спасибо за ваши рекомендации!
  • 3 сентября 2024 г. 8:02
Ответы на вопрос 6
Добрый день!

Для оптимизации вашей инфраструктуры с учетом ваших требований и текущего объема нагрузки, рекомендую следующие подходы:

### 1. Разделение ролей серверов:
**Разделение MS SQL и сервера 1С** на отдельные физические машины может существенно улучшить производительность, так как каждая система будет иметь свои ресурсы и не будет конкурировать за них.

### 2. Аппаратные требования:
Для ваших задач наглядно подходит следующий набор серверов:

#### Сервер для MS SQL:
- **Процессор:** Xeon или AMD EPYC с не менее, чем 12-16 ядер и высокой тактовой частотой. Чем больше ядер, тем лучше, особенно при высоких нагрузках с большим количеством параллельных запросов.
- **Оперативная память:** 128 ГБ или больше, так как объем базы данных 200 ГБ предполагает кэширование значительной части данных в памяти.
- **Хранение данных:** SSD NVMe для базы данных (с высокой скоростью записи и чтения). Можно рассмотреть RAID 10 для повышения надежности и производительности.
- **Сетевая карта:** 10 Гбит/с, если предполагается значительная нагрузка на сеть между пользователями и сервером.

#### Сервер для 1С:
- **Процессор:** XEON Silver или Gold с не менее, чем 8-12 ядер. Высокая тактовая частота важна для быстроты обработки запросов от клиентов.
- **Оперативная память:** 64-128 ГБ, в зависимости от того, насколько много пользователей будет работать одновременно и насколько интенсивно.
- **Хранение:** SSD будет также полезно для быстрого доступа к файлам и кэшу 1С.

#### Терминальный сервер:
- **Процессор:** Подобный предыдущему, но можно выбрать менее мощный, если не планируется высокая нагрузка. 8-16 ядер будет достаточно, если не более 10-15 пользователей одновременно.
- **Оперативная память:** 32-64 ГБ, в зависимости от конфигурации и типа используемого терминального доступа.
- **Сетевое подключение:** Убедитесь, что у вас есть стабильное и быстрое интернет-соединение.

### 3. Система виртуализации:
**Proxmox** — хороший выбор для виртуализации, особенно учитывая вашу идею о распределении серверов. Убедитесь, что у вас достаточно выделенных ресурсов для каждой виртуальной машины, чтобы избежать конкуренции за ЦП и память.

### 4. Производительность процессора:
По поводу **AMD Ryzen 7 7700**: для использования в роли сервера это может быть недостаточно надежный вариант. Ryzen, хоть и мощный, предназначен в первую очередь для десктопов и игровых задач. Скорее, лучше использовать серверные процессоры. Хотя 16 ядер с высокой тактовой частотой будут хороши для многих рабочих нагрузок, важно учитывать и архитектуру и платформу, поскольку серверные системы больше адаптированы к работе 24/7.

### 5. Мониторинг и резервирование:
Не забывайте о системах мониторинга для отслеживания загрузки ресурсов, что поможет принимать решения об оптимизации и возможном дальнейшем обновлении. Также подумайте о резервировании данных и об обеспечении высокой доступности (например, настройки Always On Availability Groups для MS SQL).

### 6. Финальные рекомендации:
1. **Обновите серверы** до серверных процессоров с достаточным количеством ядер и оперативной памяти.
2. **Рассмотрите использование SSD для хранения баз данных и приложений.**
3. **Убедитесь, что ваши сетевые настройки способны выдерживать ожидаемую нагрузку.**

Эти рекомендации помогут вам создать устойчивую и высокопроизводительную архитектуру для работы с 1С и MS SQL.
Не о том Вы спрашиваете. Ваш вопрос должен быть - почему 
сейчас 1С работает плохо
Вот когда выясните, что конкретно является причиной Ваших проблем, тогда и будете смотреть, как эту причину лечить. Для выяснения причин рекомендую обратиться к специалистам по 1С в Вашем городе или онлайн-конторам (типа того же Гилева).
А с Вашим нынешним подходом с вероятностью 90% у Вас после апгрейда железа не изменится ничего или изменится крайне незначительно. Стоимость такого апгрейда у Вас из зарплаты не вычтут?
Если память не изменяет, то MSSQL любит ОЗУ, а вот 1с работает на 1 ядре, то есть больше ядер != лучше работает, а вот выше частота = лучше работает, это так. 

Разнести отдельно базу и программу это хороший вариант, в моей компании именно так, что база в одном месте, программа в другом, так и безопасно в случае отказа системы.
0. Попробуй уточнить у руководства фирмы - сколько стоит час (или сутки) простоя (неработоспособности 1С). Пусть оценят. 

1. Скорее всего, для 1С (на которой крутится вся повседневная работа организации) основной акцент - на надёжность. Тогда лучше использовать специализированное серверное железо. В частности - с дублированными блоками питания.
Процы 10-15 летней давности покупать не стоит, это гарантировано. У вас там не будет ни шин быстрых, ни отказоустойчивости. 
Если нет денег на хотя бы 5-ти летний сервер, ваш вариант - это собрать два компа из топового консьюмерского железа из какого нибудь предпоследнего поколения: 3.5-4 Ghz проц ядер на 10-12, по два три диска nvme m2 pci4 (это обязательно, я бы сказал) минимально по одному террабайту, RAM 64 ГБ (но лучше, по 128 много всегда лучше, чем меньше). И еще какой-нибудь старый сервер или комп, чтобы на нем поднять реплику (слэйв) СУБД + файловый бэкапсервер, на случай шиндеца. (главное откатать сценарий обрушения прода).

А руководству объяснить, что из говна 15 летней давности конфетку не сделаешь. Поэтому ваш вариант с Ryzen 7 - как золотая середина, но в кол-ве двух штук, так как у вас при 40 активных пользователях при условии, что они будут сёрфить интернет и открывать как не в себя по 30 вкладок, 64 ГБ съест только один терминальник и ВМ в такие моменты будет "фризиться".
Похожие вопросы