Облако — это просто чей-то компьютер

в 12:07, , рубрики: колокация, колокейшн, Облачные вычисления, облачные сервисы, облачный хостинг, Серверная оптимизация, серверы

Когда мы запустили в 2013 году Discourse, наши требования к серверу были высокими:

  • 1 ГБ ОЗУ
  • быстрый двухядерный ЦП
  • быстрый твердотельный накопитель от 20 ГБ

Я имею в виду не дешёвый общий cpanel-сервер, а выделенный виртуальный частный сервер с такими характеристиками.

Нам этого было достаточно, потому что в течение следующего десятилетия Интернета мы писали на Ruby. Я сразу предсказывал, что цена аренды VPS с такими характеристиками упадёт до 5 долларов в месяц, и благодаря Digital Ocean это действительно случилось в январе 2018 года.

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

Облако — это просто чей-то компьютер - 1

Но постойте… а что если вы сможете засунуть «в облако» свой компьютер?

Разве это решение не будет обладать преимуществом обоих подходов? Надёжность подключения плюс низкая ежемесячная оплата за чрезвычайно быстрое оборудование? Если это кажется вам безумием, то стоит изменить своё мнение — пользователи Mac занимаются этим уже несколько лет.

Облако — это просто чей-то компьютер - 2

Думаю, понятно, почему пользователи Mac в этой области находятся на переднем крае технологий, ведь Apple почти не делает серверного оборудования, в то время как мир PC всегда был стандартом де-факто для серверного железа.

Облако — это просто чей-то компьютер - 3

Учитывая распространённость и уровень развития поставщиков облачных услуг, идея колокации настоящих серверов сегодня выглядит немного спорной. Также мы экспериментировали с колокациией mini-pc в разных конфигурациях хостинга. Мне всё ещё любопытно, почему не так много малых бизнесов, предоставляющих услуги колокации mini PC. Потому что … я думаю, они должны существовать.

Изначально я писал о компьютерах-«скутерах», добавленных в нашу инфраструктуру Discourse в 2016 году, плюс о моём собственном эксперименте с колокацией, запущенном параллельно. После трёхлетних экспериментов я пришёл к выводу, что эти небольшие коробочки довольно надёжны, но с одной оговоркой, которую я объясню в комментариях. Я по-прежнему остаюсь несомненным фанатом колокации mini-PC. Мне она так сильно нравится, что я собрал новую версию 2019 года:

2017 — $670 2019 — $820
i7-7500u
2.7-3.5 Ghz, 2c / 4t
i7-8750h
2.2-4.1 Ghz, 6c / 12t
16GB DDR3 RAM 32GB DDR4 RAM
500GB SATA SSD 500GB NVMe SSD

Компьютер-«скутер» этого года имеет утроенное количество ядер, удвоенную память и в три раза более быстрый накопитель. Это, как говорят дети в Интернете… absolute unit.

Облако — это просто чей-то компьютер - 4

2019-scooter-computer-bottom-interior

2019-scooter-computer-front-and-back

Кроме того, он имеет довольно элегантную двустороннюю внутреннюю схему. В нём есть слот для «олдскульного» 2,5-дюймового накопителя, плюс встроенный wi-fi, но на моих фотографиях вы их не увидите, потому что я физически убрал их.

Я проверил жизнеспособность коробочки с помощью моего рекомендуемого теста стабильности и работы под нагрузкой, и все они прошли его с честью, хотя в процессе пришлось заменить один набор глючных планок ОЗУ. Бенчмарки показывают правду по сравнению со средним дроплетом Digital Ocean:

Производительность на ядро

sysbench cpu --cpu-max-prime=20000 run

Дроплет DO 2,988
Mini-PC 2017 года 4,800
Mini-PC 2019 года 5,671

Многоядерная производительность

sysbench cpu --cpu-max-prime=40000 --num-threads=8 run

Дроплет DO 2,200
Mini-PC 2017 года 5,588
Mini-PC 2019 года 14,604

Скорость дисков

dd bs=1M count=512 if=/dev/zero of=test conv=fdatasync

hdparm -Tt /dev/sda

Дроплет DO 701 / 8818 / 471 MB/sec
Mini-PC 2017 года 444 / 12564 / 505 MB/sec
Mini-PC 2019 года 1200 / 17919 / 3115 MB/sec

Пересборка Discourse

