Наша проблема:
Один принтер не справляется с большой пиковой нагрузкой и оплавляет внутренний пластик. Под катом расскажу какие решения мы опробовали, и к чему в итоге пришли.

Имеем:


1) терминальную ферму Win2008R2
2) 3 одинаковых сетевых принтера


Расскажу немного о самой проблеме. У нас есть отдел заявок в службе доставки. За одну ночь они спечатывают суммарно 8 тысяч листов А4. Нагрузка на принтеры ложится именно ночью — когда все заказы и маршруты сформированы. Последнее время качество неоригинального тонера стало хуже, и из-за этого в аппарате наблюдается перегрев. С оплавлением пластика и попаданием на движущиеся элементы.

Решение 1. Замена принтера на более мощный.


Я специально постараюсь не приводить марки принтеров. Скажу лишь, что в моём принтере ресурс заправки картриджа 25 тысяч листов А4, месячный ресурс принтера 300 тысяч. Мой принтер покупался за 25 тысяч рублей. Первое что было придумано — купить более крутой принтер. Но исследование яндекс-маркета показало, что либо у аналогов высокая цена эксплуатации и себестоимости на лист бумаги, либо изначально несоразмерно бОльшая цена(>200тыс.р.), даже по старому курсу $. Всё таки решили не менять…

Решение 2. Объединение принтеров в пул.


Логичным решением перегрева мы посчитали самый просто вариант — дать принтеру остывать. Как это сделать? Естественно — распределить печать на несколько устройств! И лучше сразу это автоматизировать дабы исключить «человеческий фактор».

Перечислю несколько вариантов распределения нагрузки на пул.

Вариант 1. Стандартная группировка в пул.
Использовалась стандартная статья MS в качестве инструкции. Но тут же выяснилась проблема — второй и последующий принтеры печатают ТОЛЬКО в том случае, если предыдущие заняты. Получается неравномерный износ и перегрев первого принтера… Это решение подходит в случае, если у нас очень мощный и надёжный первый принтер. Решение нам не подходит, опять ввиду цены мощного принтера.

Вариант 2. Стороннее ПО.
Признаюсь честно — с большим трудом нагуглил всего 2 программы под мои задачи… Первая — попалась очень глючная, постоянно блокировала спулер на терминальной ферме так, что приходилось ребутать серваки. И требовала постоянного висения в трее. Вторую — не осилил. Вроде всё просто — но выскакивает одно и то же окошко и всё тут. Обе программы платные, но с триальным периодом. Вобщем, пока что рынок ничего адекватного и рабочего «из коробки» не предлагает.

Вариант 3. Оказывается, всё очень просто. Round robin DNS
Меня смутило поле «имя или IP адрес» в окошке "установка принтера". И я попробовал указать DNS имя… работает!
Это уже намного интереснее. Мы можем на одно DNS имя посадить несколько принтеров. Получается выбор принтера теперь зависит от DNS-установок! А это уже автоматизация как минимум на уровне скриптов!

Итак. У меня домен AD. Я создаю домен 3го уровня printers, и прописываю A-хост c именем нашего «пула» — oz. Полное имя oz.printers.mydomen.local. В качестве IP-адреса указываем наш первый принтер. Следом создаём такую же запись, но с другим IP-адресом(адрес второго принтера). На обоих записях настраиваю TTL=0, дабы резолв не кешировался, и был честный рандом.
Если нужно скорректировать более приоритетную нагрузку на какой то принтер — можете поиграться с TTL.

