Подойдет ли такое железо для 1С + терминального сервера (Прошу совета)?
Магазин товарища хочет бюджетно мигрировать с 1С7 на 1С8.3, по сему встал вопрос (ко мне) в подборе нового железа для сервера. Бюджетно - с использованием пользовательского железа из ближайшего магазина на сумму 100-120к Р.
Планируемая нагрузка: максимум одновременно 10 пользователей 1С (и терминала соответственно), в среднем 5-8, максимальное количество зарегистрированных в системе пользователей - 20. На данный момент в базе порядка 30 000 товаров, в 1С7 занимает около 5ГБ, обещают, что в 1С8 будет около 100ГБ. Расширения не планируется. У сожалению, подробных метрик предоставить не могут, но нагрузка будет складываться с 4 касс и нескольких бухгалтеров ковыряющихся в базе.
Так исторически сложилось, что пользователи работают через RDP, в котором запускается база.
У уважаемого сообщества хотелось бы уточнить следующие моменты:
- Насколько оправдано при таком количестве сеансов разносить терминальный и 1с+mssql на разные физические машины?
- Если разносить, то ставить на чистое железо или на виртуалки? Я тут вижу плюс только в удобстве бакапов, но засчет падения производительности.
- Планирую ставить базу\систему на raid1 из аппаратного контроллера и SSD Kingston DC500M, 1 держать в запасе. Бекапиться на жесткие диски в другом ПК. Это надежный вариант?
Итого, если делать все на одном аппарате я накидал такой вариант:
Материнская плата: ASRock B460 Phantom Gaming 4
Процессор: i7-10700 (8+8 ядер@2900ММгц)
Оперативная память: 2*16 ГБ @2933МГц, если не хватит, то еще столько же в свободные слоты.
Накопители: 480 ГБ Серверный SSD Kingston DC500M
С Raid контроллером не определился, возможно посоветуете?
Блок питания, охлаждение и корпус вынесем за рамки этого вопроса.
Скажите пожалуйста, это будет работать? Какие могут быть трудности?
> SSD Kingston DC500M
Зачем вам это узкое горлышко? Не делайте raid из SSD, делайте бэкапы каждый день.
Лучше поставить
один SSD PCI-Express 1TB GIGABYTE под данные
и один Samsung 970 PRO 512GB M.2 PCIe 3.0 под резервный запуск
и пару HDD 4TB в RAID1 под бэкапы и саму систему виртуализации.
RAM 32GB - мало
SQL съест минимум 10GB
на каждого пользователя в терминале до 2GB
Лучше использовать виртуализацию, будет медленнее на 5-10%, но намного гибче.
SSD PCI-Express 1TB GIGABYTE, у него DWPD в 2 раза меньше, чем у кингстона.
Я, честно говоря не очень понимаю что на чем должно храниться в конфигурации с этими тремя дисками.
Непонятно при чем тут бэкапы? Виртуалки на них никак не влияют.
Можно бекапить сразу всю систему, и быстро ее восстановить, не так ли?
Не очень хорошее решение. Диск вполне нормальный, но вот насчет RAID возникают серьезные сомнения.
А чем плох тут рейд?
Плохой выбор. Дорогая за счет ненужных побрякушек плата.
Это самая бюджетная мать с нормальными фазами питания процессора, там нет никаких прямо лишних пробрякушек типа подсветок или вайфая, на слово гейминг можно внимания не обращать.
Можно бекапить сразу всю систему, и быстро ее восстановить, не так ли?
Именно так и делается, без всяких виртуалок.
А чем плох тут рейд?
Интересный вопрос. Сам по себе рэйд не плох.
Непонятно зачем он в данном конкретном случае? Какую задачу решает?
Или по принципу - чтобы было, ибо модно?
Это самая бюджетная мать
Извиняюсь, не посмотрел сразу сокет.
Да для LGA 1200 вполне норм. Ценник что-то задрали вообще.
Еще раз повторю - рэйд ничем не плох. Просто непонятно для чего он нужен в данном случае.
Вот например зонтик хорошая штука, он ничем не плох, но зачем он нужен, если на улице дождя нет?
Есть хоть какая-то надежда на оперативное восстановление данных.
Рэйд не имеет никакого отношения к восстановлению данных.
а как бекапить всю систему без ее остановки?
Насколько я понимаю учитывая озвученное в вопросе - 1с, RDP, и mssql - речь идет о Windows.
В Windows начиная с версии WinXP прекрасно работает служба теневого копирования тома.
Можно не останавливая работу системы сделать образ системного диска, или бэкап. То же самое с любыми другими данными.
Например штатная система резервного копирования mssql тоже на нем работает.
Создается мгновенный снимок тома - после чего не спеша, с этого снимка читаются данные и пишутся в бэкап.
Остановка работы системы или базы данных не требуется, нагрузка на диск тоже относительно небольшая.
Простите, а как бекапить всю систему без ее остановки
технология shadow copy, умеет на горячую копировать разделы, но с виртуалкой действительно проще так как там и оперативка является файлом что при обычном бекапе только диска может повредить базу, случай конечно на миллион но бывает,
Для 8 пользователей ядер цп маловато будет. Да и оперативки тоже. 2 ядра цп (реальных) на пользователя + 6-8 гб оперативки это минимальный уровень для комфортной работы. Райзен возьмите лучше ядер на 16.
Raid исключительно программный. Не нужен вам вендорлок.
Эм, зачем пользователю терминала с запущеной только 1с 6-8 гб оперативки? Да и ядер. Во всех мануалах пишут, что 1 физического ядра минимум на 3-4 пользователя терминал за глаза хватает.
А чем плох аппаратный контроллер? Если мать умрет, то какая вероятность восстановить raid?
rechmp, В этом как раз и проблема аппаратных контроллеров. Для восстановления raid нужен точно такой же контроллер. Только потеряете в гибкости.
1с ка любит процессоры с высокой частотой, при этом юзает только 1 ядро, по этому работать будет быстрее на 4х ядерном с частотой 4.9 чем на 16 ядерном с частотой 3.2.
То есть на сервер Вы готовы потратить 120Круб, а интересно сколько на Windows Server с терминальными лицензиями и MSSQL с лицензиями?
Или у Вас там весь отдел К куплен и ничего приобретать не планируете?
rechmp, когда речь идёт о продакшне и таких серьёзных вещах как 1С, стоимость решения не должна в принципе быть определяющим параметром. Перевернувшийся бит в памяти, который не будет откорректирован ECC-памятью легко превратится в плюс-минус вагон чего-нибудь, либо другая счётная ошибка, от которой бухгалтерия будет рвать волосы на жёппе. Нет денег? - самосбор на Supermicro либо б\у серверы от от специализирующихся на этом контор. Нет денег, но счастья хочется? - урезайте осетра до минимально приемлемого конфига, но это должен быть сервер, а не десктоп. В прошлом году собирал конфиг, цены прошлогодние (актуальность проверяйте сами):
Серверная оперативная память Samsung [M391A2K43BB1-CTD] 16 ГБ * 2 - 16k
Контроллер RAID MegaRAID SAS 9341-4i - 18k
Серверный процессор Intel Xeon E-2236 - 28k
Серверная материнская плата SuperMicro MBD-X11SCH-F-O - 24k
480 ГБ Серверный SSD Samsung SM883 [MZ7KH480HAHQ-00005] * 2 - 30k
Серверный корпус SuperMicro CSE-731i-300B - 9k
Кулер для процессора SuperMicro SNK-P0051AP4 - 4k
Итого - 129k, и это полноценный сервер, а не жалкое его подобие с "зато ай7 ёпта!"
fdroid, Объясните пожалуйста чем конкретно плох бытовой компьютер в качестве сервера?
И чем по вашему вообще серверное железо отличается от десктопного?
fdroid, На самом деле все просто.
Нужно просто определиться нужна ли вам бесперебойная работа?
Если нужна - Берете подходящую по характеристикам серверную плату, процессор, обязательно память ECC, рэйд с избыточностью, дублированные блоки питания, и ставите все это дело в серверную оборудованную резервной линией питания, автоматом ввода резерва, ИБП.
И готово.
Если у вас вдруг нет серверной с резервом питания, и резервирования блоков питания - брать память ECC бессмысленно, она попросту бесполезна.
Если не нужна бесперебойная работа, то ECC, рэйд, два блока питания - это все попросту не нужно.
Объясните пожалуйста чем конкретно плох бытовой компьютер в качестве сервера?
И чем по вашему вообще серверное железо отличается от десктопного?
Перевернувшийся бит в памяти, который не будет откорректирован ECC-памятью легко превратится в плюс-минус вагон чего-нибудь, либо другая счётная ошибка, от которой бухгалтерия будет рвать волосы на жёппе.
Fenrir89, Перевернувшийся бит в памяти приведет к аварийному завершению работы программы, или зависанию.
Что очень неприятно.
Но учитывая редкость этого события во многих случаях допустимо.
Отключение питания приведет к такому же итогу, и более вероятно.
Поэтому сама по себе память ECC проблем не решит, нужен полный комплекс мероприятий по обеспечению отказоустойчивости.
Перевернувшийся бит в памяти приведет к аварийному завершению работы программы, или зависанию
только в случае попадания на код формул расчёта, а если в данные то только при выходе за рамки вместимости переменной
Отключение питания приведет к такому же итогу, и более вероятно.
для этого есть кеш бд и запуск с проверкой ошибок после сбоя, и хорошо что вы про это понимаете и ИБП к серверу поставить не забудете, это не даст произойти аварийному отключению сервера
Но учитывая редкость этого события во многих случаях допустимо.
так вы сервер делаете, а не ПК для игрушек, и про редкость могу вас расстроить, посмотрите в диспетчер задач графа ошибки чтения памяти
По поводу ECC и изменения данных - откуда данные попадают в компьютер?
там может цифра поменяться в бд, например в графе, где ваш оклад.
В случае бухгалтерии, зарплаты - все данные заносятся операторами, бухгалтерами, расчетчиками.
А работают операторы внезапно на простых офисных компьютерах, без ECC, а прошлый год так вообще из дома, с того самого компьютера на котором дети в танчики рубятся.
для этого есть кеш бд и запуск с проверкой ошибок после сбоя
Кэш БД не защищает от отключения питания и перебоя в работе.
посмотрите в диспетчер задач графа ошибки чтения памяти
Ну насколько я знаю это не в диспетчере задач, а в мониторе ресурсов.
Но самое главное - ни диспетчер задач, ни монитор ресурсов не показывает физические ошибки чтения памяти. Вроде перевернувшегося бита, про которые вы говорите.
То что там показывается это ошибка чтения страницы из памяти.
Компьютер пытается прочитать страницу из физической памяти, а ее там нет! Ее в файл подкачки переместили.
Это просто особенность работы виртуальной памяти.
Если таких ошибок много, значит памяти у вас не хватает. Или не корректно настроен софт. Большое количество таких ошибок сильно замедляет работу компьютера.
Fenrir89, Максимальная проблема с которой вы столкнетесь при ошибке чтения физической памяти - зависание компьютера, программы.
Это не очень хорошо но в некоторых ситуация допустимо.
Например если мы говорим про один сервер в организации который обеспечивает работу десяти пользователей, то такая ошибка по статистике у вас вылезет раз в два года. И вы ее не заметите на фоне других проблем вызванных отключением питания, сбоем софта, ошибок в коде обновления, и прочих радостей.
Другое дело если у вас стоит несколько стоек и 50 серверов в них. На которых крутится взаимосвязанная IT инфраструктура.
Согласно той же статистике ошибки в памяти будут вылазить несколько раз в месяц.
И несколько раз в месяц вся ваша система будет ложиться по непонятной причине.
Поэтому такие большие системы нельзя эксплуатировать без памяти с контролем четности и коррекцией ошибок.
Гораздо проще заплатить за ECC память, чем мучиться с нестабильной инфраструктурой.
В общем в некоторых ситуациях без ECC памяти просто не обойтись, а в некоторых случаях она просто нафиг не нужна.
И сервер 1с на десяток пользователей это как раз тот случай где память ECC по сути не нужна.
А вообще такие вещи просчитываются при проектировании системы - сколько будет серверов, где они будут стоять, сколько пользователей обслуживать, цена простоя системы, насколько активно планируется рост.
И уже исходя из этого принимается решение.
Иногда ECC память необходима и на рабочей станции .
АртемЪ, вы просили мнеия специалистов, вам пытались донести именного его, вас не устраивает, делайте как знаете, и как считаете нужным, только стоит ли и дальше тратить время на разъяснения если вы и сами считаете себя спецом, я не уверен, и ваш ответ про б/у серверы которые вы считаете б/у, по регламенту отработали не больше 5 лет, под полной нагрузкой, а вам с вашими нагрузками, им ещё лет 20 ресурса хватит, или даже так что скрюорее фирмы этой не станет, либо она и это оборудование перерастет, надеюсь вам ваше же оборудование никогда обслуживать не придется
Fenrir89, Где именно я просил мнения специалистов? Я сам являюсь специалистом в данном вопросе.
По поводу б/у серверов - далеко не лучшая затея.
Если берешь новый сервер у системного интегратора и заключаешь договор Care Pack, то все прекрасно.
Есть и техническая поддержка, и стабильные поставки запчастей.
А вот когда берешь сервер б/у по дешевке - при любой поломке найти запчасть это большая проблема. Сталкивался с таким неоднократно.
С десктопным железом все просто - пошел и купил блок питания, планку памяти или диск в любом магазине, в любой деревне.
А вот серверное железо поставляет ограниченное количество фирм, и если у вас нет договора, то и запчастей на складе для вас скорее всего не будет, и вы будете ждать сгоревший БП или планку памяти неделю, и неделю ваш сервер будет простаивать. А это уже критично.
Поэтому если брать серверное железо, то только у надежного интегратора, и обязательно с договором типа Care Pack, иначе будут крупные проблемы.
Любое железо ломается, и серверное в этом плане ничем не отличается от десткопного.
А вот доступность запчастей сильно различается.
Серверное железо найти можно только в крупных городах, не факт что оно будет в наличии, ну и в любом случае придется ждать пока пройдет оплата.
Для этого договор на обслуживание и заключают с интегратором - для вас всегда есть резерв запчастей на складе, и вам их готовы доставить в течении оговоренного времени по первому же вашему звонку, не дожидаясь оплаты.
Платформа супермикро с E-22хх (частота рулит), минимум 64Гб ECC (!) памяти 2 планки по 32Гб (плюс 2 слота свободных), intel ssd dc серия желательно в два raid1 для баз
samsung 980 pro - они якобы менее надежные, но лучше контроллер для серверных операций
вот пример куска сервера на большее количество пользователей из ситилинка (активных и вообще):
1078132 SSD накопитель INTEL DC D3-S4510 SSDSC2KB480G801 480ГБ, 2.5", SATA III
722082 Корпус SuperMicro CSE-732I-500B Midi-Tower 500W черный
1195107 Процессор для серверов INTEL Xeon E-2276G 3.8ГГц
1154237 Серверная материнская плата SUPERMICRO MBD-X11SCL-F-O, Ret
Например если мы говорим про один сервер в организации который обеспечивает работу десяти пользователей, то такая ошибка по статистике у вас вылезет раз в два года
Не согласен - чаще намного. И самое интересное когда это происходит во время записи на диск, особенно если это ZFS
Я даже на домашнем компе ECC узаю
Проблема в том, что пользователи в офисе на своих рабочих компах ECC не используют.
А данные заносятся в БД сервера именно с пользовательских компьютеров.
Пользователь получает на своем клиенте форму отображенную на сервер
Это как? Вот сколько лет работаю с 1с, а о таком слышу впервые.
О какой форме идет речь, и каким образом она отображается???
Неужели что-то новое в 1с изобрели, а я и не заметил?