time ./launcher rebuild app

Дроплет DO 6:59
Mini-PC 2017 года 3:41
Mini-PC 2019 года 3:24

Может стать проблемой энергопотребление, потому что версия 2017 года имела гораздо меньший отвод тепловой мощности (TDP) — 15 Вт, по сравнению с 45 Вт текущей версии. Утроение количества ядер не проходит бесследно! Поэтому я протестировал всё самостоятельно комбинацией из i7z, stress, и моего личного ваттметра.

Облако — это просто чей-то компьютер - 7

(login в режиме простоя) 800 Mhz 10 Вт
stress --cpu 1 4.1 GHz 30 Вт
stress --cpu 2 4.1 GHz 42 Вт
stress --cpu 3 4.0 GHz 53 Вт
stress --cpu 4 3.9 GHz 65 Вт
stress --cpu 5 3.7 GHz 65 Вт
stress --cpu 6 3.5 GHz 65 Вт
stress --cpu 12 3.3 Ghz 65 Вт

Я ожидал бы увидеть примерно 10-20 Вт при выполнении типичных задач с низкой нагрузкой, не особо занимающих ЦП. Заметьте, что запуск текущих версий mprime повышает энергопотребление до 75 Вт, а общая тактовая частота снижается 3,1 ГГц… и надо сказать, что я научился очень опасаться расширений AVX2.

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

Поэтому я очень доволен покупкой этой машины за 820 долларов — она очень быстра и довольно надёжна. Но как насчёт затрат на колокацию? Мой провайдер колокации — это EndOffice, находящийся в пригороде Бостона, предоставляющий очень доступные цены на колокацию Mini-PC: 29 долларов/месяц.

Облако — это просто чей-то компьютер - 8


Лично я поставил в колокацию три Mini-PC ради избыточности и на всякий случай; за колокацию нескольких машин предоставляется скидка. Все они установлены в стойку и находятся в работе. Разумеется, перед установкой я пометил их.

Облако — это просто чей-то компьютер - 9

Давайте всё проанализируем и сравним затраты на колокацию Mini-PC и на облако. Учитывая плато в увеличении скоростей ЦП, я считаю, что реалистичной оценкой будет пять лет полезной работы этих ящиков, но давайте будем консервативными и возьмём для надёжности трёхлетний период эксплуатации.

  • Miini-PC за 880 долларов с 32 ГБ ОЗУ, 6 ЦП, SSD 500 ГБ
  • 120 долларов — налоги/доставка/прочее
  • 29 × 12 × 3 = 1 044 доллара

То есть 2 044 доллара за три года хостинга. А какая картина на Digital Ocean? По их текущему прейскуранту:

  • 32 ГБ ОЗУ, 8 виртуальных ЦП, SSD 640 ГБ
  • 160 долларов/месяц
  • 160 × 12 × 3 = 5 760 долларов

Сравнение неточное, потому что мы получаем лишних 140 ГБ дискового пространства и 2 дополнительных ЦП, но по сравнению с нашими выделенными, изолированными ЦП эти процессоры и медленнее, и частично поглощаются коллективной арендой (multi-tenancy). (Мне стало любопытно, поэтому для короткого теста я создал новый инстанс DO за 160 долларов/месяц. sysbench показывает результаты в 4086 и 11760 соответственно, что значительно меньше показанных выше результатов Mini-PC 2019 года.) Как видите, за облачный сервер мы платим почти в три раза больше.

Я не утверждаю, что решение подходит всем. Если вам просто нужно быстро создать один-два сервера для тестирования и экспериментов, но совершенно не хочется тратиться на сборку и колокацию mini-pcs, то нет никаких сомнений в том, что серверы в облаке обеспечивают беспрецедентную гибкость и избыточность. Но если вам нужны выделенные вычислительные ресурсы на протяжении нескольких лет, то сборка своего небольшого личного облака с машинами, которые принадлежат вам, не составляет только треть затрат… но и просто удобна.

Облако — это просто чей-то компьютер - 10

Если вы хотите тоже поучаствовать в таком проекте, то можете купить на Amazon такой же Partaker B18, что и у меня, за 490 долларов, или заказать за 460 долларов напрямую из Китая через AliExpress. Добавьте память и накопитель по вкусу, соберите машину, а затем выберите любого провайдера колокации на свой вкус.

Автор: PatientZero

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js