Referensi

Halaman ini berlaku untuk Apigee dan Apigee hybrid.

Lihat dokumentasi Apigee Edge.

Antarmuka Command Line (CLI) apigee-remote-service-cli membantu Anda menyediakan dan mengelola Adaptor Apigee untuk Envoy.

Perintah binding

Binding mengaitkan layanan yang di-deploy ke mesh Istio dengan produk Apigee API. CLI memungkinkan Anda membuat, menghapus, mencantumkan, dan memverifikasi binding.

Mencantumkan pengikatan

Mencantumkan semua produk API yang terikat dengan Layanan Jarak Jauh.

Penggunaan

Untuk Apigee Hybrid:

apigee-remote-service-cli bindings list -o [organization] -e [environment] -t [token] -r [runtime]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Layanan Jarak Jauh Apigee.
Tips: Flag ini memungkinkan Anda menghilangkan sebagian besar parameter perintah lainnya, karena CLI dapat mengambilnya langsung dari file konfigurasi. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Mengizinkan koneksi server yang tidak aman saat menggunakan SSL
--legacy Tetapkan tanda ini jika Anda menggunakan Apigee Cloud. File ini menetapkan URL pengelolaan dan runtime untuk Edge Cloud.
--opdk Tetapkan tanda ini jika Anda menggunakan Apigee untuk Private Cloud.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator organisasi.
-p, --password String (Hanya diperlukan untuk autentikasi dasar - tidak tersedia untuk campuran) Sandi Apigee Anda. Secara opsional, Anda dapat menentukan sandi dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan sandi di command line. Lihat juga Menggunakan .netrc untuk kredensial.
-r, --runtime String URL yang menyertakan hostAlias untuk host virtual yang ditentukan dalam konfigurasi campuran Anda. URL harus diawali dengan https://. Contoh: https://apitest.apigee-hybrid-docs.net
-t, --token String (Wajib) Token akses.
-u, --username String (Wajib untuk autentikasi dasar saja - tidak tersedia untuk campuran) Nama pengguna Apigee Anda (biasanya alamat email). Anda dapat menentukan nama pengguna secara opsional dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan nama pengguna di command line. Lihat juga Menggunakan .netrc untuk kredensial.
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

apigee-remote-service-cli bindings list -o myorg -e test -c config.yaml \
-r $RUNTIME -t $TOKEN
PI Products
============
Bound
-----
envoy-test:
  Quota: 5 requests every 1 minute
  Target bindings:
    httpbin.org
  Paths:
httpbin:
  Quota: 5 requests every 1 minute
  Target bindings:
    httpbin.org
  Paths:
    /httpbin
    /

Unbound
-------
product-1:
  Quota: 100 requests every 1 hour
product-2:
  Quota: 1000 requests every 1 month
product-3:
product-4:

Memverifikasi binding

Pastikan produk API terikat yang ditentukan dan aplikasi developer terkait juga memiliki produk layanan jarak jauh yang terkait dengannya. Jika Anda tidak menentukan nama produk API, perintah tersebut akan memeriksa semua produk yang terikat.

Penggunaan

Untuk Apigee Hybrid:

apigee-remote-service-cli bindings verify [product_name]  -o [organization] -e [environment] -r [runtime] -t [token]

Dengan product_name bersifat opsional. Jika Anda tidak menentukan nama produk, semua produk yang terikat akan diperiksa.

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Layanan Jarak Jauh Apigee.
Tips: Flag ini memungkinkan Anda menghilangkan sebagian besar parameter perintah lainnya, karena CLI dapat mengambilnya langsung dari file konfigurasi. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Mengizinkan koneksi server yang tidak aman saat menggunakan SSL
--legacy Tetapkan tanda ini jika Anda menggunakan Apigee Cloud. File ini menetapkan URL pengelolaan dan runtime untuk Edge Cloud.
--opdk Tetapkan tanda ini jika Anda menggunakan Apigee untuk Private Cloud.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator organisasi.
-r, --runtime String URL yang menyertakan hostAlias untuk host virtual yang ditentukan dalam konfigurasi campuran Anda. URL harus diawali dengan https://. Contoh: https://apitest.apigee-hybrid-docs.net
-t, --token String (Wajib) Token akses.
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

/apigee-remote-service-cli bindings verify my_product -o $ORG -e $ENV \
-c config.yaml -r $RUNTIME -t $TOKEN

Verifying apps associated with product my-product:
  app my-app associated with product my-product is verified

Perintah bantuan

Bantuan online disediakan untuk semua perintah apigee-remote-service-cli. Cukup ketik:

apigee-remote-service-cli help

Untuk mendapatkan bantuan terkait perintah apa pun, ketik:

