СоХабр закрыт.

С 13.05.2019 изменения постов больше не отслеживаются, и новые посты не сохраняются.

| сохранено

H Один компьютер на двоих или как экономить 60% на офисных ПК в черновиках

Каждый раз, подписывая счет на закупку компьютера для нового сотрудника, я задавал админам один и тот же вопрос «Неужели нет способа на этом экономить?» Нет. Если мы хотим комфортной работы сотрудников – нужно покупать нормальные современные машины и работать. Это мнение сотрудников, системных администраторов, технического директора… в общем всех, кроме меня )

Но директора или собственники бизнеса меня поймут. Если в докризисные времена офисное железо стоило еще приемлемых денег, то сейчас платить 30 000 рублей только за системник, как минимум — дороговато. Должен быть выход.

Брать новых людей на удаленке – для нас не вариант. У нас много людей, проектов, задач и коммуникаций. Должна быть взаимозаменяемость + минимум потерь на общение. Надо научиться использовать имеющуюся груду железа (вполне современного) не только для текущих сотрудников, но и для вновь приходящих (мы растем примерно на 1-2 сотрудника в месяц).

Пару лет назад на хабре было написано, как разделить компьютер на базе Ubuntu. По сути это решение, которое распараллеливает ресурсы компьютера (его еще называют multiseat). Подключаются две клавиатуры, мышки, два монитора и два пользователя могут одновременно работать, каждый под своим аккаунтом.

После непродолжительных поисков решений для Windows, мы нашли программный продукт Астер от компании Ибик, который умеет делать из одного компьютера – два. Мы начали эксперимент по производительности, в успешность которого, естественно, никто не верил. Особенно технический директор :) Но не все идеально

С чем мы столкнулись во время внедрения? Слово системному администратору


Кратко расскажу о конфигурировании машины для данного режима работы и проблемах с которыми столкнулись.

Первое с чем мы столкнулись – это диск. Производительность уперлась именно в него. Проблему решили быстро, заменив HDD на SSD. Все залетало. Причем (как отметили сотрудники) работать стало даже быстрей, чем было раньше. Процессора i3 и оперативки 4 Gb вполне хватает на двоих для комфортной работы.

Емкость приобретаемых SSD-дисков небольшая — 60Gb. Сама система с пакетом необходимых драйверов съедает приличную часть этого пространства. Ввиду этого, на этапе установки системы, пользовательские папки мы переносим на имеющийся в системнике HDD. Для этого, при установке Windows (мы используем Windows 8 и 8.1) достаточно дождаться пока она попросит ввести имя ПК, вызвать консоль (Shift+F10) и ввести ряд команд. Для удобства я объединил их в «батник», который запускаю с флешки. Вот он:

robocopy C:\Users D:\Users /E /COPYALL /XJ
rmdir C:\Users /S /Q
mklink /J C:\Users D:\Users
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /f /v "ProfilesDirectory" /t REG_EXPAND_SZ /d "D:\Users"
Shutdown -r -f -t 00

Здесь могут возникнуть некоторые трудности. При установке системы, загрузчик не всегда корректно выполняет форматирование жесткого диска. До момента создания пользователей запустить Проводник не получится, поэтому открываем блокнот (просто вбиваем в консоли notepad), жмём «открыть файл», заходим в «Мой компьютер» и смотрим, как обстоят дела с разделами HDD (заодно смотрим какую букву закрепила система за флешкой). Если их нет вообще, запускаем DiskManager путём набора в командной строке diskmgmt.msc. С его помощью создаём раздел/разделы. Если разделы видны, но не отформатированы, форматируем их командой “format” (например, “format :d /Q ”). После этого переходим на флешку и запускаем исполняющий bat-файл. После исполнения скрипта, компьютер перезагрузится и файлы перенесены.

Крайне не советую переносить пользовательские папки на уже установленной системе с хотя бы одним зарегистрированным пользователем. Кроме того, что более трудоёмкий процесс, опыт показал, что после данной процедуры вылезает множество багов — от некорректной работы приложений (особенно поставляемых с ОС) до сбоев в работе периферии (пропадающий сетевой принтер и фризы в работе мышки).

