Взаємодія з базою даних реєстру через зовнішній клієнт

Поточна інструкція опціональна і додана для вашої зручності. Зараз вона оновлюється. Дякуємо за розуміння!

1. Передумови

Перейдіть за посиланням та встановіть останню версію DBeaver: https://dbeaver.io/download/.

2. Налаштування переадресації портів

  1. Завантажте OpenShift origin client:

    Або виконайте запит.
    brew install openshift-cli
  2. Інсталюйте OpenShift origin client:

    • Для користувачів Windows:

      • розархівуйте його у Program Files та додайте шлях до цієї папки у PATH (cистемні змінні).

    • Для користувачів macOS Catalina:

      • у папці свого юзера створіть файл .zshrc, якщо його не існує:

        touch .zshrc
      • відкрийте файл .zshrc

        open ~/.zshrc
      • додайте шлях у PATH:

        export PATH="$PATH:/Users/[username]/Downloads/openshift-origin-client-tools-v3.11.0-0cbc58b-mac"
      • збережіть зміни та закрийте файл .zshrc

  3. Переконайтеся, що OpenShift встановлено:

    • Відкрийте командний рядок та запустіть команду “oc”.

      connection database openshift 01

      Повинні відобразитися наступні дані. Якщо зазначено інше, то перевірте чи вірно зазначено шлях у PATH.
  4. Авторизуйтесь до OpenShift консолі. `

  5. Натисніть на профіль користувача у правій верхній частині та оберіть Copy Login Command.

    connection database openshift 02

  6. Авторизуйтесь через Keycloak та натисніть на Display Token. Скопіюйте значення у полі Log in with this token.

    connection database openshift 03

  7. Відкрийте командний рядок та запустіть в ньому скопійовану команду.

    connection database openshift 04

    У разі успішного виконання команди, в консолі буде відображено перелік проектів до яких ви маєте доступ.

  8. Поверніться до OpenShift консолі та увійдіть до меню WorkloadPods й виберіть необхідний проєкт. Скопіюйте назву поди для бази даних.

    connection database openshift 05

    Наприклад: operational-instance-dl94-0, де operational-instance — незмінна частина, а dl94-0 — відрізняється для кожного реєстру.

  9. Відкрийте командний рядок або термінал, та виконайте команду:

    oc port-forward operational-instance-dl94-0 15432:5432 -n study-dpss-1

    де:

    • 15432 - будь-який вільний порт;

    • 5432 - стандартний порт Postgre або 27017 — стандартний порт Mongo;

    • study-dpss-1 - назва проєкту.

      Перенаправлення до localhost буде спрацьовувати доки відкритий командний рядок із цим запитом.
      Для віддаленого з’єднання з іншим проєктом, заново виконайте кроки 4-7 (згенеруйте токен та авторизуйтеся).
  10. Для переходу до робочого проєкту виконайте команду:

    oc project <registry-name>
    • <registry-name> — назва реєстру.

      Приклад
      C:\Users\User_Name> oc project platform-demo
      
      Now using project "platform-demo" on server "https://example.com:6443".

3. Налаштування з’єднання з БД реєстру

Натисніть New Connection, оберіть PostgreSQL і заповніть потрібні значення з’єднання з БД:

  • Host: localhost

  • Database: registry

  • Port: 15432 (відповідно обраному порту у команді крок 9)

  • Username/Password: Відкрийте OpenShift-консоль → WorkloadsSecrets<secret-name>Username/Password,
    де <secret-name> — назва секрета, що містить логін та пароль.

    connection database openshift 06

    • У випадку, коли для підключення до бази даних використовується користувач postgres, необхідно встановити секрет operational-pguser-postgres.

      connection database openshift 07

      connection database openshift 07 1

    • Для користувачів з ролями application_role або registry_owner_role слід використовувати секрет citus-roles-secrets.

      connection database openshift 08

      connection database openshift 08 1

    Результат успішного підключення виглядатиме наступним чином:

    connection database openshift 09