apigee-remote-service-cli [command] help

Contoh:

apigee-remote-service-cli provision help

Perintah penyediaan

Perintah apigee-remote-service-cli provision menginstal proxy di organisasi Apigee Anda, menyiapkan sertifikat, dan membuat kredensial yang akan Anda perlukan untuk mengonfigurasi Adaptor Apigee untuk Envoy.

Penggunaan

Untuk Apigee Hybrid:

apigee-remote-service-cli provision  -o $ORG -e $ENV -r $RUNTIME -t $TOKEN

Parameter

Parameter Jenis Deskripsi
--analytics-sa String Gunakan flag ini untuk menentukan jalur ke file kunci akun layanan Google Cloud, dengan akun layanan memiliki peran Apigee Analytics Agent. SA digunakan oleh adaptor untuk mengupload data analisis langsung ke Apigee. Jika Anda menggunakan Apigee hybrid, opsi ini memungkinkan Anda menginstal runtime hybrid di satu cluster dan adaptor di cluster lain. Flag ini hanya tersedia untuk penginstalan Apigee hybrid dan Apigee di Google Cloud.
-c, --config String Jalur ke file konfigurasi Layanan Jarak Jauh Apigee. Lihat juga Menggunakan opsi --config.
-e, --environment String (Wajib) Lingkungan di organisasi Anda.
-f, --force-proxy-install (Opsional) Memaksa proxy remote-service diinstal ulang jika sudah diinstal di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
-k, --key String Menentukan kunci yang ditampilkan dari perintah apigee-remote-service-cli provision.
--legacy Apigee Edge (menetapkan URL pengelolaan dan runtime)
-m, --management String (Wajib jika Anda menggunakan Apigee Private Cloud) URL dasar pengelolaan Apigee Anda. Default: https://api.enterprise.apigee.com
-n, --namespace String Memunculkan konfigurasi sebagai ConfigMap Envoy di namespace yang ditentukan. Default: apigee
--opdk String Tetapkan tanda ini jika Anda menggunakan Apigee untuk Private Cloud.
-o, --organization String (Wajib) Organisasi Apigee Anda. Anda harus menjadi administrator organisasi.
-p, --password String (Hanya diperlukan untuk autentikasi dasar - tidak tersedia untuk campuran) Sandi Apigee Anda. Secara opsional, Anda dapat menentukan sandi dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan sandi di command line. Lihat juga Menggunakan .netrc untuk kredensial.
--rotate-int int Jika n > 0, buat kunci pribadi baru dan simpan n kunci publik (khusus campuran)
-r, --runtime String URL yang menyertakan hostAlias untuk host virtual yang ditentukan dalam konfigurasi campuran Anda. URL harus diawali dengan https://. Contoh: https://apitest.apigee-hybrid-docs.net
-s, --secret String Menentukan secret yang ditampilkan dari perintah apigee-remote-service-cli provision.
--strength int (Opsional) Menentukan kekuatan enkripsi untuk sertifikat SSL yang digunakan dalam menyediakan adaptor. Default 2048
-t, --token String Token OAuth atau SAML Apigee.
-u, --username String (Wajib untuk autentikasi dasar saja - tidak tersedia untuk campuran) Nama pengguna Apigee Anda (biasanya alamat email). Anda dapat menentukan nama pengguna secara opsional dalam file .netrc. Lihat juga Menggunakan .netrc untuk kredensial.
-v, --verbose (Opsional) Menghasilkan output panjang.
--virtual-hosts String Mengganti host virtual default.
--years int (Opsional) Jumlah tahun sebelum masa berlaku sertifikat SSL yang digunakan dalam penyediaan berakhir. Default: 1

Contoh

Pastikan untuk mengambil output perintah provision dalam file, yang digunakan sebagai input untuk operasi Apigee Adapter for Envoy lainnya.

Contoh Apigee Hybrid:

apigee-remote-service-cli provision --organization $ORG --environment $ENV --runtime $RUNTIME \
--namespace $NAMESPACE --token $TOKEN > config.yaml

Perintah contoh

Membuat contoh file konfigurasi

Membuat contoh file konfigurasi untuk deployment Envoy atau Istio native.

Penggunaan

apigee-remote-service-cli samples create [flags]

Deskripsi

Perintah ini memerlukan file config.yaml yang valid yang dihasilkan melalui penyediaan. Secara default, file contoh akan di-output ke direktori bernama ./samples. Perintah ini akan membuat direktori ini untuk Anda.

