Pull to refresh
21
0
Filipp Frizzy @MrFrizzy

devops

Send message
Ну, или перефразируя предыдущий вопрос: а у вас код и статика лежат в одном репозитории, или в разных?
Мне кажется, или все то же самое можно было бы сделать на чистом compose и с consul для dns lb, к примеру. Даже с учетом переезда в облака и автоскейлинга в них.
Есть ли какой-либо дополнительный профит от усложнения системы сборкой k8s и виртуальными сетями?
Немного околотопика :)
Имхо для ускорения питона нужно смотреть в сторону C биндингов, чем, собственно, все создатели новых фрэймворков и занимаются. Была интересная презентация от nexedi: они взяли написанный на C http сервер lwan, добавили в свой код ctypes по-максимуму — и получили скорость выше, чем golang с fasthttp
Минус один: на golang можно просто писать и быть уверенным, что код будет работать быстро, питон с обвязкой нужно сначала написать, а потом еще и профилировать

Для своих pet проектов можно еще попробовать Trio – «Pythonic async I/O for humans and snake people». Вот видео презентация от автора: тыц
Как раз перешел на rsnapshot — на порядок быстрее и удобнее borgа!
Единственный минус — rsnapshot создает структуру <время><сервер> и бэкапит директории\сервера из одного конфига последовательно. Пришлось городить по отдельному конфигу для каждого сервера, чтобы иметь возможность запускать их параллельно и гибко настраивать время для каждого. Для поиска измененных файлов подходит diff -qr и все прочее :)

