Referenz

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

Mit der apigee-remote-service-cli-Befehlszeile (CLI) können Sie den Apigee Adapter für Envoy bereitstellen und verwalten.

Bindungsbefehle

Durch Bindung wird ein im Istio-Mesh bereitgestellter Dienst mit einem Apigee API-Produkt verknüpft. Mit der Befehlszeile können Sie Bindungen auflisten und prüfen.

Bindungen auflisten

Alle API-Produkte auflisten, die an den Remote-Dienst gebunden sind.

Nutzung

Für Edge Public Cloud:

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

Für Edge Private Cloud:

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

Parameter

Parameter Typ Beschreibung
-c, --config String (Erforderlich) Der Pfad zur Konfigurationsdatei des Apigee Remote-Dienstes.
Tipp: Mit diesem Flag können Sie die meisten anderen Befehlsparameter weglassen, da die Befehlszeile sie direkt aus der Konfigurationsdatei abrufen kann. Weitere Informationen finden Sie unter . Mit der Option --config.
-e, --env String (Erforderlich) Eine Umgebung in Ihrer Organisation.
-h, --help Zeigt Hilfe zu den Befehlsparametern an.
--insecure Unsichere Serververbindungen mit SSL zulassen.
--legacy Legen Sie dieses Flag fest, wenn Sie die Apigee Edge Cloud verwenden. Es werden die Verwaltungs- und Laufzeit-URLs für Edge Cloud festgelegt.
--mfa Multi-Faktor-Autorisierungstoken von Apigee (nur mit --legacy verwendet)
--opdk Legen Sie dieses Flag fest, wenn Sie Apigee Edge für Private Cloud verwenden.
-o, --org String (Erforderlich) Eine Apigee-Organisation. Sie müssen ein Organisationsadministrator sein.
-p, --password String (Nur für die Basisauthentifizierung erforderlich) Ihr Apigee-Passwort. Optional können Sie das Passwort in einer .netrc-Datei angeben. In diesem Fall müssen Sie Ihr Passwort nicht in der Befehlszeile angeben. Weitere Informationen finden Sie unter .netrc für Anmeldedaten verwenden.
-r, --runtime String (Nur Private Cloud) Gibt die Laufzeit-URL für Ihre Private Cloud-Instanz an.
-t, --token String (Nur für OAuth-Token-Authentifizierung erforderlich) Ein OAuth- oder SAML-Token, das Sie anhand Ihrer Apigee-Kontoinformationen generieren. Informationen zum Generieren von Tokens finden Sie unter Verwenden von get_token und Zugriff auf die Verwaltungs-API mit SAML
-u, --username String (Nur für die Basisauthentifizierung erforderlich) Ihr Apigee-Nutzername (normalerweise eine E-Mail-Adresse). Sie können den Nutzernamen optional in einer .netrc-Datei angeben. In diesem Fall müssen Sie Ihren Nutzernamen nicht in der Befehlszeile angeben. Weitere Informationen finden Sie unter .netrc für Anmeldedaten verwenden.
-v, --verbose (Optional) Erzeugt eine ausführliche Ausgabe.

Beispiel

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:

Bindung prüfen

Dieser Befehl wurde verworfen. In Version 1.4 benötigen Entwickleranwendungen keine Verknüpfung mit API-Produkten mehr, die mit Remotedienstzielen verwendet werden.

Hilfebefehl

Onlinehilfe wird für alle apigee-remote-service-cli-Befehle bereitgestellt. Geben Sie einfach Folgendes ein:

apigee-remote-service-cli help

Wenn Sie Hilfe zu einem Befehl benötigen, geben Sie Folgendes ein:

apigee-remote-service-cli [command] help

Beispiel:

apigee-remote-service-cli provision help

Bereitstellungsbefehl

Mit dem Befehl apigee-remote-service-cli provision wird ein Proxy in Ihrer Apigee Edge-Organisation installiert, ein Zertifikat eingerichtet und Anmeldedaten generiert, die Sie zum Konfigurieren des Apigee-Adapters for Envoy benötigen.

Nutzung

Wenn Sie mit Edge Public Cloud arbeiten:

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

Wenn Sie die Edge Private Cloud verwenden:

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

Parameter

Parameter Typ Beschreibung
--analytics-sa String Dieses Flag ist nur verfügbar für Installationen von Apigee Hybrid und Apigee in Google Cloud.

