Стоит ли играть в эту игру?

Я просто хотел сказать, что:

  • Возможно
  • AWS не банит вас за майнинг на своих серверах
  • Это выгодно только в определенное время

Это, безусловно, возможно, и я справился с этим с помощью нестабильного выбора времени и небольшой настройки. Я совсем не ожидал, что это будет прибыльно. Я только экспериментировал, чтобы узнать больше о майнинге и попробовать что-то новое. Майкл Людвиг опубликовал отличную статью, в которой описана установка для запуска ethminer на спотовых инстансах AWS GPU (временные дешевые серверы), и я хотел просто попробовать и узнать несколько вещей.

Мне довелось запустить его 8 мая 2021 года, что (как я позже узнал) стало началом нескольких лучших дней для прибыльности майнинга Ethereum в истории. Я запустил шаблон CloudFormation (который создал Майкл Людвиг) в регионе AWS Огайо, используя рекомендованный тип экземпляра g4dn.xlarge.

Примерные шаги для этого:

  • Создать учетную запись AWS
  • Создайте кошелек Ethereum
  • Загрузите шаблон CloudFormation
  • Введите публичный адрес вашего кошелька Ethereum (чтобы получить весь этот эфир)

Кстати, создать кошелек Ethereum намного проще, чем на многих веб-сайтах. Вам не нужно регистрироваться в CryptoWalletExchangeBase, загружать свою личность и махать роботом с веб-камеры. «Кошелек» можно свести к общедоступному адресу и закрытому ключу, например:

публичный адрес:
0x6672b0A9e258b6323450156fd5582ea112fb39C2
Вы можете передать это кому угодно. На этот адрес можно отправить эфир.

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

… И вы можете создать их самостоятельно. Например:

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

При первой попытке майнинга система некоторое время работала, а спотовые инстансы AWS EC2 (дешевые серверы) работали в общей сложности 134,658 часов, и я накопил 0,00485 эфира, что (в то время) стоило около 19 долларов.

Вы можете узнать, сколько вы заработали, посмотрев адрес своего публичного кошелька на Ethermine: https://ethermine.org/miners/your_public_address/dashboard

Вот снимок моего счета за AWS на тот момент:

Так что прибыли пока нет, но не так далеко, как я ожидал.

Я был обеспокоен тем, что AutoScalingGroup, которая используется в шаблоне CloudFormation, может потребовать дополнительных затрат, но это бесплатно; вам нужно только заплатить за ресурсы AWS, необходимые для запуска приложения. Но что я действительно заметил, так это то, что несколько экземпляров либо вышли из строя, либо зависли на скорости 0 MH / s или всего 10–20 MH / s, вместо того, чтобы работать с оптимальными 25,43 MH / s, которые удалось другим.

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

Я проверил калькулятор прибыли. Если эти спотовые инстансы AWS EC2 работают со скоростью 0,1578 в час, и я достиг 25,43 MH / s, которые были достигнуты большинством из них, то все индикаторы были зелеными.

Точное выяснение того, почему некоторые экземпляры терпели неудачу, а некоторые не укладывались в рамки этой «болтовни с Ethereum», поэтому я кое-что взломал. Я решил написать код для SSH в спотовых инстансах EC2, чтобы проверить наличие ошибок или низкую скорость хеширования. Я создал KeyPair в AWS, загрузил его и добавил параметр в шаблон CloudFormation, чтобы я мог указать имя этой KeyPair и убедиться, что он используется шаблоном запуска спотового экземпляра.

Parameters:
...
KeyPairName:
Description: Name of EC2 key pair assigned to instances.
Type: String
...
LaunchTemplate:
Type: AWS::EC2::LaunchTemplate
Properties:
...
KeyName: !Ref KeyPairName

Это означало, что теперь я мог подключиться по SSH прямо к любому из спотовых экземпляров, чтобы посмотреть, как они работают. Я написал простой скрипт Node.js для доступа ко всем моим запущенным экземплярам и проверки скорости ЦП и скорости хеширования.

Выполнить команду в удаленной системе и получить результат с помощью NodeJS можно следующим образом:

Итак, чтобы узнать об использовании ЦП…

Или хешрейт (как указано в файле ethminer.log)…

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

Используя AWS SDK, мы можем получить список всех запущенных спотовых экземпляров…

… И когда один из этих экземпляров больше не режет его, мы можем его закрыть:

Поэтому, используя эти части, я написал код, который мог запускаться каждые 20 секунд, чтобы захватить ЦП / хешрейт для всех спотовых экземпляров и завершить их, если у них был низкий хешрейт или низкий уровень использования ЦП для 3 проверок подряд. Затем AutoScalingGroup автоматически создаст новые точечные экземпляры, чтобы заменить наши мертвые. Вещи улучшились.

К настоящему времени я запускал спотовые инстансы чуть более 24 часов во время моего второго раунда генерации Ethereum.

