Materiały referencyjne

Przeglądasz dokumentację Apigee Edge.
Przejdź do Dokumentacja Apigee X.
informacje.

Interfejs wiersza poleceń apigee-remote-service-cli pomaga udostępnić adapter Apigee dla Envoy i nim zarządzać.

Polecenia powiązania

Powiązanie wiąże usługę wdrożoną w siatce Istio z usługą Apigee API. Interfejs wiersza poleceń pozwala wyświetlać i weryfikować powiązania.

Wyświetlenie listy powiązań

Wyświetla wszystkie usługi API powiązane z usługą zdalną.

Wykorzystanie

W przypadku Edge Public Cloud:

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

W przypadku Edge Private Cloud:

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

Parametry

Parametry Typ Opis
-c, --config Ciąg znaków (Wymagane) Ścieżka do pliku konfiguracji usługi zdalnej Apigee.
Wskazówka: ta flaga umożliwia pominięcie większości innych parametrów poleceń, ponieważ interfejs wiersza poleceń może pobierać je bezpośrednio z pliku konfiguracji. Zobacz Przy użyciu opcji --config.
-e, --env Ciąg znaków (Wymagane) Środowisko w organizacji.
-h, --help Wyświetla pomoc dotyczącą parametrów polecenia.
--insecure Zezwalaj na niezabezpieczone połączenia z serwerem podczas korzystania z SSL
--legacy Ustaw tę flagę, jeśli korzystasz z Apigee Edge Cloud. Ustawia adresy URL zarządzania i środowiska wykonawczego dla Edge Cloud.
--mfa Token autoryzacji wielopoziomowej Apigee (używany tylko z --legacy)
--opdk Ustaw tę flagę, jeśli korzystasz z Apigee Edge dla Private Cloud.
-o, --org Ciąg znaków (Wymagane) Organizacja Apigee. Musisz być administratorem organizacji.
-p, --password Ciąg znaków (Wymagane tylko do uwierzytelniania podstawowego). Twoje hasło Apigee. Opcjonalnie możesz określić hasło w pliku .netrc. Jeśli to zrobisz, nie musisz: wpisz hasło w wierszu poleceń. Zobacz też Używanie .netrc na potrzeby danych logowania
-r, --runtime Ciąg znaków (Tylko chmura Private Cloud) Określa adres URL środowiska wykonawczego instancji Private Cloud.
-t, --token Ciąg znaków (Wymagane tylko do uwierzytelniania tokenem OAuth) Wygenerowany token OAuth lub SAML na podstawie informacji o koncie Apigee. Informacje o generowaniu tokenów znajdziesz tutaj: korzystanie z metody get_token oraz Uzyskiwanie dostępu do interfejsu API do zarządzania przez SAML.
-u, --username Ciąg znaków (Wymagane tylko do uwierzytelniania podstawowego) Twoja nazwa użytkownika Apigee (zwykle adres e-mail). Opcjonalnie możesz podać nazwę użytkownika w pliku .netrc. Jeśli to zrobisz, nie musisz podawać nazwy użytkownika w wierszu poleceń. Zobacz a także używanie domeny .netrc jako danych logowania.
-v, --verbose (Opcjonalnie) Generuje szczegółowe dane wyjściowe.

Przykład

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:

Weryfikowanie powiązania

To polecenie zostało wycofane. Aplikacje w wersji 1.4 nie wymagają już powiązanie z usługami API, które są używane ze zdalnymi celami usług.

Polecenie pomocy

W przypadku wszystkich poleceń apigee-remote-service-cli dostępna jest pomoc online. Po prostu wpisz:

apigee-remote-service-cli help

Aby uzyskać pomoc dotyczącą dowolnego polecenia, wpisz:

apigee-remote-service-cli [command] help

Na przykład:

apigee-remote-service-cli provision help

Polecenie udostępniania

Polecenie apigee-remote-service-cli provision instaluje serwer proxy w Apigee Organizacja brzegowa, konfigurowanie certyfikatu i generowanie danych logowania ani skonfigurować adaptera Apigee dla Envoy.

Wykorzystanie

Jeśli korzystasz z Edge Public Cloud:

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

Jeśli korzystasz z Edge Private Cloud:

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

Parametry

Parametry Typ Opis
--analytics-sa Ciąg znaków Ta flaga to tylko dostępne w przypadku instalacji hybrydowych Apigee i Apigee w Google Cloud.