Mit diesem Flag geben Sie den Pfad zu einer Schlüsseldatei des Google Cloud-Dienstkontos an, wobei das Dienstkonto die Rolle Apigee Analytics Agent hat. SA wird vom Adapter verwendet, um Analysedaten direkt in Apigee hochzuladen. Wenn Sie Apigee Hybrid verwenden, können Sie mit dieser Option die Hybrid-Laufzeit in einem Cluster und den Adapter in einem anderen Cluster installieren.

-c, --config String Pfad zur Konfigurationsdatei von Apigee Remote Service. Siehe auch Option --config verwenden.
-e, --environment String (Erforderlich) Eine Umgebung in Ihrer Organisation.
-f, --force-proxy-install (Optional) Erzwingt die Neuinstallation des remote-service-Proxys, wenn er bereits in Ihrer Organisation installiert ist.
-h, --help Zeigt Hilfe zu den Befehlsparametern an.
-k, --key String Gibt den Schlüssel an, der vom Befehl apigee-remote-service-cli provision zurückgegeben wurde.
--legacy Legen Sie dieses Flag fest, wenn Sie die Apigee Edge Cloud verwenden. Es werden die Verwaltungs- und Laufzeit-URLs für Edge Cloud festgelegt.
--mfa Multi-Faktor-Autorisierungstoken von Apigee (nur mit --legacy verwendet)
-m, --management String (Erforderlich, wenn Sie sich in Apigee Private Cloud befinden) Ihre Basis-URL für die Apigee-Verwaltung. Standardwert: https://api.enterprise.apigee.com
-n, --namespace String Konfiguration als Envoy-ConfigMap im angegebenen Namespace. Standard: Apigee
--opdk String Apigee OPDK.
-o, --organization String (Erforderlich) Ihre Apigee-Organisation. Sie müssen ein Organisationsadministrator sein.
-p, --password String (Nur für die Basisauthentifizierung erforderlich) Ihr Apigee-Passwort. Optional können Sie das Passwort in einer .netrc-Datei angeben. In diesem Fall müssen Sie Ihr Passwort nicht in der Befehlszeile angeben. Weitere Informationen finden Sie unter .netrc für Anmeldedaten verwenden.
--rotate-int int Wenn n > 0, generieren Sie einen neuen privaten Schlüssel und behalten Sie n öffentliche Schlüssel (nur Hybrid) bei.
-r, --runtime String (Nur Private Cloud) Gibt die Laufzeit-URL für Ihre Private Cloud-Instanz an.
-s, --secret String Gibt das Secret an, das vom Befehl apigee-remote-service-cli provision zurückgegeben wurde.
--strength int (Optional) Gibt die Verschlüsselungsstärke für SSL-Zertifikate an, die beim Bereitstellen des Adapters verwendet werden. Standardeinstellung 2048
-t, --token String (Nur Hybrid) Apigee OAuth- oder SAML-Token.
-u, --username String (Nur für die Basisauthentifizierung erforderlich) Ihr Apigee-Nutzername (normalerweise eine E-Mail-Adresse). Sie können den Nutzernamen optional in einer .netrc-Datei angeben. Weitere Informationen finden Sie unter .netrc für Anmeldedaten verwenden.
-v, --verbose (Optional) Erzeugt eine ausführliche Ausgabe.
--virtual-hosts String Überschreibt die standardmäßigen virtuellen Hosts, die default,secure sind. Verwenden Sie diese Option, wenn Sie virtuelle Hosts für Ihre Edge-Organisationsumgebung außer den Standardeinstellungen festgelegt haben. Weitere Informationen zu virtuellen Hosts finden Sie in der Edge-Dokumentation.
--years int (Optional) Die Anzahl der Jahre vor Ablauf des in der Bereitstellung verwendeten SSL-Zertifikats. Standardeinstellung: 1

Beispiel

Erfassen Sie die Ausgabe des Befehls provision in einer Datei, die als Eingabe für andere Apigee-Adapter für Envoy-Vorgänge verwendet wird.

Beispiel für Edge Public Cloud:

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

Befehl "Beispiele"

Erstellt Konfigurationsdateien für native Envoy- und Istio-Bereitstellungen.

Nutzung

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

Beschreibung

Für den Befehl ist eine gültige config.yaml-Datei erforderlich, die durch die Bereitstellung generiert wird. Standardmäßig werden die Beispieldateien in ein Verzeichnis mit dem Namen ./samples ausgegeben. Mit diesem Befehl wird dieses Verzeichnis für Sie erstellt.