Jika Anda menggunakan Envoy native, perintah ini akan mengambil host layanan target dan nama yang diinginkan untuk cluster-nya. Fungsi ini juga menetapkan koneksi SSL kustom dari proxy Envoy ke cluster layanan jarak jauh jika folder yang berisi tls.key dan tls.crt disediakan melalui --tls.

Jika Anda menggunakan Istio, dengan proxy Envoy bertindak sebagai sidecar, jika target tidak ditentukan, contoh httpbin akan dibuat. Jika tidak, Anda bertanggung jawab untuk menyiapkan file konfigurasi yang terkait dengan deployment layanan target Anda.

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Layanan Jarak Jauh Apigee.
Tips: Flag ini memungkinkan Anda menghilangkan sebagian besar parameter perintah lainnya, karena CLI dapat mengambilnya langsung dari file konfigurasi. Lihat Menggunakan opsi --config.
-f, --force Memaksa direktori yang ada untuk ditimpa.
-h, --help Menampilkan bantuan untuk parameter perintah.
--host Host layanan target (default "httpbin.org")
-n, --name Nama layanan target (default "httpbin")
--out Direktori tempat membuat file konfigurasi contoh. Default: ./samples
-t, --template

Nama template. Jika Anda melakukan deployment Istio (khusus hybrid), pilih salah satu opsi Istio yang tersedia. Gunakan opsi native untuk deployment Envoy native. Opsi yang tersedia adalah:

  • istio-1.6 (Default)
  • istio-1.7
  • native
--tls Direktori tempat menyimpan file kunci dan crt TLS.

Contoh

apigee-remote-service-cli samples create -c ./config.yaml

Mencantumkan opsi template yang tersedia

Mencantumkan opsi yang tersedia untuk digunakan dengan parameter --templates.

Penggunaan

apigee-remote-service-cli samples templates

Parameter

Tidak ada.

Contoh

apigee-remote-service-cli samples templates
Supported templates (native is deprecated):
  envoy-1.14
  envoy-1.15
  envoy-1.16
  istio-1.5
  istio-1.6
  istio-1.7
  istio-1.8
  native

Perintah token

Anda dapat menggunakan token JWT untuk melakukan panggilan proxy API yang diautentikasi, bukan menggunakan kunci API. Perintah token memungkinkan Anda membuat, memeriksa, dan memutar token JWT untuk tujuan ini.

Membuat token JWT

Anda dapat menggunakan token JWT untuk melakukan panggilan proxy API yang diautentikasi ke target layanan jarak jauh. Lihat juga Menggunakan autentikasi berbasis JWT.

Penggunaan

Untuk Apigee Hybrid:
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Layanan Jarak Jauh Apigee.
Tips: Flag ini memungkinkan Anda menghilangkan sebagian besar parameter perintah lainnya, karena CLI dapat mengambilnya langsung dari file konfigurasi. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Mengizinkan koneksi server yang tidak aman saat menggunakan SSL.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator organisasi.
-r, --runtime String URL yang menyertakan hostAlias untuk host virtual yang ditentukan dalam konfigurasi campuran Anda. URL harus diawali dengan https://. Contoh: https://apitest.apigee-hybrid-docs.net
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

./apigee-remote-service-cli token create -o $ORG -e $ENV -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 \
-s icTARgaKHqvUH1dq -c config.yaml -r $RUNTIME -t $TOKEN

Output

Jika berhasil, Anda akan melihat output token JST yang mirip dengan berikut ini:
eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q

Memeriksa token JWT

Anda dapat memeriksa token JWT dengan perintah ini. Lihat juga Memeriksa token.

Penggunaan

Untuk Apigee Hybrid:
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Layanan Jarak Jauh Apigee.
Tips: Flag ini memungkinkan Anda menghilangkan sebagian besar parameter perintah lainnya, karena CLI dapat mengambilnya langsung dari file konfigurasi. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Mengizinkan koneksi server yang tidak aman saat menggunakan SSL.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator organisasi.
-r, --runtime String URL yang menyertakan hostAlias untuk host virtual yang ditentukan dalam konfigurasi campuran Anda. URL harus diawali dengan https://. Contoh: https://apitest.apigee-hybrid-docs.net
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

apigee-remote-service-cli token inspect -c config.yaml <<< $TOKEN

Output

Jika berhasil, Anda akan melihat output yang mirip dengan berikut ini:
{
	"aud": [
		"remote-service-client"
	],
	"exp": 1591741549,
	"iat": 1591740649,
	"iss": "https://apigee-docs-test.apigee.net/remote-service/token",
	"jti": "99325d2e-6440-4278-9f7f-b252a1a79e53",
	"nbf": 1591740649,
	"access_token": "VfzpXzBGAQ07po0bPMKY4JgQjus",
	"api_product_list": [
		"httpbin"
	],
	"application_name": "httpbin",
	"client_id": "GYDGHy5TRpV8AejXCOlreP7dPVepA8H",
	"developer_email": "user@example.com",
	"scope": ""
}
verifying...
token ok.