Za pomocą tej flagi podaj ścieżkę do pliku klucza konta usługi Google Cloud, gdzie konto usługi ma przypisaną rolę Apigee Analytics Agent. Używany jest identyfikator SA przez adapter, aby przesyłać dane analityczne bezpośrednio do Apigee. Jeśli korzystasz z Apigee, ta opcja pozwala zainstalować hybrydowe środowisko wykonawcze w jednym klastrze w innej grupie.

-c, --config Ciąg znaków Ścieżka do pliku konfiguracji usługi zdalnej Apigee. Zobacz też . Użyj opcji --config.
-e, --environment Ciąg znaków (Wymagane) Środowisko w organizacji.
-f, --force-proxy-install (Opcjonalnie) Wymusza ponowne zainstalowanie serwera proxy remote-service, jeśli jest jest już zainstalowany w Twojej organizacji.
-h, --help Wyświetla pomoc dotyczącą parametrów polecenia.
-k, --key Ciąg znaków Określa klucz zwrócony z polecenie apigee-remote-service-cli provision.
--legacy Ustaw tę flagę, jeśli korzystasz z Apigee Edge Cloud. Ustawia adresy URL zarządzania i środowiska wykonawczego dla Edge Cloud.
--mfa Token autoryzacji wielopoziomowej Apigee (używany tylko z --legacy)
-m, --management Ciąg znaków (Wymagane, jeśli korzystasz z prywatnej chmury Apigee) Twój podstawowy adres URL zarządzania Apigee. Domyślnie: https://api.enterprise.apigee.com
-n, --namespace Ciąg znaków Przesyłaj konfigurację jako obiekt ConfigMap Envoy w określonej przestrzeni nazw. Domyślnie: apigee
--opdk Ciąg znaków Apigee OPDK.
-o, --organization Ciąg znaków (Wymagane) Twoja organizacja Apigee. Musisz być administratorem organizacji.
-p, --password Ciąg znaków (Wymagane tylko do uwierzytelniania podstawowego). Twoje hasło Apigee. Opcjonalnie możesz określić hasło w pliku .netrc. Jeśli to zrobisz, nie musisz: wpisz hasło w wierszu poleceń. Zobacz też Używanie .netrc na potrzeby danych logowania
--rotate-int int, Jeśli n > 0, wygeneruj nowy klucz prywatny i zachowaj n kluczy publicznych (tylko hybrydowe)
-r, --runtime Ciąg znaków (Tylko chmura Private Cloud) Określa adres URL środowiska wykonawczego instancji Private Cloud.
-s, --secret Ciąg znaków Określa obiekt tajny zwrócony z klucza apigee-remote-service-cli provision .
--strength int, (Opcjonalnie) Określa siłę szyfrowania certyfikatów SSL używanych do udostępniania przejściówkę. Domyślnie 2048.
-t, --token Ciąg znaków (Tylko hybrydowe) Token OAuth lub SAML Apigee.
-u, --username Ciąg znaków (Wymagane tylko do uwierzytelniania podstawowego) Twoja nazwa użytkownika Apigee (zwykle adres e-mail). Opcjonalnie możesz podać nazwę użytkownika w pliku .netrc. Zobacz też Używanie plików .netrc na potrzeby danych logowania.
-v, --verbose (Opcjonalnie) Generuje szczegółowe dane wyjściowe.
--virtual-hosts Ciąg znaków Zastępuje domyślne hosty wirtualne, czyli default,secure. Użyj tej opcji, jeśli mają ustawione hosty wirtualne dla środowiska organizacji Edge inne niż te domyślne. Więcej informacji znajdziesz w dokumentacji Edge. o hostach wirtualnych.
--years int, (Opcjonalnie) Liczba lat przed użyciem certyfikatu SSL do obsługi administracyjnej wygasa. Domyślnie: 1

Przykład

Pamiętaj, aby zapisać dane wyjściowe polecenia provision w pliku, który jest używany jako dane wejściowe do innych operacji adaptera Apigee dla Envoy.

Przykład Edge Public Cloud:

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

Polecenie dotyczące przykładów

Tworzy przykładowe pliki konfiguracji na potrzeby natywnych wdrożeń Envoy lub Istio.

Wykorzystanie

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

Opis

Polecenie wymaga prawidłowego pliku config.yaml wygenerowanego w ramach obsługi administracyjnej. Domyślnie przykładowe pliki są przesyłane do katalogu o nazwie ./samples. Polecenie który utworzy dla Ciebie katalog.

