Size: a a a

SDS и Кластерные FS

2020 December 09

AS

Anton Smolkov in SDS и Кластерные FS
kvaps
Да вот да, в прицепе статус синхронизации можно хранить в кубе.

Если недосинкалось то при старте инстанса ресинк
Ваще, надо какой-то userspace drdb на лупбек-девайсах с синхронной репликацией =)
источник

AS

Anton Smolkov in SDS и Кластерные FS
kvaps
Да вот да, в прицепе статус синхронизации можно хранить в кубе.

Если недосинкалось то при старте инстанса ресинк
Дык файловер же произошел и слейв стал мастером с ошметками репы
источник

k

kvaps in SDS и Кластерные FS
Репозитории будут создаваться как CRD, то есть у каждого будет свой собственный ресурс, в который можно писать status
источник

k

kvaps in SDS и Кластерные FS
Anton Smolkov
Ваще, надо какой-то userspace drdb на лупбек-девайсах с синхронной репликацией =)
Юзерспейс DRBD это csync2
источник

AS

Anton Smolkov in SDS и Кластерные FS
😁😁
источник

k

kvaps in SDS и Кластерные FS
Anton Smolkov
Ваще, надо какой-то userspace drdb на лупбек-девайсах с синхронной репликацией =)
Лупбэк-девайсы это уже ядро
источник

k

kvaps in SDS и Кластерные FS
Anton Smolkov
Дык файловер же произошел и слейв стал мастером с ошметками репы
Хук не даст запушить пока не синкнется на все живые инстансы, например
источник

AS

Anton Smolkov in SDS и Кластерные FS
А так можно вообще?
источник

k

kvaps in SDS и Кластерные FS
Anton Smolkov
А так можно вообще?
Ну клиент в это время задумается ненадолго
источник

DV

Dmitry Vylegzhanin in SDS и Кластерные FS
kvaps
Да вот да, в прицепе статус синхронизации можно хранить в кубе.

Если недосинкалось то при старте инстанса ресинк
имхо, можно рсинкать в обе стороны со сравнением  таймстампа в фоне/по хуку/etc, в гит объекты почти всегда добавляются новые  (кроме голов, как я понимаю)
имя блоба = хэш от контента
из исключений есть git gc, который пожмет 100500 мелких блобов в общий архивчик+индекс (обычно оно на клиенте случается при массовых добавлениях)
+ есть git fsck но медленный (у меня была репа с 4M файлами * 4k коммитов, я в нем историю патчил))
источник

k

kvaps in SDS и Кластерные FS
Dmitry Vylegzhanin
имхо, можно рсинкать в обе стороны со сравнением  таймстампа в фоне/по хуку/etc, в гит объекты почти всегда добавляются новые  (кроме голов, как я понимаю)
имя блоба = хэш от контента
из исключений есть git gc, который пожмет 100500 мелких блобов в общий архивчик+индекс (обычно оно на клиенте случается при массовых добавлениях)
+ есть git fsck но медленный (у меня была репа с 4M файлами * 4k коммитов, я в нем историю патчил))
Звучит справедливо, Хотя без рсинка будет не хуже, то есть наивным протоколом git
источник

AS

Anton Smolkov in SDS и Кластерные FS
kvaps
Хук не даст запушить пока не синкнется на все живые инстансы, например
Допустим не дал запушить и всё сломалось по середине - в слейве все равно мусор.
Хотя если для синка на слейвы git push --mirror юзать, то может и нет
источник

k

kvaps in SDS и Кластерные FS
По хуку отправлять на другие инстансы, а при перезапуске инстанса просто делать git pull
источник

DV

Dmitry Vylegzhanin in SDS и Кластерные FS
kvaps
Звучит справедливо, Хотя без рсинка будет не хуже, то есть наивным протоколом git
можно синкать отдельно блобы/индекс, и если ок, то тогда головы)
источник

k

kvaps in SDS и Кластерные FS
Dmitry Vylegzhanin
можно синкать отдельно блобы/индекс, и если ок, то тогда головы)
Ну кстати да
источник

DV

Dmitry Vylegzhanin in SDS и Кластерные FS
kvaps
Ну кстати да
без головы битое дерево не видно
источник

k

kvaps in SDS и Кластерные FS
Хороший вариант, я подумаю
источник

c

cloud_tg_captcha_bot in SDS и Кластерные FS
User passed the validation.
источник

c

cloud_tg_captcha_bot in SDS и Кластерные FS
User didn't pass the validation and was banned.
источник
2020 December 10

c

cloud_tg_captcha_bot in SDS и Кластерные FS
User passed the validation.
источник