Теперь немного изысканий.
1) один принтер выключен — второй ВСЕГДА напечатает задание.
2) если на первом открыта крышка или какие то другие логические проблемы, то… Если у нас по резолву придёт печать этот принтер, то с сервера задание «как будто» уйдёт на печать, но напечатано на РАБОЧЕМ принтере не будет. Как только вставляем картридж, или закрываем крышку — принтер отпечатывает всё, что было отправлено конкретно ему.
3) такая схема не работает с разными принтерами. Исключение — принтеры с универсальным или одинаковым драйвером. Но тоже криво(всегда проблемы с дуплексом)… Нормально работает на идентичных принтерах, проверено.
4) всплывающие информационные сообщения пользователю от принтера при TTL=0 не работают. Но этому я даже рад. Думаю это зависит от принтера.
5) у меня маршрутные листы печатались из 1С. Печать была сборная — человек нажимал кнопку печати, и 1С-клиент собирал документы из разных мест, и по мере поиска — тут же выводил на печать. При TTL=0 получался жуткий фарш из цельного маршрутного листа на всех принтерах. Выхода тут 2 — использовать TTL>0, и сократить вероятность таких ситуаций к минимуму, либо вариант 2 — переписывать 1Ску на вывод печати.

Как итог. Я считаю мой опыт окажется кому то полезным. Спасибо за Ваше внимание!
PS: Вот фото валика после оплавления пластика

