• Русский
  • Понимание Tekton Hub

    Tekton Hub — это веб-интерфейс с графическим пользовательским интерфейсом, который служит централизованным репозиторием и платформой для поиска ресурсов Tekton. Он предоставляет удобный способ доступа, поиска и обмена повторно используемыми компонентами Tekton из Tekton Catalog, позволяя разработчикам быстро находить и интегрировать готовые строительные блоки CI/CD в свои конвейеры.

    Терминология

    ТерминОписание
    CatalogКоллекция ресурсов Tekton, организованная в соответствии со структурой Tekton Catalog Organization TEP
    ResourceКомпонент Tekton, такой как Task, Pipeline или другие строительные блоки, хранящиеся в каталоге
    RatingОценка, предоставленная пользователями для ресурсов в Tekton Hub
    CategoryКлассификация ресурсов по их назначению или функциональности
    API ServiceБэкенд-сервис, обеспечивающий доступ к данным и управление для Tekton Hub
    UIВеб-интерфейс для взаимодействия пользователей с Tekton Hub

    Зачем нужен Tekton Hub

    Проблема поиска и повторного использования ресурсов

    В традиционных CI/CD средах команды часто сталкиваются с проблемой поиска и обмена повторно используемыми компонентами. Без централизованного репозитория разработчики часто:

    • Изобретают велосипед, создавая похожие компоненты конвейера с нуля
    • Испытывают трудности с поиском качественных, протестированных компонентов для общих задач
    • Не имеют видимости того, какие компоненты уже существуют в их организации или в более широком сообществе
    • Трудно определить, какие компоненты хорошо поддерживаются и надежны

    Это приводит к неэффективности, несогласованности и дублированию усилий между командами и проектами.

    Решение Tekton Hub

    Tekton Hub решает эти задачи, предоставляя централизованную платформу, которая:

    • Агрегирует ресурсы Tekton из нескольких каталогов в поисковый репозиторий
    • Позволяет пользователям находить, оценивать и использовать готовые компоненты
    • Предоставляет систему рейтингов для помощи в выявлении качественных ресурсов
    • Предлагает подробную информацию о каждом ресурсе, включая версии, документацию и примеры
    • Упрощает процесс включения этих ресурсов в конвейеры

    Централизуя поиск и управление ресурсами, Tekton Hub способствует повторному использованию, стандартизации и сотрудничеству в экосистеме Tekton.

    Преимущества

    • Упрощённый поиск: удобный веб-интерфейс для поиска ресурсов Tekton
    • Повышенная повторяемость: способствует обмену и повторному использованию хорошо протестированных компонентов
    • Гарантия качества: система рейтингов помогает пользователям выявлять надежные ресурсы
    • Управление версиями: отслеживает несколько версий ресурсов для совместимости
    • Категоризация: организует ресурсы по типу и назначению для удобной навигации
    • Аутентификация: поддерживает несколько методов аутентификации (GitHub, GitLab, BitBucket)
    • Доступ к API: предоставляет как версионированные, так и внутренние API для интеграции

    Сценарии

    Сценарий 1: Разработчик ищет компоненты CI

    Разработчику нужно настроить CI-конвейер для нового проекта. Вместо того чтобы создавать все необходимые задачи с нуля, он посещает Tekton Hub для поиска готовых компонентов. Он находит задачи для запуска тестов, сборки контейнеров и сканирования на уязвимости. Несколькими кликами он может просмотреть документацию, проверить рейтинги и установить эти компоненты в свой Kubernetes кластер.

    Сценарий 2: Команда платформы управляет пользовательскими каталогами

    Команда инженеров платформы хочет создавать и делиться стандартизированными компонентами CI/CD по всей организации. Они создают пользовательский каталог в соответствии со структурой Tekton Catalog, добавляют его в развертывание Tekton Hub и делают доступным для всех разработчиков в организации. Это обеспечивает согласованность и лучшие практики между командами.

    Сценарий 3: Вклад в сообщество

    Разработчик создает полезный Task для конкретного инструмента и хочет поделиться им с сообществом. После тестирования и документирования Task он вносит его в публичный каталог. После утверждения он становится доступен через Tekton Hub для других пользователей.

    Ограничения и лимиты

    • Требуется кластер Kubernetes для развертывания
    • Каталоги должны соответствовать структуре, определённой в Tekton Catalog Organization TEP
    • Для некоторых операций, таких как оценка ресурсов, требуется аутентификация
    • Пользовательские каталоги необходимо добавлять вручную в конфигурацию
    • Ресурсы ограничены теми, что доступны в настроенных каталогах

    Принципы

    Архитектура

    Tekton Hub состоит из трёх основных компонентов:

    1. База данных: база данных PostgreSQL, которая хранит информацию о каталогах, ресурсах и пользователях
    2. API Service: бэкенд-сервис, обеспечивающий доступ к данным и управление

    API Service взаимодействует с базой данных для хранения и извлечения информации о ресурсах и каталогах. Он периодически обновляет данные каталогов, чтобы гарантировать доступность последних ресурсов.

    Рабочий процесс управления ресурсами

    1. Регистрация каталогов: каталоги регистрируются в конфигурации Tekton Hub
    2. Обновление каталогов: система периодически сканирует каталоги на наличие новых или обновлённых ресурсов
    3. Индексация ресурсов: ресурсы индексируются с метаданными для эффективного поиска
    4. Поиск ресурсов: пользователи ищут и просматривают ресурсы через UI
    5. Установка ресурсов: пользователи могут устанавливать ресурсы непосредственно в свои Kubernetes кластеры

    Ссылки