Referensi

Anda sedang melihat dokumentasi Apigee Edge.
Buka dokumentasi Apigee X.
info

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 ini memungkinkan Anda membuat, menghapus, dan mencantumkan binding.

Catatan: Di UI Create Product, Anda dapat menentukan satu atau beberapa layanan dengan satu produk. Melakukannya sama dengan membuat binding menggunakan CLI.

Menambahkan binding

Menambahkan binding target jarak jauh ke produk API.

Penggunaan

Untuk Edge Public Cloud:

apigee-remote-service-cli bindings add [service_name] [product_name]  -o [organization] -e [environment] -u [username] -p [password] -c [config]

Untuk Edge Private Cloud:

apigee-remote-service-cli bindings add [service_name] [product_name]  -o [organization] -e [environment] -u [username] -p [password] -r [runtime] -c [config]

Untuk Apigee Hybrid:

apigee-remote-service-cli bindings add [service_name] [product_name]  -o [organization] -e [environment] -t [token]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Izinkan koneksi server tidak aman saat menggunakan SSL
--legacy Setel flag ini jika Anda menggunakan Apigee Edge Cloud. Class ini menetapkan URL pengelolaan dan runtime untuk Edge Cloud.
--opdk Setel tanda ini jika Anda menggunakan Apigee Edge untuk Private Cloud.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator org.
-p, --password String (Diperlukan hanya untuk autentikasi dasar) Sandi Apigee Anda. Secara opsional, Anda dapat menentukan sandi dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan sandi pada command line. Lihat juga Menggunakan .netrc untuk kredensial.
-r, --runtime String URL dasar runtime Apigee (wajib untuk hybrid atau opdk).
-t, --token String (Hanya diperlukan untuk autentikasi token OAuth) Token OAuth atau SAML yang Anda buat dari informasi akun Apigee. Untuk informasi tentang cara membuat token, lihat Menggunakan get_token dan Mengakses API pengelolaan dengan SAML.
-u, --username String (Diperlukan hanya untuk autentikasi dasar) Nama pengguna Apigee Anda (biasanya alamat email). Secara opsional, Anda dapat menentukan nama pengguna dalam file .netrc. Jika Anda melakukannya, Anda tidak perlu memberikan nama pengguna pada command line. Lihat juga Menggunakan .netrc untuk kredensial.
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

./apigee-remote-service-cli bindings add httpbin.org envoy-test -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx
product envoy-test is now bound to: httpbin.org

Mencantumkan pengikatan

Mencantumkan semua produk API yang terikat dengan Layanan Jarak Jauh.

Penggunaan

Untuk Edge Public Cloud:

apigee-remote-service-cli bindings list -o [organization] -e [environment] -u [username] -p [password]

Untuk Edge Private Cloud:

apigee-remote-service-cli bindings list -o [organization] -e [environment] -u [username] -p [password] -r [runtime] 

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Izinkan koneksi server tidak aman saat menggunakan SSL
--legacy Setel flag ini jika Anda menggunakan Apigee Edge Cloud. Class ini menetapkan URL pengelolaan dan runtime untuk Edge Cloud.
--opdk Setel tanda ini jika Anda menggunakan Apigee Edge untuk Private Cloud.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator org.
-p, --password String (Diperlukan hanya untuk autentikasi dasar) Sandi Apigee Anda. Secara opsional, Anda dapat menentukan sandi dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan sandi pada command line. Lihat juga Menggunakan .netrc untuk kredensial.
-r, --runtime String URL dasar runtime Apigee (wajib untuk hybrid atau opdk).
-t, --token String (Hanya diperlukan untuk autentikasi token OAuth) Token OAuth atau SAML yang Anda buat dari informasi akun Apigee. Untuk informasi tentang cara membuat token, lihat Menggunakan get_token dan Mengakses API pengelolaan dengan SAML.
-u, --username String (Diperlukan hanya untuk autentikasi dasar) Nama pengguna Apigee Anda (biasanya alamat email). Secara opsional, Anda dapat menentukan nama pengguna dalam file .netrc. Jika Anda melakukannya, Anda tidak perlu memberikan nama pengguna pada 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 -u user@example.com -c config.yaml -p abc123
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:

Menghapus binding

Menghapus binding Remote Service untuk Envoy dari produk API.

Catatan: Anda juga dapat menghapus binding Remote Service untuk Envoy dengan menghapus nama layanan dari produk di UI Edge.

Penggunaan

Untuk Edge Public Cloud:

apigee-remote-service-cli bindings remove [service_name] [product_name]  -o [organization] -e [environment] -u [username] -p [password] -c [config]

Untuk Edge Private Cloud:

apigee-remote-service-cli bindings remove [service_name] [product_name]  -o [organization] -e [environment] -u [username] -p [password] -r [runtime] -c [config]

Untuk Apigee Hybrid:

apigee-remote-service-cli bindings remove [service_name] [product_name]  -o [organization] -e [environment] -t [token]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Izinkan koneksi server tidak aman saat menggunakan SSL
--legacy Setel flag ini jika Anda menggunakan Apigee Edge Cloud. Class ini menetapkan URL pengelolaan dan runtime untuk Edge Cloud.
--opdk Setel tanda ini jika Anda menggunakan Apigee Edge untuk Private Cloud.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator org.
-p, --password String (Diperlukan hanya untuk autentikasi dasar) Sandi Apigee Anda. Secara opsional, Anda dapat menentukan sandi dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan sandi pada command line. Lihat juga Menggunakan .netrc untuk kredensial.
-r, --runtime String URL dasar runtime Apigee (wajib untuk hybrid atau opdk).
-t, --token String (Hanya diperlukan untuk autentikasi token OAuth) Token OAuth atau SAML yang Anda buat dari informasi akun Apigee. Untuk informasi tentang cara membuat token, lihat Menggunakan get_token dan Mengakses API pengelolaan dengan SAML.
-u, --username String (Diperlukan hanya untuk autentikasi dasar) Nama pengguna Apigee Anda (biasanya alamat email). Secara opsional, Anda dapat menentukan nama pengguna dalam file .netrc. Jika Anda melakukannya, Anda tidak perlu memberikan nama pengguna pada command line. Lihat juga Menggunakan .netrc untuk kredensial.
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

./apigee-remote-service-cli bindings remove httpbin.org envoy-test -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx
product envoy-test is no longer bound to: httpbin.org

Perintah bantuan

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

apigee-remote-service-cli help

Untuk bantuan tentang 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 Edge Anda, menyiapkan sertifikat, dan menghasilkan kredensial yang Anda perlukan untuk mengonfigurasi Apigee Adapter untuk Envoy.

Penggunaan

Jika Anda menggunakan Edge Public Cloud:

apigee-remote-service-cli provision -o $ORG -e $ENV -u $USERNAME -p $PASSWORD

Jika Anda menggunakan Edge Private Cloud:

apigee-remote-service-cli provision --opdk -o $ORG -e $ENV -u $USERNAME --management $MGMT_SERVER_URL --runtime $RUNTIME_URL -p $PASSWORD

Parameter

Parameter Jenis Deskripsi
-c, --config String Jalur ke file konfigurasi Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --environment String (Wajib) Lingkungan di organisasi Anda.
-f, --force-proxy-install (Opsional) Memaksa proxy remote-service untuk diinstal ulang jika sudah terinstal 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 SaaS Apigee (pengelolaan set dan URL 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 Envoy ConfigMap dalam namespace yang ditentukan.
--opdk String Apigee OPDK.
-o, --organization String (Wajib) Organisasi Apigee Anda. Anda harus menjadi administrator org.
-p, --password String (Diperlukan hanya untuk autentikasi dasar) Sandi Apigee Anda. Secara opsional, Anda dapat menentukan sandi dalam file .netrc. Jika melakukannya, Anda tidak perlu memberikan sandi pada command line. Lihat juga Menggunakan .netrc untuk kredensial.
--rotate-int int Jika n > 0, buat kunci pribadi baru dan pertahankan n kunci publik (khusus hybrid)
-r, --runtime String URL dasar runtime Apigee (wajib untuk hybrid atau opdk)
-s, --secret String Menentukan rahasia yang ditampilkan dari perintah apigee-remote-service-cli provision.
--strength int (Opsional) Menentukan kekuatan enkripsi untuk sertifikat SSL yang digunakan dalam penyediaan adaptor. Default 2048
-t, --token String (Khusus campuran) Apigee OAuth atau token SAML.
-u, --username String (Diperlukan hanya untuk autentikasi dasar) Nama pengguna Apigee Anda (biasanya alamat email). Secara opsional, Anda dapat menentukan nama pengguna dalam file .netrc. Lihat juga Menggunakan .netrc untuk kredensial.
-v, --verbose (Opsional) Menghasilkan output panjang.
--virtual-hosts String Mengganti host virtual default, yaitu "default,secure". Gunakan opsi ini jika Anda memiliki host virtual yang ditentukan untuk lingkungan organisasi Edge selain setelan default ini. Lihat dokumentasi Edge untuk mempelajari host virtual.
--years int (Opsional) Jumlah tahun sebelum masa berlaku sertifikat SSL yang digunakan dalam penyediaan berakhir. Default: 1

Contoh

Pastikan untuk merekam output perintah provision dalam file, yang digunakan sebagai input bagi Adaptor Apigee lainnya untuk operasi Envoy.

Contoh Cloud Public Edge:

apigee-remote-service-cli provision --legacy --username $USER --password $PASSWORD --organization $ORG --environment $ENV > config.yaml

Contoh Apigee Hybrid:

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

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 merotasi 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 Edge Public Cloud:
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -o [org] -e [env]
Untuk Edge Private Cloud:
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]
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 Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Izinkan koneksi server tidak aman saat menggunakan SSL.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator org.
-r, --runtime String URL dasar runtime Apigee (hanya diperlukan untuk hybrid atau opdk).
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