Мы столкнулись с проблемой распараллеливания звука. Все программисты сидят в наушниках и звук для них это святое. Эту проблему удалось решить установкой оригинальных драйверов. Здесь стоит ожидать некоторых проблем, так как подчас производители уделяют не так много внимания качеству реализации аудиодрайверов и интерфейсов управления звуком. У нас, в основном, используются типовые материнские платы с интегрированной «звуковухой» Realtek. Достаточно в настройках включить возможность одновременного независимого использования основного и фронтального аудиовыходов.

Ещё одна неожиданность ожидала нас на уровне самой системы. Программист заходит в Windows под собой и видит Вконтакте напарника :) C этим тоже справились. Авторизация в браузере вполне легко решает эту проблему.

Так же мы столкнулись с тем, что в процессе работы, наши программисты активно используют сочетание клавиш Shift+F12, которое в Астер приводит к переназначению владельцев мышек и клавиатур у пользователей. Конфликт решился правкой реестра (ребята из поддержки Ибик достаточно оперативно прислали «заплатку»).

В остальном проблем не возникло. Весь софт, который мы используем (включая phpStorm) вполне нормально работает при такой схеме.

Мы использовали решение с одним ПК на двух сотрудников. У Астер есть решение по организации до шести рабочих мест на одной машине, однако такая схема даже не рассматривалась ввиду высокого риска крупных потерь рабочего времени при выходе из строя железа, значительно более высокая требовательность к комплектующим (особенно к видеокартам и материнским платам), а так же вероятные проблемы с реализацией независимых аудиопотоков для каждого пользователя.

Где мы сэкономили?


Полноценное рабочее место для нового сотрудника стоит примерно 45 000 рублей. Это системник 30 000 руб + монитор, клавиатура, мышка 10 000 руб + windows — 5 000 руб. Для того, чтобы нам распараллелить рабочее место необходимо купить SSD диск емкостью не менее 60Gb, сетевую карту (при необходимости закрепления за каждым пользователем отдельного статического IP-адреса), монитор, клаву, мышку и лицензию на ПО. В итоге за организацию дополнительного рабочего места вместо 45 000 рублей, у нас уходит примерно 15 000 рублей. Это уже приемлемо. Плюс не забываем про экономию на электричестве компьютера, работающего 8-10 часов в сутки.

Дополнительно, стоит отметить, что уменьшение количества рабочих машин сокращает затраты на их обслуживание и соответственно увеличивает скорость реакции администраторов. Вместе с этим мы начали переходить на windows live аккаунты и хранение персональных рабочих файлов в облаке на One Drive. Все это позволяет сотрудникам работать с любого места и быстро включиться в работу на подменном, заранее сконфигурированном ПК.

В течении трех месяцев сбоев пока не наблюдаем. Будем рады, если наш эксперимент будет вам полезен, а производитель софта продолжит его развивать. И конечно, готовы принять участие в обсуждении этой горячей темы.

Василий Чуранов и команда WebCanape

комментарии (54)

+2
+3 –1
nerudo ,  
Надо учесть еще затраты на специалистов, способных это развернуть и поддерживать.
0
Rumlin ,  
заменив HDD на SSD. *** Процессора i3 и оперативки 4 Gb папки *** мы переносим на имеющийся в системнике HDD

Итоговая конфигурация какая?
0
Rivethead ,  
Кстати да. Интересно, на сколько такой ПК выходит дешевле двух простеньких офисных.
0
vasyay ,  
Простенькие вообще не катят. Процессор нужен не меньше i4 и оперативки 4 Gb. Дело в том, что при совместном использовании нагрузка не равномерна и таких ресурсов на двоих очень даже хватает. Ну и SSD обязателен.
+13
+14 –1
Kepp ,  
Сколько же вы платите вашим программистам, что они такое терпят.

И как же все остальные затраты на новое рабочее место (стул/стол и т.п.)?
А если, не дай бог, удаленно надо поработать?

По моему опыту, желательно чтобы у каждого разработчика был собственный ноут.
0
vasyay ,  
Не очень понятно как связано количество системников и ЗП программистов ) Главное, что бы тормозов небыло и место комфортное. Стол и стул, конечно, никто не отменял. Это затраты, которые не касаются компьютера. Да и стоимость их существенно меньше.