Memutar token JWT

Setelah membuat JWT untuk pertama kalinya, Anda mungkin perlu mengubah pasangan kunci publik/pribadi yang disimpan oleh Apigee dalam peta nilai kunci (KVM) terenkripsinya. Proses pembuatan pasangan kunci baru ini disebut rotasi kunci. Saat Anda merotasi kunci, pasangan kunci pribadi/publik baru akan dibuat dan disimpan di KVM "istio" di organisasi/lingkungan Apigee Anda. Selain itu, kunci publik lama dipertahankan beserta nilai ID kunci aslinya.

Penggunaan

Untuk Apigee Hybrid

apigee-remote-service-cli token rotate-cert -o [organization] -e [environment] -t [token] -r [runtime] -k [provision_key] -s [provision_secret] --kid [new_key_id]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Layanan Jarak Jauh Apigee.
Tips: Flag ini memungkinkan Anda menghilangkan sebagian besar parameter perintah lainnya, karena CLI dapat mengambilnya langsung dari file konfigurasi. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Mengizinkan koneksi server yang tidak aman saat menggunakan SSL
--truncate int Jumlah sertifikat yang akan disimpan di jwks (default 2)
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator organisasi.
-r, --runtime String URL yang menyertakan hostAlias untuk host virtual yang ditentukan dalam konfigurasi campuran Anda. URL harus diawali dengan https://. Contoh: https://apitest.apigee-hybrid-docs.net
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

./apigee-remote-service-cli token create -o $ORG -e $ENV -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 \
-s icTARgaKHqvUH1dq -c config.yaml -r $RUNTIME -t $TOKEN

Output

certificate successfully rotated

Menggunakan .netrc untuk kredensial

apigee-remote-service-cli secara otomatis mengambil username dan password (untuk autentikasi dasar jika diperlukan) dari file .netrc di direktori utama jika Anda menggunakan Edge Public Cloud dan memiliki entri untuk api.enterprise.apigee.com mesin. Jika Anda menggunakan Apigee Private Cloud, nilai mesin akan sama dengan URL management Anda (misalnya: http://192.162.55.100). Misalnya, di Edge Public Cloud:
machine api.enterprise.apigee.com
login jdoe@google.com
password abc123
Misalnya di Edge Private Cloud:
machine http://192.162.55.100
login jdoe@google.com
password abc123

Perintah versi

Mencetak versi CLI.

apigee-remote-service-cli version

Menggunakan opsi perintah --config

Opsi --config menentukan lokasi file konfigurasi yang dihasilkan oleh perintah provision. Manfaat yang berguna dari opsi ini adalah memungkinkan Anda melewati sebagian besar parameter perintah lainnya, yang diambil CLI dari file konfigurasi. Opsi ini mencakup:
  • organisasi
  • lingkungan
  • runtime
  • management
  • tidak aman
  • namespace
  • lama
  • opdk

Misalnya, Anda dapat menjalankan perintah provision seperti ini:

apigee-remote-service-cli provision --config='old-config.yaml' > new-config.yaml

File konfigurasi

Bagian ini menunjukkan contoh file konfigurasi dengan semua opsi yang tersedia.

global:
  temp_dir: /tmp/apigee-istio
  keep_alive_max_connection_age: 1m
  api_address: :5000
  metrics_address: :5001
  tls:
    cert_file: tls.crt
    key_file: tls.key
tenant:
  internal_api: https://istioservices.apigee.net/edgemicro
  remote_service_api: https://org-test.apigee.net/remote-service
  org_name: org
  env_name: env
  key: mykey
  secret: mysecret
  client_timeout: 30s
  allow_unverified_ssl_cert: false
products:
  refresh_rate: 2m
analytics:
  legacy_endpoint: false
  file_limit: 1024
  send_channel_size: 10
  collection_interval: 10s
  fluentd_endpoint: apigee-udca-myorg-test.apigee.svc.cluster.local:20001
  tls:
    ca_file: /opt/apigee/tls/ca.crt
    cert_file: /opt/apigee/tls/tls.crt
    key_file: /opt/apigee/tls/tls.key
    allow_unverified_ssl_cert: false
auth:
  api_key_claim: claim
  api_key_cache_duration: 30m
  api_key_header: x-api-key
  api_target_header: :authority
  reject_unauthorized: true
  jwks_poll_interval: 0s
  jwt_provider_key: https://org-test.apigee.net/remote-service/token