Настройка учетных данных Redis, PostgreSQL, ObjectStorage (s3) и учетных данных доступа к аккаунту
В этом документе описаны методы настройки учетных данных, необходимых для экземпляров Harbor.
Содержание
Предварительные требованияУчетные данные RedisТребованияФормат учетных данныхОбновление учетных данныхИспользование Alauda Cache Service для Redis OSSУчетные данные PostgreSQLТребованияФормат учетных данныхsslmodeОбновление учетных данныхИспользование PostgreSQL, предоставляемого Data ServicesУчетные данные аккаунта HarborУчетные данные Object StorageПредварительные требования
- Этот документ применим к версиям Harbor 2.14 и выше, предоставляемым платформой. Он отделен от платформы и основан на технологиях, таких как Operator.
Учетные данные Redis
Требования
Harbor предъявляет следующие требования к развертыванию Redis:
- Рекомендуется использовать версию Redis 7.x.
- Поддерживаются режимы развертывания
StandaloneиSentinel. Режим RedisClusterне поддерживается.
Для подробных инструкций по развертыванию Redis обратитесь к Официальной документации Harbor.
Формат учетных данных
Создайте Secret в namespace, где планируется развертывание экземпляра Harbor, выберите тип Opaque и добавьте следующие поля в конфигурацию:
- Если присутствуют обе конфигурации — sentinel и standalone, приоритет имеет конфигурация sentinel.
- При развертывании с шаблонами высокой доступности, если настроен standalone Redis, ответственность за обеспечение высокой доступности Redis лежит на пользователе.
Пример для Standalone:
Пример для Sentinel:
Обновление учетных данных
Если необходимо изменить информацию о подключении Redis после развертывания экземпляра Harbor, нужно обновлять ресурс экземпляра Harbor напрямую, а не изменять содержимое учетных данных. Для конкретных действий обратитесь к разделу Настройка учетных данных Redis.
Использование Alauda Cache Service для Redis OSS
При предоставлении сервиса Redis через Alauda Cache Service для Redis OSS учитывайте следующие важные требования:
- Рекомендуется использовать версию Redis 7.x.
- Для типа архитектуры выберите режим Sentinel.
- Для шаблона параметров выберите шаблон с RDB-персистентностью, например system-rdb-redis-7.2-sentinel.
- Включите сохранение данных с квотой хранилища не менее 2 ГБ.
- В сценариях с несколькими сетевыми интерфейсами Redis Sentinel выбирает IP по умолчанию узла для инициализации адреса доступа каждого узла Redis. Не поддерживается доступ к узлам с IP, отличным от IP по умолчанию, и открытым портом. Используйте метод доступа LoadBalancer для создания экземпляров Redis. Подробнее см. документацию по функционалу Alauda Cache Service для Redis OSS.
В настоящее время не поддерживается подключение к Alauda Cache Service для Redis OSS в режиме TLS.
При создании экземпляра Redis автоматически создается Secret с информацией для подключения, который можно использовать напрямую для развертывания Harbor. Этот ресурс Secret можно отфильтровать по метке middleware.instance/type: Redis.
Если экземпляры Redis и Harbor находятся в разных namespace, необходимо скопировать ресурс Secret в namespace экземпляра Harbor.
Для получения дополнительной информации о параметрах развертывания Redis и требованиях к высокой доступности обратитесь к Документация по развертыванию Redis.
Учетные данные PostgreSQL
Требования
Harbor предъявляет следующие требования к версиям PostgreSQL:
Формат учетных данных
Создайте Secret в namespace, где планируется развертывание экземпляра Harbor, выберите тип Opaque и добавьте следующие поля в конфигурацию:
Пример YAML:
Как создать базу данных на экземпляре PG
Подключитесь к экземпляру PG с помощью psql CLI и выполните следующую команду для создания базы данных:
sslmode
sslmode — параметр, управляющий безопасностью соединения между сервисом Harbor и базой данных PostgreSQL. Доступные опции:
require: Требовать SSL-соединениеdisable: Отключить SSL-соединениеverify-ca: Проверять сертификат сервераverify-full: Проверять сертификат сервера и имя хоста
При использовании Alauda support for PostgreSQL параметр sslmode должен быть установлен в require.
При использовании внешнего PostgreSQL параметр sslmode зависит от вашей конфигурации PostgreSQL.
Обновление учетных данных
Если необходимо изменить информацию о подключении PostgreSQL после развертывания экземпляра Harbor, нужно обновлять ресурс экземпляра Harbor напрямую, а не изменять содержимое учетных данных. Для конкретных действий обратитесь к разделу Настройка учетных данных PostgreSQL.
Использование PostgreSQL, предоставляемого Data Services
Data Services поддерживает развертывание экземпляров PostgreSQL, которые можно использовать для развертывания Harbor. При создании экземпляра PostgreSQL учитывайте следующие важные требования:
- Выберите версию PostgreSQL, соответствующую версии Harbor, например, для Harbor 2.14.x выберите PostgreSQL 15.x.
- Квота хранилища должна быть не менее 5 ГиБ.
При создании экземпляра PostgreSQL автоматически создается Secret с информацией для подключения. Этот ресурс Secret можно отфильтровать по метке middleware.instance/type: PostgreSQL.
Этот Secret содержит информацию host, port, username, password. Необходимо дополнить его информацией database и sslmode (установить в require) и создать новый Secret в namespace экземпляра Harbor.
При создании экземпляра Postgres автоматически создается Secret, начинающийся с postgres и содержащий информацию для подключения. Этот Secret можно использовать напрямую для развертывания Harbor и отфильтровать с помощью следующей команды:
Если экземпляры Postgres и Harbor находятся в разных namespace, необходимо скопировать ресурс Secret в namespace экземпляра Harbor.
Для получения дополнительной информации о параметрах развертывания PostgreSQL и требованиях обратитесь к Документация по развертыванию PostgreSQL.
Учетные данные аккаунта Harbor
Создайте Secret в namespace, где планируется развертывание экземпляра Harbor, выберите тип Opaque и добавьте следующие поля в конфигурацию:
Обратите внимание, что имя пользователя по умолчанию для Harbor — admin.
Учетные данные Object Storage
Когда Harbor использует ObjectStorage в качестве бэкенда хранения Registry, необходимо создать Secret для хранения учетных данных Object Storage.
Для Registry необходима следующая политика для операций push и pull. Обязательно замените S3_BUCKET_NAME на имя вашего бакета.
Если у вас еще нет аккаунта, создайте его и примените следующую политику.
Для получения дополнительной информации о хранилище обратитесь к разделу Хранилище Harbor.