Ноды и мастер-ноды, криптовалюта и блокчейн
Первая криптовалюта появилась на свет в 2009 году. Технология Биткоин проста для понимания даже тем, кто далек от мира криптовалют. Эта цифровая валюта имеет адрес и ключ шифрования. Вы можете совершать транзакции в сети Биткоин, которые будут записываться в блоки. Их цепочка называется блокчейн. А тот компьютер, который хранит блокчейн называется нода. В этой статье мы расскажем, что такое ноды, зачем они нужны и какие бывают.
Понятие «нода» в мире криптовалют
Те, кто пользовался торрентом знают, что пиринговая система позволяет нескольким компьютерам, объединенным в сеть раздавать большие файлы небольшими кусочками. Нода, это такой компьютер в мире криптовалют, который хранит часть блокчейна и «раздает» его другим пользователям сети. Чем больше сеть имеет нод, тем она лучше. Тут все дело в главном преимуществе криптовалют – децентрализованности.
Слово «Node» в переводе с английского означает «узел». Блокчейн, это «постоянно обновляемый файл», на «работе» которого строится вся сеть Биткоин. Поэтому важность нод не подлежит сомнению. В отличие от торрент-клиента, проверка корректности нод более сложна.
К сожалению, технология нод не безгрешна. Для работы Биткоина необходимо, чтобы блокчейн всегда был в открытом виде. Все транзакции можно посмотреть в любое удобное время. Сеть не анонимна, а обезличена. Каждый клиент «закрывается» за своим адресом. Но если он решит приобрести авиабилет за BTC, то его паспортные данные можно будет увязать с биткоин-адресом. И затем проследить всю финансовую историю.
Мастерноды: Эволюция продолжается
Проблему анонимности решил создатель криптовалюты Darkcoin, позже переименованной в Dash, Эван Даффилд. Он включил в сеть миксирующий сервис, позволяющий скрывать адреса получателя. Этот сервис дробит средства на несколько частей и переводит их на конечный адрес по сложному марсшруту.
Так появилось понятие мастернода.
Она отвечает нескольким дополнительным требованиям:
- Всегда находится в онлайн. Мастерноду разворачивают на серверах. Устанавливать ее на домашних компьютерах не целесообразно.
- Имеет на счету 1000 монет Dash. Они находятся в замороженном виде. Это делается для того, чтобы ограничить число созданных мастернод. Не каждый захочет «морозить» 1000 монет.
Мастерноды Dash позволяют реализовать несколько технологий:
- DarkSend. Перемешивание адресов для создания действительно анонимных платежей.
- InstantX. Мгновенные платежи. Сегодня транзакции в сети Биткоина достигают 50 минут. Мастерноды Dash могут существенно сократить время ожидания транзакции.
- DGB (Decentralized Governance by Blockchain). Мастерноды могут голосовать за приложения для сети Dash, стоимость которого не превышает 5 монет.
Мастерноды приносят своим владельцам прибыль. Сеть Dash выплачивает 45% эмиссии при добыче блоков. И чем больше мастернод, тем меньше средств получают их владельцы. Но вознаграждение приносит не более 80 монет в год. Стоит ли ради них морозить 1000?
Мастерноды в других криптовалютах
Идея мастернод помогла решить некоторые проблемы сети Биткоин. Поэтому за нее «взялись» создатели альткоинов. Особенно популярны мастероноды у форков первой цифровой валюты. Но как показывает практика, энтузиазм быстро уходит. Первые поднятые на серверах мастерноды еще приносят прибыль своим владельцам, но позднее она снижается. Также есть риск потерять средства при падении курса монеты. Необходимость вкладывания средств для разворачивания мастерноды никто не отменял.
На сегодняшний день наиболее перспективными монетами, поддерживающими технологию мастернод являются:
- ZenCash (ZEN). Криптовалюта, которая родилась в сети Zcash classic. Разработчики планируют построить на мастернодах децентрализованную сеть типа TOR и защищенный мессенджер. Чтобы поднять мастерноду необходимо иметь 42 токена этой криптовалюты.
- Exclusive Coin (EXCL). Монета. Которая обладает стойкостью к форкам и более безопасна, чем традиционные PoW-монеты. За блок владельцы мастерноды получают половину монеты. Для поднятия мастернолы требуется 5000 токенов.
- Сибирский червонец (SIB). Криптовалюта от российских разработчиков, обладающая уникальным алгоритмом хеширования. Мастерноды в сети SIB являются аналогами Dashевским.
- Stratis (Strat). Перспективная платформа для создания приложений. Чтобы развернуть мастерноду в сети Стратис требуется 250 тысяч монет.
- Bitradio (BRO). Интересная монета, которую можно заработать прослушивая онлайн-радио. Создать мастерноду можно вложив 2500 BRO.
Криптовалюты, использующие технологию мастернод, появляются еженедельно. Некоторые из них заявляют о себе, другие пропадают, так и не став известными. Мастерноды легко добавляются с алгоритм различных криптовалют и способны решить множество проблем. Но они не являются панацеей от всех бед блокчейна. Они имеют как преимущества, так и недостатки. Если вы рассматриваете поднятие своего сервера для заработка на мастерноде, то это не самый лучший вариант инвестирования монет. Конечно, можно найти такой альткоин, прибыльность мастернод которого позволит вам быстро отбить вложенные средства. Но, это значит, что очень скоро об этой криптовалюте узнают и другие «инвесторы» и развернут свои сервера для установки мастернод. По сути, это тот же майнинг, но сумма вознаграждения, при котором, падает заметно быстрее.
#5 Что такое ноды, мастерноды и как на этом заработать
Что такое Ноды и Мастер Ноды?
Когда вы устанавливаете себе на компьютер кошелек, сначала он синхронизируется со всей сетью блокчейн (вся информация с большого количества блоков начинает подгружаться к вам на кошелек). Пока синхронизация не дошла до конца, все предыдущие блоки не погрузились, ваш кошелек считается обычной нодой.
Ноды – кошелек который не полностью синхронизирован (более 100 Гб) с блокчейн сетью.
Полные Ноды (они же полные узлы сети) – полностью синхронизированные с блокчейн кошельки, которые подключены к сети 24/7. Их функция хранить всю информацию об сети и проверять соответствуют ли правилам сети новые транзакции, подтверждая или отвергая их при попытке включить транзакцию в новый блок майнерами. Полный ноды работают бесплатно на энтузиазме владельцев кошельков!
Майнеры – компьютерные платы создающие новые блоки в сети ради добычи биткоинов и включающие в них подтвержденные нодами новые транзакции.
Мастерноды – полностью синхронизированные с блокчейн кошельки которые подключены к сети 24/7. Их функция обслуживать сеть – начиная от проведения транзакций и заканчивая дополнительными услугами, такими как предоставление полной анонимности транзакций (транзакции НЕ записываются в блокчейне, к примеру, в Dash) и т.д. в зависимости от технологии отдельных мастернод. Поскольку мастерноды по сути частично выполняют работу майнеров по обработке транзакций они забирают часть найденных монет в новом блоке себе, деля таким образом с майнерами прибыль.
Как правило, чтобы стать мастернодой нужно:
1) Полностью быть синхронизированным с сетью блокчейн.
2) Ваш кошелек соответствовал определенным параметрам. Например, включен 24/7, был мощный компьютер и другие технические моменты.
3) Иметь на кошельке определенное количество монет.
Примеры криптовалют с технологией мастер-нод: Exclusive (EXCL), Dash (DASH), 8BIT (8BIT), ChainCoin (CHC), Syndicat (SYNX), FrcticCoin (ARC), Sling (SLING) и другие.
Стоит ли замораживать свой капитал вкладываясь в мастерноду?
Не всегда, соотношения риска от суммы депозита в мастерноде и ежемесячной прибыли, как правило, очень велики, однако перспективы роста монет с такой технологией привлекательны!
Можно ли купить долю в мастерноде?
Cуществует большое количество криптовалют с дорогими мастернодами, которые часто не потянуть одному. Например, полная нода DASH стоит почти $200 000. К счастью, есть сервисы покупки долей в мастернодах в пару кликов, например 2Masternodes. На этом сайте можно купить долю или полную мастерноду таких криптовалют как: VIVO, $PAC, ZCoin, GoByte, SmartCash, PIVX, DeviantCoin, BitcoinGreen, ANON (список постоянно пополняется). Кстати, на 2Masternodes можно купить не только долю в мастерноде, но и полную мастерноду. Главное преимущество сервиса — вам не нужно тратить свое время на обслуживание мастерноды, сервис все делает сам автоматически.
Мастерноды, суперноды и ноды в криптовалюте
Ноды в криптовалюте – это фундамент функционирования системы расчетов, основанной на технологии блокчейн с децентрализованным хранением информации о проводимых транзакциях. В отличие от центральных хранилищ данных на отдельных серверах, здесь используются компьютеры пользователей, подключенные к сети и участвующие в поддержании работы децентрализованной системы. На них хранится информация, необходимая системе для подтверждения подлинности отдельных блоков в цепочке. Более подробно о технологии блокчейн можно узнать в данной статье.
Существуют различные типы нод (узлов сети) в зависимости от роли, которую они играют в обслуживании протокола проведения расчетов. Пользователи, которые предоставляют свои компьютеры для работы нод с особыми настройками, получают вознаграждение за обслуживание сети.
Разобраться подробнее с нодами и особенностями их работы вам поможет материал, приведенный ниже.
ПОЛНАЯ И ОБЛЕГЧЕННАЯ НОДЫ В КРИПТОВАЛЮТЕ
Под термином «нода» подразумевается любой компьютер пользователя, подключенный к системе блокчейн. Своим происхождением это слово обязано латинскому nodus, что означает узел. Все ноды, то есть узлы цепочки, связаны друг с другом напрямую, минуя серверы, по протоколам P2P. В таких узлах на компьютерах пользователей хранится информация обо всех транзакциях.
В зависимости от полноты хранения информации существует два типа нод:
- полная. Это ПК пользователя, который 24 часа в сутки имеет связь с сетью и содержит на своих дисках все данные цепочки. Обслуживание blochchain, загрузка и проверка подлинности блоков осуществляется только такими узлами. Они независимы и функционируют в рамках действующего алгоритма консенсуса. Все транзакции или блоки, не соответствующие принятым правилам, игнорируются. От того, сколько нод поддерживает работу
- облегченная. Это компьютер пользователя, который периодически подключается к сети. На нем устанавливается особое программное обеспечение, которое дает возможность хранить только заголовки блоков, участвующие в проверке подлинности транзакций в цепочке. Облегченные узлы подчиняются полным, потому существует теоретическая возможность вмешательства в работу системы и получения подтверждения для платежей или иных операций, противоречащих принятому алгоритму консенсуса.
Чтобы запустить полную ноду для сети Биткоин, можно использовать компьютер или виртутальный сервер с установленным клиентом Bitcoin Core. Он доступен для свободной загрузки в интернете. Карта полных нод с указаниями мест их фактического расположения имеется на сайте Bitnodes.
МАСТЕРНОДА И СУПЕРНОДА
В отличие от стандартного узла, мастернода – это компьютер с дополнительных программным обеспечением, который обеспечивает полную защищенность совершаемых операций от разглашения информации. Ярким представителем блокчейна с применением такой технологии является
Супернода является аналогом мастерноды в сети NEM.
Поддержание работы мастерноды представляет собой альтернативу майнингу. Владельцы компьютеров, которые предоставляют свои вычислительные мощности для валидации и генерации блоков блокчейна участвуют в распределении прибыли. Уровень дохода обратно пропорционален ликвидности валюты на рынке. Чем больше участников принимает участие в поддержании работы системы, тем меньше денег получает владелец каждой
ХАРВЕСТИНГ НА БЛОКЧЕЙН
Под этим термином подразумевается еще один метод получения платы за поддержание работы криптовалютных блокчейнов, который работает в сети NEM. Он базируется на специальной технологии POI, благодаря которой два и более аккаунта могут применять для харвестинга одного клиента.
Существует два вида харвестинга:
- локальный – с помощью компьютера пользователя;
- делегированный – с помощью аккаунта посредника.
Получить бесплатный VPSЗачем нужен VPS?
Blender. Введение в ноды (Часть 1) / Habr
Обойтись без нодов в блендере, для достижения интересных эффектов, очень тяжело. С помощью нод можно сделать очень многое. В этой статье я покажу очень простой и красивый эффект подмены градиента с помощью ноды ColorRamp.
Трафик (1.5 Мб)
1. Открываем блендер
2. Кубику на сцене добавляем модификатор Subdivine
3. Выставляем соответствующие значения
4. Добавляем Shade Smooth для того, чтобы поверхность стала гладкой
5. Заходим в настройки материалов объекта
6. Открываем окно нод
7. Ставим галочку «Use nodes» для того, чтобы включить ноды. Создаем материал.
8. Теперь создаем новый нод и коннектим его к Normal’у материала, для того чтобы преобразовать его в Dot, который будет использоваться для изменения цвета с помощью нода ColorRamp, так как переход одного цвета в другой устанавливается через нормали самого объекта.
9. Создаем нод ColorRamp, Mix, коннектим их так, как показано на картинке
10. Выставляем значения нод
11. Теперь изменим сцену. После нажатия пробела появляется меню, в него вводим «add lamp», из подпункта выбираем Hemi. Выставляем настройки
12. Для рендеринга нажимаем F12
13. Теперь с помощью нод изменим отрендеренный слой, а именно добавим glow еffect используя blur
14. Добавляем blur, потом два варианта рендера(с блюром и без) смешиваются с помощью нода «Mix», далее изменяются уровни цветов с помощью «RGB Curves»
15. Результат
Полные ноды в сети биткоин: сокращение, поощрение и перспективы
Как известно, биткоин основан на блокчейне, распределенном между множества узлов (далее — нод), которые составляют единую децентрализованную сеть.
В отличие от традиционной банковской системы, в этой сети нет центрального узла, в котором хранится общий реестр. Биткоин-кошельки и майнеры, обеспечивающие безопасность сети, представляют собой большую часть нод. Но некоторые ноды более важны, чем другие. В сообществе существуют опасения, касающиеся количества полных нод, в каждом из которых хранится 35-гигабайтная копия всего блокчейна.
По определению, полная нода — это подключенный к сети биткоин-клиент, Bitcoin QT либо любая другая его реализация. Такая нода включает в себя полный, обновленный набор файлов блокчейна, а также открытый порт 8333, настроенный на прием входящих запросов. Это обязательный список требований, предъявляемый к полным нодам.
Причина снижения численности полных нод хорошо известна. Пользователей демотивирует необходимость хранить 35 гигабайт информации, необходимые для запуска клиента. Опасения по поводу того, что снижение количества полных нод само по себе приведет к незащищенности сети биткоин против атак, становится темой дебатов в Reddit и на форуме Bitcointalk.
Вследствие распространенной ошибки владельцев нод, многие из них скорее препятствуют работе сети, чем помогают ей. Такой ошибкой является закрытие порта 8333 для входящих запросов. Это в большинстве случаев происходит потому, что владельцы не знают о том, что их фаервол блокирует этот порт.
Когда порт блокирован, нода может одновременно поддерживать до 8 соединений с другими нодами. Если исправить эту ошибку во всей сети, это могло бы удвоить или даже утроить количество полных нод. Вследствие того, что изменение в программном обеспечении и осведомленности пользователей может привести к такой значительной разнице, некоторые разработчики считают, что мы уже достигли избытка нод.
Один из разработчиков ядра биткоина Гэвин Андерсен пошел даже дальше в критике этой ситуации прошлым летом на Reddit.
“Обычные люди не должны запускать полные ноды. Нам нужны полные ноды, которые всегда подключены к сети, имеют более 8 соединений (а если у вас только 8, то вы и есть часть проблемы, а не решения) и высокоскоростное подключение к интернету” — высказался Андерсен.
В ходе недавнего исследования количества биткоин-майнеров установлено, что их количество превышает 100 000. Bitnodes, сайт для отслеживания количества полных нод в реальном времени, показывает, что от 5 до 6 тысяч полных нод находится онлайн в каждый момент времени.
Предполагая рост сети биткоин и количества транзакций, инженер BitGo Джеймсон Лопп создал проект Statoshi, чтобы понять, является ли это число достаточным.
Его первоначальные опасения были связаны с тем, что мы наблюдаем слишком много легких кошельков, которые не содержат полной копии блокчейна и не имеют открытого порта для входящих запросов. Проведя детальный анализ данных и графиков, Лопп пришел к выводу, что “нынешнее количество нод значительно превышает необходимое для соответствия современному спросу.”
“Подавляющее большинство нод — это полные ноды, содержащие весь блокчейн; остальные ноды, составляют незначительную долю использования сети.”— считает Джеймсон.
Лопп не единственный биткоин-энтузиаст, поднимающий этот вопрос. Пользователь Reddit i_wolf долго размышлял над этим вопросом и недавно привел доводы о том, что содержание полных нод предоставляет владельцам дополнительную безопасность.
Так как частное лицо или бизнес может подвергнуться нападению в сети биткоин при помощи атаки Сивиллы (метода хакерской атаки, когда воры окружают жертву и пытаются скормить ей ложную информацию), наиболее надежной защитой будет иметь свою собственную полную ноду.
Иметь собственную полную ноду- значит иметь точную резервную копию блокчейна и информации, которую он содержит, чтобы при необходимости сверить данные.
Изобретатель биткоина Сатоши Накамото, также уделил этому вопросу внимание в вайтпейпере, который впервые описывал биткоин, когда он предложил использование легких клиентов.
“Бизнес, который получает регулярные платежи, наверняка будет хотеть иметь собственные ноды для самостоятельного обеспечения безопасности и быстрой верификации.” — Сатоши Накамото
В то время, как протокол биткоин мотивирует майнеров обеспечивать безопасность всей сети, нет никакой непрямой финансовой выгоды от поддержки собственной ноды. Некоторые пользователи публично заявили о необходимости финансового стимула для держателей нод, предлагая простой сбор для перераспределения среди владельцев. Другие предложили внедрение нового канала в сам биткоин-протокол с целью отправки части комиссии держателям нод, вместо майнеров. Подобная система, к примеру, реализована в DASH, где владельцы нод получают половину вознаграждения майнеров.
Наиболее эффективный стимул придумали в Bitnodes, организовав турнир между операторами нод по наибольшему количеству P2P-соединений. Победитель соревнования получает значительный приз, собранный из пожертвований.
Также на рынке представлены специализированные корпоративные хостинги, в частности Fullnode, которые решили предоставлять услуги хостинга полных нод. Однако, с ростом блокчейна им все труднее оставаться прибыльными, и недавно Fullnode объявил о скором закрытии сервиса.
Вопреки уходу Fullnode, цена удалённого хостинга полных нод не выросла. Существует множество сервисов по веб-хостингу, которые по цене от 10 до 20 долларов в месяц помогут с легкостью развернуть полную ноду.
Также на рынке предлагается несколько версий предварительно настроенных нод. Обычно такие устройства основаны на недорогом Raspberry Pi. Bitnodes также недавно запустили собственное аппаратное решение, которое уже готово к использованию и стоит 168 долларов в биткоинах. Все, что необходимо, это быстрый интернет и подключение к электросети.
Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER
Chef для новичков / Southbridge corporate blog / Habr
На тему систем централизованного управления конфигурациями на Хабре написано немало статей и, в частности, про Chef есть несколько хороших статей. Однако, количество релизов Chef растет, и я решил немного освежить его описание для читателей Хабра. Статья предназначена как для новичков, так и для тех, кто уже знакомился с системой, но по какой-то причине отложил изучение и хочет все-таки продолжить. А продолжать стоит! Поскольку, Chef полезен и для администрирования нескольких VPS, и для управления большим парком серверов. Особенно, если вам часто приходится заниматься настройкой серверов с нуля, подключением дополнительных нод в кластер и т.д.Теория
Без теоретических основ никуда. В первую очередь стоит сказать, что Chef, как и Puppet, изначально написан на Ruby, и будет плюсом, если вы уже владеете этим языком. Если же нет, то стоит изучить хотя бы азы. Начать можно со статьи “Just Enough Ruby for Chef”. Ее действительно будет вполне достаточно для понимания основ языка.
В официальном вики можно найти всю необходимую информацию для начала изучения Chef (в документации делается упор на описание платных продуктов компании — Enterprise Chef и Hosted Chef, я буду говорить про Open Source Chef).
В первую очередь стоит посмотреть обзор архитектуры и разобраться с основными понятиями. Попробую кратко их описать.
Инфраструктура
- Nodes (Ноды) — это любой, ваш сервер, физический либо виртуальный, который вы будете настраивать с помощью Chef.
- The Server (Chef-сервер) — непосредственно сам Chef-сервер к которому обращаются клиенты (Nodes), сервер состоит из нескольких компонентов:
- Web-UI — приложение на RoR представляющее собой веб-интерфейс для сервера;
- Erchef — ядро сервера, начиная с Chef 11.x написано, Erlang, полностью совместимо с прежней версией на Ruby;
- Bookshelf — хранилище для “поваренных книг”;
- Nginx — идет в комплекте, все API-запросы проходят через него;
- PostgreSQL — также включен в состав Chef-сервера, очевидно выполняет роль хранилища информации.
- Workstations (рабочая станция) — рабочее место администратора Chef, т.е. ваш ПК на котором вы будет подготавливать рецепты, поваренные книги и управлять всей кухней с помощью knife.
- Knife — какой шеф-повар без ножа? Knife это основной инструмент для работы с Chef из консоли. Именно с помощью “ножа“ вы будете управлять нодами и Chef-сервером.
Подготовка рецептов
- Чтобы уверенно начать готовить рецепты необходимо четко понимать все термины и определения:
- Сookbook (поваренная книга) — хранилище атрибутов, рецептов, шаблонов и файлов.
- Attribute (аттрибуты) — некие параметры конфигураций которые вы можете задавать для нод как через рецепты, так и через роли, рекомендую ознакомится с порядком применения атрибутов здесь.
- Templates (шаблоны конфигов) — вы можете распространять конфигурации как обычными файлами так параметризированными erb-шаблонами. Значения параметров шаблона в определенном порядке подставляются из атрибутов поваренных книг либо из ролей.
- Files — любые файлы, которые вы сможете распространять с помощью рецептов предварительно описав их путь назначения и права.
- Definitions (определения) — используются для описания новых или существующих ресурсов (напрмер служба, или виртуальный хост apache) и/или действий над ними.
- Libraries (библиотеки) — ни что иное как вставки кода на Ruby, в качестве расширений для рецептов.
- Resources (ресурсы) — ресурс это любой объект системы — файл, пользователь, группа, сервис и пр.
Если с теорией более или менее понятно, то можно начинать приступать к практике.
Практика
Установка Chef сервера
На сайте Get Chef выбираем актуальную версию Chef Server для вашего дистрибутива.
Я буду устанавливать сервер на CentOS 6.5, а рабочую станцию администратора буду настраивать на примере Ubuntu 12.04:
Сервер должен иметь “полное имя домена” (FQDN):
т.е. в /etc/hostname должна быть запись вида: chef.example.ru
Установку производим от пользователя с правами root.
rpm -Uvh https://opscode-omnibus-packages.s3.amazonaws.com/el/6/x86_64/chef-server-11.0.10-1.el6.x86_64.rpm
Далее нужно выполнить первоначальное конфигурирование сервера:chef-server-ctl reconfigure
Эта команда настоит все необходимые компоненты для работы Chef сервера (Erchef, RabbitMQ, nginx, PostgreSQL)После того как все настроено, можно зайти на страницу веб-интерфейса Chef Server.
В правой колонке вы увидите имя пользователя и пароль по умолчанию: admin: p@ssw0rd1.
Пароль меняем во вкладке “Users”, также перегенерируем приватный ключ (ключ нужно обязательно сохранить себе и затем на сервер по умолчанию он нигде не сохраняется):
Далее перейдите во вкладку “Clients”, здесь нужно перегенирить ключ для chef-validator (его тоже в обязательно порядке сохранить куда-нибудь себе и на сервер, позже он понадобится)
Установка Chef Client (Knife) на рабочее место администратора
Установку можно произвести одной командой:
curl -L https://www.opscode.com/chef/install.sh | sudo bash
Либо скачать deb или rpm пакет и установить его вручную.Для работы с “поваренными книгами” нам понадобится консольный клиент git:
apt-get install git
Также нужно иметь Ruby версии => 1.9.1. Для Ubuntu 12.04 ставится так:apt-get install ruby1.9.1
Склонируем себе в домашнюю директорию разметку репозитория для Chef:git clone git://github.com/opscode/chef-repo.git
Чтобы иметь возможность управлять нодами ролями и пр. с помощью knife со своего рабочего места, потребуется два ключа:- chef-validator.pem приватный ключ chef сервера (используется клиентами для авторизации API-запросов к серверу)
- user.pem ваш приватный ключ для авторизации на сервере.
~/chef-repo/.chef/
Настройка knife выполняется командой:
knife configure -i
здесь, нужно будет указать путь до приватных ключей, а также путь до директории с кукбуками. Файл конфигурации knife также будет находиться в директории ~/chef-repo/.chef/ и выглядеть будет примерно так:cat /home/it/chef-repo/.chef/knife.rb
log_level :info
log_location STDOUT
node_name 'it'
client_key '/root/Chef/chef-repo/.chef/it.pem'
validation_client_name 'chef-validator'
validation_key '/home/it/chef-repo/.chef/chef-validator.pem'
chef_server_url 'https://chef.example.ru:443'
syntax_check_cache_path '/home/it/chef-repo/.chef/syntax_check_cache'
cookbook_path [ '/home/it/chef-repo/cookbooks', '/home/it/chef-repo/example' ] # Список директорий с кукбуками
knife[:editor] = 'vim' # Редактор для knife
Проверим работоспособность knife:knife client list
все команды нужно выполнять из директории или поддиректорий вашего локального репозитория Chef.Подключим первый сервер с помощью knife
Для этого используется команда knife bootstrap, которая устанавливает chef-клиента, создает нового пользователя на сервере и генерирует ключи:
knife bootstrap test.example.ru
в общем случае происходит подключение к хосту по ssh от имени root, но если доступ для root ограничен, то нужно указать пользователя с админскими (sudo) правами:knife bootstrap test.example.ru --sudo -x admin -P Password
Проверим что сервер попал в список нод:knife node list
test.example.ru
Применим первый кукбук
Итак, у нас подключена первая нода. Теперь мы можем инсталлировать на нее софт и менять его конфигурацию с помощью Chef. Но прежде нам нужно написать свой первый кукбук, либо взять готовый из репо Opscode на github. Второго варианта для начала будет вполне достаточно.
Перейдем в директорию где у нас должны лежать кукбуки
cd ~/chef-repo/cookbooks
и склонируем сюда первый кукбук, например для chef-client:git clone https://github.com/opscode-cookbooks/chef-client.git
Если мы заглянем в metadata.rb, то увидим список зависимостей для данного кукбука:suggests 'bluepill'
suggests 'daemontools'
suggests 'runit'
depends 'cron', '>= 1.2.0'
depends 'logrotate', '>= 1.2.0'
их тоже придется склонировать себе, а затем на сервер.Чтобы применять рецепты из данного кукбука, нужно предварительно закачать его сервер вместе со всеми зависимостями:
knife cookbook upload bluepill daemontools runit cron logrotate chef-client
Теперь мы можем добавить рецепт chef-client для нашей тестовой ноды и изменить период обращения клиента к серверу:knife node edit test.example.ru
Конфигурация ноды представлена в json-формате. Пропишем период обращения ноды к серверу и добавим рецепт chef-client в run list:{
"name": "test.example.ru",
"chef_environment": "_default",
"normal": {
"chef_client": {
"interval": "300"
},
"tags": [
]
},
"run_list": [
"recipe[chef-client]"
]
}
Напишем свой первый кукбук
Сделаем свой кукбук для тестовых рецептов:
knife cookbook create test
Добавим в рецепт “по умолчанию” директиву для установки списка пакетов, которые мы будем распространять на все наши серверы:vim ~/chef-repo/cookbooks/test/recipes/default.rb
%w{ntp mc htop iotop iftop atop vim-common wget curl rkhunter git awstats postfix}.each do |packages|
package packages do
action :install
end
end
Осталось только закачать кукбук на сервер и прописать его в run-list (список исполняемых рецептов) ноды, а лучше сделать роль и включить туда этот рецепт. Но вот незадача, нужен ведь еще репозиторий epel, как минимум. Можно положить файл конфига в кукбук и дописать в рецепт копирование конфига в yum.repos.d, либо воспользоваться кукбуком yum от opscode:git clone https://github.com/opscode-cookbooks/yum.git
Также, скачаем кукбук yum-epel (почему-то в последнем релизе решили выделить рецепты с основными репами в отдельные кукбуки):git clone https://github.com/opscode-cookbooks/yum-epel.git
Закачаем книги на сервер:knife cookbook upload yum yum-epel
Теперь можем включить рецепт yum-epel в наш тестовый рецепт:vim ~/chef-repo/cookbooks/test/recipes/default.rb
include_recipe “yum-epel”
%w{ntp mc htop iotop iftop atop vim nano wget curl rkhunter git awstats postfix}.each do |packages|
package packages do
action :install
end
end
Также можем прописать в атрибутах нашего кукбука исключения пакетов для epel-repo:vim ~/chef-repo/cookbooks/test/attributes/default.rb
default['yum']['epel']['exclude'] = “test*”
Закачаем кукбук на сервер и применим рецепт на ноде:knife cookbook upload test
knife node edit test.example.ru
{
"name": "test.example.ru",
"chef_environment": "_default",
"normal": {
"chef_client": {
"interval": "300"
},
"tags": [
]
},
"run_list": [
"recipe[chef-client]",
“recipe[test]”
]
}
knife ssh name:test.example.ru "chef-client" -P r00tPassworD
Итак, вы получили первый опыт использования Chef. Теперь, я думаю стало ясно, что все не так уж сложно, как казалось. Главное не останавливаться на этом. Прочтите еще несколько статей, попробуйте применить рецепты из репозитория Opscode. Напишите пару своих рецептов, примените их. Переведите описание своей серверной инфраструктуры на язык Chef. Пускай у вас уйдет на это несколько дней или ночей, за то потом скорость развертывания серверов будет на порядок выше, а досадных ошибок станет меньше. И помните, лучший способ изучить Chef — начать его использовать.
Полезные статьи:
Официальный Chef-вики
Сборник «поваренных книг» от Opscode
Arrays and Chef Attributes
Chef 11 In-Depth: Attributes Changes
Breaking Changes in Chef 11
Первый опыт в качестве шеф-повара, или управление конфигурацией
Chef или как управлять тысячей серверов
Порцию серверов пожалуйста, или как начать деплоить с Opscode Chef
Целый сайт для новичков: Getting started with Chef
Цикл статей от Алексея Васильева (к сожалению только на английском): Getting Started with Chef Solo
Количество нод в сети биткоин и зачем поддерживать полные ноды?
Сеть криптовалюты биткоин продолжает восстанавливаться после недавних спадов активности, общее количество нод достигает 65 000, а количество доступных нод — более 10 000, пишет Bitcoinist.
Данные с сайта Earn.com (ранее 21.co) и собственного ресурса мониторинга, разработанного биткоин-разработчиком Люком-младшим, подтверждают рост, который в последнее время перенесен в Германию. В настоящее время на нее приходится почти 19% нод.
На данный момент имеется 64 768 нод Bitcoin Core, что составляет 99,02% от общего количества. 2490 доступных нод находятся в США, 1927 в Германии, Франции отстает от обеих стран с 660 доступными нодами.
У Китая всего 409 узлов, тем не менее, он занял пятое место рейтинга, а Япония, несмотря на растущую потребительскую экономику биткоина, заняла десятое место с 246 нодами.
В ноябре 2017 года во время движения к максимуму биткоина около $ 20 000 число доступных нод достигло пика в 12 500. После этого в первом полугодии прошлого года произошел откат, число нод колебалось около 9000.
К 2018 году общее снижение составило 11%, а в этом году рост составит примерно 2%.
В то же время технические источники отмечают, что точное количество нод биткоина в конечном счете остается загадкой, поскольку некоторые из них невозможно обнаружить.
Кроме того, одной из возможных причин увеличения количества полных нод в прошлом году стали новые продукты, например, Nodl и Casa Node от Lightning Network, которые упрощают запуск полной ноды.
Каковы стимулы для запуска полной ноды?
Согласно Bitcoin wiki, полные ноды это самый надежный способ использовать сеть биткоина, не говоря о том, чтобы сделать ее более надежной за счет децентрализации.
Запуск полной ноды в качестве биткоин-кошелька — это единственный способ быть уверенным в том, что ни одно из правил биткоина не будет нарушено: не будут потрачены монеты, не принадлежащие владельцу, не будет двойных трат. Все остальные виды кошельков предполагают доверие к стороннему серверу.
Поделитесь этим материалом в социальных сетях и оставьте свое мнение в комментариях ниже.
Самые последние новости криптовалютного рынка и майнинга:The following two tabs change content below.
Материал подготовлен редакцией сайта «Майнинг Криптовалюты», в составе: Главный редактор — Антон Сизов, Журналисты — Игорь Лосев, Виталий Воронов, Дмитрий Марков, Елена Карпина. Мы предоставляем самую актуальную информацию о рынке криптовалют, майнинге и технологии блокчейн.