Mengonfigurasi konektor Apigee API Hub untuk Private Cloud

Bagian ini menjelaskan langkah-langkah konfigurasi untuk konektor Apigee API Hub for Private Cloud, termasuk setelan khusus jaringan, autentikasi, dan organisasi.

Penyiapan jaringan dan autentikasi

  1. Izinkan port: Konektor Apigee API Hub untuk Private Cloud perlu terhubung ke server pengelolaan untuk mendapatkan Metadata API yang diperlukan, sehingga port server pengelolaan 8080 dan 443 harus dapat dijangkau oleh konektor.
  2. Autentikasi berbasis kunci untuk layanan Google Cloud Platform: Konektor Apigee API Hub untuk Private Cloud berkomunikasi dengan layanan Google Cloud dan memerlukan token untuk autentikasi. Hal ini dicapai dengan menggunakan kunci akun layanan untuk membuat token yang identitasnya ditiru.

    • Akun layanan untuk pembuatan token: Buat akun layanan baru yang dikhususkan untuk membuat token. Akun layanan ini harus memiliki peran Token Creator.
    • Buat dan download kunci akun layanan:
      • Ikuti langkah-langkah di Membuat Kunci akun layanan untuk membuat kunci JSON bagi akun layanan yang membuat token.
      • Download file kunci ini (misalnya, ke /opt/apigee/keys/uapim.key di VM konektor Apigee API Hub untuk Private Cloud).
    • Set GOOGLE_APPLICATION_CREDENTIALS: Saat memulai konektor Apigee API Hub untuk Private Cloud, Anda harus memberikan jalur ke file ini melalui variabel lingkungan:
      export $GOOGLE_APPLICATION_CREDENTIALS=/opt/apigee/keys/uapim.key
  3. Autentikasi Management API (UAPIM_MGMT_AUTH): Konektor Apigee API Hub untuk Private Cloud memerlukan kredensial untuk memanggil Apigee Management API. Untuk keamanan dan otomatisasi, gunakan pengguna mesin di Apigee, bukan pengguna manusia.

    Buat pengguna mesin di Apigee:

    1. Buat pengguna:
      • Di konsol Apigee, buat pengguna mesin (atau pengguna sistem). Pelajari pengguna dan peran lebih lanjut di sini Mengotomatiskan proses pembuatan token.
      • Tetapkan email (untuk identifikasi) dan nama deskriptif (misalnya, uapim-connector-user).
    2. Menetapkan peran: Tetapkan peran berikut kepada pengguna mesin:
      • Admin API Apigee: Peran ini memberikan akses ke API pengelolaan, sehingga konektor Apigee API Hub untuk Private Cloud dapat berinteraksi dengan sistem pengelolaan Apigee (misalnya, untuk mengambil metadata atau mengelola konfigurasi API).

Buat kredensial berenkode Base64:

  1. Buat pasangan username:password untuk pengguna mesin.
  2. Enkode kredensial dengan Base64: echo -n 'username:password' | base64
  3. Tetapkan variabel lingkungan $UAPIM_MGMT_AUTH dengan nilai yang dienkode base64:
    export UAPIM_MGMT_AUTH=USERNAME_PASSWORD

    Dengan USERNAME_PASSWORD adalah nilai pasangan nama pengguna dan sandi yang dienkode base64.

    Pastikan variabel lingkungan ini ditetapkan sebelum memulai konektor Apigee API Hub untuk Private Cloud.

Mengonfigurasi konektor Apigee API Hub untuk Private Cloud

Buka file konfigurasi /opt/apigee/customer/application/uapim-connector.properties untuk menentukan organisasi Apigee yang datanya perlu diupload ke API Hub. Anda mungkin memiliki beberapa instance plugin atau beberapa instance 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"
  } 

Penjelasan JSON setelan

  • Bagian connectorConfig:
    • Ini adalah peta yang setiap kuncinya adalah nama organisasi Apigee (misalnya, org1, org2).
    • Setiap entri organisasi berisi kolom berikut, yang Anda terima selama langkah pembuatan Plugin:
      • runtimeDataPubsub: Topik Pub/Sub untuk data runtime (analisis) organisasi ini.
      • metadataPubsub: Topik Pub/Sub untuk metadata API organisasi ini.
      • serviceAccount: Akun layanan (misalnya, mysa1@in.myfirstProject.iam.gserviceaccount.com) yang digunakan untuk mengautentikasi penulisan data ke Pub/Sub untuk organisasi ini.
      • pluginInstanceId: ID instance unik plugin yang terkait dengan organisasi ini.
  • Bagian runtimeDataPath: Berikan jalur ke pemasangan NFS tempat data Analytics (AX) akan ditulis oleh pemroses pesan. Ini harus berupa jalur yang sama yang dikonfigurasi di pemroses pesan.
  • Bagian managementServer: Nama host atau alamat IP URL server pengelolaan Apigee Anda.
  • variabel lingkungan UAPIM_MGMT_AUTH: Variabel lingkungan ini, yang ditetapkan secara eksternal, berisi username:password yang dienkode base64 untuk mengakses server pengelolaan.

Tambahkan konfigurasi proxy penerusan

Tambahkan konfigurasi proxy penerusan di file /opt/apigee/customer/application/uapim-connector.properties yang sama

  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=

Agar konektor berfungsi dengan baik, konektor harus terhubung ke sumber eksternal berikut:

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

Jika konektor tidak diizinkan untuk terhubung langsung ke sumber eksternal, tetapi melalui proxy penerusan, pengguna harus memberikan konfigurasi proxy penerusan melalui konfigurasi di bawah dan memastikan sumber eksternal yang disebutkan di atas masuk dalam daftar yang diizinkan.

Memulai Konektor Apigee API Hub untuk Cloud Pribadi

Setelah semua konfigurasi ditetapkan, mulai konektor Apigee API Hub untuk Private Cloud menggunakan perintah layanan Apigee:

apigee-service edge-uapim-connector start