Jeśli używasz natywnego serwera Envoy, polecenie przyjmie docelowy host usługi i pożądaną nazwę jej klaster. Ustawia też niestandardowe połączenie SSL między serwerem proxy Envoy a usługą zdalną klastra, jeśli folder zawierający tls.key i tls.crt został udostępniony w --tls.

Jeśli korzystasz z Istio, gdzie serwer proxy Envoy działa jako plik pomocniczy, a wartość docelowa nie jest określona, zostanie wygenerowany przykład żądania httpbin. W przeciwnym razie musisz przygotować plików konfiguracji związanych z wdrażaniem usług docelowych.

Parametry

Parametry Typ Opis
-c, --config Ciąg znaków (Wymagane) Ścieżka do pliku konfiguracji usługi zdalnej Apigee.
Wskazówka: ta flaga umożliwia pominięcie większości innych parametrów poleceń, ponieważ interfejs wiersza poleceń może pobierać je bezpośrednio z pliku konfiguracji. Zobacz Użyj opcji --config.
-f, --force Wymuś zastąpienie istniejącego katalogu.
-h, --help Wyświetla pomoc dotyczącą parametrów polecenia.
--host Docelowy host usługi (domyślnie „httpbin.org”)
-n, --name Nazwa usługi docelowej (domyślnie „httpbin”)
--out Katalog Th, w którym zostaną utworzone przykładowe pliki konfiguracyjne. Domyślnie: ./samples
-t, --template

Nazwa szablonu. Jeśli przeprowadzasz wdrożenie Istio (tylko hybrydowe), wybierz jedną z dostępnych opcji Istio. Użyj opcji natywnej na potrzeby natywnych wdrożeń Envoy. Dostępne opcje:

  • istio-1.6 (wartość domyślna)
  • istio-1.7
  • native
--tls Katalog, w którym jest przechowywany klucz TLS i pliki crt.

Przykład

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

Wyświetl listę dostępnych opcji szablonów

Zawiera listę opcji dostępnych z parametrem --templates.

Wykorzystanie

apigee-remote-service-cli samples templates

Parametry

Brak.

Przykład

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

Polecenia dotyczące tokena

Zamiast klucza interfejsu API możesz używać tokena JWT do wykonywania uwierzytelnionych wywołań serwera proxy interfejsu API. Polecenia dotyczące tokenów umożliwiają tworzenie, sprawdzanie i rotowanie tokenów JWT w tym celu.

Tworzenie tokena JWT

Tokenu JWT możesz używać do wykonywania uwierzytelnionego wywołania serwera proxy interfejsu API do zdalnego celu usługi. Zobacz Użycie uwierzytelniania JWT.

Wykorzystanie

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

Parametry

Parametry Typ Opis
-c, --config Ciąg znaków (Wymagane) Ścieżka do pliku konfiguracji usługi zdalnej Apigee.
Wskazówka: ta flaga umożliwia pominięcie większości innych parametrów poleceń, ponieważ interfejs wiersza poleceń może pobierać je bezpośrednio z pliku konfiguracji. Zobacz Użyję opcji --config.
-e, --env Ciąg znaków (Wymagane) Środowisko w organizacji.
-h, --help Wyświetla pomoc dotyczącą parametrów polecenia.
--insecure Zezwalaj na niezabezpieczone połączenia z serwerem podczas korzystania z protokołu SSL.
-o, --org Ciąg znaków (Wymagane) Organizacja Apigee. Musisz być administratorem organizacji.
-r, --runtime Ciąg znaków (Tylko chmura Private Cloud) Określa adres URL środowiska wykonawczego instancji Private Cloud.
-v, --verbose (Opcjonalnie) Generuje szczegółowe dane wyjściowe.

Przykład

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

Wyniki

Gdy operacja się uda, wyświetli się token JST podobny do tego:
eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q

Sprawdzanie tokena JWT

Za pomocą tego polecenia możesz sprawdzić token JWT. Przeczytaj też sekcję Sprawdzanie tokena.

Wykorzystanie

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

Parametry

