home-ops: инструменты для управления домашней лабораторией на базе Kubernetes

home-ops — это набор инструментов для настройки и управления домашней лабораторией на базе Kubernetes с использованием подхода GitOps. Этот проект упрощает развертывание и управление сервером с помощью конфигурационных файлов в репозитории, что позволяет легко отслеживать изменения и обеспечивать повторяемость.

Основная задача, которую решает home-ops, — это облегчение процесса управления локальными кластерами Kubernetes. В отличие от более громоздких решений, таких как Rancher или OpenShift, этот проект предлагает легковесное и настраиваемое решение, которое идеально подходит для разработчиков и системных администраторов, желающих быстро настроить домашнюю лабораторию без лишних затруднений.

К проекту можно подключиться через Talos Linux, а для запуска потребуется Kubernetes-кластер. Обрати внимание, что проект находится на ранней стадии разработки и может не поддерживаться на всех операционных системах. Также есть активное сообщество в Discord, что может быть полезно для решения возникающих вопросов.

Проект chr1sd/home-ops представляет собой репозиторий, посвящённый домашнему лабораторному окружению на базе Kubernetes. Основная цель этого проекта — углубление знаний в области Kubernetes и применение подхода GitOps в управлении достаточно мощным кластером, работающим на операционной системе Talos Linux. В этом проекте разработчик делится своим опытом и настройками, результатом которых стал функционирующий кластер на базе железа, собранного самостоятельно.

Аппаратное обеспечение

В проекте используются следующие аппаратные компоненты:

Система Роль ЦПУ ОП Графика Диск (загрузочный) Диск (хранение)
Minisforum MS-01 (3x) Контрольная панель/Рабочий узел Intel i9-12900H 96GB DDR5 Intel Iris XE Samsung PM983 960GB M.2 NVME Crucial 1TB M.2 NVME
HL15 2.0 NASS AMD Epyc 7452 256GB DDR4 512GB NVME Mirror ZFS RaidZ2 Pool (12x 28TB Disks)
Retired Gamer ИИ Intel i7-6700K 64GB DDR4 2x RTX 3090 Kingston 1TB NVME

Программное обеспечение

Кластер работает на Talos Linux — операционной системе, специально разработанной для Kubernetes, которая обеспечивает неизменяемость и управление через API. Talos упрощает конфигурацию системы для GitOps-подхода.

Сети

Сетевая инфраструктура лаборатории построена на оборудовании от Ubiquiti с настроенными VLAN для IoT, управления, DMZ и камер. В кластере используется Cilium для управления сетевым трафиком, а трафиком приложений управляет Envoy Gateway.

Наблюдаемость и хранилище

Для наблюдения за кластером используются следующие инструменты:

Постоянное хранилище реализовано с помощью Rook-Ceph, которое использует NVMe диски для хранения данных и обеспечивает репликацию данных между узлами кластера.

GitOps с Flux

Основу кластера составляет Flux CD — контроллер GitOps, который синхронизирует состояние Kubernetes с репозиторием Git. Flux проверяет, соответствует ли текущее состояние кластера состоянию в репозитории, и исправляет любые расхождения. Что касается обновлений, то для этого также используется Renovate.

Если ты заинтересован в создании собственного домашнего лабораторного окружения, проект chr1sd/home-ops может послужить отличным примером.

Открыть на GitHub: chr1sd/home-ops →

Что нового на GitHub — короткие обзоры на русском Новые обзоры приходят в Telegram. Без спама, по делу.
Подписаться

Похожие статьи

Популярные темы на сайте