apigee-remote-service-cli token create -o myorg -e test -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 -s icTARgaKHqvUH1dq -c config.yaml

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 Edge Public Cloud:
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file]
Untuk Edge Private Cloud:
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]
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 Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Izinkan koneksi server tidak aman saat menggunakan SSL.
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator org.
-r, --runtime String URL dasar runtime Apigee (hanya diperlukan untuk hybrid atau opdk).
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

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

Output

Jika berhasil, Anda akan melihat output 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.

Merotasi token JWT

Pada waktu tertentu, setelah JWT pertama dibuat, Anda mungkin perlu mengubah pasangan kunci publik/pribadi yang disimpan oleh Apigee Edge dalam peta nilai kunci (KVM) terenkripsinya. Proses menghasilkan pasangan kunci baru ini disebut rotasi kunci. Saat Anda merotasi kunci, pasangan kunci pribadi/publik baru akan dihasilkan dan disimpan di KVM "istio" di organisasi/lingkungan Apigee Edge Anda. Selain itu, kunci publik lama dipertahankan bersama dengan nilai ID kunci aslinya.

Penggunaan

Jika Anda menggunakan Edge Public Cloud:
apigee-remote-service-cli token rotate-cert -c [config_file] -o [organization] -e [environment] -k [provision_key] -s [provision_secret] --kid [new_key_id]
Jika Anda menggunakan Edge Private Cloud:
apigee-remote-service-cli token rotate-cert -o [organization] -e [environment] -u [username] -p [password] -k [provision_key] -s [provision_secret] --kid [new_key_id]

Parameter

Parameter Jenis Deskripsi
-c, --config String (Wajib) Jalur ke file konfigurasi Apigee Remote Service. Tips: Jika menentukan opsi ini, Anda dapat menghilangkan sebagian besar parameter perintah lainnya. Lihat Menggunakan opsi --config.
-e, --env String (Wajib) Lingkungan di organisasi Anda.
-h, --help Menampilkan bantuan untuk parameter perintah.
--insecure Izinkan koneksi server tidak aman saat menggunakan SSL
--truncate int Jumlah sertifikat yang disimpan dalam jwks (default 2)
-o, --org String (Wajib) Organisasi Apigee. Anda harus menjadi administrator org.
-r, --runtime String URL dasar runtime Apigee (wajib untuk hybrid atau opdk).
-v, --verbose (Opsional) Menghasilkan output panjang.

Contoh

apigee-remote-service-cli token rotate-cert -c config.yaml -o myorg -e test -k 2e238ffa15dc5ab6a1e97868e7581f6c60ddb8575478582c256d8b7e5b2677a8 -s 51058077223fa7b683c3bea845c5cca138340d1d5583922b6d465f9f918a4b08

Output

certificate successfully rotated

Menggunakan .netrc untuk kredensial

apigee-remote-service-cli 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 mesinnya 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

Cetak versi CLI.

apigee-remote-service-cli version

Menggunakan opsi perintah --config

Opsi --config menentukan lokasi file konfigurasi yang dihasilkan oleh perintah provision. Manfaat yang sangat bermanfaat dari opsi ini adalah Anda dapat melewati sebagian besar parameter perintah lainnya, yang diambil CLI dari file konfigurasi. Opsi ini mencakup:
  • organisasi
  • environment
  • runtime
  • pengelolaan
  • 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 menampilkan contoh file konfigurasi dengan semua opsi yang tersedia.

global:
  temp_dir: /tmp/apigee-istio
  keep_alive_max_connection_age: 10m
  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