Комментарии (28)


  1. Spetros
    30.03.2015 11:02

    То, что всё это проделывалось на принтерах с сетевыми интерфейсами, становится ясно лишь середине статьи и то не явно.


    1. derwin Автор
      30.03.2015 11:03
      -1

      поправил, спасибо.


  1. GreyCat
    30.03.2015 11:28
    +3

    8 тысяч листов за ночь — это 16 пачек А4. Одна пачка стоит ~200 р. => 3200. Судя по тому, что работают ночью — скорее всего работают без выходных — то есть 30 дней * 3200 ~ 96000 р. в месяц на одну только бумагу. Если учесть еще заправки (240000 листов за месяц ~ 10 заправок за месяц), выйдет под 100K р. (и то, если брать супербюджетный тонер и делать все на месте).

    Вопросов два:
    1. Почему тратить 100К в месяц на бумагу — нормально, а 200К за принтер единоразово — дорого?
    2. Неужели нельзя избавиться от такого дикого объема бумагооборота? Судя по словам «маршрутный лист» — это все зачастую водителям печатается. За 100К за месяц (или за два) им нельзя банально по планшету купить?


    1. derwin Автор
      30.03.2015 11:43
      -1

      Зачем покупать принтер за 200, если и за 25 всё работает? Основные характеристики такие же… Разница в цене — в 8 раз. Первый принтер (тот что за 25) честно отпахал год в одиночку и скопытился. Потратил 10 т.р. на ремкомплект и он работает дальше. И я бы не задумывался над этим, если бы не проблемы с перегревом.
      Лично я не понимаю, почему такой разлёт по цене у принтеров.

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


      1. GreyCat
        30.03.2015 12:21
        +1

        Первый принтер (тот что за 25) честно отпахал год в одиночку и скопытился. Потратил 10 т.р. на ремкомплект и он работает дальше.

        На самом деле, субъективно, вам как-то сильно повезло. Из того, что я видел в этой ценовой категории — у этих принтеров ресурс максимум — в районе миллиона страниц, дальше начинает сыпаться все по кругу. Вашими темпами они должны рассыпаться в пыль за 3-4 месяца (что, впрочем, опять же, при ~100K в месяц на бумагу, субъективно, совсем не страшно).

        Лично я не понимаю, почему такой разлёт по цене у принтеров.

        Если смотреть на именно узкоспециализированную задачу «хочу печать черно-белую А4, но быстро и много», то вы в целом правы — типовое решение — либо Kyocera 4xxx, либо HP 4xxx (подешевле), либо HP Enterprise 6xx (подороже). Разброс цен от ~30K до ~80K рублей обусловлен ровно двумя параметрами — размером картриджа (и, соответственно, тем, как часто его надо заправлять) и размером лотков (т.е. как часто надо заправлять бумагу). Все, что больше — это большие рабочие станции а ля Ricoh, занимающие пол-комнаты, где, с одной стороны, лотки и картриджи еще чуть побольше (но не феерично — максимум — раза в два-три), с другой — напичканные тучей бесполезных в вашем случае функций типа LCD-экранчиков, print-by-pin-code, сканерами, факсами, цветными картриджами, брошюровщиками и т.д.

        Еще дальше есть то, что называется «цифровая полиграфия» — всякое такое — но там цены, соответственно, еще на порядок больше и упор больше идет на широкий формат, работу с рулона, встроенную нарезку, и в итоге — на супербыстрое тиражирование более-менее одинаковых форм.

        По большому счету промежуточных решений толком нет — видимо, как-то не очень востребовано народом печатать в сутки десятки тысяч разных ч/б листов.

        Собственно, вопрос-то, действительно, видимо, не к вам, а скорее к топам — почему каждый месяц профукиваются столько сил и денег (я уже молчу о том, сколько народ тратит времени, что перетаскать эти 500 пачек бумаги в месяц, повставлять их в принтеры, заправлять картриджи и т.д.), тогда как, на первый взгляд, можно все перетрясти за цену только бумаги за эти 3-4 месяца.


        1. saboteur_kiev
          30.03.2015 16:19

          > По большому счету промежуточных решений толком нет — видимо, как-то не очень востребовано народом печатать в сутки десятки тысяч разных ч/б листов.

          Именно так. Такая задача встречается не слишком часто. В полиграфии печатаются одинаковые листы, и «быстрая техника» совсем другая. А так, чтобы куча листов и все разные — задача непопулярная, но встречается. В таком случае — лучше несколько среднего бюджета принтеров, с 2-3 лотками на 500 листов и картриджем на 25-30 к листов, чем 1-2 монстра, которые ничем не быстрее, а в случае сбоя — менее надежны.


          1. GreyCat
            30.03.2015 16:50
            +1

            Скорее уж если такая задача встает — это огромный повод думать, как от нее избавиться и как ее можно решить альтернативно. С какой-то вероятностью от всего или хотя бы от части такого гигантского бумагооборота можно избавиться. То, от чего избавиться нельзя — возможно, можно перевести хотя бы на печать не на А4, а на какой-нибудь ленте а ля чековая — оно и быстрее на порядок (чековые принтеры, делающие по 30-40 листов в секунду — весьма рядовая вещь), и дешевле, и бумагу не надо бегать и менять каждые полчаса, и сами принтеры там, как правило, радикально более надежные и легче обслуживаемые. Если все таки прям совсем нужно печатать и прямо А4 — очень может быть, что можно сделать типографские (офсетом) бланки, куда лазерник на месте уже будет впечатывать уже 3-4 поля, что внезапно на пару порядков снизит и расход тонера, и износ, и нагрев принтеров.

            В общем, поле для деятельности тут обширное — только да, надо, чтобы инициатива сверху была, и это понимали не только люди на местах…


            1. derwin Автор
              30.03.2015 16:53

              для меня это пройденный этап. Уже и где нужно на A5 пропечатываем, и дуплекс используем. Но это отдельная история.


    1. differentlocal
      30.03.2015 12:21
      -1

      Планшенты? Водителям-дальнобоям и складским сотрудникам? Одноразовые, что ли?
      Любой не одноразовый будет либо украден, либо потерян, либо разбит в первую же неделю.


      1. GreyCat
        30.03.2015 12:30
        +1

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

        Так что все это решается и делается — вопрос в желании и воле у того, кто делает.


      1. derwin Автор
        30.03.2015 12:33

        видел корпоративный iPad у кладовщика. Стекло на нём такое, что можно отвёрткой тыкать. Забавная штука…


  1. anton1234
    30.03.2015 12:11
    +1

    Помимо объединения в пул можно еще варировать приоритет очереди через ps Set-Printer по расписанию, это позволит давать принтерам отдыхать.


  1. foxmuldercp
    30.03.2015 15:09
    +1

    У меня в компании 8 машинок коника-Минолта и сервер централизованной печати, не помню как звался, были.
    в подвале для печати счетов клиентам стояла более дурная Минолта, и обьемы печати соразмерные с Вашими.

    аутсорс — обслуживание принтера, ремонт в случае аварии максимум 23 часа по SLA.
    диагностика принтера — gsm модемами. 100% проблем за три года решалось либо на уровне того что печать документов офиса выполнялась на любом принтере где ты авторизовался rfid пропуском — либо приездом дежурной команды оператора в течение пары часов после аварии на большой Минолте, но большой брат был рассчитан на десяток миллионов документов в цикле обслуживания, в отличие от мелких офисных мфушек. к чести бренда сказать, за 3 года ни одного инцидента сложнее замены расходников вроде тонера/картриджа/валиков не было

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

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


    1. dmbarsukov
      30.03.2015 15:25

      Всегда было интересно. Вот кинули на печать, печать не идет, потому что нужно RFID пропуск приложить к принтеру. А там 100 листов. То есть мы ножками идем к принтеру, прикладываем пропуск и ждем, пока напечатается, а тем временем стоим рядом. Это удобно вообще? Или я какого-то важного момента не понимаю?
      Если не стоим рядом, а пошли на обед — где тут секьюрность? всю нашу распечатку может так же забрать кто угодно.


      1. gotch
        30.03.2015 15:40

        Да что такое 100 листов. Две минуты подождать.


      1. foxmuldercp
        30.03.2015 15:47

        это у топов стоял:
        bizhub 751: 75ppm (A4); bizhub 601: 60ppm (A4)

        в 400й серии попроще, но цифры тоже не полторы страницы в минуту.
        Да, удобно. потому что это один принтер в коридоре на 2-3 ближайших комнаты.
        А секурность — можно например у секретаря поставить на распечатку, топы все равно мимо него ходили в 90% случаев.


      1. GreyCat
        30.03.2015 16:54

        Оно не «удобнее для конечных пользователей», оно «не сильно более противно для конечных пользователей», зато «сильно дешевле по TCO» — зачастую проще обслуживать 4-5 больших центров, нежели сотню-полторы мелких дешевых принтеров, которые ломаются, которые надо заправлять, к которым надо выделять и носить бумагу и т.д.


  1. saboteur_kiev
    30.03.2015 16:15
    +1

    Когда-то у меня была похожая задача. Оптовый склад, к каждому заказу печатается пакет документов. Склад работает практически круглосуточно в три смены, то есть простоя принтеров как такового практически не было.

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

    У нас стояло 4 принтера, что позволяло элементарно один принтер в случае чего снимать и отправлять на ремонт, при этом в случае выхода из строя еще одного принтера, два более-менее тянули.

    То есть в вашем случае 3 принтера мне кажутся дороже чем четыре.

    А вот ваша проблема насчет отдыха мне кажется совершенно странной. Вы же можете элементарно на любом сервере запустить по расписанию скриптик, который будет переводить принтеры по очереди в оффлайн, и пул сразу справиться с данной задачей. Запустить например смену очередности примерно раз в 30 минут.
    Можно считать задания. Можно получать с принтера количество распечатанных листов или напрямую, или парсить его статистику по html страничке и ставить в оффлайн после печати определенного количества листов (плюс-минус чтобы завершилось текущее задание).
    Такой подход вроде как более адекватен, чем лепить сюда DNS.


    1. derwin Автор
      30.03.2015 16:35

      Решилось дело обычным MS пулом принтеров. И в общем-то суть не в дорогих принтерах, думаю за 25000 это как раз удачное решение по скорости печати.

      я в статье написал, почему мне это не подходит.

      Ваш вариант имеет право на существование. Но согласитесь, что писать скрипт и пихать его в крон НЕ проще создания «a» записи. Как минимум потому, что для этого нужен какой то «сервер» со всеми вытекающими проблеми (отказоустойчивость, зависимость от ПО принтера/сервера и т.п.)…


      1. saboteur_kiev
        30.03.2015 16:48
        +1

        >«нужен какой то «сервер» „

        Ну у вас же как минимум Active Directory крутится на чем-то? Скрипт не зависит от ПО принтера. Это обычное что-то вроде:
        rundll32 printui.dll,PrintUIEntry /y /q /n “Printer name”
        Которое вообще никакой нагрузки не создает.

        Вы же ушли от принтер пула, который в общем-то заточен именно под вашу ситуацию — когда нужно печатать на какой-то принтер, чтобы служба сама разрулила, какой принтер занят, или крышка открыта, или картридж кончился.

        Возможно у меня требования к печати стояли такие, что напечатать после отправки задания нужно было как можно быстрее, поэтому мне было важно, что бы в случае чего, не было простоя даже на минуту, если есть на чем печатать.


  1. derwin Автор
    30.03.2015 16:34

    del


  1. k1b0rg
    30.03.2015 16:56

    А охлаждение не пробовали прикрутить?


    1. derwin Автор
      30.03.2015 17:00

      продуть до нужных элементов нереально, всё очень плотно скомпоновано. Идея такая была.


  1. Ivan_83
    30.03.2015 17:34
    +1

    1. Взять фрю/линукс и сделать там сервер печати с какими угодно обработками и правилами.
    2. Насписать самому себе из будущего записку о том как оно работает.
    3. Забыть об проблеме лет на 5.


  1. mafet
    30.03.2015 17:46

    А нельзя совместить dns-round-робин и микрософтовский пул принтеров?
    Сделать 3 пула, в каждом первым является каждый из трёх принтеров.


    1. saboteur_kiev
      30.03.2015 18:58

      IMHO там нет прямо вызначенного «первого принтера» — в пуле все принтеры в принципе равноправны, и если вдруг первый занят (неважно чем — выключен, ошибка печати, печатает другое задание), задание автоматом пойдет на второй.

      Делить печать между принтерами в пуле можно только по заданиям, и если одно задание на 100 страниц, а остальные 99 по 1 странице, то первый принтер которому попало это одно задание будет занят пока его не напечатает, и отдохнуть сможет только после него.

      Поэтому мне казалось, что самым правильным будет просто отправлять принтеры по очереди в оффлайн по расписанию.
      При этом нет никакой сложной нагроможденности лишних сервисов, включить принтер можно откуда угодно.
      Если какой-то принтер ушел в ремонт, то нагрузка балансируется тем же принт пулером, а не отдельным DNS балансером, который не может проверять занят ли текущий принтер по А-записи.

      В общем было бы интересно погонять текущее решение и узнать, вскрылись ли какие подводные камни.


  1. PavelK
    30.03.2015 18:23
    +1

    Скорее всего знаю эти принтеры на букву Х, но что бы перегревались да ещё из-за тонера, по-моему у Вас тут дело в печке а не в тонере. У них температура печки (и куча других параметров) если что настраивается. В обычном мануале нет, но в сервисном есть.

    Я делаю обычно через CUPS гораздо удобнее и стабильнее.


  1. Sergey-S-Kovalev
    30.03.2015 21:19
    -1

    Ох парни, как ваша боль знакома.
    У нас есть алкогольные склады. При отгрузке партий алкоголя на каждую партию печатается бешенное количество сертификатов и прочих бумажек. Изначально было по принтеру на каждого оператора и сертификатчика, иногда не по одному, в основном hp/kyoсera. Стоимость печати никто не считал, все мерялось в картриджах и их заправках, ну и ежемесячных деньгах на случай ремонта.

    Когда объемы выросли и один склад начал работать круглосуточно — принтера больше находились в ремонте чем печатали. Одинаково плохо было как с hp 1020/1006/3005/1522, так и 1028/1128/3140 киосерами за 20-25к рублей. Геморрой с обслуживанием, зоопарк принтеров, проблемы доставкой и перезаправкой расходников — были доступны все круги ада для управления ИТ.
    Когда же все это начало ощутимо вредить отгрузкам, то стоимость и объемы печати основательно посчитали и ужаснулись.
    В итоге после долгих битв с экономистами, руководством и департаментами закупили Xerox 5755/5775 за ценники over_много за штуку в начале 2013 года…

    … а дальше то и рассказывать нечего, только расходку меняй, да вовремя сервисного инженера для обслуживания вызывай (кстати, именно наличие вменяемого сервиса в приделах досягаемости повлияло в итоге на выбор вендора)

    Счетчики чуть более полугода назад:
    image
    Кто любит считать «страницы в день», может взять приблизительно 500 дней, которые первые три принтера были в бою в момент снятия статистики для аргументации зачем нам нужны еще дорогие принтеры на другие склады и заводы.