Чтобы Gitops подход на основе ArgoCD начал работать его нужно настроить. В данном гайде я покажу как подключить приватные репозитории Gitlab, где хранятся приложения и values, а также Harbor, где у меня лежат Helm чарты и образы.

Собираю единомышленников в телеграм канале. Там же отвечаю на вопросы.
Присоединяйся
Шаг 1. Получаем доступ к репозиторию
В Gitlab создаём пользователя argocd и выдаём ему права на чтения репозитория + формируем токен.Gitlab - Администрирование - Пользователи - Новый пользователь - argocd - обычный - Создать
Привязываем группу:Gitlab - Группы - Участники - Пригласить - argocd - Разработчик
Создаём токен:Группы - gitops - Настройки - Управление доступом - Создать токен - Name: read_repository - Срок действия на год - Роль: Developer
Ставим галки на:read_api, read_repository - Создать токен группы
Шаг 2. Подключаем ArgoCD к Gitlab
ArgoCD живёт в кубере и не знает внешнего DNS имени сервиса Gitlab, но зато знает внутри кластера, поэтому посмотри в кубере сервис gitlab-webservice-default, порт и свой домен.
Первый способ подключения:
ArgoCD - Settings - Repository
Выбираем:
Connect Repo - VIA HTTP/HTTPS - Type: git - Project: - Repo URL http://gitlab-webservice-default.gitlab.svc.k8s.domain.local:8181/gitops/cluster_config.git - User:Token - Connect
Второй вариант, если первый не сработал создать этот же репозиторий через кубер:
| |
И прикрепить label:
| |
Шаг 3. Подключаем ArgoCD к Harbor
Чарты и образы хранятся в приватном Harbor.
Подключаем Harbor
Connect Repo - VIA HTTP/HTTPS - Type: oci - Project: default - Repo URL harbor.domain.local - User:Pass - Connect
Готово.
Если твой ArgoCD не доверяет внешним источникам по типу Harbor, добавь рутовый серт в secret, которым он подписан.
| |
