W tej sekcji znajdziesz szczegółowe informacje o krokach konfigurowania złącza Centrum interfejsów API Apigee dla chmury prywatnej, w tym ustawień sieciowych, uwierzytelniania i ustawień specyficznych dla organizacji.
Wymagane uprawnienia
Nowy interfejs API Hub API został zintegrowany z łącznikiem Apigee API Hub for Private Cloud, aby obsługiwać przesyłanie środowisk i pakietów proxy, co wymaga nowej roli IAM. Jest to jednorazowa czynność, którą musisz wykonać ręcznie, aby przyznać wymagane uprawnienia.
Aby przyznać odpowiednie uprawnienia, uruchom to polecenie gcloud
:
gcloud projects add-iam-policy-binding GCP_PROJECT_NAME \ --member="serviceAccount:SERVICE_ACCOUNT" \ --role="roles/apihub.admin"
To polecenie wiąże rolę roles/apihub.admin
z określonym kontem usługi, co umożliwia złączu wykonywanie wymaganych działań. Upewnij się, że to konto usługi jest tym samym, którego użyto podczas tworzenia instancji wtyczki.
Konfigurowanie sieci i uwierzytelniania
- Lista dozwolonych portów: łącznik Apigee API Hub for Private Cloud musi połączyć się z serwerem zarządzającym, aby uzyskać wymagane metadane interfejsu API. Dlatego łącznik musi mieć dostęp do portów serwera zarządzającego 8080 i 443.
- Uwierzytelnianie oparte na kluczach w przypadku usług Google Cloud Platform: łącznik Apigee API Hub for Private Cloud komunikuje się z usługami Google Cloud i wymaga tokenów do uwierzytelniania. Odbywa się to za pomocą klucza konta usługi, który służy do tworzenia tokenów przyjęcia tożsamości.
- Konto usługi do generowania tokenów: utwórz nowe konto usługi przeznaczone do generowania tokenów. To konto usługi musi mieć rolę
Token Creator
. - Generowanie i pobieranie klucza konta usługi:
- Aby wygenerować klucz JSON dla konta usługi generującego tokeny, wykonaj czynności opisane w sekcji Tworzenie klucza konta usługi.
- Pobierz ten plik klucza (na przykład do
/opt/apigee/keys/uapim.key
na maszynie wirtualnej łącznika Apigee API Hub for Private Cloud).
- Ustaw
GOOGLE_APPLICATION_CREDENTIALS
: podczas uruchamiania oprogramowania sprzęgającego centrum interfejsów API Apigee dla chmury prywatnej musisz podać ścieżkę do tego pliku za pomocą zmiennej środowiskowej:export $GOOGLE_APPLICATION_CREDENTIALS=/opt/apigee/keys/uapim.key
- Konto usługi do generowania tokenów: utwórz nowe konto usługi przeznaczone do generowania tokenów. To konto usługi musi mieć rolę
- Uwierzytelnianie interfejsu Management API (UAPIM_MGMT_AUTH): łącznik centrum interfejsów API Apigee dla chmury prywatnej wymaga danych logowania do wywoływania interfejsu Apigee Management API. Ze względów bezpieczeństwa i automatyzacji w Apigee używaj użytkownika-maszyny, a nie użytkownika-człowieka.
Utwórz użytkownika maszyny w Apigee:
- Tworzenie użytkownika:
- W konsoli Apigee utwórz użytkownika maszyny (lub użytkownika systemu). Więcej informacji o użytkownikach i rolach znajdziesz w tym artykule: Automatyzacja procesu generowania tokenów.
- Przypisz adres e-mail (do identyfikacji) i nazwę opisową (np.
uapim-connector-user
).
- Przypisywanie ról: przypisz użytkownikowi maszyny tę rolę:
- Administrator interfejsu API Apigee: ta rola zapewnia dostęp do interfejsu API zarządzania, co umożliwia łącznikowi centrum interfejsów API Apigee w chmurze prywatnej interakcję z systemem zarządzania Apigee (np. pobieranie metadanych lub zarządzanie konfiguracjami interfejsów API).
- Tworzenie użytkownika:
Wygeneruj dane logowania zakodowane w formacie Base64:
- Wygeneruj parę nazwa użytkownika:hasło dla użytkownika maszyny.
- Zakoduj dane logowania w formacie Base64:
echo -n 'username:password' | base64
- Ustaw zmienną środowiskową $UAPIM_MGMT_AUTH z wartością zakodowaną w base64:
export UAPIM_MGMT_AUTH=USERNAME_PASSWORD
gdzie USERNAME_PASSWORD to zakodowana w formacie base64 wartość pary nazwy użytkownika i hasła.
Zanim uruchomisz oprogramowanie sprzęgające Apigee API Hub for Private Cloud, upewnij się, że ta zmienna środowiskowa jest ustawiona.
Konfigurowanie złącza Apigee API Hub dla Private Cloud
Otwórz plik konfiguracji /opt/apigee/customer/application/uapim-connector.properties
, aby określić organizacje Apigee, dla których dane mają być przesyłane do centrum interfejsów API. Możesz mieć wiele instancji wtyczek lub wiele instancji centrum interfejsów API.
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" }
Objaśnienie ustawień JSON
- Sekcja connectorConfig:
- Jest to mapa, której każdy klucz to nazwa organizacji Apigee (np. org1, org2).
- Każdy wpis organizacji zawiera te pola, które zostały podane podczas tworzenia wtyczki:
- runtimeDataPubsub: temat Pub/Sub dotyczący danych środowiska wykonawczego (analitycznych) tej organizacji.
- metadataPubsub: temat Pub/Sub dotyczący metadanych interfejsu API dla tej organizacji.
- serviceAccount: konto usługi (np. mysa1@in.myfirstProject.iam.gserviceaccount.com) używane do uwierzytelniania zapisów danych w Pub/Sub w przypadku tej organizacji.
- pluginInstanceId: Unikalny identyfikator instancji wtyczki powiązanej z tą organizacją.
- Sekcja runtimeDataPath: podaj ścieżkę do podłączenia NFS, w którym procesory wiadomości będą zapisywać dane Analytics (AX). Musi to być ta sama ścieżka, która jest skonfigurowana w procesorach wiadomości.
- Sekcja managementServer: nazwa hosta lub adres IP adresu URL serwera zarządzania Apigee.
- Zmienna środowiskowa UAPIM_MGMT_AUTH: ta zmienna środowiskowa, ustawiona zewnętrznie, zawiera zakodowany w base64 ciąg znaków username:password, który umożliwia dostęp do serwera zarządzania.
Dodawanie konfiguracji serwera proxy przekazującego
Dodaj konfiguracje serwera proxy do tego samego pliku /opt/apigee/customer/application/uapim-connector.properties
.
conf_http_client_service_jetty.proxy.enabled=true
conf_http_client_service_jetty.proxy.host=
conf_http_client_service_jetty.proxy.port=
conf_http_client_service_jetty.proxy.user=
conf_http_client_service_jetty.proxy.password=
Aby oprogramowanie sprzęgające działało prawidłowo, musi łączyć się z tymi zewnętrznymi źródłami:
pubsub.googleapis.com:443
oauth2.googleapis.com:443
iamcredentials.googleapis.com:443
Jeśli łącznik nie może łączyć się bezpośrednio ze źródłami zewnętrznymi, ale może to robić za pomocą serwera proxy, użytkownik musi podać konfiguracje serwera proxy w poniższych ustawieniach i upewnić się, że wymienione powyżej źródła zewnętrzne znajdują się na liście dozwolonych.
Uruchamianie oprogramowania sprzęgającego centrum interfejsów API Apigee dla chmury prywatnej
Po skonfigurowaniu wszystkich ustawień uruchom łącznik Apigee API Hub for Private Cloud za pomocą polecenia usługi Apigee:
apigee-service edge-uapim-connector start