В последнее время наши клиенты все чаще обращаются к нам с вопросами: можно ли использовать наши выделенные и виртуальные серверы для майнинга биткоинов?
Майнинг биткоинов с помощью виртуальных серверов сопряжен с некоторыми трудностями. Если речь идет об облачных серверах, то оплата за их использование рассчитывается исходя из фактического потребления, и процесс майнинга принесет не прибыль, а скорее убытки. Если речь идет о виртуальных выделенных серверах, то генерация биткоинов с их помощью вряд ли представляется возможной из-за ограничений, накладываемых системой виртуализации. Так как для высокоуровневых услуг мы используем почти те же серверы, что и в выделенных конфигурациях, мы решили провести для них специальный тест и проверить, как они справятся с задачей генерации биткоинов.
Немного о генерации биткоинов
Биткоины, а также их многочисленные форки, представляют собой так называемую криптовалюту. Криптовалютами называют особый тип электронных валют: децентрализованных, не привязанных к какой-либо национальной валюте, не подверженных инфляции, не контролируемых каким-либо управляющим органом.В традиционных денежных системах в течение долгого времени использовался так называемый золотой стандарт, гарантировавший, что выпущенная каждая денежная единица может по первому требованию обмениваться на соответствующее количество золота. В криптовалютах существует своеобразный аналог золотого стандарта, называемый «доказательством работы» (proof of work): «выпуск» каждой денежной единицы осуществляется в случае решения криптографической задачи. Задача эта заключается в вычислении значения функции. Со временем уровень сложности этой задачи растет.
Генерация биткоинов по сути представляет собой вычисление новых блоков. Блоком называется набор данных, состоящий из двух основных частей: заголовка и списка транзакций. Заголовок включает свой хэш, хэш предыдущего блока, хэши транзакций, а также служебную информацию. В качестве первой транзакции в блок записывается генерация новых биткоинов, которые в случае получения успешного результата будут перечислены нашедшему. Далее указываются все или некоторые из последних транзакций, еще не включенные в предыдущие блоки.
Найденный блок будет принят всеми остальными пользователями, если числовое значение числа заголовка меньше или равно целевому числу, величина которого регулярно корректируется. Если блок не соответствует цели, то служебная информация в заголовке изменяется, и хэш пересчитывается. Для нахождения блока требуется очень большое количество попыток.
Когда вариант найден, узел сообщает об этом другим подключенным узлам, которые проверяют блок. Если ошибок нет, то блок считается добавленным в цепочку, и следующие блоки должны будут включать в себя его хэш.
Как уже было сказано выше, со временем найти новый блок, удовлетворяющий условиям задачи, становится все сложнее и сложнее. Смысл задуманного нами теста заключался в следующем: проверить, сколько биткоинов и за какое время смогут сгенерировать процессоры наших выделенных серверов.
Описание
Для тестирования были отобраны серверы со следующими характеристиками процессоров (такие показатели, как объем памяти и размер жесткого диска, на процесс генерации биткоинов совершенно не влияют, поэтому мы их не указываем; по этой же причине не учитывали мы и использование технологии HyperThreading; для большей наглядности мощность ядер всех указанных в списке процессоров суммируется):- Intel Atom D525 2 ядра по 1.8 ГГц = 3.6 ГГц
- Intel Core i3 2120 2 ядра по 3.30 ГГц = 6.60 ГГц
- Intel Core2Duo E8400 2 ядра по 3.0 ГГц = 6.00 ГГц
- Intel Core2Quad Q8300 4 ядра 2.5 ГГц = 10.0 ГГц
- 2 x Intel Xeon 5130 2 ядра 2.0 ГГц = 8.0 ГГц
- Intel Xeon E3-1230 4 ядра по 3.20 ГГц = 12.8 ГГц
- Intel Xeon E3-1270 4 ядра 3.5 ГГц = 14.0 ГГц
- 2 x Intel Xeon E5504 4 ядра 2.0 ГГц = 16.0 ГГц
- 2 x Intel Xeon E5620 4 ядра 2.4 ГГц = 19.2 ГГц
- 2 x Intel Xeon L5630 4 ядра 2.13 ГГц = 17.04 ГГц
- 2 x Intel Xeon E5-2603 4 ядра 1.8 ГГц = 14.4 ГГц
- 2 x Intel Xeon E5-2620 6 ядер 2.0 ГГц = 24 ГГц
- 2 x Intel Xeon E5-2630 6 ядер 2.30 ГГц = 27.6 ГГц
Вскоре после запуска теста процессор Atom неожиданно перестал отвечать на запросы к API, даже не достигнув текущего уровня сложности. Поэтому мы решили исключить его из дальнейшего тестирования (уровень сложности на этот момент составил 37392766.1364745; чтобы его достигнуть, процессору потребовалось чуть более суток).
Остальные процессоры достигли необходимого уровня сложности, который на момент тестирования составил 609482679.88835. После того, как был достигнут текущий уровень сложности, мы в течение часа собирали данные о скорости вычисления в хэшах в секунду (hashespersec); их средние значения указаны в приведенном ниже графике:
Выводы
За неделю тестирования ни на одной из конфигураций не удалось сгенерировать ни одного блока биткоина. Использовать даже самый мощный сервер для майнинга только на процессоре совершенно бесполезно. Еще совсем недавно можно было генерировать биткоины при помощи нескольких мощных видеокарт. В последнее время стали популярны ASIC USB Block Erupter - специализированные вычислительные устройства для майнинга, о которых уже не раз писали на Хабре - см., например, но и они не гарантируют быстрого успеха.На данный момент в связи с возрастанием сложности практически нереально получить блок, не обладая гигантскими вычислительными мощностями. Конечно, можно подключиться к пулу - но ждать все равно придется долго. Можно еще генерировать альтернативные криптовалюты (Litecoin, Namecoin, PPCoin и т.п.), а затем уже конвертировать в биткоины - но здесь тоже нет никаких гарантий успеха.
Зарабатывать деньги с помощью выделенных серверов можно другими, более традиционными способами - конечно, они сопряжены с огромным количеством проблем, но при этом куда более прибыльны и надежны.
Для тех кто не может комментировать посты на Хабре, приглашаем к нам в
Как насчет того, чтобы, не напрягаясь, начать майнить криптовалюту на 25 (50, 75, 100,…, 25n) Мегахешах в секунду? Как насчет того, чтобы добавить 25 Мегахешей на майнинг бесплатно к Вашей вычислительной мощности прямо сейчас?
Есть отличный сервис Windows Azure от Microsoft, где нам дают возможность пользоваться удаленной виртуальной машиной с 20 ядрами для различных серверных решений, вычислений, etc. Но для нас, любителей бесплатного, конечно, важен бесплатный триал на 3 месяца. Естественно, есть определенные ограничения для бесплатной версии, но нас они особо не затронут.
Что нам нужно сделать (и что я пошагово опишу в этой статье) это:
- Создать 3 виртуальные машины (8 + 8 + 4 ядер)
- Подключиться к виртуальным машинам при помощи виртуального рабочего стола
- Зарегистрироваться на публичном пуле (в статье я буду использовать Slush’s Pool в качестве примера)
- Установить и настроить нужный для майнинга софт
- Запустить этот софт
- Ждать
- Получать биткоины
Вступление
Пара уточнений:
- На Azure нет GPU, так что майнить будем исключительно при помощи CPU (поэтому мощность такая низкая, хотя и используем 20 ядер)
- Я не уверен в том, получится ли майнить на протяжении 3х месяцев: возможно есть ограничения по вычислительной мощности
1. Начало
Заходим на Windows Azure , жмем на «Бесплатное пробное использование», регистрируем триал-версию. Понадобятся данные кредитной карты для идентификации личности. Обещают денег не снимать без разрешения. За идентификацию снимают 1$.
Так же нужна учетка Microsoft. Если ее нет, придется регистрироваться и тут.
Жмем на «Создать» внизу экрана.
Заполняем данные:
- DNS-имя: нужно будет для подключения к удаленному рабочему столу
- Образ: я выбираю обычно Windows Server 2012, но, возможно, машины на Linux будут быстрее
- Размер: для первых двух машин выберите по 8 ядер, для третьей - 4 ядра (так как ограничение до 20 ядер на бесплатную учетку)
- Пароль: нужен будет для подключения к удаленному рабочему столу. Я не нашел где после создания виртуальной машины можно будет его еще раз подглядеть, будьте осторожны!
- Расположение: на Ваш вкус
Потребуется примерно 10 минут для того, чтобы полностью запустить виртуальную машину. Наберитесь терпения.
2. Подключаемся к удаленным рабочим столам
Устанавливаем Remote Desktop Control от Microsoft. Есть версии для Windows, Mac. Про версию для Linux ничего не знаю, но ведь если у Вас установлен Linux, то Вы сможете сами найти способ подключиться к RDC, так? ;)
Выбираем желаемую виртуальную машину в списке и жмем на «Подключиться». Скачается файл формата *.rdp - с его помощью мы будем подключаться к удаленному рабочему столу.
Открываем скаченный файл для одной виртуальной машины. У меня их уже три, так как я скачал файлы для всех трех виртуальных машин.
В поле «Password» вводим пароль, который использовали при создании виртуальной машины. Поле «Domain» можно оставить пустым. Можно сохранить пароль.
Нужно будет немножко подождать, пока запустится служба RDC. Если у Вас черный экран - просто нужно немного подождать. Возможно, RDC ругнется на безопасность соединения. Можно проигнорировать.
А вот и запустился наш сервер на Windows Azure!
IE работает с тучей ограничений, Chrome у меня не вышло установить, так что сразу поставил огнелиса. В панели управления сразу советую отрубить фаервол и контроль над учетной записью (чтобы постоянно не выпрыгивали окошки «подвердить»).
3. Регистрируемся в публичном пуле
Заходим на mining.bitcoin.cz и регистрируемся. Заходим в «My account» и создаем два дополнительных воркера для двух дополнительных виртуальных машин (помните, у нас ведь 8 + 8 + 4?).
4. Ставим софт!
Качаем RPCMiner отсюда (официальный тред). Создаем новую папку «New Folder». Все содержимое (не саму папку) скачаного архива нужно переместить в «New Folder» так, чтобы «rpcminer-cpu.exe» был в папке «New Folder».
Открываем блокнот и прописываем в нем:
start /b /d "C:\Users\Administrator\Desktop\New folder" rpcminer-cpu.exe -url=http://api.bitcoin.cz:8332 -user=%username% -password=%pass%
Где %username% - это юзернейм одного из Ваших воркеров на публичном пуле, а %password% - это соответствующий этому воркеру пароль. Можно добавить свои аргументы для RPSMiner’a, я не стал сильно заморачиваться. Все 8 ядер процессора используются по умолчанию.
Сохраняем текстовый документ как «miner.bat» на рабочем столе. Должно получиться как на скриншоте ниже.
Установить софт нужно на все используемые виртуальные машины.
5. Начнем процесс!
Запускаем «miner.bat». Должно появиться окно консоли. Спустя некоторое время, если Вы все сделали правильно, Вы увидите нечто подобное скриншоту ниже. Кстати, один из моих воркеров как раз нашел хеш.
На сайте нашего публичного пула в разделе«My account» располагается некоторая статистика, а также можно указать порог, достигнув который, средства будут переводиться на Ваш биткоин кошелек.
Мои клиенты постоянно получают следующую ошибку устаревшего протокола. Я пытался с ней бороться (это не сложно - нужно просто установить и запустить проксюшник на виртуальной машине в пару кликов). Но у меня этот прокси просто не заработал. Я его запускал, подбор хеша шел через него, но на пуле статистика была нулевой. Поэтому я решил что лучше чуть меньше, но хотя бы что-то.
6. Заключение
Хочу поблагодарить Microsoft за такой великолепный сервис, как Azure и за возможность бесплатного использования.
Еще раз напомню, что используем мы CPU, который в сравнение не идет с мощностями майнинга на GPU. Но за неимением большего, как говорится. Можно майнить Litecoin, так как CPU выгоднее использовать как раз для этой криптовалюты. ниже небольшая инструкция по замене Bitcoin майнера на Litecoin майнер на Azure серверах.
1.Регистрируемся на публичном пуле
Заходим на пул Suprnova , жмем кнопочку «Register» наверху. Внимание, запишите или запомните PIN! Он Вам понадобится.После регистрации логинимся слева («Dashboard») и переходим в My Workers. Как и в случае с Bitcoin, нам нужно добавить еще 2 воркера.
Старая шутка говорит о том, что самые лучшие стартовые возможности для добычи цифровых монет - у системных администраторов различных фирм и учреждений. И действительно, под рукой различное оборудование, в том числе серверное с приличными мощностями. Попробуем разобраться, насколько выгоден майнинг на сервере Xeon для криптовалюты.
Что представляет собой майнинг-сервер
Несмотря на то, что в целом майнинг криптовалюты с использованием мощностей процессора становится историей, существует еще несколько решений технического и программного характера, которые позволяют использовать серверное оборудование для добычи крипты:
- Можно собрать производительный персональный компьютер, в основе которого будет мощный серверный процессор Intel Xeon. Для этого пользователю придется потрудиться, поскольку к этому "железу" нужно будет приложить руки: найти и установить подходящее программное обеспечение, настроить оборудование, скачать нужные приложения и обеспечить постоянную профилактику и ремонт.
- Использовать для добычи крипты выделенный сервер (программный или физический), который можно арендовать у фирмы-владельца. "Шахтеру" достаточно только установить майнинговое программное обеспечение и работать.
- Облачный майнинг. Здесь дата центры из большого количества производительных видеокарт и ASIC-устройств собираются крупными компаниями, которые полностью занимаются обеспечением работы оборудования. Пользователи арендуют мощности по установленному тарифу и получают профит пропорционально цене добываемой криптовалюты и оплаченному hashrate.
Виртуальный майнинг приносит относительно небольшую, но стабильную прибыль. Покупать же новый сервер для майнинга, особого смысла нет, поскольку не так много криптовалют можно "копать" на процессоре. Самые жирные куски можно получить на видеоадаптерах и Асиках. Другое дело, когда есть возможность недорого приобрести серверное оборудование, бывшее в употреблении. Так, большинство компаний регулярно обновляет парк своей вычислительной техники, распродавая старое "железо", главное, оказаться в нужном месте в нужное время.
Как собрать майнинг сервер на Xeon
Если говорить о б/у оборудовании, то самое современное, что сейчас можно обнаружить на вторичном рынке - это первое поколение двойных процессоров Xeon (Intel 2011 E5). На них организовывались рабочие станции и сервера во многих компаниях. Более слабые образцы будут стоить дешевле, но и производительность их пониже. Помочь в определении технических характеристик оборудования поможет таблица производительности процессоров, она в различных видах доступна в интернете.
Однако если мы собираем сервера для майнинга криптовалют, мы должны понимать, насколько это будет рентабельно, окупятся ли вложения и когда, и можно ли будет получить прибыль. Попробуем разобраться на примере.
Мы приобрели на вторичном рынке двухпроцессорный сервер Intel Xeon E-2650 v1. К его сильным сторонам можно отнести наличие 32 логических (16 физических) ядер и применение технологии Hyper Threading. Недостатками специалисты считают недостаточную мощность графического адаптера. Но поскольку цена была невысока, можно попробовать "покопать" крипту с помощью этого "железа". Новый сервер стоит около 1100 долларов, а в б/у варианте - в несколько раз дешевле.
Технические характеристики сервера:
- базовая тактовая частота - 2 GHz;
- тактовая частота в режиме "Турбо" - 2,8 GHz;
- память cache - 20 Mb;
- частота шины системной - 8 GT/s;
- энергопотребление - 95 W;
- память (тип) - DDR3;
- память (объем максимальный) - 384 Gb;
- память (пропускная способность максимальная) - 51,2 Gb/s.
Учитывая, что наш сервер двухпроцессорный, большинство показателей нужно множить на два.
Насколько выгодно добывать крипту на сервере
Теперь определяемся с монетой, которую будем добывать. На большинстве алгоритмов процессоры не способны показать хороший результат, поэтому остановим свое внимание на довольно нетребовательном к оборудованию алгоритме CryptoNight, самой известной и дорогой криптовалютой которого является Monero (XMR). У Монеро сейчас неплохой курс (126 долларов за монету), поэтому есть шанс выйти в плюс. Также можно рассмотреть вариант с Bytecoin(BCN), эта монета тоже входит в Топ-50, хотя стоимость ее 0,0027 доллара за единицу.
Еще недавно можно было бы попробовать "покопать" Zcash на алгоритме Equihash, но сейчас там начали работать ASIC-устройства, поэтому шансы что-то заработать существенно уменьшились.
Для теста использовалось майниговое программное обеспечение XMR-Stak. Запуск через эту утилиту все 32 логических ядер дал нам общий хешрейт 523 H/s при потреблении электричества 150 W. Оба эти показателя примерно равны производительности и энергопотреблению видеокарты первого ряда.
Далее полученные показатели были введены в популярный калькулятор майнинга CryptoCompare. Стоимость электрики при этом выставлена на уровне 0,1 доллара за кВт/ч. Расчет сервиса показал, что "шахтеру" удастся выйти в плюс, но профит в размере меньше 40 долларов в год не позволит окупить затраты на покупку оборудования в течение нескольких ближайших лет.
Несколько меняется картина, если пользователю каким-то образом удастся подключиться к бесплатной розетке. Тогда можно рассчитывать на чистую годовую прибыль в размере около 170 долларов и окупаемость "железа" за 3-4 года, если другие переменные (курс, сложность сети) будут относительно стабильны.
Но все-таки приобретение серверов Intel Xeon специально для майнинга криптовалют не оправдывает себя. Другое дело, если мощности процессора нужны для выполнения еще какой-то работы. При таком раскладе свободные ядра можно было бы направить на добычу крипты и получить небольшую дополнительную прибыль. Кроме того, стоит покопаться на форумах и поискать новые и еще нераскрученные монеты с перспективами роста курса, которые можно "копать" с помощью CPU.
Работать лучше всего на пуле Minergate, где невысокие требования к оборудованию. Можно использовать как OS Windows (установка майнинг клиента с помощью подсказок системы), так и Linux (настройка производится в командной строке). Можно поискать и другие сообщества с невысокой комиссией.