Langkah 3: Instal apigeectl

Langkah ini menjelaskan cara mendownload dan menginstal apigeectl di Anthos GKE Anda di mesin admin AWS. Langkah-langkah tersebut meliputi menyiapkan direktori penginstalan, membuat akun layanan Google Cloud yang diperlukan agar komponen hybrid dapat berkomunikasi, dan membuat kredensial TLS yang diperlukan agar Apigee Hybrid dapat beroperasi.

Download dan instal apigeectl

apigeectl adalah antarmuka command line (CLI) untuk menginstal dan mengelola Apigee Hybrid di cluster Kubernetes.

Langkah-langkah berikut menjelaskan cara mendapatkan apigeectl:

  1. Simpan nomor versi terbaru dalam variabel menggunakan perintah berikut:
    export VERSION=$(curl -s \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1)
  2. Pastikan variabel diisi dengan nomor versi menggunakan perintah berikut. Jika ingin menggunakan versi lain, Anda dapat menyimpannya dalam variabel lingkungan.
    echo $VERSION
  3. Download paket rilis untuk sistem operasi Anda menggunakan perintah berikut:

    Mac 64 bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gz

    Linux 64 bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gz

    Mac 32 bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_32.tar.gz

    Linux 32 bit:

    curl -LO \
        https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_32.tar.gz
  4. Buat direktori di sistem Anda sebagai direktori dasar untuk penginstalan hybrid Apigee.
  5. Ekstrak konten file gzip yang didownload ke direktori dasar yang baru saja Anda buat menggunakan perintah berikut:

    tar xvzf filename.tar.gz -C path-to-base-directory
  6. Ubah direktori ke direktori dasar menggunakan perintah cd.
  7. Secara default, konten tar diperluas ke direktori dengan versi dan platform dalam namanya. Misalnya: ./apigeectl_1.0.0-f7b96a8_linux_64. Ganti nama direktori tersebut menjadi apigeectl menggunakan perintah berikut:

    mv apigeectl_1.0.0-f7b96a8_linux_64 apigeectl
  8. Ubah ke direktori menggunakan perintah berikut:
    cd ./apigeectl

    Direktori ini adalah direktori utama apigeectl. Di sinilah perintah yang dapat dieksekusi apigeectl berada.

  9. Buat variabel lingkungan untuk menyimpan jalur direktori utama ini menggunakan perintah berikut:
    export APIGEECTL_HOME=$PWD
  10. Pastikan variabel memiliki jalur yang benar menggunakan perintah berikut:
    echo $APIGEECTL_HOME

Menyiapkan struktur direktori project

Struktur direktori berikut adalah pendekatan yang disarankan. Konfigurasi ini memisahkan software rilis hybrid Apigee dari file konfigurasi yang harus Anda buat. Melalui penggunaan variabel $APIGEECTL_HOME dan link simbolis yang dibuat, Anda dapat dengan mudah beralih ke versi software baru jika ingin. Lihat juga Mengupgrade Apigee Hybrid.

  1. Pastikan Anda berada di direktori dasar (direktori tempat direktori apigeectl berada) dengan menggunakan perintah berikut:
    cd $APIGEECTL_HOME/..
  2. Buat folder baru bernama hybrid-files menggunakan perintah berikut. Anda dapat memberi nama direktori apa pun sesuai keinginan, tetapi dalam dokumen, nama hybrid-files digunakan secara konsisten. Kemudian, Anda akan menyimpan file konfigurasi, kunci akun layanan, dan sertifikat TLS dalam folder ini. Dengan folder ini, Anda dapat memisahkan file konfigurasi dari penginstalan software apigeectl.
    mkdir hybrid-files
  3. Struktur direktori saat ini kini terlihat seperti berikut:
    pwd && ls
    /hybrid-base-directory
      apigeectl
      hybrid-files
  4. Ubah direktori ke dalam folder hybrid-files menggunakan perintah berikut:
    cd hybrid-files
  5. Dalam direktori hybrid-files, buat subdirektori berikut untuk mengatur file yang akan Anda buat nanti:
    mkdir overrides
    mkdir service-accounts
    mkdir certs
  6. Di dalam direktori hybrid-files, buat link simbolis berikut ke $APIGEECTL_HOME. Link ini memungkinkan Anda menjalankan perintah apigeectl dari dalam direktori hybrid-files seperti yang ditunjukkan contoh berikut:
    ln -s $APIGEECTL_HOME/tools tools
    ln -s $APIGEECTL_HOME/config config
    ln -s $APIGEECTL_HOME/templates templates
    ln -s $APIGEECTL_HOME/plugins plugins
  7. Untuk memeriksa apakah symlink dibuat dengan benar, jalankan perintah berikut dan pastikan jalur link mengarah ke lokasi yang benar:
    ls -l | grep ^l

Membuat akun layanan

Apigee Hybrid menggunakan akun layanan Google Cloud agar komponen hybrid dapat berkomunikasi dengan melakukan panggilan API yang diotorisasi. Pada langkah ini, Anda akan menggunakan alat command line hybrid Apigee untuk membuat kumpulan akun layanan. Alat ini juga akan mendownload kunci pribadi akun layanan untuk Anda. Kemudian, Anda harus menambahkan kunci ini ke file konfigurasi cluster hybrid Apigee Anda.

