Мы рады представить вторую версию нашего 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...
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
и upgrade
https://github.com/aenix-io/talm
GitHub
GitHub - aenix-io/talm: Manage Talos Linux the GitOps Way!
Manage Talos Linux the GitOps Way! Contribute to aenix-io/talm development by creating an account on GitHub.
Вторая версия Talm включает в себя улучшенную команду инициации
Talm–чарты можно посмотреть в репозитории:
-
-
-
https://github.com/aenix-io/talm/tree/main/charts
talm init
и готовые пресеты.Talm–чарты можно посмотреть в репозитории:
-
generic
- Максимально стандартный конфиг Talos Linux, с несколькими дополнительными опциями-
cozystack
- Конфиг Talos Linux оптимизированный для запуска платформы Cozystack-
talm
- library чарт используемый в обоих вышеперечисленных чартах, он прелоставляет lookup функции для опрашивания Talos APIhttps://github.com/aenix-io/talm/tree/main/charts
GitHub
talm/charts at main · aenix-io/talm
Manage Talos Linux the GitOps Way! Contribute to aenix-io/talm development by creating an account on GitHub.
Вышла новая версия 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 - aenix-io/talm: Manage Talos Linux the GitOps Way!
Manage Talos Linux the GitOps Way! Contribute to aenix-io/talm development by creating an account on GitHub.
Мы рады представить новый релиз 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 по умолчанию
- Дополнительные фиксы и улучшения
Новая версия Talm v0.5.0 имплементирует тот-же набор команд что и talosctl.
Теперь можно удобно запускать dashboard (сразу для нескольких нод):
использовать get для получения информации из API:
или снимать бэкап etcd:
Полный набор доступных команд:
Теперь можно удобно запускать dashboard (сразу для нескольких нод):
talm dashboard -f srv1.yaml -f srv2.yaml -f srv3.yaml
использовать get для получения информации из API:
talm -f srv1.yaml get routes
или снимать бэкап etcd:
talm -f srv2.yaml etcd snapshot snapshod.db
Полный набор доступных команд:
#talm --help
Manage Talos the GitOps Way!
Usage:
talm [command]
Available Commands:
apply Apply config to a Talos node
bootstrap Bootstrap the etcd cluster on the specified node.
completion Generate the autocompletion script for the specified shell
containers List containers
dashboard Cluster dashboard with node overview, logs and real-time metrics
disks Get the list of disks from /sys/block on the machine
dmesg Retrieve kernel logs
etcd Manage etcd
events Stream runtime events
get Get a specific resource or list of resources (use 'talosctl get rd' to see all available resource types).
health Check cluster health
help Help about any command
image Manage CRI containter images
init Initialize a new project and generate default values
kubeconfig Download the admin kubeconfig from the node
list Retrieve a directory listing
logs Retrieve logs for a service
memory Show memory usage
mounts List mounts
netstat Show network connections and sockets
pcap Capture the network packets from the node.
processes List running processes
read Read a file on the machine
reboot Reboot a node
reset Reset a node
restart Restart a process
rollback Rollback a node to the previous installation
service Retrieve the state of a service (or all services), control service state
shutdown Shutdown a node
stats Get container stats
template Render templates locally and display the output
time Gets current server time
upgrade Upgrade Talos on the target node
version Prints the version
Наш публичный календарь гастролей, напишите если планируете посетить какое-то из мероприятий, будем рады встретиться лично:
---
June 6-7, 2024 — KCD Czech & Slovak 2024
Location: Prague, Czech Republic
Attendees: Andrei Kvapil, Viktoriia Kvapil
Talks:
1. Title: Reconciliation loop pattern in visual representation
Speaker: Andrei Kvapil
Date: June 6, 2024, 4:30 PM CEDT
2. Title: Kubernetes is the new Skynet, or: the rise of Kubernetes automation
Speaker: Andrei Kvapil
Date: June 7, 2024, 1:10 PM CEDT
---
June 13-15, 2024 — DevConf.cz
Location: Brno, Czech Republic
Attendees: George Gaal, Andrei Kvapil, Viktoriia Kvapil
---
September 18, 2024 — Taloscon
Location: London, UK
Attendees: Andrei Kvapil, Viktoriia Kvapil
Talk:
1. Title: Mastering Bare Metal with Talos Linux: A Comprehensive Platform Approach
Speaker: Andrei Kvapil
---
September 19-20, 2024 — SREday 2024 London
Location: London, UK
Attendees: Andrei Kvapil, Viktoriia Kvapil
Talk:
1. Title: How to deploy a reproducible environment on bare metal with Talos Linux
Speaker: Andrei Kvapil
---
October 28-29, 2024 — Tech Internals Conf Berlin 2024
Location: Berlin, Germany
Attendees: Andrei Kvapil, Viktoriia Kvapil, George Gaal
Talks:
1. Title: Click-Click and Kubernetes: Kubernetes-in-Kubernetes with Kamaji, KubeVirt, and the Cluster API
Speaker: Andrei Kvapil
2. Title: How to effectively secure access to ssh and k8s with Teleport
Speaker: George Gaal
---
June 6-7, 2024 — KCD Czech & Slovak 2024
Location: Prague, Czech Republic
Attendees: Andrei Kvapil, Viktoriia Kvapil
Talks:
1. Title: Reconciliation loop pattern in visual representation
Speaker: Andrei Kvapil
Date: June 6, 2024, 4:30 PM CEDT
2. Title: Kubernetes is the new Skynet, or: the rise of Kubernetes automation
Speaker: Andrei Kvapil
Date: June 7, 2024, 1:10 PM CEDT
---
June 13-15, 2024 — DevConf.cz
Location: Brno, Czech Republic
Attendees: George Gaal, Andrei Kvapil, Viktoriia Kvapil
---
September 18, 2024 — Taloscon
Location: London, UK
Attendees: Andrei Kvapil, Viktoriia Kvapil
Talk:
1. Title: Mastering Bare Metal with Talos Linux: A Comprehensive Platform Approach
Speaker: Andrei Kvapil
---
September 19-20, 2024 — SREday 2024 London
Location: London, UK
Attendees: Andrei Kvapil, Viktoriia Kvapil
Talk:
1. Title: How to deploy a reproducible environment on bare metal with Talos Linux
Speaker: Andrei Kvapil
---
October 28-29, 2024 — Tech Internals Conf Berlin 2024
Location: Berlin, Germany
Attendees: Andrei Kvapil, Viktoriia Kvapil, George Gaal
Talks:
1. Title: Click-Click and Kubernetes: Kubernetes-in-Kubernetes with Kamaji, KubeVirt, and the Cluster API
Speaker: Andrei Kvapil
2. Title: How to effectively secure access to ssh and k8s with Teleport
Speaker: George Gaal
За последнее время не публиковали записи наших комьюнити митов. Исправляемся.
Теперь все они доступны в плейлистах на Youtube:
Cozystack:
https://www.youtube.com/playlist?list=PLEIgpkcPkMHaXqndo8iMMLS64p4sBkHPg
etcd-operator:
https://www.youtube.com/playlist?list=PLJtQvuQ_bJl1dbKiI8zp6KXn9b4NEyQZh
Не забывайте подписаться на календарь, чтобы не пропустить следующий мит.
Теперь все они доступны в плейлистах на Youtube:
Cozystack:
https://www.youtube.com/playlist?list=PLEIgpkcPkMHaXqndo8iMMLS64p4sBkHPg
etcd-operator:
https://www.youtube.com/playlist?list=PLJtQvuQ_bJl1dbKiI8zp6KXn9b4NEyQZh
Не забывайте подписаться на календарь, чтобы не пропустить следующий мит.
YouTube
Cozystack Community meetings
Share your videos with friends, family, and the world
Forwarded from ITTales :(){ :|:& };:
Сегодня игрался с 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. результат: будем адоптить
Новая версия Cozystack v0.6.0 имеет несколько улучшений для пользовательских Kubernetes-кластеров.
- Добавлена возможность подключаться к виртуальным машинам через serial-console. Пользователь root теперь не требует пароля и машины можно легко дебажить. Для этого вам понадобится утилита virtctl из инструментария KubeVirt
- Решена проблема с переполняющимся местом для хранения контейнеров, теперь все виртуальные машины запускаются с двумя эфимерными дисками, которые подключаются в /var/lib/containerd и /var/lib/kubelet соотвественно
- etcd quota-backend-bytes теперь устанавливается автоматически на 95% от запрошенного пользователем места
- Добавлена возможность подключаться к виртуальным машинам через serial-console. Пользователь root теперь не требует пароля и машины можно легко дебажить. Для этого вам понадобится утилита virtctl из инструментария KubeVirt
- Решена проблема с переполняющимся местом для хранения контейнеров, теперь все виртуальные машины запускаются с двумя эфимерными дисками, которые подключаются в /var/lib/containerd и /var/lib/kubelet соотвественно
- etcd quota-backend-bytes теперь устанавливается автоматически на 95% от запрошенного пользователем места
kubevirt.io
Download and Install the virtctl Command Line Interface - KubeVirt user guide
Documentation for KubeVirt
Обновили документацию, всё что касается Talos Linux было вынесено в отдельный раздел.
- Добавлена инструкция по декларативному методу настройки кластера с помощью Talm
- Помимо установки с помощью PXE и Hetzner обавлена инструкция по установке с ISO-образа
- Страничка Getting Started переработана, чтобы ссылаться на все доступные методы установки
- В FAQ добавлен раздел Operations описывающий некоторые задачи по обслуживанию кластера
Пожалуйста не стесняйтесь задавать вопросы и присылать ваши исправления в документацию
- Добавлена инструкция по декларативному методу настройки кластера с помощью Talm
- Помимо установки с помощью PXE и Hetzner обавлена инструкция по установке с ISO-образа
- Страничка Getting Started переработана, чтобы ссылаться на все доступные методы установки
- В FAQ добавлен раздел Operations описывающий некоторые задачи по обслуживанию кластера
Пожалуйста не стесняйтесь задавать вопросы и присылать ваши исправления в документацию
cozystack.io
Cozystack - Free PaaS platform and framework for building clouds
With Cozystack, you can transform your bunch of servers into an intelligent system with a simple REST API for spawning Kubernetes clusters, Database-as-a-Service, virtual machines, load balancers, HTTP caching services, and other services with ease.
You can…
You can…
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-манифестом.…
Хочу напомнить мы тут целым комьюнити пилим свободный etcd-operator.
И нам нужна новая кровь. Если вы хотите учить golang и попробовать себя в совместной разработке комьюнити проекта. Милости просим в чатик @etcd_operator
Сегодня будет наш очередной комьюнити мит.
When: every Tuesday at 16:00 CET (17:00 MSK)
Where: Google meet
Link to join in:
https://meet.google.com/pib-tpfe-kuv
Minutes:
https://docs.google.com/document/d/1coiWlHOVfPAIyKqtfpYLhq9eeRPHCuuMxmNmVfo9-sA/edit
^^ накидывайте что хотите обсудить в Open Floor
И нам нужна новая кровь. Если вы хотите учить golang и попробовать себя в совместной разработке комьюнити проекта. Милости просим в чатик @etcd_operator
Сегодня будет наш очередной комьюнити мит.
When: every Tuesday at 16:00 CET (17:00 MSK)
Where: Google meet
Link to join in:
https://meet.google.com/pib-tpfe-kuv
Minutes:
https://docs.google.com/document/d/1coiWlHOVfPAIyKqtfpYLhq9eeRPHCuuMxmNmVfo9-sA/edit
^^ накидывайте что хотите обсудить в Open Floor
Google
Real-time meetings by Google. Using your browser, share your video, desktop, and presentations with teammates and customers.
> We are discussing the deploy based on Flux the applications built on top of SpinKube. Also we would like to discuss other COZY things like COZY stack platform
Join live translation:
https://www.youtube.com/watch?v=IXi2lhRjOlU
Join live translation:
https://www.youtube.com/watch?v=IXi2lhRjOlU
YouTube
SpinKube and Flux automated, on Kubernetes 1.30 w/ Kingdon Barrett
Kingdon Barrett joins us for a stream on using SpinKube and Flux automated on K8s 1.30.
Check out spinkube.dev for more info
Check out spinkube.dev for more info
Forwarded from ITTales :(){ :|:& };:
Последние несколько дней я потратил на решение проблемы с нерабочим
После углублённого анализа кода BPF-программ как всегда оказалось что проблема не там, а в списке девайсов, на которые Cilium добавляет необходимые обработчики.
По умолчанию Cilium собирает список из девайсов, которые содержат InternalAddress ноды и все для которых указаны global unicast маршруты. Девайс
На данный момент в Cilium есть возможность передать список девайсов явно, но тогда не будет работать автодетект, или использовать автодетект, но тогда не попадает
Для решения этой проблемы подготовил патч, который добавляет в cilium-agent опцию
https://github.com/cilium/cilium/pull/32730#issuecomment-2135982096
externalTrafficPolicy: Сluster
в Cozystack.После углублённого анализа кода BPF-программ как всегда оказалось что проблема не там, а в списке девайсов, на которые Cilium добавляет необходимые обработчики.
По умолчанию Cilium собирает список из девайсов, которые содержат InternalAddress ноды и все для которых указаны global unicast маршруты. Девайс
ovn0
в этом списке не фигурирует. Однако kube-ovn использует его как для доставки трафика пода на ноды.На данный момент в Cilium есть возможность передать список девайсов явно, но тогда не будет работать автодетект, или использовать автодетект, но тогда не попадает
ovn0
, что автоматически делает`externalTrafficPolicy: Сluster` неработоспособным.Для решения этой проблемы подготовил патч, который добавляет в cilium-agent опцию
--enforce-device-detection
которая позволяет использовать автодетекшен в дополнение к указаным в списке девайсам. Теперь нужно этот патч отстоять, если у вас есть подходящая user-story, прокоментируйте этот PR плз:https://github.com/cilium/cilium/pull/32730#issuecomment-2135982096
GitHub
Introduce --enforce-device-detection option by kvaps · Pull Request #32730 · cilium/cilium
Introduce --enforce-device-detection option
Helm chart: enforceDeviceDetection option
Add tests for EnforceDeviceDetection option
Please ensure your pull request adheres to the following guideline...
Helm chart: enforceDeviceDetection option
Add tests for EnforceDeviceDetection option
Please ensure your pull request adheres to the following guideline...
Вышел релиз Cozystack v0.7.0, который стабилизирует работу с пользовательскими Kubernetes-кластерами и работу с сетью:
- Kube-ovn и Cilium обновлены до последних версий
- Решена проблема с коммуникацией подов в тенант Kubernetes кластерах
- Решена проблема с прокидыванием корректных DNS-серверов в пользовательских кластерах
- Решена проблема с некорректной обработкой пользователей и ролей в конфиге Postgres-приложения
- Решены проблемы с неработающим
- Для etcd включен autocompaction и периодический дефраг
- Теперь для родительского кластера предлагается использовать домен
- Kube-ovn и Cilium обновлены до последних версий
- Решена проблема с коммуникацией подов в тенант Kubernetes кластерах
- Решена проблема с прокидыванием корректных DNS-серверов в пользовательских кластерах
- Решена проблема с некорректной обработкой пользователей и ролей в конфиге Postgres-приложения
- Решены проблемы с неработающим
externalTrafficPolicy: Сluster
- Для etcd включен autocompaction и периодический дефраг
- Теперь для родительского кластера предлагается использовать домен
cozy.local
, таким образом из tenant Kubernetes кластеров можно достичь сервисы созданные в родительском по single dns name или FQDNGitHub
Release v0.7.0 · aenix-io/cozystack
What's Changed
etcd: enable autocompact and defrag by @kvaps in #137
switched place -maxdepth im Makefiles by @themoriarti in #140
postgres: fix users and roles by @kvaps in #138
kubernetes: e...
etcd: enable autocompact and defrag by @kvaps in #137
switched place -maxdepth im Makefiles by @themoriarti in #140
postgres: fix users and roles by @kvaps in #138
kubernetes: e...