Собственный ноут возможно актуально, но не для нас.
+5
+6 –1
Dolios ,  
>Не очень понятно как связано количество системников и ЗП программистов
Так издеваться, имхо, можно только над низкоквалифицированными сотрудниками, которые не уйдут к конкуренту/во фриланс.

>4 Gb на двоих
Чем там ваши программисты занимаются? Сейчас посмотрел htop, потребление памяти 7Гб с копейками. В 2Гб у меня IDE с открытым проектом не помещается :)

>место комфортное
Я пропустил, как вы подключили 4 монитора (по 2 на каждого). Вы ведь понимаете, что программисту для комфортной работы нужно минимум 2 монитора?
0
Daemon_Hell ,  
Со всем согласен кроме двух мониторов — удобно не всем. У меня второй монитор обычно показывал что-то статичное/не особо нужное. Ради экономии места убрал в итоге.
–1
Dolios ,  
Эх, а я третий хочу, двух не хватает иногда. А зачем в офисе место экономить? Ну будет пол стола пустовать :)
0
Dolios ,  
Минусующие не согласны с тем, что на обычный офисный стол легко помещается системник и два 25" монитора? Что еще программисту на стол ставить?
0
Dolios ,  
По моему опыту, желательно чтобы у каждого разработчика был собственный ноут.

Не соглашусь. Ноут нужет только тем, кто ездит по клиентам/по командировкам. К тому же, ноут с хорошей производительностью будет стоить как чугунный мост и к нему все равно нужно докупать док-станцию (не тыкать же провода постоянно) 2 нормальных монитора, нормальную клавиатуру. Для обычного разработчика смысла в этом нет никакого, имхо.
0
t13s ,  
Мне кажется, что описанное автором «решение» будет все же хуже ноута.
Посмотрел в магазинах — простой вариант с 4 гигами и i3 можно взять за 22-23 килорубля.
Что, в итоге, даже получается несколько дешевле вашего коммунизма.
А если рассмотреть популярный в цивилизованных странах вариант, когда компания частично оплачивает купленное работником железо — так можно и еще более интересные варианты найти.
0
Dolios ,  
Мне кажется, что описанное автором «решение» будет все же хуже ноута.
Посмотрел в магазинах — простой вариант с 4 гигами и i3 можно взять за 22-23 килорубля.
Что, в итоге, даже получается несколько дешевле вашего коммунизма.

Моего коммунизма? Вы меня ни с кем не путаете? :)
По сути, те же яйца, вид сбоку. Ноут будет более производительным, чем пол процессора и 2Гб, но мелкий монитор и клавиатура сводят все преимущества на нет. Я, например, за ноутами вообще не могу работать.
0
t13s ,  
Путаю. С топик-стартером. Примите пардону :)

К ноуту монитор и клавиатура вполне подключаемы. Мелкий собственный монитор в качестве второго, в условиях экономии на спичках, вполне сгодится.

А еще ноутами на электричестве сэкономить можно
0
Dolios ,  
Мелкий собственный монитор в качестве второго, в условиях экономии на спичках, вполне сгодится.

Исключительно в условиях экономии на спичках. Здоровье не купишь, сажать зрение, работая постоянно за 15" монитором я решительно отказываюсь, оно у меня и так не очень хорошее :)
Для разъездов и для тех кто не пялится ежедневно по 8-10 часов в монитор, ноут прекрасный вариант. Сам когда-то пользовался ноутом, т.к. приходилось порстоянно перемещаться по городу.
0
ngordeev ,  
Программист заходит в Windows под собой и видит Вконтакте напарника

стесняюсь спросить, они что, под одной системной учёткой сидят, или всё же учётки и набор софта разный,
просто одновременно логинятся на одну машину?

по поводу 4GB оперативки тоже спорный вопрос. Если ваши программисты настолько не избалованы всякими фрэймворками на джаве и могут писать, образно говоря, в блокноте, это здорово, но, ИМХО, таких мало.
Ну и могут и делают так — это разные вещи.

