Быстрый старт
Этот документ поможет вам быстро понять, как создать Git Connector и использовать его для безопасного клонирования репозиториев без прямого обращения с учетными данными.
Содержание
ВведениеПрименимые сценарииОценочное время чтенияПримечанияТребованияОбзор процессаШаги выполненияШаг 1: Создать NamespaceШаг 2: Создать Git Credentials и ConnectorШаг 3: Создать Clone JobШаг 4: Проверить выполнениеОжидаемые результатыКак это работаетУстранение неполадокСледующие шагиВведение
Применимые сценарии
Git Connector позволяет безопасно выполнять операции клонирования кода, обеспечивая:
- Централизованное управление учетными данными вместо их жесткого кодирования в рабочих нагрузках
- Автоматическую подстановку аутентификации во время процесса клонирования
- Контролируемый доступ к приватным репозиториям для команд
Этот подход особенно полезен для:
- CI/CD конвейеров, требующих безопасного доступа к приватным репозиториям
- Команд, которые совместно используют доступ к репозиториям без передачи учетных данных
- Сред, требующих централизованного управления учетными данными Git
Оценочное время чтения
15 минут
Примечания
- Git Connector использует интеграцию с CSI драйвером для безопасной подстановки учетных данных Git.
- Сгенерированные коннектором конфигурации действительны в течение 30 минут.
Требования
- Kubernetes кластер с установленной системой Connectors (Operator, Core и Git компоненты). Подробнее об установке этих компонентов смотрите в Installation Guide.
- kubectl, настроенный для взаимодействия с вашим кластером
- Git репозиторий с действительными учетными данными (имя пользователя/пароль или токен)
- Базовые знания ресурсов Kubernetes
Обзор процесса
Шаги выполнения
Шаг 1: Создать Namespace
Создайте выделенный namespace для демонстрации:
Шаг 2: Создать Git Credentials и Connector
Создайте Secret с учетными данными Git и ресурс Git Connector. Более подробную информацию о создании и настройке коннекторов смотрите в Connectors Quick Start Guide.
Проверьте, что коннектор находится в статусе "Ready":
Вывод должен быть следующим:
Шаг 3: Создать Clone Job
Создайте job, который использует коннектор для клонирования репозитория:
Ключевые параметры:
connector.name: имя вашего Git коннектораconfiguration.names: установлено в "gitconfig", что ссылается на конкретный шаблон конфигурации, определённый в Git ConnectorClass. Этот шаблон используется для генерации файла ".gitconfig" с соответствующими настройками аутентификации и переписывания URL.mountPath: должен быть установлен в "/root/", так как контейнер запускается от имени пользователя root, и Git ищет конфигурацию по пути "/root/.gitconfig"
Шаг 4: Проверить выполнение
Проверьте логи job, чтобы убедиться, что репозиторий успешно клонирован:
Вы должны увидеть успешное завершение операции клонирования Git без ошибок аутентификации.
Ожидаемые результаты
После успешного выполнения всех шагов вы увидите:
-
Git коннектор в статусе "Ready":
-
Успешную операцию клонирования Git в логах job:
Как это работает
Git Connector работает следующим образом:
- Заменяет исходный URL репозитория Git на URL прокси-сервиса
- Внедряет информацию об аутентификации в запросы к прокси-сервису
- Прокси-сервис добавляет необходимые учетные данные при пересылке запросов к Git серверу
Чтобы просмотреть сгенерированную конфигурацию:
Просмотрите сгенерированную конфигурацию:
Пример вывода:
Устранение неполадок
Если операция клонирования не удалась, проверьте следующее:
-
Статус коннектора: Убедитесь, что коннектор находится в состоянии "Ready":
-
Разрешения RBAC: Проверьте правильность настройки RoleBinding.
-
Конфигурация job:
- Убедитесь, что путь монтирования тома корректен (/root/)
- Проверьте, что URL репозитория совпадает с тем, что настроен в коннекторе
Следующие шаги
После успешного клонирования первого репозитория с помощью Git Connector вы можете:
- Интегрировать этот подход в ваши CI/CD конвейеры
- Использовать коннектор для других операций Git, таких как push, pull и fetch
- Создавать коннекторы для различных Git сервисов