Apigee menyediakan alat, create-service-account, yang membuat akun layanan, menetapkan peran ke akun layanan, serta membuat dan mendownload file kunci untuk akun layanan dalam satu perintah. Untuk mempelajari konsep Google Cloud yang terkait, lihat Membuat dan mengelola akun layanan serta Membuat dan mengelola kunci akun layanan.

  1. Pastikan Anda berada di direktori base_directory/hybrid-files yang dikonfigurasi di Menyiapkan struktur direktori project.
  2. Jalankan perintah berikut dari dalam direktori hybrid-files. Perintah ini membuat akun layanan untuk komponen apigee-metrics dan menempatkan kunci yang didownload di direktori ./service-accounts.
    ./tools/create-service-account apigee-metrics ./service-accounts

    Saat melihat perintah berikut, masukkan y:

    [INFO]: gcloud configured project ID is project_id.
     Press: y to proceed with creating service account in project: project_id
     Press: n to abort.

    Jika ini adalah pertama kalinya SA dengan nama persis yang ditetapkan oleh alat tersebut dibuat, alat tersebut hanya akan membuatnya, dan Anda tidak perlu melakukan apa pun.

    Namun, jika Anda melihat pesan dan perintah berikut, masukkan y untuk membuat kunci baru:

    [INFO]: Service account apigee-metrics@project_id.iam.gserviceaccount.com already exists.
    ...
     [INFO]: The service account might have keys associated with it. It is recommended to use existing keys.
     Press: y to generate new keys.(this does not de-activate existing keys)
     Press: n to skip generating new keys.
    
  3. Sekarang, buat akun layanan lainnya menggunakan perintah berikut. Perintah create-service-account bersifat interaktif dan memerlukan respons untuk setiap akun.
    ./tools/create-service-account apigee-synchronizer ./service-accounts
    ./tools/create-service-account apigee-udca ./service-accounts
    ./tools/create-service-account apigee-mart ./service-accounts
    ./tools/create-service-account apigee-cassandra ./service-accounts
    ./tools/create-service-account apigee-logger ./service-accounts
    ./tools/create-service-account apigee-watcher ./service-accounts
  4. Pastikan kunci akun layanan dibuat menggunakan perintah berikut. Anda bertanggung jawab untuk menyimpan kunci pribadi ini dengan aman. Nama file kunci diawali dengan nama project Google Cloud Anda.
    ls ./service-accounts

    Hasilnya akan terlihat seperti berikut:

    gcp-project-id-apigee-cassandra.json
    gcp-project-id-apigee-logger.json
    gcp-project-id-apigee-mart.json
    gcp-project-id-apigee-metrics.json
    gcp-project-id-apigee-synchronizer.json
    gcp-project-id-apigee-udca.json
    gcp-project-id-apigee-watcher.json
  5. Tetapkan peran Apigee Organization Admin ke akun layanan apigee-org-admin:
  6. Pastikan alamat email untuk akun layanan apigee-org-admin mengikuti pola service_account@PROJECT_ID.iam.gserviceaccount.com seperti yang ditunjukkan contoh berikut:
    gcloud iam service-accounts list --filter "apigee-org-admin"
  7. Tetapkan peran dengan perintah berikut:
    gcloud projects add-iam-policy-binding $PROJECT_ID \
    --member serviceAccount:apigee-org-admin@$PROJECT_ID.iam.gserviceaccount.com --role roles/apigee.admin

    Dengan PROJECT_ID sebagai project Google Cloud Anda. Jika alamat email akun layanan Anda berbeda dengan pola ini, ganti alamat email yang sesuai.

    Output harus menyertakan daftar semua akun layanan dan perannya, termasuk:

    - members:
      - serviceAccount:apigee-org-admin@hybrid-example-2.iam.gserviceaccount.com
      role: roles/apigee.admin

Membuat sertifikat TLS

Anda harus memberikan sertifikat TLS untuk gateway ingress runtime dalam konfigurasi hybrid Apigee Anda. Untuk tujuan panduan memulai ini (penginstalan uji coba non-produksi), gateway runtime dapat menerima kredensial yang ditandatangani sendiri. Pada langkah-langkah berikut, openssl digunakan untuk membuat kredensial yang ditandatangani sendiri.

Pada langkah ini, Anda akan membuat file kredensial TLS dan menambahkannya ke direktori base_directory/hybrid-files/certs. Pada Langkah 4: Konfigurasikan cluster, Anda akan menambahkan jalur file ke file konfigurasi cluster.

  1. Pastikan Anda berada di direktori base_directory/hybrid-files yang dikonfigurasi di Menyiapkan struktur direktori project.
  2. Pastikan nama domain Anda disimpan ke variabel lingkungan DOMAIN menggunakan perintah berikut:
    echo $DOMAIN
  3. Jalankan perintah berikut dari dalam direktori hybrid-files:
    openssl req  -nodes -new -x509 -keyout ./certs/keystore.key -out \
        ./certs/keystore.pem -subj '/CN='$DOMAIN'' -days 3650

    Dengan DOMAIN adalah domain yang Anda cadangkan untuk penginstalan hybrid di Panduan memulai (hibrida) Langkah 5: Konfigurasikan DNS.

    Perintah ini membuat pasangan sertifikat/kunci yang ditandatangani sendiri yang dapat Anda gunakan untuk penginstalan panduan memulai.

  4. Periksa untuk memastikan file berada di direktori ./certs menggunakan perintah berikut:
    ls ./certs
      keystore.pem
      keystore.key

    Dengan keystore.pem adalah file sertifikat TLS yang ditandatangani sendiri dan keystore.key adalah file kunci.

Anda kini memiliki beranda yang dapat digunakan untuk mengonfigurasi, men-deploy, dan mengelola Apigee Hybrid di cluster Kubernetes Anda. Selanjutnya, Anda akan membuat file yang digunakan oleh Kubernetes untuk men-deploy komponen runtime hybrid ke cluster.

Langkah berikutnya

1 2 3 (BERIKUTNYA) Langkah 4: Konfigurasikan cluster 5