Настройте Apigee API Hub для коннектора Private Cloud

В этом разделе подробно описаны этапы настройки коннектора Apigee API Hub для частного облака, включая сетевые настройки, аутентификацию и параметры, специфичные для конкретной организации.

Настройка сети и аутентификации

  1. Список разрешенных портов : для получения необходимых метаданных API коннектору Apigee API Hub для частного облака необходимо подключиться к серверу управления, поэтому порты сервера управления 8080 и 443 должны быть доступны для коннектора.
  2. Аутентификация на основе ключей для сервисов Google Cloud Platform : коннектор Apigee API Hub для частного облака взаимодействует с сервисами Google Cloud и требует токены для аутентификации. Это достигается с помощью ключа учётной записи сервиса для создания имперсонифицированных токенов.

    • Учётная запись службы для генерации токенов : создайте новую учётную запись службы, предназначенную для генерации токенов. Эта учётная запись службы должна иметь роль « Token Creator .
    • Сгенерируйте и загрузите ключ учетной записи службы :
      • Следуйте инструкциям в разделе Создание ключа учетной записи службы , чтобы сгенерировать ключ JSON для учетной записи службы, генерирующей токен.
      • Загрузите этот файл ключа (например, в /opt/apigee/keys/uapim.key на виртуальной машине коннектора API Apigee для частного облака).
    • Установите GOOGLE_APPLICATION_CREDENTIALS : при запуске коннектора Apigee API Hub для частного облака вам потребуется указать путь к этому файлу через переменную среды:
      export $GOOGLE_APPLICATION_CREDENTIALS=/opt/apigee/keys/uapim.key
  3. Аутентификация API управления (UAPIM_MGMT_AUTH): коннектор Apigee API Hub for Private Cloud требует учётных данных для вызова API управления Apigee. Для обеспечения безопасности и автоматизации используйте в Apigee учетную запись пользователя машины, а не пользователя-человека.

    Создайте пользователя машины в Apigee:

    1. Создать пользователя :
      • В консоли Apigee создайте пользователя машины (или системного пользователя). Подробнее о пользователях и ролях можно узнать здесь: Автоматизация процесса генерации токенов .
      • Назначьте адрес электронной почты (для идентификации) и описательное имя (например, uapim-connector-user ).
    2. Назначить роли : Назначьте следующую роль пользователю машины:
      • Администратор API Apigee : эта роль обеспечивает доступ к API управления, позволяя коннектору Apigee API Hub для частного облака взаимодействовать с системой управления Apigee (например, для извлечения метаданных или управления конфигурациями API).

Сгенерируйте учетные данные в кодировке Base64:

  1. Сгенерируйте пару имя пользователя:пароль для пользователя машины.
  2. Кодируем учетные данные в формате Base64: echo -n 'username:password' | base64
  3. Задайте переменную среды $UAPIM_MGMT_AUTH со значением в кодировке base64:
    export UAPIM_MGMT_AUTH=USERNAME_PASSWORD

    Где USERNAME_PASSWORD — это закодированное в формате base64 значение пары имени пользователя и пароля.

    Перед запуском коннектора Apigee API Hub для частного облака убедитесь, что эта переменная среды установлена.

Настройте коннектор Apigee API Hub для частного облака

Откройте файл конфигурации /opt/apigee/customer/application/uapim-connector.properties , чтобы указать организации Apigee, данные которых необходимо загрузить в API Hub. У вас может быть несколько экземпляров плагина или несколько экземпляров API Hub.

  conf_uapim.settings.json={\
    "connectorConfig" : { \
      "org1" : { \
        "runtimeDataPubsub" : "", \
        "metadataPubsub":"", \
        "serviceAccount": "mysa1@in.myfirstProject",\
        "pluginInstanceId":"aaaa" \
      },\
      "org2" : { \
        "runtimeDataPubsub" : "", \
        "metadataPubsub":"",\
        "serviceAccount": "mysa2@in.mySecondProject",\
        "pluginInstanceId":"bbbbb", \
      } 
    },
    "runtimeDataPath":"/the/nfs/mounted/path", \    
    "managementServer": "hostname"
  } 

Пояснение настроек JSON

  • Раздел connectorConfig :
    • Это карта, где каждый ключ — это название организации Apigee (например, org1, org2).
    • Каждая запись организации содержит следующие поля, которые вы получили на этапе создания плагина:
      • runtimeDataPubsub : тема Pub/Sub для данных времени выполнения (аналитики) для этой организации.
      • metadataPubsub : тема Pub/Sub для метаданных API для этой организации.
      • serviceAccount : учетная запись службы (например, mysa1@in.myfirstProject.iam.gserviceaccount.com), используемая для аутентификации при записи данных в Pub/Sub для этой организации.
      • pluginInstanceId : уникальный идентификатор экземпляра плагина, связанного с этой организацией.
  • Раздел runtimeDataPath : укажите путь к точке монтирования NFS, куда обработчики сообщений будут записывать данные Analytics (AX). Этот путь должен совпадать с указанным в обработчиках сообщений.
  • Раздел managementServer : имя хоста или IP-адрес URL вашего сервера управления Apigee.
  • Переменная среды UAPIM_MGMT_AUTH : эта переменная среды, заданная извне, содержит закодированное в формате base64 username:password для доступа к серверу управления.

Добавьте конфигурации прямого прокси-сервера

Добавьте конфигурации прямого прокси-сервера в тот же файл /opt/apigee/customer/application/uapim-connector.properties

  1. conf_http_client_service_jetty.proxy.enabled=true
  2. conf_http_client_service_jetty.proxy.host=
  3. conf_http_client_service_jetty.proxy.port=
  4. conf_http_client_service_jetty.proxy.user=
  5. conf_http_client_service_jetty.proxy.password=

Для корректной работы разъема его необходимо подключить к следующим внешним источникам:

  • pubsub.googleapis.com:443
  • oauth2.googleapis.com:443
  • iamcredentials.googleapis.com:443

В случае, если коннектору не разрешено напрямую подключаться к внешним источникам, а только через прямой прокси-сервер, то пользователю необходимо предоставить конфигурации прямого прокси-сервера с помощью приведенных ниже конфигураций и убедиться, что указанные выше внешние источники включены в разрешенный список.

Запуск Apigee API Hub для коннектора частного облака

После настройки всех конфигураций запустите коннектор Apigee API Hub для частного облака с помощью команды службы Apigee:

apigee-service edge-uapim-connector start