Wenn Sie natives Envoy verwenden, verwendet der Befehl den Zieldiensthost und den gewünschten Namen für seinen Cluster. Außerdem wird eine benutzerdefinierte SSL-Verbindung vom Envoy-Proxy zum Remote-Dienstcluster eingerichtet, wenn ein Ordner mit tls.key und tls.crt über --tls bereitgestellt wird.

Wenn Sie Istio verwenden, wobei der Envoy-Proxy als Sidecar fungiert und das Ziel nicht spezifiziert ist, wird das Beispiel httpbin generiert. Andernfalls sind Sie für die Vorbereitung der Konfigurationsdateien für die Bereitstellung Ihrer Zieldienste verantwortlich.

Parameter

Parameter Typ Beschreibung
-c, --config String (Erforderlich) Pfad zur Konfigurationsdatei von Apigee Remote Service.
Tipp: Mit diesem Flag können Sie die meisten anderen Befehlsparameter weglassen, da die Befehlszeile sie direkt aus der Konfigurationsdatei abrufen kann. Weitere Informationen finden Sie unter Option --config verwenden.
-f, --force Überschreiben des vorhandenen Verzeichnisses erzwingen.
-h, --help Zeigt Hilfe zu den Befehlsparametern an.
--host Host des Zieldiensts (Standard "httpbin.org")
-n, --name Name des Zieldiensts (Standard "httpbin")
--out Das Verzeichnis, in dem die Beispielkonfigurationsdateien erstellt werden sollen. Standardwert: ./samples
-t, --template

Der Name der Vorlage. Wenn Sie eine Istio-Bereitstellung (nur Hybrid) verwenden, wählen Sie eine der verfügbaren Istio-Optionen aus. Native Option für native Envoy-Bereitstellungen verwenden Folgende Optionen sind verfügbar:

  • istio-1.6 (Standard)
  • istio-1.7
  • native
--tls Das Verzeichnis, in dem die TLS-Schlüssel und die CRT-Dateien gespeichert werden.

Beispiel

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

Verfügbare Vorlagenoptionen auflisten

Listet die Optionen auf, die mit dem Parameter --templates zur Verfügung stehen.

Nutzung

apigee-remote-service-cli samples templates

Parameter

Beispiel

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

Tokenbefehle

Sie können authentifizierte API-Proxyaufrufe mit einem JWT-Token durchführen, anstatt einen API-Schlüssel zu verwenden. Mit den Tokenbefehlen können Sie JWT-Tokens zu diesem Zweck erstellen, prüfen und rotieren.

JWT-Token erstellen

Sie können ein JWT-Token verwenden, um authentifizierte API-Proxyaufrufe an ein Remote-Dienstziel zu senden. Siehe auch JWT-basierte Authentifizierung verwenden.

Nutzung

Für Edge Public Cloud:
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -o [org] -e [env]
Für Edge Private Cloud:
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]

Parameter

Parameter Typ Beschreibung
-c, --config String (Erforderlich) Der Pfad zur Konfigurationsdatei des Apigee Remote-Dienstes.
Tipp: Mit diesem Flag können Sie die meisten anderen Befehlsparameter weglassen, da die Befehlszeile sie direkt aus der Konfigurationsdatei abrufen kann. Weitere Informationen finden Sie unter Option --config verwenden.
-e, --env String (Erforderlich) Eine Umgebung in Ihrer Organisation.
-h, --help Zeigt Hilfe zu den Befehlsparametern an.
--insecure Unsichere Serververbindungen mit SSL zulassen.
-o, --org String (Erforderlich) Eine Apigee-Organisation. Sie müssen ein Organisationsadministrator sein.
-r, --runtime String (Nur Private Cloud) Gibt die Laufzeit-URL für Ihre Private Cloud-Instanz an.
-v, --verbose (Optional) Erzeugt eine ausführliche Ausgabe.

Beispiel

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

Ausgabe

Bei Erfolg wird ein JavaScript-Token wie dieses ausgegeben:
eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q

JWT-Token prüfen

Sie können ein JWT-Token mit diesem Befehl prüfen. Siehe auch Token prüfen.

Nutzung

Für Edge Public Cloud:
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file]
Für Edge Private Cloud:
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]

Parameter

