• Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    но ведь балансировщик тоже может зависнуть, значит, для обеспечения надёжности (отказоустойчивости любого компонента облака) его тоже надо дублировать, тогда 3 провайдера * 2 (балансировщик/роутер на компе с линуксом + канальный свитч) * 3 квартиры (пока облако будет только внутри одной, но на будущее...) = 18 айпишников в зону... это будет работать со всеми клиентами, да?..

    ну, а если потребуется лить больше трафика - делаются вспомогательные домены и для них на тех же серверах так же настраивается балансировка, но используются уже другие каналы от провайдеров/айпишники

    я прав, что тут выгоднее брать именно канальные свитчи (2 уровня OSI/ISO), так как они дешевле, а все подключения (в тех случаях, если это нужно) будут осуществлять балансировщики?.. Они же будут создавать NAT для серверов облака и подключения к провайдерам (если надо PPPoE или L2TP, в случае IPoE не уверен, нужно ли какое-либо подключение или нет), по сути, являться роутерами с функцией балансировки...

    Эти свитчи должны уметь VLAN, агрегирование каналов. И ещё желательно, чтобы эти свитчи умели бы пропускать через себя VPN.

    Какие модели подойдут у Cisco?.. Я так понимаю, мне нужно две вот таких www.supermicro.nl/products/accessories/Networking/... (но тут, кажется, нет возможности гонять трафик через VPN, даже если само VPN настраивается на отдельно... и еще меня тут смущает, что можно сделать VLAN по IP, но ведь это свитч канального уровня, он ведь не должен уметь никаких VLAN'ов по IP, только по MAC?.. хорошо, что умеет, но, значит, я тут что-то не до конца понимаю...)

    получается, что в каждой квартире у нас 6 кабелей от провайдеров (по 2 кабеля на каждого), 3 втыкаются в 1 свитч, 3 в другой. Так же есть два балансировщика (соединены каждый со своим свитчем через 6 агрегированных каналов (то есть чтобы пропускная способность была в 2 раза больше, чем от провайдеров), а так же каждый свитч )

    попытался нарисовать, получилось так https://hsto.org/files/b56/950/495/b5695049502c4b0...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    да, это максимальное потребление, стоимость киловатта сейчас ниже, если электрические плиты в доме, но пусть буде 4 рубля для примера, ок... то есть эти 2,5 тысячи рублей будут только если кластер работает на пределе, но если так - за него наверняка кто-то платит и всё окупается... К слову, 120 евро - это 9 906 рублей сейчас (то есть столько стоит 1 сервер в датацентре для клиента в моём случае). То есть 2-3 таких клиента окупят и электроэнергию и серверы с сетевым оборудованием (через некоторое время) и трафик/интернет.

    по IPoE обычно сейчас всё работает, но если по PPoE/L2TP - то можно поставить роутеры перед свитчами, те же микротики (если каналы до 100 мегабит/с включительно)... ну, или, да, на самом сервере настраивать... первый вариант, наверное, лучше... тем более ведь 1 роутер может держать несколько соединений сразу...

    а для уменьшения цены, кстати, свитчи можно использовать канального уровня (2), они дешевле...

    ну и если 4 сервера (с 4 гигабитными портами каждый) и 2 свитча и 3 провайдера, то потребуется 24 провода от провайдеров, плюс настроить агрегацию каналов между серверами и свитчем (2 гигабитных канала)

    ну, я тестировал Beeline в разное время суток - меня их каналы устраивают, как на вход, так и на выход... не нравится лишь то, что интернет может вырубиться и поэтому нужны резервные каналы и способ быстро мониторить доступность каналов сервера и менять А записи во всех зонах доменов...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    Но, если я правильно понимаю, на одних только IPv6 адресах сайты (сейчас) работать не будут, даже если на все домены в их зоны добавить АААА (или ААА, забыл, сколько там этих А :-) ) записи, но не добавить А с IPv4, то на эти сайты никто из того же Билайна или МГТС зайти не сможет, правильно?.. Как же тогда выкручиваются?.. Покупают на каких-нибудь аукционах по бешеным ценам?..

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

    Вообще, наверное, одна и самая основная из причин делать такое облако именно дома - это возможность сделать всё дешево, по тарифам для физических лиц... То есть без AS и PI, с DNS RoundRobin. Тут у меня есть пара вопросов: ограничено ли максимальное количество А записей у домена, может ли их быть, скажем, 72 на одном домене (3 квартиры * 3 провайдера * 2 свитча * 4 сервера в каждой квартире = 72 разных вариантов маршрута для обеспечения отказоустойчивости)?.. Можно ли их как-то менять местами или другим образом устанавливать приоритет на сервисах облачного ДНС, таких, как Route53, Google Cloud DNS, CloudFlare, Incapsula,.. и других, имеющих API для добавления/удаления А-записей в зонах?.. (Тогда можно было бы сделать на сторонних VPS следящий за айпишниками скрипт, если кто-то из айпишников несколько раз подряд не отозвался на пинг - его исключают из списка через API облачного DNS, а когда начал пинговаться вновь - снова добавляют)...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    Часть из того что вы хотите реализовать не реализуема в прнинципе.

    А что именно не реализуемо?..

    Интернет в квартире никак не может сравнится с выделенным линком в датацентре по качеству.

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

    В общем затраты на электроэнергию и интернет у вас в квартире будут явно выше чем в датацентре. Плюс покупка дорогого оборудования.

    Стоимость домашнего интернета раз в 6 дешевле, чем в датацентре.

    У 1 сервера блок питания на 200W, у свитча 65W, в итоге 200+200+200+200+65+65 = 930W, общее потребление, ну, как у игрового компьютера...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    Ну я бы не сказал что докер является более продвинутым чем другие средства виртуализации, и он естественно создает оверхед, как и любое средство виртуализации. Просто это частичная виртуализация приложений в ОС. Оверхед так же создает.

    Ну, докер не идеальное решение, но оверхёда от него меньше, чем от KVM и других систем...

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

    Как вы такое собираетесь реализовать???
    Это нечто фантастическое.

    Ну, если для 20 проектов хватило бы и 1 дедика, то в случае, когда из 4 серверов 3 перестанут работать, никаких проблем быть не должно... Я не очень понял, а в чём фантастика-то? Так ведь все облака и работают, в этом и смысл (один из смыслов) перехода на облако - у нас много мелких инстансов, которые крутятся на разных машинах. Возможно, несколько одинаковых инстансов крутятся и на одной, Здесь весь вопрос в том, какое приложение. Не все вещи получается вот так распараллелить, чтобы не было проблем... Но в вебе это просто. Была бы это какая-нибудь ERP-система, тут бы уже не получилось заменить 1 большую систему на 4 маленьких и 1 операцию заменить на 4 (ну, хотя всё возможно, наверное, но вопрос в том, потребует ли это сильного изменения кода или нет, в некоторых случаях доступа к коду просто нет и что-то менять нельзя, в моём же случае я могу )... То есть я вижу архитектуру таким образом, что все ноды одинаковые (ну, кроме настроек сети) и каждая из них обрабатывает какую-то часть запросов к сайту пропорционально свободным ресурсам... Не до конца понимаю, какой момент тут кажется фантастическим, так ведь уже многие и делают?

    Это вам балансировщик нужен перед серверами.

    Ну, тут можно не перед сервером, а на самом сервере некий глобальный nginx в рамках этой ноды, который уже будет проксировать к инстансам... Впрочем. можно и перед серверами на роутере, наверное, если в роли роутера будет линукс-сервер (тогда он уже будет проксировать не к инстансам на 1 сервере, а сразу ко всем инстансам на на всех 4 серверах в рамках квартиры).

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

    ну, я использую внешний DNS для каждого проекта, сейчас это CloudFlare (там именно вот с балансировкой не хочет хорошо, автоматически переключаться не будут), но можно любой другой сервис взять... то есть на каждом домене прописывается много айпишников в А записях, а точнее, все доступные мне айпишники провайдеров. если какие-то не отвечают - система же должна автоматически заюзать следующий по списку?.. ну и отдельно от облака, в том же Hetzner'е арендовать маленький VPS за 20 долларов, туда скрипт на Python'е, который бы проверял нагрузку каждого из серверов и правил А записи на доменах (например, если нагрузка высокая - убирал бы ипы провайдеров, связанных с этим сервером из зоны некоторых доменов, чтобы снизить нагрузку)... если сервер уже совсем не отвечает, ну, наверное, уже поздно убирать, но для порядка тоже можно (чтобы в процессе поднятия сервера он бы снова не упал)... если я правильно понимаю, через ДНС балансировка работает только таким образом, что все запросы распределяются поровну между всеми указанными айпишниками... но так как на каждом сервере не 1 инстанс какого-то проекта, а как минимум 60 разных (по одному на комбинацию проект * интернет-провайдер, 20 проектов * 3 интернет-провайдера), можно управлять нагрузкой таким образом, что через API ДНС-провайдера инстансы будут отключаться и к ним уже не будут приходить запросы, а при снижении нагрузки на сервер, подключит их вновь... алгоритмы тут можно придумать весьма сложные (проблемы тоже двух типов - если забивают каналы и если не хватает ресурсов сервера), но общий принцип вот такой...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    выше я написал, что контейнер docker это как виртуальная машина, на самом деле, я слегка упростил... контейнер создаётся под каждый сервис проекта и всё это связывается вместе, подробнее https://news.ycombinator.com/item?id=8472209 если интересно...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    что я хочу предложить им: для начало облако из 4 серверов в 1 квартире с 3 разными провайдерами: каждый проект запакуется в docker (там есть свои особенности, но в целом можно рассматривать это как виртуальную машину, не создающую оверхёда для сервера, то есть нечто более продвинутое, чем KVM/Xen/OpenVZ/..., ядро системы используется с ноды), каждый проект будет работать на каждом из этих серверов, если 3 сервера из 4 сломаются - никто из моих заказчиков ничего не заметит... возможно, будут лёгкие лаги у кого-нибудь, но не более того... то есть если 4 сервера онлайн - запросы идут сразу на все 4 сервера пропорционально их свободным ресурсам, если 3 из серверов ломается - 1 оставшийся принимает на себя все запросы до тех пор, пока другие снова не выйдут в онлайн...

    аналогично с провайдерами - если из 3 провайдеров 2 сломаются, все 4 ноды по-прежнему смогут работать и обслуживать запросы...

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

    Я облизываюсь на Dell VRTX, он мне нравится во всех смыслах... И я обязательно куплю нечто подобное в будущем, если моя инициатива с облачком понравится хотя бы 5 моим клиентам и они обменяют Hetzner на часть моего облака... Но для первой версии облака я выберу что-то подешевле (вдруг, инициатива не будет встречена с восторгом, а VRTX стоит от 600 тысяч, кажется... ), то есть у меня уже есть старые компы, первые несколько месяцев я намерен использовать их, только память на ECC сменю, ну и вот вопрос с сетью решить...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    > Напишите лучше что вам нужно в итоге.
    я занимаюсь веб-разработкой и поддержкой проектов на Python/Django для SOHO заказчиков, они платят мне за обслуживание, а ещё они платят 120 евро/месяц Hetzner'у за сервер

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

    в лучшем случае я получу прибавку около 1-1,5 тыс евро/месяц, создав такое облако... в худшем случае я смогу уговорить перейти лишь парочку клиентов и тогда оно будет на грани окупаемости, но всё равно круто, так как средняя загруженность клиентами этих серверов около 3-7%, значит, у меня будет бесплатное облако для своих проектов (проекты бывают разные, не только коммерческие)...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    то есть [сейчас снова ламерский вопрос] это возможно, когда 3+ разных провайдера будут работать одновременно через 1 10-гигабитный провод с сервером, а ещё по тому же самому 10гигабитному проводу в то же время этот сервер будет общаться с тремя другими такими же серверами, как он? [без агрегации, то есть будут разные интерфейсы, 1 для локалки и 3 провайдера]
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    Спасибо! не знал, что есть проблемы с агрегированием каналов у провайдера... окей, допустим, я куплю в каждый сервер двухпортовые 10гигабитные карточки, а как дальше их соединить, чтобы сеть не упала, если 1 из них сломается? видимо, нужен какой-нибудь свитч с 4 10-гигабитными портами... или комп с двумя такими 10гигабитными двухпортовыми карточками... какой именно микротик такое умеет?..

    если нет возможности сделать агрегацию, значит надо количество серверов * количество провайдеров = 12 проводов, мегабит по 200-300 каждый...

    допустим, 12 проводов от провайдеров (3 разных провайдера, 4 провода от каждого, по одному на каждый из 4 серверов), каждый со своим выделенным ипом...

    но так как серверы решили соединять 10гигабитками , то нужен некий свитч на 4 10-гигабитных порта и на 12 1000Мегабитных портов (лучше больше, с запасом), всё так?..

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

    а роль свитча тут в том, чтобы экономить порты на сервере (и чтобы можно было в будушем добавить ещё 1 свитч с дополнительными портами, соединить его с первым...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    > Как я понимаю задача сводится к раздаче видеоконтента.
    вообще, задачи две:

    1. есть ряд клиентов (до 20), которые сейчас платят в Hetzner 120 евро/месяц, я могу уговорить их платить мне за облачный хостинг, там самым как минимум я получу бесплатное домашнее облако (их потребность порядка 5-7% от тех серверов за 120 евро/месяц), даже если лишь несколько согласятся - всё равно, это окупится... а как максимум - я получу лишнюю 1-1,5 тысячи евро в месяц с их платежей

    так получается, что они платят мне за поддержку их проектов (Python/Django), а за серверы напрямую в датацентр, админю их бесплатно (за право использовать мощности этих серверов под свои нужды)

    перепродать кого-либо я им не смогу, только если буду предоставлять услуги лично...

    2. есть желание сделать видеочат , но тут тоже есть свои вопросы - например, есть ли какие-либо последствия для владельца айпишника, если на этих ипах будет располагаться эротический видеочат?...

    эти айпишники отключат по абузе и у меня отберут AS или как такое происходит?..

    если рассмотреть вариант прятать этот трафик за американским прокси, скажем, это получится всё равно ведь дешевле, чем держать серверы там?..
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    > Можно рассмотреть более простой вариант с DNS round robin на PA-адресах провайдеров.
    а если хочется иметь разные по мощности серверы в 1 облаке?.. (ну, рано или поздно оно так и будет)
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    спасибо за пояснения! я так понимаю, по деньгам это будет около $7,6k за оборудование (ну, если новое) и ещё 3-5 сотен долларов в год за IP'ы... но я тут не до конца понял, (1) получить AS и айпишники можно физическому лицу или мне нужно будет юр лицо (и следом за этим ещё придётся сдавать узел связи, получать лицензии на телематику и передачу данных и всё такое)?.. (2) про аплинки провайдеров - я тут путаюсь немного, если провайдер откажется помогать и что-то настраивать на своей стороне, то есть у меня будет обычный интернет, как всем проводят, со статическим провайдерским ипом (или без него, если он не нужен тут), я смогу использовать эту схему?.. или мне обязательно нужно, чтобы провайдер пошёл на сотрудничество и что-то там прописал у себя на цисках/подключил кабель по-особому?.. (я догадываюсь, что он пойдёт на сотрудничество, но уже по другим ценам, для организаций, раз в 6 дороже, а мне-то как раз хочется, чтобы а.) я мог сидеть на тарифах для физиков и б.) при необходимости переезда в другой город, смог бы быстро сменить провайдера на местных и подключиться, быстро восстановив работу этого сегмента облака, которое живёт у меня дома и путешествует вместе со мной)
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    > нет нельзя, потому что ты не знаешь не арендуют ли все три провайдера одну линию к твоему дому.
    ну, PON и Ethernet - там точно разные линии будут, технологии разные...

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

    > И ты не знаешь какая гарантированная полоса у твоих провадеров
    Билайн и 2Ком заявляют, что она совпадает с тарифом...

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

    > И если не расматривать варез, то речь будет идти о 20+ рпс, что приводит к 50+к просмотров в час. Если такое не приносит денег на сервак, то "лучше умертвить"

    мы смотрим с разных сторон на это)

    мне не под проект облако, мне просто облако нужно)) под managed hosting для заказчиков...

    а избыточная скорость нужна во многом для того, чтобы можно было расширить облако, поставить серверы в разных квартирах, даже в разных городах (есть 3 места, где я могу это сделать, если точнее)... но это не на первом этапе, это года через 2-3... Например, в каждую квартиру купить Dell VRTX и объединить их в облако... Для их синхронизации нужна скорость...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    да, хотелось бы получить качество на уровне Hetzner'а или выше.. я не думаю, что от домашних ISP можно ожидать высокое качество услуг, поэтому качество можно получить дублированием не совсем надежных каналов (например, если использовать 3х разных, не связанных между собой провайдеров)... в любом случае, такое дублирование каналов будет стоить дешевле, чем тот же гарантированный гигабит в российском датацентре... то есть я уже сейчас на этапе проектирования ожидаю, что каждый месяц 1 или несколько из них будут ломаться часа на 4 и думаю над тем, как бы сделать так, чтобы для проектов в облаке это прошло гладко... это уже вопрос, больше связанный с архитектурой приложения... но вероятность того, что сразу три провайдера начнут одновременно глючить - она около нуля... про 10 мбпс я не согласен - если проект связан с видео или с передачей большого количества файлов - эти 10мбпс могут быть забиты 1-3 клиентами, одновременно делающими что-то на вашем сервисе...
  • Сеть для домашнего облачного датацентра - инет от нескольких 100Мбит/с -1Гбит/с каналов от разных провайдеров с агрегацией каналов и резервированием?

    @Lord_Daedra Автор вопроса
    спасибо, да, забыл написать про бесперебойники, конечно, это нужно...

    да тут даже не проекте дело, в Hetzner'е давали гарантированную ширину канала 1 Гигабит/с на сервер, мне бы не хотелось сильно отставать от него в этом.. :-)