Forwarded from Ænix.io
Мы рады поделиться новостями проекта. Эксперимент показал себя хорошо и проекту быть! Сегодня мы выпускаем первую альфа-версию нашего community driven etcd-operator'а
Силой комьюнити мы разработали базовую спеку, придумали классную логику для бутстрапа кластеров и начали писать реализацию. У нас есть сайт, тесты и пайплайн. Этого не получилось бы без вас и вашего энтузиазма.
Впереди нас ждёт долгий путь. Но главное что мы собрали команду и наладили процесс. Я уверен что вместе с вами мы пройдём его очень быстро!
Силой комьюнити мы разработали базовую спеку, придумали классную логику для бутстрапа кластеров и начали писать реализацию. У нас есть сайт, тесты и пайплайн. Этого не получилось бы без вас и вашего энтузиазма.
Впереди нас ждёт долгий путь. Но главное что мы собрали команду и наладили процесс. Я уверен что вместе с вами мы пройдём его очень быстро!
👍13
Ток что вернулся с CloudFest, там ребята представляли недавно опенсорснутую на гитхабе SaunaFS.
https://github.com/leil-io/saunafs
Давайте насыпем им звёзд ⭐
https://github.com/leil-io/saunafs
Давайте насыпем им звёзд ⭐
GitHub
GitHub - leil-io/saunafs: SaunaFS is a free-and open source, distributed POSIX file system inspired by Google File System.
SaunaFS is a free-and open source, distributed POSIX file system inspired by Google File System. - leil-io/saunafs
Forwarded from opennet.ru
Первый альфа-выпуск etcd-оператора для Kubernetes https://opennet.ru/60833/
www.opennet.ru
Первый альфа-выпуск etcd-оператора для Kubernetes
Опубликована первая альфа-версия проекта etcd-operator, развивающего инструментарий для упрощения развёртывания распределённого хранилища etcd в окружении Kubernetes и управления кластерами etcd. Инструментарий может решать такие задачи, как развёртывание…
👍3👎1
Forwarded from opennet.ru
Опубликован выпуск SDS Vitastor 1.5.0 с поддержкой кластерной ФС https://opennet.ru/60835/
www.opennet.ru
Опубликован выпуск SDS Vitastor 1.5.0 с поддержкой кластерной ФС
Опубликован выпуск 1.5.0 программной системы хранения данных Vitastor с поддержкой кластерной файловой системы (VitastorFS). Vitastor - распределённая блочная программная система хранения данных, то есть, хранилище образов виртуальных машин или томов контейнеров…
👍5
Отличное объяснение того как работает теория игр и какая стратегия является выигрышной
https://youtu.be/o-lFK7nZIKE
https://youtu.be/o-lFK7nZIKE
YouTube
Теория игр: жизнь, Вселенная и всё остальное [Veritasium]
Поддержать проект можно по ссылкам:
Если вы в России: https://boosty.to/vertdider
Если вы не в России: https://www.patreon.com/VertDider
Дилемма заключённого — известная задача в теории игр. Самая выигрышная стратегия в ней — предательство. Но что если эту…
Если вы в России: https://boosty.to/vertdider
Если вы не в России: https://www.patreon.com/VertDider
Дилемма заключённого — известная задача в теории игр. Самая выигрышная стратегия в ней — предательство. Но что если эту…
👍2
Забавная история произошла с этой картинкой. Я нарисовал её и запостил в @kubernetes_ru лет 5 назад, и тут она снова всплывает в одном из чатов, который мы создали для разработки свободного @etcd_operator'а.
Судя по jpeg артефактам она обошла пол интернета и сейчас вернулась обратно ко мне :D
Судя по jpeg артефактам она обошла пол интернета и сейчас вернулась обратно ко мне :D
👍17
Коллеги из Deckhouse приняли решение переписать LINSTOR на go:
Установку модуля выполняет Deckhouse. В целом контроллер и CRD можно установить и самостоятельно, но мы такое не поддерживаем на данный момент.
Код открыт: https://github.com/deckhouse/sds-replicated-volume
Будем рады обратной связи и поддержке :)
GitHub
GitHub - deckhouse/sds-replicated-volume
Contribute to deckhouse/sds-replicated-volume development by creating an account on GitHub.
❤3😱2
Forwarded from 𝚔𝚟𝚊𝚙𝚜
На мите кому-то обещал пошарить солюшен для объединения удаленных нод куба в разных физических локейшенах в одну физическую сеть, я говорил про:
skupper.io и liqo.io
У кого-то был опыт работы с ними?
skupper.io и liqo.io
У кого-то был опыт работы с ними?
Forwarded from Ænix.io
Сегодня в официальном блоге Kubernetes вышла серия публикаций, посвященных тому, как в Cozystack мы реализуем управляемые Kubernetes-кластера, а также обзор всех связанных технологий.
- Kubernetes distro using Talos Linux and FluxCD
- Kubernetes as virtual machines orchestrator.
- Kubernetes-in-Kubernetes with Cluster API and Kamaji
- Kubernetes distro using Talos Linux and FluxCD
- Kubernetes as virtual machines orchestrator.
- Kubernetes-in-Kubernetes with Cluster API and Kamaji
Kubernetes
DIY: Create Your Own Cloud with Kubernetes (Part 1)
At Ænix, we have a deep affection for Kubernetes and dream that all modern technologies will soon start utilizing its remarkable patterns.
Have you ever thought about building your own cloud? I bet you have. But is it possible to do this using only modern…
Have you ever thought about building your own cloud? I bet you have. But is it possible to do this using only modern…
🔥11👍2👎1
Forwarded from Ænix.io
Мы рады представить вторую версию нашего etcd-operator'а
(проект развивается силой комьюнити @kubernetes_ru)
В списке изменений:
- Мы наконец-то стабилизировали спеку EtcdCluster
- Добавлена поддержка SSL, с генерацией сертификатов через cert-manager
- Переработана логика применения пользовательских патчей
- Протестирована возможность работы с Kubernetes
- Добавлены примеры манифестов для Kamaji (Kubernetes control-plane manager)
Присоединяйтесь к разработке: @etcd_operator
https://github.com/aenix-io/etcd-operator/releases/tag/v0.2.0
(проект развивается силой комьюнити @kubernetes_ru)
В списке изменений:
- Мы наконец-то стабилизировали спеку EtcdCluster
- Добавлена поддержка SSL, с генерацией сертификатов через cert-manager
- Переработана логика применения пользовательских патчей
- Протестирована возможность работы с Kubernetes
- Добавлены примеры манифестов для Kamaji (Kubernetes control-plane manager)
Присоединяйтесь к разработке: @etcd_operator
https://github.com/aenix-io/etcd-operator/releases/tag/v0.2.0
GitHub
Release v0.2.0 · aenix-io/etcd-operator
Changes
Add permission contents write to release drafter @hiddenmarten (#192)
Add permission contents write to upload assets job @hiddenmarten (#190)
Add go mod tidy into pre-commit and move nilaw...
Add permission contents write to release drafter @hiddenmarten (#192)
Add permission contents write to upload assets job @hiddenmarten (#190)
Add go mod tidy into pre-commit and move nilaw...
👍4
Forwarded from 𝚔𝚟𝚊𝚙𝚜
В общем, я рад представить новую тулзу для генерации конфигов.
Сделана по образу и подобию Helm, но для Talos Linux.
- Можно делать lookup'ы прямо из Talos API 👾
- Позволяет генерировать патчи, мерджить их, смотреть дифы, получать конфиги
- Расчитана, как на использование с GitOps, т.е. отрендеренные конфиги можно хранить отдельно, либо применять напрямую
- На данный момент реализованы функции:
https://github.com/aenix-io/talm
Сделана по образу и подобию Helm, но для Talos Linux.
- Можно делать lookup'ы прямо из Talos API 👾
- Позволяет генерировать патчи, мерджить их, смотреть дифы, получать конфиги
- Расчитана, как на использование с GitOps, т.е. отрендеренные конфиги можно хранить отдельно, либо применять напрямую
- На данный момент реализованы функции:
init, template, apply и upgradehttps://github.com/aenix-io/talm
GitHub
GitHub - cozystack/talm: Manage Talos Linux the GitOps Way!
Manage Talos Linux the GitOps Way! Contribute to cozystack/talm development by creating an account on GitHub.
🔥15👍2
Forwarded from Ænix.io
Вышла новая версия Talm. Теперь применять конфиги можно просто как с kubectl apply:
talm автоматически распознает опции nodes и endpoints из каждого конкретного файла и применит конфиги куда нужно.
Добавил примеров в README.md, описал как кастомайзить шаблоны и как хранить секреты
Ещё одна фича которая появилась - это in-place обновления конфигов, например такая команда:
- обновит конфиги из тех шаблонов с помощью которых они были получены.
Теперь менеджить Talos стало ещё удобнее 🎉
talm apply -f node1.yaml -f node2.yaml
talm автоматически распознает опции nodes и endpoints из каждого конкретного файла и применит конфиги куда нужно.
Добавил примеров в README.md, описал как кастомайзить шаблоны и как хранить секреты
Ещё одна фича которая появилась - это in-place обновления конфигов, например такая команда:
talm template --in-place -f node1.yaml -f node2.yaml
- обновит конфиги из тех шаблонов с помощью которых они были получены.
Теперь менеджить Talos стало ещё удобнее 🎉
GitHub
GitHub - cozystack/talm: Manage Talos Linux the GitOps Way!
Manage Talos Linux the GitOps Way! Contribute to cozystack/talm development by creating an account on GitHub.
Forwarded from k8s (in)security (r0binak)
Если вам захотелось посмотреть как выглядит ваш
По сути это небольшой
ETCD внутри, то инструмент ETCD Keeper может с этим помочь.По сути это небольшой
web ETCD client с возможностью просматривать, добавлять, обновлять или удалять ноды, а также сами ключи и их значения. Есть поддержка как v2 так и v3 версии.👍5
Forwarded from Ænix.io
Мы рады представить новый релиз Cozystack v0.4.0
Из основных улучшений:
- Helm-чарт kamaji-etcd заменён на aenix's community etcd-operator
- LINSTOR, Kamaji и Kubeapps обновлены до последних версий
- Улучшен development experience, тэги для образов теперь генерируются автоматически
- Ко всем компонентам добавлена возможность указания реплик
- Дашбоард получил небольшой редизайн (включая тёмную версию)
- Платформа теперь предлагает образ Talos Linux v1.7.1 по умолчанию
- Дополнительные фиксы и улучшения
Из основных улучшений:
- Helm-чарт kamaji-etcd заменён на aenix's community etcd-operator
- LINSTOR, Kamaji и Kubeapps обновлены до последних версий
- Улучшен development experience, тэги для образов теперь генерируются автоматически
- Ко всем компонентам добавлена возможность указания реплик
- Дашбоард получил небольшой редизайн (включая тёмную версию)
- Платформа теперь предлагает образ Talos Linux v1.7.1 по умолчанию
- Дополнительные фиксы и улучшения
🔥5👍3
Ænix.io
Мы рады представить новый релиз Cozystack v0.4.0 Из основных улучшений: - Helm-чарт kamaji-etcd заменён на aenix's community etcd-operator - LINSTOR, Kamaji и Kubeapps обновлены до последних версий - Улучшен development experience, тэги для образов теперь…
У нас кстати открытая разработка, если кто-то хочет присоединиться и вместе с нами попилить опенсорс, милости просим в канал @cozystack.
Все научим и покажем, ответим на любые вопросы.
В среду будет очередной мит
Все научим и покажем, ответим на любые вопросы.
В среду будет очередной мит
🔥1
Сегодня игрался с SeaweedFS.
Несколько моментов которые для себя заметил:
1. seaweedfs-operator не выглядит завершённым, занёс PR на настройку вебхуков, вроде завелось, но официальный Helm-чарт похоже сейчас в приоритете.
2. postgres в качестве бекенда, интегрируется с CNPG на раз-два, кластер пошатал вроде всё стабильно
3. есть несколько неочевидных вещей с переменными окружения и параметрами вроле
4. в целом понравилось, в идеологию Cozystack ложится как-раз. Будем запускать отедльный кластер на тенанта и давать возможность создавать бакеты в нём.
5. результат: будем адоптить
Несколько моментов которые для себя заметил:
1. seaweedfs-operator не выглядит завершённым, занёс PR на настройку вебхуков, вроде завелось, но официальный Helm-чарт похоже сейчас в приоритете.
2. postgres в качестве бекенда, интегрируется с CNPG на раз-два, кластер пошатал вроде всё стабильно
3. есть несколько неочевидных вещей с переменными окружения и параметрами вроле
maxVolumes и volumeSizeLimitMB, в документации я объяснений не нашёл, пришлось разбираться на ощупь. Похоже что с SeaweedFS, наилучшая документация - это RTFS4. в целом понравилось, в идеологию Cozystack ложится как-раз. Будем запускать отедльный кластер на тенанта и давать возможность создавать бакеты в нём.
5. результат: будем адоптить
🔥10
Forwarded from Нарыл (Pavel Sorokin)
Есть такая общеизвестная проблема когда делаешь non-root в k8s: контейнерам нужно биндить порты до 1024, что по умолчанию в Linux запрещено.
Лично по-моему само по себе такое ограничение - архитектурная ошибка в Linux, которая привела к куче проблем и сложностей: сервису, например nginx, нужно стартовать от рута, забиндить порт, а потом дропнуть лишние привилегии. Что уже само по себе звучит не безопасно и разумеется приводило к множеству LPE. А профит с точки зрения ИБ крайне сомнительный. Может быть он был когда на одном сервере одновременно крутился важный сайт на 80 порту и еще сидели руками какие-то непривилегированные пользователи, но сейчас это кажется бесполезным чуть более чем полностью (попробуйте меня переубедить :D)
Параметр ядра net.ipv4.ip_unprivileged_port_start позволяет управлять этим поведением в Linux. Если его установить в значение 0, то любому пользователю будет доступен биндинг любых портов. Параметр net.ipv4.ip_unprivileged_port_start относится к сетевому неймспейсу и у каждого контейнера свой.
При внедрении non-root можно добавлять securityContext.sysctls (net.ipv4.ip_unprivileged_port_start=0) в манифесты, но это требует модификации всех манифестов.
И вот я тут обнаружил что есть другой путь - в конфиге containerd есть опция enable_unprivileged_ports, которая устанавливает net.ipv4.ip_unprivileged_port_start в 0 для всех создаваемых контейнеров.
Другими словами можно поменять один параметр на всех нодах и не возиться с манифестами.
Лично по-моему само по себе такое ограничение - архитектурная ошибка в Linux, которая привела к куче проблем и сложностей: сервису, например nginx, нужно стартовать от рута, забиндить порт, а потом дропнуть лишние привилегии. Что уже само по себе звучит не безопасно и разумеется приводило к множеству LPE. А профит с точки зрения ИБ крайне сомнительный. Может быть он был когда на одном сервере одновременно крутился важный сайт на 80 порту и еще сидели руками какие-то непривилегированные пользователи, но сейчас это кажется бесполезным чуть более чем полностью (попробуйте меня переубедить :D)
Параметр ядра net.ipv4.ip_unprivileged_port_start позволяет управлять этим поведением в Linux. Если его установить в значение 0, то любому пользователю будет доступен биндинг любых портов. Параметр net.ipv4.ip_unprivileged_port_start относится к сетевому неймспейсу и у каждого контейнера свой.
При внедрении non-root можно добавлять securityContext.sysctls (net.ipv4.ip_unprivileged_port_start=0) в манифесты, но это требует модификации всех манифестов.
И вот я тут обнаружил что есть другой путь - в конфиге containerd есть опция enable_unprivileged_ports, которая устанавливает net.ipv4.ip_unprivileged_port_start в 0 для всех создаваемых контейнеров.
Другими словами можно поменять один параметр на всех нодах и не возиться с манифестами.
👍27🔥6👀1
Forwarded from opennet.ru
Проект Cozystack выпустил Talm, менеджер конфигураций для Talos Linux https://opennet.ru/61223/
www.opennet.ru
Проект Cozystack выпустил Talm, менеджер конфигураций для Talos Linux
Разработчики свободной PaaS-платформы Cozystack подготовили проект Talm, призванный упростить конфигурацию bare-metal серверов для Talos Linux, операционной системы для запуска Kubernetes, которая имеет Kubernetes-подобное API и настраивается одним Yaml-манифестом.…
👍4🔥4