Estás viendo la documentación de Apigee Edge.
Ve a la
Documentación de Apigee X. información
La interfaz de línea de comandos (CLI) apigee-remote-service-cli
te ayuda a aprovisionar y administrar el adaptador de Apigee para Envoy.
Comandos de vinculación
La vinculación asocia un servicio implementado en la malla de Istio con un producto de la API de Apigee. La CLI te permite enumerar y verificar vinculaciones.
Mostrar lista de vinculaciones
Enumera todos los productos de API que están vinculados al servicio remoto.
Uso
Para la nube perimetral pública:
apigee-remote-service-cli bindings list -o [organization] -e [environment] -u [username] -p [password]
Para la nube privada perimetral:
apigee-remote-service-cli bindings list -o [organization] -e [environment] -u [username] -p [password] -r [runtime]
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
-c, --config
|
String | La ruta de acceso al archivo de configuración del servicio remoto de Apigee (obligatorio). Sugerencia: esta marca te permite omitir la mayoría de los demás parámetros de comando, porque la CLI puede extraerlos directamente del archivo de configuración. Consulta Usando la opción --config ...
|
-e, --env
|
String | Es un entorno en tu organización (obligatorio). |
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
--insecure
|
Permite conexiones inseguras de servidores cuando se usa SSL | |
--legacy
|
Establece esta marca si usas Apigee Edge Cloud. Configura las URL de administración y el entorno de ejecución para Edge Cloud. | |
--mfa
|
Token de autorización de varios factores de Apigee (se usa solo con --legacy )
|
|
--opdk
|
Establece esta marca si usas Apigee Edge para una nube privada. | |
-o, --org
|
String | Es una organización de Apigee (obligatorio). Debes ser administrador de una organización. |
-p, --password
|
String | (Obligatorio solo para autenticación básica) Tu contraseña de Apigee. De manera opcional, puedes especificar la contraseña en un archivo .netrc . Si lo haces, no es necesario que proporciones tu contraseña en la línea de comandos. Consulta también Cómo usar .netrc para credenciales.
|
-r, --runtime
|
String | Especifica la URL del entorno de ejecución para tu instancia de nube privada (solo en la nube privada). |
-t, --token
|
String | (Obligatorio solo para la autenticación de token de OAuth) Un token de OAuth o SAML que se genere desde la información de tu cuenta de Apigee. Para más información sobre cómo generar tokens, consulta Usa get_token y Accede a la API de administración con SAML. |
-u, --username
|
String | (Obligatorio solo para la autenticación básica) Es tu nombre de usuario de Apigee (por lo general, una dirección de correo electrónico).
De manera opcional, puedes especificar el nombre de usuario en un archivo .netrc . Si lo haces, no es necesario que proporciones tu nombre de usuario en la línea de comandos. Consulta también Cómo usar .netrc para credenciales.
|
-v, --verbose
|
Proporciona un resultado detallado (opcional). |
Ejemplo
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:
Verificar una vinculación
Verifica que el producto de API vinculado especificado y sus apps para desarrolladores asociadas también tengan un producto de servicio remoto asociado. Si no especificas un nombre de producto de API, el comando verifica todos los productos vinculados.
Uso
Para la nube perimetral pública:
apigee-remote-service-cli bindings verify [product_name] -o [organization] -e [environment] -u [username] -p [password] -c [config]
Para la nube privada perimetral:
apigee-remote-service-cli bindings verify [product_name] -o [organization] -e [environment] -u [username] -p [password] -r [runtime] -c [config]
Donde product_name es opcional. Si no especificas un nombre de producto, se verifican todos los productos vinculados.
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
-c, --config
|
String | La ruta de acceso al archivo de configuración del servicio remoto de Apigee (obligatorio). Sugerencia: esta marca te permite omitir la mayoría de los demás parámetros de comando, porque la CLI puede extraerlos directamente del archivo de configuración. Consulta Usa la opción --config .
|
-e, --env
|
String | Es un entorno en tu organización (obligatorio). |
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
--insecure
|
Permite conexiones inseguras de servidores cuando se usa SSL | |
--legacy
|
Establece esta marca si usas Apigee Edge Cloud. Configura las URL de administración y el entorno de ejecución para Edge Cloud. | |
--mfa
|
Token de autorización de varios factores de Apigee (se usa solo con --legacy )
|
|
--opdk
|
Establece esta marca si usas Apigee Edge para una nube privada. | |
-o, --org
|
String | Es una organización de Apigee (obligatorio). Debes ser administrador de una organización. |
-r, --runtime
|
String | Especifica la URL del entorno de ejecución para tu instancia de nube privada (solo en la nube privada). |
-t, --token
|
String | (Obligatorio solo para la autenticación de token de OAuth) Un token de OAuth o SAML que se genere desde la información de tu cuenta de Apigee. Para más información sobre cómo generar tokens, consulta Usa get_token y Accede a la API de administración con SAML. |
-v, --verbose
|
Proporciona un resultado detallado (opcional). |
Ejemplo
./apigee-remote-service-cli bindings verify my-product -o myorg -e test -u user@example.com -c config.yaml -p xxxxxx app my-app associated with product my-product is verified
Comando de ayuda
Se proporciona ayuda en línea para todos los comandos apigee-remote-service-cli
. Escribe lo siguiente:
apigee-remote-service-cli help
Para obtener ayuda con cualquier comando, escribe lo siguiente:
apigee-remote-service-cli [command] help
Por ejemplo:
apigee-remote-service-cli provision help
Comando de aprovisionamiento
El comando apigee-remote-service-cli provision
instala un proxy en tu
organización perimetral, configura un certificado y genera credenciales que necesitarás para
y configurar Apigee Adapter for Envoy
Uso
Si usas la nube perimetral pública:
apigee-remote-service-cli provision -o $ORG -e $ENV -u $USERNAME -p $PASSWORD
Si usas la nube privada perimetral:
apigee-remote-service-cli provision --opdk -o $ORG -e $ENV -u $USERNAME --management $MGMT_SERVER_URL --runtime $RUNTIME_URL -p $PASSWORD
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
--analytics-sa
|
String | Esta marca solo
disponible para instalaciones de Apigee Hybrid y Apigee en Google Cloud.
Usa esta marca para especificar la ruta a un archivo de claves de cuenta de servicio de Google Cloud, en el que la cuenta de servicio tiene la función |
-c, --config
|
String | Ruta de acceso al archivo de configuración del servicio remoto de Apigee. Consulta también Usa la opción --config .
|
-e, --environment
|
String | Es un entorno en tu organización (obligatorio). |
-f, --force-proxy-install
|
(Opcional) Fuerza el proxy remote-service para que se vuelva a instalar si ya está instalado en tu organización.
|
|
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
-k, --key
|
String | Especifica el secreto que muestra el comando apigee-remote-service-cli provision .
|
--legacy
|
Establece esta marca si usas Apigee Edge Cloud. Configura las URL de administración y el entorno de ejecución para Edge Cloud. | |
--mfa
|
Token de autorización de varios factores de Apigee (se usa solo con --legacy )
|
|
-m, --management
|
String | (Obligatorio si estás en la nube privada de Apigee) La URL de base de administración de Apigee.
Valor predeterminado: https://api.enterprise.apigee.com
|
-n, --namespace
|
String | Emite la configuración como ConfigMap de Envoy en el espacio de nombres especificado. Predeterminado: Apigee |
--opdk
|
String | OPDK de Apigee. |
-o, --organization
|
String | Tu organización de Apigee (obligatorio). Debes ser administrador de una organización. |
-p, --password
|
String | (Obligatorio solo para autenticación básica) Tu contraseña de Apigee. De manera opcional, puedes especificar la contraseña en un archivo .netrc . Si lo haces, no es necesario que proporciones tu contraseña en la línea de comandos. Consulta también Cómo usar .netrc para credenciales.
|
--rotate-int
|
int | Si n > 0, genera una clave privada nueva y conserva n claves públicas (solo híbrido) |
-r, --runtime
|
String | Especifica la URL del entorno de ejecución para tu instancia de nube privada (solo en la nube privada). |
-s, --secret
|
String | Especifica el secreto que muestra el comando apigee-remote-service-cli provision .
|
--strength
|
int | Especifica la intensidad de encriptación para los certificados SSL usados en el aprovisionamiento del adaptador (opcional). Predeterminada 2048 |
-t, --token
|
String | (Solo para Hybrid) Token de OAuth o SAML de Apigee. |
-u, --username
|
String | (Obligatorio solo para la autenticación básica) Es tu nombre de usuario de Apigee (por lo general, una dirección de correo electrónico).
De manera opcional, puedes especificar el nombre de usuario en un archivo .netrc .
Consulta también Cómo usar .netrc para credenciales.
|
-v, --verbose
|
Proporciona un resultado detallado (opcional). | |
--virtual-hosts
|
String | Anula los hosts virtuales predeterminados, que son default,secure . Usa esta opción si tienes hosts virtuales especificados para tu entorno de organización de Edge distintos de estos valores predeterminados.
Consulta la documentación de Edge para obtener más información.
sobre los hosts virtuales.
|
--years
|
int | La cantidad de años antes de que venza el certificado SSL que se usó en el aprovisionamiento (opcional). Predeterminado: 1 |
Ejemplo
Asegúrate de capturar el resultado del comando provision
en un archivo, que se usa como entrada para otros adaptadores de Apigee para las operaciones de Envoy.
Ejemplo de nube pública de Edge:
apigee-remote-service-cli provision --legacy --mfa $MFA --username $USER --password $PASSWORD --organization $ORG --environment $ENV > config.yaml
Comando de muestra
Crea archivos de configuración de muestra para las implementaciones nativas de Envoy o Istio.
Uso
apigee-remote-service-cli samples create [flags]
Descripción
El comando requiere un archivo config.yaml
válido que se genere a través del aprovisionamiento.
De forma predeterminada, los archivos de muestra se envían a un directorio llamado ./samples
. El comando crea este directorio para ti.
Si usas Envoy nativo, el comando toma el host del servicio de destino y el nombre deseado para su clúster. También establece la conexión SSL personalizada del proxy de Envoy al clúster de servicio remoto si se proporciona una carpeta que contiene tls.key
y tls.crt
a través de --tls
.
Si usas Istio, en que el proxy de Envoy actúa como un archivo adicional, si no se especifica el destino, se generará el ejemplo de httpbin
. De lo contrario, eres responsable de preparar los archivos de configuración relacionados con la implementación de los servicios de destino.
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
-c, --config
|
String | Ruta de acceso al archivo de configuración del servicio remoto de Apigee (obligatorio). Sugerencia: esta marca te permite omitir la mayoría de los demás parámetros de comando, porque la CLI puede extraerlos directamente del archivo de configuración. Consulta Usa la opción --config .
|
-f, --force
|
Fuerza el directorio existente que se reemplazará. | |
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
--host
|
El host del servicio de destino (predeterminado "httpbin.org") | |
-n, --name
|
El nombre del servicio de destino (predeterminado "httpbin") | |
--out
|
Este es el directorio en el que se crearán los archivos de configuración de muestra Valor predeterminado: ./samples
|
|
-t, --template
|
El nombre de la plantilla. Si realizas una implementación de Istio (solo híbrida), selecciona una de las opciones de Istio disponibles. Usa la opción nativa para las implementaciones nativas de Envoy. Las opciones disponibles son las siguientes:
|
|
--tls
|
El directorio en el que se almacenarán la clave de TLS y los archivos crt. |
Ejemplo
apigee-remote-service-cli samples create -c ./config.yaml
Enumera opciones de plantilla disponibles
Enumera las opciones disponibles para usar con el parámetro --templates
.
Uso
apigee-remote-service-cli samples templates
Parámetros
Ninguno
Ejemplo
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
Comandos de token
Puedes usar un token JWT para realizar llamadas autenticadas al proxy de API, en lugar de usar una clave de API. Los comandos de token te permiten crear, inspeccionar y rotar tokens JWT para este propósito.
Crea un token JWT
Puedes usar un token JWT para realizar llamadas autenticadas del proxy de API a un destino de servicio remoto. Consulta también Usa la autenticación basada en JWT.Uso
Para la nube perimetral pública:apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -o [org] -e [env]
apigee-remote-service-cli token create -c [config_file] --id [consumer_key] --secret [consumer_secret] -r [runtime] -o [org] -e [env]
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
-c, --config
|
String | La ruta de acceso al archivo de configuración del servicio remoto de Apigee (obligatorio). Sugerencia: esta marca te permite omitir la mayoría de los demás parámetros de comando, porque la CLI puede extraerlos directamente del archivo de configuración. Consulta Usa la opción --config .
|
-e, --env
|
String | Es un entorno en tu organización (obligatorio). |
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
--insecure
|
Permite conexiones inseguras de servidores cuando se usa SSL | |
-o, --org
|
String | Es una organización de Apigee (obligatorio). Debes ser administrador de una organización. |
-r, --runtime
|
String | Especifica la URL del entorno de ejecución para tu instancia de nube privada (solo en la nube privada). |
-v, --verbose
|
Proporciona un resultado detallado (opcional). |
Ejemplo
apigee-remote-service-cli token create -o myorg -e test -i YUmlZAcBKNsTAelJqPZFl3sh58ObATX9 -s icTARgaKHqvUH1dq -c config.yaml
Resultado
Cuando el proceso finalice, verás un resultado de token JST similar al siguiente:eyJraWQiOiIxIiwidHlwIjoiSldUIiwiYWxnIjoiUlMyNTYifQ.eyJhY2Nlc3NfdG9rZW4iOiJ0a2tlVzVKQTY2a0pZYTB4bFV1cVBsUW1BMU43IiwiYXVkIjoiaXN0aW8iLCJuYmYiOjE1MzAxMzg1OTEsImFwaV9wcm9kdWN0X2xpc3QiOlsiaXN0aW8tcHJvZHVjdCJdLCJhcHBsaWNhdGlvbl9uYW1lIjoiaXN0aW8tYXBwIiwiZGV2ZWxvcGVyX2VtYWlsIjoicFluZ2Zsb3lkQGdvb2dsZS5jb20iLCJpc3MiOiJodHRwczovL2FwaWdlZXNlYXJjaC10ZXN0LmFwaWdlZS5uZXQvaXN0aW8tYXV0aC90b2tlbiIsImV4cCI6MTUzMDEzOTQ5MSwiaWF0IjoxNTMwMTM4NTkxLCJqdGkiOiIxODgzMzViZi0wMmE4LTRjZGUsOGFkOS0yMWJmNDZjNmRjZDkiLCJjbGllbnRfaWQiOiJZVW1sWkFjQktOc1RBZWxKcVBZRmwzc2g1OE9iQVRYOSJ9.AL7pKSTmond-NSPRNNHVbIzTdAnZjOXcjQ-BbOJ_8lsQvF7PuiOUrGIhY5XTcJusisKgbCdtIxBl8Wq1EiQ_fKnUc3JYYOqzpTB5bGoFy0Yqbfu96dneuWyzgZnoQBkqwZkbQTIg7WNTGx1TJX-UTePvBPxAefiAbaEUcigX9tTsXPoRJZOTrm7IOeKpxpB_gQYkxQtV1_NbERxjTPyMbHdMWal9_xRVzSt7mpTGudMN9OR-VtQ1uXA67GOqhZWcOzq57qImOiCMbaoKnKUADevyWjX_VscN5ZZUtzQUQhTrmv8aR69-uVhMIPKp9juMyYKaYn2IsYZEeCWfhfV45Q
Inspecciona un token JWT
Puedes inspeccionar un token JWT con este comando. Consulta también Inspecciona un token.Uso
Para la nube perimetral pública:apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file]
apigee-remote-service-cli token inspect -o [organization] -e [environment] -f [token_file] --runtime [host_alias]
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
-c, --config
|
String | La ruta de acceso al archivo de configuración del servicio remoto de Apigee (obligatorio). Sugerencia: esta marca te permite omitir la mayoría de los demás parámetros de comando, porque la CLI puede extraerlos directamente del archivo de configuración. Consulta Usa la opción --config .
|
-e, --env
|
String | Es un entorno en tu organización (obligatorio). |
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
--insecure
|
Permite conexiones inseguras de servidores cuando se usa SSL | |
-o, --org
|
String | Es una organización de Apigee (obligatorio). Debes ser administrador de una organización. |
-r, --runtime
|
String | Especifica la URL del entorno de ejecución para tu instancia de nube privada (solo en la nube privada). |
-v, --verbose
|
Proporciona un resultado detallado (opcional). |
Ejemplo
apigee-remote-service-cli token inspect -c config.yaml <<< $TOKEN
Resultado
Si se realiza de forma correcta, verás un resultado similar al siguiente:{ "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.
Rota un token JWT
Después de generar un JWT por primera vez, es posible que debas cambiar la clave pública/privada que almacena Apigee Edge en su mapa clave-valor encriptado (KVM). Este proceso de generación de un par de claves nuevo se denomina rotación de claves. Cuando rotas las claves, se genera un nuevo par de claves pública/privada se genera y se almacena en el archivo “istio” KVM en tu organización o entorno de Apigee Edge Además, la clave pública antigua se conserva junto con su valor de ID de clave original.Uso
Si usas la nube perimetral pública:apigee-remote-service-cli token rotate-cert -c [config_file] -o [organization] -e [environment] -k [provision_key] -s [provision_secret] --kid [new_key_id]
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]
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
-c, --config
|
String | La ruta de acceso al archivo de configuración del servicio remoto de Apigee (obligatorio). Sugerencia: esta marca te permite omitir la mayoría de los demás parámetros de comando, porque la CLI puede extraerlos directamente del archivo de configuración. Consulta Usa la opción --config .
|
-e, --env
|
String | Es un entorno en tu organización (obligatorio). |
-h, --help
|
Muestra ayuda para los parámetros del comando. | |
--insecure
|
Permite conexiones inseguras de servidores cuando se usa SSL | |
--truncate
|
int | Cantidad de certificados para conservar en jwks (predeterminado 2) |
-o, --org
|
String | Es una organización de Apigee (obligatorio). Debes ser administrador de una organización. |
-r, --runtime
|
String | Especifica la URL del entorno de ejecución para tu instancia de nube privada (solo en la nube privada). |
-v, --verbose
|
Proporciona un resultado detallado (opcional). |
Ejemplo
apigee-remote-service-cli token rotate-cert -c config.yaml -o myorg -e test -k 2e238ffa15dc5ab6a1e97868e7581f6c60ddb8575478582c256d8b7e5b2677a8 -s 51058077223fa7b683c3bea845c5cca138340d1d5583922b6d465f9f918a4b08
Resultado
certificate successfully rotated
Usa .netrc para credenciales
apigee-remote-service-cli
recoge automáticamente username
y password
(para la autenticación básica, en donde sea necesario) desde un archivo .netrc
en tu directorio principal si estás en la nube pública de Edge y tienes una entrada para la máquina api.enterprise.apigee.com
. Si estás en la nube privada de Apigee, el valor de la máquina es el mismo que tu URL de management
(por ejemplo: http://192.162.55.100
). Por ejemplo, en la nube pública de Edge, sucede lo siguiente:
machine api.enterprise.apigee.com login jdoe@google.com password abc123
machine http://192.162.55.100 login jdoe@google.com password abc123
Comando de la versión
Imprime la versión de la CLI
apigee-remote-service-cli version
Usa la opción del comando --config
La opción --config
especifica la ubicación del archivo de configuración que generó el comando provision
. Un beneficio útil de esta opción es que te permite omitir la mayoría de los demás parámetros de comando, que la CLI extrae del archivo de configuración.
Estas son algunas opciones:
- organización
- entorno
- runtime
- management
- Inseguro
- namespace
- heredada
- opdk
Por ejemplo, puedes ejecutar el comando provision
de la siguiente manera:
apigee-remote-service-cli provision --config='old-config.yaml' > new-config.yaml
Archivo de configuración
En esta sección, se muestra un archivo de configuración de ejemplo con todas las opciones disponibles.
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