Всем Привет ,возникли вопросы по работе с cartridge.
Вводная:
У меня есть следующая топология реализованная тарантулами и мне нужно перейти на катридж:
1) Роутер
2) Репликасеты с функциональностью A отмасштабированные
3) Репликасет с функциональностью B
Вопросы:
1) как мне строить взаимодействие с репликасетами группы A через роутер, я правильно понимаю что это делается как то так :
local router_role = cartridge.service_get('vshard-router')
local default_router = router_role.get()
Или все таки можно написать обращение к роли с вычисленным bucket_id , что то на подобие cartridge.rpc_call ?
Оформление роли всегда предполагает помещение функции роли в таблицу return или я просто расшарю свою таблицу , которая будет доступна на прямую при вызовах
vshard.router.call ?
Интересует скажем так best practice
2) Обращение к не шардированной функциональности B из любой ноды кластера делать через cartridge.rpc_call ?
3) При добавление новых нод в кластер (ноды запускаем на разных физически машинах), кодовую базу ролей нужно отдельно от катриджа разливать ?
4) Если ноды кластера находятся физически на разных машинах , то перед стартом катриджа эти ноды нужно предварительно поднять , т.е по верх катриджа нужен еще например ansible ?
5) Как разливать настройки ролей по кластеру аналогично веб морде или нужно использовать config_patch_clusterwide ?