Parametry Typ Opis
-c, --config Ciąg znaków (Wymagane) Ścieżka do pliku konfiguracji usługi zdalnej Apigee.
Wskazówka: ta flaga umożliwia pominięcie większości innych parametrów poleceń, ponieważ interfejs wiersza poleceń może pobierać je bezpośrednio z pliku konfiguracji. Zobacz Użyj opcji --config.
-e, --env Ciąg znaków (Wymagane) Środowisko w organizacji.
-h, --help Wyświetla pomoc dotyczącą parametrów polecenia.
--insecure Zezwalaj na niezabezpieczone połączenia z serwerem podczas korzystania z protokołu SSL.
-o, --org Ciąg znaków (Wymagane) Organizacja Apigee. Musisz być administratorem organizacji.
-r, --runtime Ciąg znaków (Tylko chmura Private Cloud) Określa adres URL środowiska wykonawczego instancji Private Cloud.
-v, --verbose (Opcjonalnie) Generuje szczegółowe dane wyjściowe.

Przykład

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

Wyniki

Jeśli operacja się uda, zostaną wyświetlone dane wyjściowe podobne do tych:
{
	"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.

Rotacja tokena JWT

W pewnym momencie po pierwszym wygenerowaniu tokena JWT może być konieczna zmiana klucza publicznego/prywatnego. zapisane przez Apigee Edge w zaszyfrowanej mapie klucz-wartość (KVM). Ten proces generowania jest to tzw. rotacja kluczy. Podczas rotacji kluczy nowa para kluczy prywatny/publiczny jest generowana i przechowywana w folderze „istio” KVM w organizacji lub środowisku Apigee Edge. Dodatkowo stary klucz publiczny zostanie zachowany wraz z pierwotną wartością identyfikatora klucza.

Wykorzystanie

Jeśli korzystasz z 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]
Jeśli korzystasz z 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]

Parametry

Parametry Typ Opis
-c, --config Ciąg znaków (Wymagane) Ścieżka do pliku konfiguracji usługi zdalnej Apigee.
Wskazówka: ta flaga umożliwia pominięcie większości innych parametrów poleceń, ponieważ interfejs wiersza poleceń może pobierać je bezpośrednio z pliku konfiguracji. Zobacz Użyj opcji --config.
-e, --env Ciąg znaków (Wymagane) Środowisko w organizacji.
-h, --help Wyświetla pomoc dotyczącą parametrów polecenia.
--insecure Zezwalaj na niezabezpieczone połączenia z serwerem podczas korzystania z SSL
--truncate int, Liczba certyfikatów do zachowania w JWK (domyślnie 2)
-o, --org Ciąg znaków (Wymagane) Organizacja Apigee. Musisz być administratorem organizacji.
-r, --runtime Ciąg znaków (Tylko chmura Private Cloud) Określa adres URL środowiska wykonawczego instancji Private Cloud.
-v, --verbose (Opcjonalnie) Generuje szczegółowe dane wyjściowe.

Przykład

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

Wyniki

certificate successfully rotated

Używanie domeny .netrc na potrzeby danych logowania

apigee-remote-service-cli automatycznie odbierze: username i password (w razie potrzeby do podstawowego uwierzytelniania) z urządzenia .netrc w katalogu głównym, jeśli korzystasz z Edge Public Cloud i masz wpis dla maszyna api.enterprise.apigee.com. Jeśli korzystasz z Apigee Private Cloud, wartość maszyn jest taka sama jak adresu URL w atrybucie management (np. http://192.162.55.100). Na przykład w Edge Public Cloud:
machine api.enterprise.apigee.com
login jdoe@google.com
password abc123
Na przykład w Edge Private Cloud:
machine http://192.162.55.100
login jdoe@google.com
password abc123

Polecenie dotyczące wersji

Wydrukuj wersję interfejsu wiersza poleceń.

apigee-remote-service-cli version

Za pomocą opcji polecenia --config

Opcja --config określa lokalizację pliku konfiguracyjnego wygenerowanego przez polecenie provision. Zaletą tej opcji jest to, że umożliwia pominięcie większości innych parametrów poleceń, które interfejs wiersza poleceń pobiera z pliku konfiguracji. Dostępne opcje:
  • organizacja
  • środowisko
  • środowisko wykonawcze
  • zarządzanie
  • niezabezpieczone
  • przestrzeń nazw
  • starsze
  • opdk

Możesz na przykład wykonać polecenie provision w ten sposób:

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

Plik konfiguracji

W tej sekcji znajdziesz przykładowy plik konfiguracji ze wszystkimi dostępnymi opcjami.

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