По поводу личных данных в облаке… нуу… вариант конечно, но тут можно и доменные профайлы использовать,
тем более что иногда рабочие данные категорически нельзя сливать в публичный интернет.
+5
+7 –2
kzn ,  
Неужели вы платите разработчикам столько, что 45к на рабочее место — это много?
А сколько стоит стол за которым работает программист? А кресло? Или тоже — самое дешевое?

Я бы сделал выводы, о том, что в такой компании экономят на всем. Включая воду, чай и кофе.

Но имхо, больше всего похоже на экономию на спичках.
+1
+3 –2
vasyay ,  
Два года назад мы начали считать все часы разработчиков, автоматизировать все операции, которые только можно, искать потери там, где их «быть типа не может. Экономия на спичках? Нет, это ключ для выживания сегодня. Кто-то открывает новые цеха, а потом благополучно распродает все за копейки, а кто-то учится работать эффективно.

Конечно, хороший продукт это ключевое. Но сегодня этого не достаточно.
+1
kzn ,  
Тут вопрос — какая зарплата и условия у программистов. Неужели рабочее место стоит дороже месячной зарплаты?
Ну и повторюсь, что меня, как потенциального сотрудника очень бы удивило такое устройство рабочего места. И я бы сделал на основе этого определенные выводы.

А так 4gb — странный выбор. Сейчас и браузеры прожорливы, и IDE. Вы же на php разрабатываете? Я дуаю, что PHPStorm кушает много памяти.
А 8gb — стоят 4к на данный момент.
Монитор 22-24 — от 7к судя по всему.
+1
becks ,  
Абсолютно с Вами согласен. По ощущениям, неудобств создали значительно больше чем выгоды. Ну и 4 Гб опертивы на двоих это уже паранойя.
Если бы я был потенциальным соискателем, увидев такой вариант организации рабочего места, десять раз подумал прежде чем принимать предложение. Однако речь идет о Смоленске, не исключаю, что вариантов там не особо много, народ без претензий.
–3
vasyay ,  
Абсолютно с вами согласен. Не нужно идти работать, если вы хотите 4 гб, живете «по ощущениям» и далеки от реальности. В Смоленске народ такой же, как и везде. Есть толковые ребята, есть и не очень.
+3
becks ,   * (был изменён)
Зачем Вы передергиваете? Про смоленских ребят вообще ничего плохого не писал (уверен встречаются очень даже неплохие специалисты), просто выбор работодателей значительно меньше чем в условных Питере или Москве, если мы говорим про постоянку, это первое.
Не нужно идти работать, если вы хотите 4 гб, живете «по ощущениям» и далеки от реальности.
Второе, 4 Гб на двоих это совсем несерьезно. Я не знаю, что у вас за проекты, но IDE+виртуалка+браузер и оба программиста вне игры.
Видимо, я действительно далек от реальности, у меня, к слову, рабочий компьютер с двумя мониторами + 2 рабочих ноутбука, у коллег аналогично, у всех друзей\знакомых программистов аналогично (ну может 1 рабочий ноут). Видимо все мы далеки от реальности.

На мой взгляд, вы не на том экономите.
–10
vasyay ,  
Спасибо за ваше мнение. Спорить не буду. Как всегда зря ожидали нормальные конструктивые комменты, что бы понять подводные камни и опыт коллег. А все пишут «по ощущениям». Хабр, что делать… )
+6
maximw ,  
Комменты как раз-таки конструктивны. Имхо, деструктивна такая организация труда.
Неужели нормальные условия труда для программиста не стоят его месячной з/п?
+2
kibitzer ,  
На хабре сидит много разработчиков, те, на ком вы экономите. Поэтому вы слышите, как раз конструктивную критику от той стороны, которая вам деньги приносит (ваши программисты скорее всего молчат и мучаются).
0
becks ,   * (был изменён)
И за Ваше мнение спасибо.
А все пишут «по ощущениям». Хабр, что делать… )
И очень хорошо, что «по ощущениям». Избавь нас всех бог от таких «оптимизаторов».
+11
+12 –1
Ogra ,  
А еще можно открыть две смены — для жаворонков и сов! Тогда одного компа на 4х сотрудников хватит =)
0
kzn ,  
Неоптимально. Оптимально — 3 смены по 8 часов. Итого: 6 сотрудников на один комп.
И вообще, кто сказал, что за одну машину только двоих одновременно можно посадить? Почему не трех?
0
t13s ,   * (был изменён)
Лицензия дороже, видимо :)
0
Daemon_Hell ,  
Linux и vim — никаких лицензий не нужно.
0
+1 –1
Misery ,  
нужно покупать нормальные современные машины и работать. Это мнение сотрудников, системных администраторов, технического директора… в общем всех, кроме меня
Что-то в этом есть, Вам не кажется?
30 000 рублей только за системник, как минимум — дороговато.
Можно же покупать на авито краденное б\у?
Программист заходит в Windows под собой и видит Вконтакте напарника :)
Значит сис админов тоже можно уволить, бо свои функции они не выполняют (такая то экономия!)