Parameter Typ Beschreibung
-c, --config String (Erforderlich) Der Pfad zur Konfigurationsdatei des Apigee Remote-Dienstes.
Tipp: Mit diesem Flag können Sie die meisten anderen Befehlsparameter weglassen, da die Befehlszeile sie direkt aus der Konfigurationsdatei abrufen kann. Weitere Informationen finden Sie unter Option --config verwenden.
-e, --env String (Erforderlich) Eine Umgebung in Ihrer Organisation.
-h, --help Zeigt Hilfe zu den Befehlsparametern an.
--insecure Unsichere Serververbindungen mit SSL zulassen.
-o, --org String (Erforderlich) Eine Apigee-Organisation. Sie müssen ein Organisationsadministrator sein.
-r, --runtime String (Nur Private Cloud) Gibt die Laufzeit-URL für Ihre Private Cloud-Instanz an.
-v, --verbose (Optional) Erzeugt eine ausführliche Ausgabe.

Beispiel

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

Ausgabe

Bei Erfolg sieht die Ausgabe in etwa so aus:
{
	"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.

JWT-Token rotieren

Nach der ersten Generierung eines JWT müssen Sie möglicherweise das Paar aus öffentlichen und privaten Schlüsseln ändern, das von Apigee Edge in seiner verschlüsselten Schlüsselwertzuordnung (KVM) gespeichert wird. Das Generieren eines neuen Schlüsselpaars wird als Schlüsselrotation bezeichnet. Wenn Sie Schlüssel rotieren, wird ein neues privates/öffentliches Schlüsselpaar generiert und in der KVM in „istio“ in Ihrer Apigee Edge-Organisation/-Umgebung gespeichert. Außerdem bleibt der alte öffentliche Schlüssel mit seinem ursprünglichen Schlüssel-ID-Wert erhalten.

Nutzung

Wenn Sie mit Edge Public Cloud arbeiten:
apigee-remote-service-cli token rotate-cert -c [config_file] -o [organization] -e [environment] -k [provision_key] -s [provision_secret] --kid [new_key_id]
Wenn Sie sich in Edge Private Cloud befinden:
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 Typ Beschreibung
-c, --config String (Erforderlich) Der Pfad zur Konfigurationsdatei des Apigee Remote-Dienstes.
Tipp: Mit diesem Flag können Sie die meisten anderen Befehlsparameter weglassen, da die Befehlszeile sie direkt aus der Konfigurationsdatei abrufen kann. Weitere Informationen finden Sie unter Option --config verwenden.
-e, --env String (Erforderlich) Eine Umgebung in Ihrer Organisation.
-h, --help Zeigt Hilfe zu den Befehlsparametern an.
--insecure Unsichere Serververbindungen mit SSL zulassen.
--truncate int Anzahl der Zertifikate, die in jwks beibehalten werden sollen (Standardeinstellung 2)
-o, --org String (Erforderlich) Eine Apigee-Organisation. Sie müssen ein Organisationsadministrator sein.
-r, --runtime String (Nur Private Cloud) Gibt die Laufzeit-URL für Ihre Private Cloud-Instanz an.
-v, --verbose (Optional) Erzeugt eine ausführliche Ausgabe.

Beispiel

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

Ausgabe

certificate successfully rotated

.netrc für Anmeldedaten verwenden

apigee-remote-service-cli ruft automatisch username und password (zur einfachen Authentifizierung, falls erforderlich) aus einer .netrc-Datei in Ihrem Basisverzeichnis ab, wenn Sie sich in der Edge Public Cloud befinden und einen Eintrag für die api.enterprise.apigee.com-Maschine haben. Wenn Sie in Apigee Private Cloud sind, ist der Maschinenwert mit Ihrer management-URL identisch (z. B. http://192.162.55.100). Beispiel in Edge Public Cloud:
machine api.enterprise.apigee.com
login jdoe@google.com
password abc123
Zum Beispiel in Edge Private Cloud:
machine http://192.162.55.100
login jdoe@google.com
password abc123

Versionsbefehl

Die CLI-Version drucken

apigee-remote-service-cli version

Mit der Befehlsoption --config

Die Option --config gibt den Speicherort der Konfigurationsdatei an, die vom Befehl provision generiert wurde. Ein hilfreicher Vorteil dieser Option besteht darin, dass Sie die meisten anderen Befehlsparameter überspringen können, die die Befehlszeile mit der Konfigurationsdatei abruft. Diese Optionen umfassen unter anderem:
  • Organisation
  • Umgebung
  • runtime
  • Verwaltung
  • Unsicher
  • Namespace
  • legacy
  • opdk

Führen Sie beispielsweise den Befehl provision so aus:

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

Konfigurationsdatei

In diesem Abschnitt sehen Sie eine Beispielkonfigurationsdatei mit allen verfügbaren Optionen.

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