Мой текущий невыплаченный баланс: 0,01012 эфира, что означает, что 0,00535 эфира было заработано за последние 24 часа.

Cost for spot instances = 24 hours * $0.1578 * 5 instances = $18.94

Объемы EBS gp2 составляют 0,10 ГБ в месяц, а у нас 100 ГБ на инстанс. Это 0,000137 за ГБ в час.
Стоимость томов EBS = 100 * 0.000137 * 24 * 5 = $1.64

Total cost = $20.58
Value of Ether mined = $22.10

Ну вот хорошо.

До сих пор я не принимал во внимание налоги. В Великобритании мы платим налог (НДС) в размере 20% на сервисы AWS (если мы не являемся компанией, продающей наши собственные услуги и можем вычесть ее), поэтому мои фактические расходы составили 24,70 доллара США. Не так хорошо, как хотелось бы.

Но на следующий день (12 мая 2021 г.) после еще 24 часов работы 5 инстансов я заработал 0,0079 эфира, стоимость которого составила 33,96 долл. США, что для меня было потрачено на < strong> 24,70 доллара США (включая НДС). Хорошо, это лучше, но почему такая огромная разница?

На данный момент я не особо в этом сомневался. Я обратился в AWS с просьбой увеличить квоту / лимиты для спотовых инстансов в регионах с дешевизной (Огайо, Северная Вирджиния и Орегон) и проверил, есть ли что-нибудь еще, что я могу настроить.

Я мог видеть, что мы платили за 100 ГБ хранилища GP2 для каждого из этих спотовых экземпляров. Все они использовали «Deep Learning AMI (Ubuntu 18.04) версии 36.0», который поставляется со всеми необходимыми предварительно настроенными драйверами NVIDIA. Для начала, если я удалю платформу Anaconda Python (~/anaconda3) из образа, то необходимый размер диска уменьшится до ~ 36 ГБ, чтобы мы могли уйти с диском на 40 ГБ (экономия 60% от стоимости хранилища EBS). Кроме того, новое хранилище gp3 (0,08 доллара США за ГБ) дешевле, чем хранилище gp2 (0,10 доллара США за ГБ). Вы должны доплачивать за GP3 в зависимости от того, сколько вы его используете, но в целом это было дешевле для наших целей.

14 мая, когда я достиг 0,1 эфира (минимума на тот момент для получения выплаты от Ethermine - пула для майнинга Ethereum, который мы использовали), у меня было 40–60 спотовых инстансов. , в зависимости от их наличия. Я потратил чуть меньше 320,70 доллара (включая налоги) за последние несколько дней, чтобы получить 0,1 эфира (387,73 доллара).

Именно в этот момент я узнал о прибыльности майнинга:

Вещи становились менее захватывающими:

В основном все менялось. Мало того, что Илон Маск ответил на твит словом« действительно », чтобы снова снизить цену Ethereum, но и отношение доллара к хешрейту снова начало нормализоваться. На пике добычи я добывал при затратах ~ 183 доллара в течение 24 часов со скоростью 1 ГХ / с, а прибыльность составляла 282 доллара в день. С мая прибыльность достигла только $ 111 за гигагерц в секунду в день (по состоянию на 23 октября 2021 года), что делает все это убыточным. Я вытащил вилку в нужный момент.

Прибыльность должна быть выше, чем 183 доллара за гигахерский ч / с / день. Прибыльность зависит от количества транзакций, размещаемых в сети в любой момент времени, и от количества майнеров, которые занимаются майнингом и, таким образом, запускают сеть. Пик в мае был вызван водоворотом Илона, DeFi и NFT, в результате чего майнерам пришлось много работать. Мы можем рассчитать прибыльность, посмотрев на время, необходимое для майнинга каждого блока, и текущий хешрейт для всех майнеров в сети, а также текущее вознаграждение за блок. Затем мы можем подключить к нему наш собственный хешрейт и посмотреть, на какой размер доли мы имеем право ...

Мы можем получить эти значения из https://www.etherchain.org/index/data, а также текущую цену за эфир в долларах США.

Исходя из этого, мы можем рассчитать долларовую стоимость майнинга на уровне 1 GH / s / день ...

Сегодня (23 октября 2021 г.) userDollarPerDay = 73,44 доллара. Намного меньше, чем наши 183 доллара.

Несмотря на то, что мои 0,1 эфира стоили больше, чем я заплатил за него в то время, цена эфира также явно очень нестабильна в обозримом будущем. Таким образом, даже если вы добываете его, пока это «прибыльно», вы делаете ставку на то, что накопленный вами эфир останется ценным, или, по крайней мере, до тех пор, пока вы его не продадите. Мне удалось продать свой эфир по подходящей цене, но вскоре после этого он стал бы стоить намного меньше, чем я заплатил за него. Все это время сжигая энергию часами, поддерживая эту большую математическую игру в небе, просто чтобы окупиться или бросить деньги Безосу. Это действительно не та игра, в которую стоит играть.

YMMV.