И еще можно сэкономить на софте, за одним компьютером по очереди работают два человека, час один за компом, час второй, и на софте экономия то какая! А, в принципе программы можно в тетради в клеточку писать, а компьютеры продать!
+4
kibitzer ,  
Вы садист! Пожалели бы программистов из WebCanape. После прочтения статьи и комментариев, я не удивлюсь, что ваши советы vasyay воплотит в работе.
0
ShiawasenaHoshi ,  
Другой вариант. Не проще ли купить комп с рук на Авито, например? Неужеле не уложиться в 10-15к за рабочий экземпляр?
+1
vasyay ,  
Нужна гарантийная поддержка, быстрый сервис по замене и т.д. Авито при наших объемах не подходит.
+1
Aclz ,  
Нужна гарантийная поддержка, быстрый сервис по замене и т.д.

Поддержка системников? Сервис по замене? Зачем?? Я бы ещё понял, если бы речь шла о серверах.

Купите 1-2 запасных ящика — будет вам моментальная замена. И да, если у вас не серьезный геймдев для ПК или тяжелый дизайн, или у каждого поднят тяжелый инстанс SQL, то за 15-20 легко можно купить новый. Для кодинга хватает за глаза.
0
Daemon_Hell ,  
Какие могут быть тяжелые приложения с 4ГБ на двух человек?
0
serafims ,  
немного не вяжутся объемы и экономия такая вот… Если сломается тут что-то — сразу вылетает два сотрудника…
0
vasyay ,  
На этот случай всегда есть готовый, настроенный системный блок.
+1
Dolios ,  
Настроенный под кого? Настроить чистую систему под себя — пол дня работы обычно, если не автоматизировать.
+5
maximw ,  
Что если кому-то надо перезагрузиться? У кого-то намертво зависло приложение? Или один из пользователей запустил процеесс, который сильно грузит процессор?
0
+1 –1
vlreshet ,  
Как программисты чуствуют себя с 2-мя гигами оперативки на брата? Просто по личному опыту — OpenServer на 4 проекта, sublime text 2, skype, worksnaps, браузер на 10+ вкладок, navicat, и dr.web — уже плохо помещаются на 4-х гигах оперативки, пришлось ещё планку на 4 докидывать. ИМХО с двумя гигами это надо в блокноте писать и тестить на удалённом сервере.
0
vasyay ,  
У нас нет высоконагруженных задач у программистов. Пока полет нормальный. Если что, будем усиливать, конечно.
+2
+3 –1
imperror ,  
Я что-то не пойму, а тонкий клиент чем вас не устроил?
+1
Vorchun ,  
а давайте посчитаем. Актуальная тема. У вас есть опыт? Можете расчет показать?
+1
Shrim ,  
Попробуйте пойти другим путём: на основной компьютер ставим linux (тот дистрибутив, который вам нравится), устанавливаем VirtualBox, в нём разворачиваем две (или более) виртуальные машины с Windows 8.1, обязательно ставим дополнения гостевой оси. Настраиваете в VirtualBox удалённый дисплей на разных портах, ну или в гостевых системах настраиваете удалённый доступ, в любом случае доступ будет по RDP. Покупаем необходимое количество тонких клиентов, например ОТК или колхозим сами из Raspberry Pi. Если возникнут проблемы со звуком, то они решаются USB-звуковухами. Нехватка оперативной памяти решается с помощью ZRAM. Разбираемся с лицензированием Windows 8, например по этому документу и покупаем нужное количество лицензий. По деньгам получится, думаю, не дороже вашего решения (надо считать).
Плюсы: для каждого пользователя своя система; можно подключаться даже из дома (не забываем про безопасность); виртуальные системы легко архивировать — не обязательно покупать Acronis и ему подобных, достаточно скрипта на bash; по производительности — она обычно неравномерна и скачкообразна, поэтому один современный компьютер спокойно способен обслуживать несколько виртуальных машин без заметного проседания производительности.
Минусы: не подходит для дизайнеров и прочих, кому нужны видео и качественная картинка, но для программистов такое решение вполне подойдёт.
+1
dshster ,  
А в вакансиях написано 2 монитора на рабочее место, это значит пол-компьютера и 2 монитора? Отлично, спасибо, что поделились — к вам не приду работать. А если серьёзно — есть же удалённый рабочий стол, самый дешевый нетбук и мощный сервер, но в любом случае это не для профессиональной работы. Секретарше с вордом хватило бы.
0
imbeat ,  
А как вы подключали два монитора (из расчета по одному на каждого программиста) к одному компу? Подозреваю, что дополнительно видеокарта нужна, а о ней вы ни слова не написали. А если разработчикам нужно по два монитора?
0
vasyay ,  
Мы изначально покупаем системники с дополнительной видео-картой, что бы можно было два монитора подключить.
0
Aclz ,  
Счас, по-моему, сложно купить материнку без встроенной видеокарты с двумя, а в последнее время и с тремя выходами.
0
masyan ,  
даже самая дешевая мать от asus с intel hd4x00 поддерживает 2 монитора до 1920 x 1200.
в более дорогих вариантах уже идет поддержка HDMI/DVI/RGB, где HDMI выдает 4096 x 2160 и 2560 x 1600
+1
kibitzer ,  
У них на сайте написано (вакансии), что у каждого разработчика 2 монитора и современное рабочее место. Поэтому, как они смогли подключить 4 монитора и обеспечить современное рабочее место с 2ГБ на разработчика.
+2
OnYourLips ,  
> Весь софт, который мы используем (включая phpStorm) вполне нормально работает при такой схеме.
В итоге на юзера 2гб оперативки, и у вас он нормально работает?