Базы так и бекапятся: mysqldump > gzip > rsync раз в сутки + find для удаления версий старше n дней
отписался ниже про свой небольшой опыт)
таки да, если есть возможность нанять свою фулл тайм команду для поддержания всей среды и конкретно k8s, как это делают те же devops as a service вроде фланта (и кто там еще пишет на харб) — то вопросов нет и все чудесно.
я же лично сталкивался больше с тем, что клиентам просто продают распиаренную технологию ради продажи услуг онли, не заботясь, нужно ли это реально клиенту или нет… и меня такой подход в бизнесе как минимум раздражает
всем своим контактам я всегда говорю две вещи:
1) хорошо подумать, готовы ли они перевести всю свою инфраструктуру в докер контейнеры с соответствующими изменениями в процесс разработки, деплоя и оперирования
2) если готовы, то брать готовый кластер в облаке, от того же гугла, или вот DO подсуетились на днях буквально — и даже не думать о самодельном сетапе, пока не потренируются на готовой среде без большой боли и вложений
Я как бы devops и с k8s работал))
Я и говорю, что кубик является дополнительным уровнем абстракции, и за нее нужно платить.
И я бы поспорил, что в маленьких проектах она вообще нужна.
У меня был опыт с легаси кластером, и вот список проблем, которые я словил с ним за пару месяцев:
1) рандомно отваливалась виртуальная сеть или dns
2) заэкспайрились сертификаты на мастере и отвалились все ноды с полным шутдауном всех контейнеров
3) при падении ноды кубик ждал дефолтные 5 минут до признания ноды умершей
первые два пункта быстрее и проще всего лечились полным ресетапом кластера с нуля.
Я понимаю, что k8s можно бесконечно долго тюнить под разные задачи, но блин!
Есть вопрос ресурсов бизнеса и вообще уровня компетенции в команде. Не говоря уже о том, что при statefull приложениях куб никак не решает проблему синхронизации данных, а то и усложняет сам менеджемент.
В моем случае, заказчику важнее была доступность приложения, и мы элегантным движением руки превратили кластер кубика в HA сетап приложений на каждом хосте, запущенных в докере с конфигурацией из compose.
И я не согласен с тем, что оркестрация докер контейнеров + yaml конфигов compose намного сложнее докер контейнеров + yaml конфигов k8s
Мне кажется, собственный кластер кубика — это когда вы его разворачиваете сами.
А когда арендуете — это облачный кластер.
По поводу самого k8s — все описанное выше можно сделать и без него хотя бы на чистом docker + docker-compose, профит только в более дешевых нодах от гугла, и то я сомневаюсь, что невозможно найти vps по +- той же цене…
Касательно летсплейщиков:
1) большинство сейчас мигрировало на твич в силу закидонов ютуба
2) можно написать тем, кто проходил CALL of CTHULHU (2018), все-таки тематика та же)
Сам смотрю русского миллионника: www.twitch.tv/blackufa
Ему можно написать — и индюшки, и отечественные проекты, и Лавкрафт он любит
И спасибо большое за статью!
пакеты и состояния напоминают nix и nixos, для тех, кто хочет попробовать похожие идеи на linux
к сожалению, меньше, чем фермеров и котовладельцев посадили ТУТ
Ну то есть это пока никак не автоматизировано :)
Все-таки найти файл в нескольких инкрементальных архивах и распаковать его по сети не то же самое, что извлечь один файл из одного архива на локалхосте :)
Я тут «имел удовольствие» бэкапить 1.5 тб фотографий в 3-х уровневой структуре с помощью Borg — из-за того, что он хранит бэкап в бинарных файлах единым массивом, листинг потом мог занимать часы, а восстановление сотни файлов пару дней — столько же, сколько сам бэкап изначально совершался. Хуже того, сама обратная связь на ошибки или отсутствие файлов была такой же медленной.
Я так понимаю, это проблема всех решений, кто хранит бэкап в виде снимков.
Изначально выбрал Borg из-за теоретической скорости создания инкрементного бэкапа и дедупликации, но есть вариант, что решения на rsync без хранения бэкапов в виде бинарных архивов могут быть удобнее :)
upd: и продолжается ли бэкап при обрыве связи, например, сессия ssh дропнулась, или бэкап просто заканчивается с ошибкой?
Я тут «имел удовольствие» бэкапить 1.5 тб фотографий в 3-х уровневой структуре с помощью Borg — из-за того, что он хранит бэкап в бинарных файлах единым массивом, листинг потом мог занимать часы, а восстановление сотни файлов пару дней — столько же, сколько сам бэкап изначально совершался. Хуже того, сама обратная связь на ошибки или отсутствие файлов была такой же медленной.
Я так понимаю, это проблема всех решений, кто хранит бэкап в виде снимков.
Как у вашей утилиты обстоят дела с таким кейсом? :)
Сильно сложно проверить существование и восстановить несколько файлов из инкрементального архива?
Стоит ожидать записей на ютуб канале или онлайн билета? :)
Как альтернативу можно использовать приложения с пуш уведомлениями. У меня так из PagerdDuty на мобильный приходит — достаточно удобно.
Я так понимаю, проблему инкрементального бэкапа можно решить с включением chanks.
А как идет запись изменений — только дописывания файла или изменение в любой его части?
Что насчет эффективности хранения мультимедии или любых пользовательских файлов, а не только сырых математических данных?
Есть ли примеры сравнения с другими форматами, вроде Pack файла гита или всяких других форматов хранения данных, вроде формата borgbackup?
Было бы круто сделать такое расширенное сравнение на хабре, вместо чтения исходной документации :)
cpu 2 ядра, ram 4ГБ, ssd 4ГБ, gpu 512МБ = «2580 руб. в месяц или всего 1806 руб. при оплате за год!»
Получается 370$ по самому оптимистичному варианту, то есть в перспективе 2-4 лет системник будет дешевле поставить. Если бы была почасовая оплата с возможностью поднимать сервер только тогда, когда он нужен — было бы конкурентнее имхо
при шифровании /boot раздела можно использовать специальный файлик с ключом от остальных дисков на зашифрованном /boot или внутри образа ядра;
плюсы: пароль вводиться только для /boot раздела
минусы: при компрометации оси пасс от дисков несколько проще украсть из файла, нежели из памяти. хотя при такой компрометации оси с дальнейшем физическим доступом к дискам, это не самая большая ваша проблема имхо…

Information

Rating
Does not participate
Registered
Activity