Может вы просто программистов не спрашивали, какими матными словами они о вас думают?
Если кто-то запустит виртуалку, то у вас система просто в своп вывалится.
0
shuvaevgl ,  
Вы хотели критики? Их есть у меня. Если что- начальник ИТ.
1) Сотрудников, при таком построении системы, надо сажать впритык или напротив друг друга из-за ограничения длины проводов. Удлинители не считаем (клава, мышь, монитор)
2) Один подвис и решил ребутнуть комп, второго нет на месте, а у него проект не сохранен — кто виноват?
3) Вирус сжирает файлы на общем диске и теряются важные данные (не надо про то, что у хорошего админа вирусы не пролезут. Изобретательность пользователей даст сто очков любому админу, если тот не запретит вообще все. Бэкапы каждый день рулят.)
4) Я не кодер, но люблю поиграть с ардуино. Ноут на Core i5, SSD, 4Gb Озу — даже небольшие проекты на 10-20 Кб компилятся временами довольно долго.
5) Я своим сотрудникам даже на «печатные машинки» ставлю минимум 4 Гб ОЗУ, потому как браузер с пятеркой открытых окон легко съедает 1 Гб ОЗУ.

Если хочется сэкономить — поставьте сервак с RDP. Есть куча систем виртуализации, да даже Win Serv с его терминальным сервером вполне сносно работает (у меня бухгалтерия из разных городов на одном сервере легко уживается)
0
masyan ,  
Пишут про 30к за системник, если брэндированные брать — да, если собирать на базе miniITX (например, Foxconn mITX 250W стоит около 2.5к), то i3-4150, 8GB RAM, 120 GB SSD выходил в июле 12к, сейчас 19к. Если сменить платформу на ATX, то выйдет 2-3к дешевле. При этом вы получаете мощную машину, которая тянет все, что надо. Да, надо время 20 минут на сборку всего стаффа. Понятно, что про энтерпрайз не говорим, где закупки сотнями машин идут, а для smb сектора этого за глаза. Можно не i3 смотреть, а что-то более дешевое.