<ph type="x-smartling-placeholder"></ph>
您正在查看 Apigee Edge 文档。
转到
Apigee X 文档。 信息
Edge Microgateway v. 2.4.x
概览
借助 Edge Microgateway CLI,您可以控制和管理 Edge Microgateway 的所有方面 实例。
管理证书
借助 cert 命令,您可以安装和管理公钥/私钥
对,用于对客户端用于通过 Edge 进行安全调用的不记名令牌进行签名
Microgateway。这些密钥以加密的键值对映射 (KVM) 的形式存储在 Apigee Edge 上。Edge Microgateway 使用
公钥以验证已签名的不记名令牌。这些密钥是在您运行
configure 命令,如设置
设置和配置 Edge Microgateway。您可以使用
此处所述的 cert 命令来重新生成和管理这些密钥
(如果需要的话)。
安装证书
使用 Apigee Edge 安全存储服务在加密的键值对映射 (KVM) 中安装密钥,并返回 输出公钥。密钥对的范围限定为指定的组织。
用法
edgemicro cert install -o [organization] -e [environment] -u [username] -p [password] --force
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-u, --username |
您的 Apigee 用户名。您必须是 组织。 |
-p, --password |
(可选)您的密码。如果您在 命令行。 |
-f, --force |
(可选)如果密钥已存储在加密的 KVM 中,则强制替换该密钥。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro cert install -o docs -e test -u jdoe@example.com -f
输出
current nodejs version is v6.1.0 current edgemicro version is 2.2.4-beta password: deleting vault creating vault adding private_key adding public_key installed cert
删除证书
删除组织的密钥对。
用法
edgemicro cert delete -o [organization] -e [environment] -u [username] -p [password]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-u, --username |
您的 Apigee 用户名。您必须是 组织。 |
-p, --password |
(可选)您的密码。如果您在 命令行。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro cert delete -o docs -e test -u jdoe@example.com
输出
deleting vault Vault deleted!
检查证书
检查贵组织是否已安装证书。
用法
edgemicro cert check -o [organization] -e [environment] -u [username] -p [password]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-u, --username |
您的 Apigee 用户名。您必须是 组织。 |
-p, --password |
(可选)您的密码。如果您在 命令行。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro cert check -o docs -e test -u jdoe@example.com
输出 (成功)
checked cert successfully
输出 (失败)
如果证书不存在,则会返回错误。
获取公钥
返回指定组织的公钥。不需要身份验证。
用法
edgemicro cert public-key -o [organization] -e [environment]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro cert public-key -o docs -e test
输出(示例)
-----BEGIN CERTIFICATE----- MIICpDCCAYwCCQCKpXWGum9uTjANBgkq9w0BAQsFADAUMRIwEAYDVQQDEwls b2NhbGhvc3cNMTYxMTAyMjAxNTA2WhcNMTYxMTAzMjAxNTA2WjAUMRIwEAYD VQQDEwlsb2Nvc3QwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDD ETr/ne/gP47+9LgjLvBJjpbFVdaeUabZZ3wbA7sSIVnnNXWt3yPklrWSfIh+ L2+dq4k+YunsQE2+dwPdXA2x8DPGvqGcCdWPxnpZ7ix5Akbs8i/J+Ue0pXT4 jkpWbaDDftGL2tcxwP45yI+slpDYvmWRps07TFXkAPjGEHYPvCT9/v/35GkL 0h4v0S+XfpcjS5c47o7CIWlkgEM5GBosQUb17kuVR48392vGFPsnCP34iNe7 zguhiCXYg2zkOcj/N3AE4xKIhCz0QcewULy08GltWMmyjJ/30zs8P41JqoA4 RwfeEZ8RenN3rJQim1ppAAEwDQYJKoZIhvcNAQELBQADggEBAHcORIfc+ySe 2FMmqicNe6Wt5V/5zOaBMLsGQdqGOHB5cQc79sMBrk680KVhrwHXZ2nBIkVe UEL+2qLY1VLfswBNAvcNwV9U4TwHq4eIANiD751oJK1tHmM/ujThQkwNf96o 6I7Ws+wfpGO3ppJCttRbtnATIxrwsCHN4i5lbW/tJSL7t/Zf6T1B+YSJU9AF xuvLq22cCqyYJQdmKq2vVS55WRZdllm+mRtJrv7MLM9gfDPRxVlwrBz/eQHy Fv+dwzxcvQjkz03RNhZUodzuD34DPJoYeK++rItsddwQ26KTahH80yYTAFzY x9gfPf1/+qo= -----END CERTIFICATE-----
为 Apigee 配置 Edge Microgateway 边缘云
使 Edge Microgateway 能够与 Apigee Edge Cloud 实例搭配使用。它会封装起来并具有出色的性能 一系列命令,用于将所需的身份验证代理部署到 Edge,生成身份验证 以及更新配置文件有关完整的工作示例,请参阅设置 设置和配置 Edge Microgateway。
<ph type="x-smartling-placeholder">用法
edgemicro configure -o [organization] -e [environment] -u [username] -p [password]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-u, --username |
您的 Apigee 用户名。您必须是 组织。 |
-p, --password |
(可选)您的密码。如果您在 命令行。 |
-r, --url |
(可选)为“organization:environment”指定虚拟主机别名。请参阅
用于了解虚拟主机的 Edge 文档。
默认:org-env.apigee.net |
-c, --configDir |
(可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(已添加 v2.4.x) |
-x, --proxyName |
(可选)设置 edgemicro-auth 代理的基本路径。 如果 edgemicro-auth 代理部署在不同的路径下 此功能允许您使用默认值 /edgemicro-auth, 在 Edge Microgateway 中使用新路径。默认情况下,基本路径 为 /edgemicro-auth。(添加 v2.4.x) |
-t, --token |
(可选)允许您使用 OAuth 令牌(而不是用户名/密码)进行身份验证。
例如:edgemicro configure -o docs -e test -t <your token> |
-v, --virtualHosts |
(可选)覆盖默认虚拟主机,
“default,secure”。如果您已为自己的资源指定虚拟主机
除这些默认值以外的 Edge organization:环境。请参阅 Edge 文档
了解虚拟主机。 |
-d, --debug |
(可选)提供调试信息。 |
-h, --help |
输出使用情况信息。 |
使用说明
此命令将配置信息存储在
大约 /.edgemicro/org-env-config.yaml。
示例
edgemicro configure -o docs -e test -u jdoe@example.com
输出
成功后,该命令将返回您在启动 Edge 时需要使用的一组密钥 Microgateway。
... The following credentials are required to start edge micro key: d2f0a246ad52b5d2a8b04ba65b43c76348aba586691cf6185cd7bb9fb78fe9f secret: 59813bc1db4a7ada182705ae40893c28a6fae680c3deb42aefbf1a4db42e372 edgemicro configuration complete!
生成键
genkeys 命令会生成 Edge 使用的密钥和密钥对
Microgateway 在将分析数据异步发布到 Apigee 时对自身进行身份验证
Edge。
用法
edgemicro genkeys -o [organization] -e [environment] -u [username] -p [password]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-u, --username |
您的 Apigee 用户名。您必须是 组织。 |
-p, --password |
(可选)您的密码。如果您在 命令行。 |
-h, --help |
输出使用情况信息。 |
使用说明
成功后,该命令会返回三项内容。第一个字段是您需要 配置文件另外两个是启动 Edge 时所需的密钥对 Microgateway 实例。
- 引导加载程序网址:此网址指向启用
用于将分析数据发送到 Apigee Edge 的 Edge Microgateway 实例。您需要复制该网址
插入 Edge Microgateway 配置文件:~
/.edgemicro/org-env-config.yaml。 - key:密钥。必须提供此密钥和 Secret 作为 CLI 的输入 命令,用于启动 Edge Microgateway 实例。
- secret:密钥。
示例
edgemicro genkeys -o docs -e test -u jdoe@example.com
输出(示例)
成功后,该命令将返回您在启动 Edge 时需要使用的一组密钥 Microgateway。
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1 Please copy the following property to the edge micro agent config bootstrap: https://edgemicroservices-us-east-1.apigee.net/edgemicro/bootstrap/organization/jdoe/environment/test The following credentials are required to start edge micro key: db39324077989c75eac34c13d285772ea8e3b982b957b3f52916f3048511443f secret: 5bf8da39de0056f88fdd5f25a8602d22f312c1c8c870580a5fef55ac6637b7ae finished
为以下内容配置 Edge Microgateway Apigee Edge 私有云
配置 Edge Microgateway,以便与 Apigee Edge 私有云安装搭配使用。
用法
edgemicro private configure -o [organization] -e [environment] -u [username] -p [password]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-u, --username |
您的 Apigee 用户名。您必须是 组织。 |
-p, --password |
(可选)您的密码。如果您在 命令行。 |
-r, --runtime-url |
指定私有云实例的运行时网址。 |
-m, --mgmt-url |
私有云实例的管理服务器的网址。 |
-v, --virtualHosts |
“organization:environment”的虚拟主机列表(以英文逗号分隔)。默认
“default,secure”。 |
-c, --configDir |
(可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(已添加 v2.4.x) |
-t, --token |
(可选)允许您使用 OAuth 令牌(而不是用户名/密码)进行身份验证。
例如:edgemicro configure -o docs -e test -t <your token> |
-d, --debug |
(可选)提供调试信息。 |
-h, --help |
输出使用情况信息。 |
使用说明
此命令将配置信息存储在
大约 /.edgemicro/org-env-config.yaml。
示例
edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.55.100:9002 -m http://192.162.55.100:8080
输出
成功后,该命令将返回您在启动 Edge 时需要使用的一组密钥 Microgateway。
... The following credentials are required to start edge micro key: d2f0a246ad52b5d2a8b04ba65b43c76348aba586691cf6185cd7bb9fb78fe9f secret: 59813bc1db4a7ada182705ae40893c28a6fae680c3deb42aefbf1a4db42e372 edgemicro configuration complete!
启动 Edge Microgateway
在启动 Edge Microgateway 之前,您必须先运行 edgemicro configure(公有云)或 edgemicro private configure(私有云)。configure 命令返回键值和密钥值 启动 Edge Microgateway 所需的资源。
用法
edgemicro start -o [organization] -e [environment] -k [public-key] -s [secret-key]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-k, --key |
运行“edgemicro
configure”时返回的键值对命令。 |
-s, --secret |
运行“edgemicro
configure”时返回的 Secret 值命令。 |
-p, --processes |
(可选)要启动的进程数。默认值: 系统。 |
-d, --pluginDir |
(可选)插件目录的绝对路径。 |
-r, --port |
(可选)覆盖
~/.edgemicro/org-env-config.yaml 个文件。默认值:8000 |
-c, --cluster |
(可选)以集群模式启动 Edge Microgateway。 注意:从 v2.3.1 开始,此选项已被移除。在 v2.3.1 及更高版本,Edge Micro 始终以集群模式启动。 |
-c, --configDir |
(可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(已添加 v2.4.x) |
-d, --debug |
(可选)提供调试信息。 |
-h, --help |
输出使用情况信息。 |
设置端口
借助 start 命令,您可以指定要替换端口的端口号
配置模式您还可以使用
PORT 环境变量。例如:
edgemicro start -o docs -e test -k abc123 -s xyz456 -p 2 --port 8002
或
export PORT=8002 edgemicro start -o org -e test -k key -s secret -p 2
如果该端口正在使用中,则 Edge Microgateway 会返回错误。
聚类简介
Edge Microgateway 采用 Node.js cluster 模块启用聚类。通过集群,Edge Microgateway 可以 充分利用多核系统的优势如需了解详情,请参阅此 Node.js 文档。
<ph type="x-smartling-placeholder">示例
edgemicro start -o docs -e test -k abc123 -s xyz456
示例输出:
... PROCESS PID : 54709 installed plugin from analytics installed plugin from analytics installed plugin from oauth installed plugin from oauth installed plugin from analytics installed plugin from oauth 5a86b570-a142-11e6-aa1f-6730e9065d6c edge micro listening on port 8000 5a86dc80-a142-11e6-962c-43d9cc723190 edge micro listening on port 8000 5a8751b0-a142-11e6-8241-cf1c517c91eb edge micro listening on port 8000 installed plugin from analytics installed plugin from oauth 5a924e30-a142-11e6-8740-2944162ce275 edge micro listening on port 8000
管理令牌
借助 token 命令,您可以获取、解码并验证已签名的 OAuth2
访问令牌。另请参阅安全
使用 OAuth2 访问令牌进行 API 调用。
解码令牌
将已签名的编码不记名令牌解码为其纯文本 JSON JWT(Java 网络令牌) 表示。令牌用于传达提供 用于创建令牌的密钥,包括应用名称、client_id、商品列表等。
用法
edgemicro token decode -f [filename]
参数
| 参数 | 说明 |
|---|---|
-f, --file |
包含要解码的 JWT 令牌的文件的名称。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro token decode -f token.jwt
输出(示例)
{ header: { typ: 'JWT', alg: 'RS256' }, payload: { application_name: 'b43342ef-86f6-4666-a121-b9ac2025d217', client_id: 'O9ZQRZKnn1rdgcKQgsABSMdOsKS', scopes: [], api_product_list: [ 'MicroTest' ], iat: 1436280566, exp: 1436282365 }, signature: ... }
生成令牌
生成已签名的不记名令牌。通过该令牌,客户端应用可以进行经过身份验证的 API 调用 再到 Edge Microgateway。该令牌是符合 OAuth 2.0 标准的 JSON 网络令牌 (JWT)。它需要 请输入一个已注册的客户密钥(客户端 ID)和使用方密钥(客户端密钥) Apigee Edge 上的开发者应用。另请参阅安全 使用 OAuth2 访问令牌进行 API 调用。
用法
edgemicro token get -o [org] -e [env] -i [client_id] -s [client_secret]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-1, --key |
来自与 Microgateway 感知功能关联的开发者应用中的客户端 ID 代理。 |
-s, --secret |
来自开发者应用的客户端密钥(与您的 Microgateway 感知功能相关联) 代理。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro token get -o docs -e test -i 5UzOwAXGoOeo60aew94PPG5MAZE3aJp -s 6vahKFGS9a3qMLwz
输出(示例)
{ token: 'eyJ0eXAiOiJKV1JhbGciOiJSUzI1NiJ9Glvbl9uYW1lIjoiNWNiMGY0NTV6TV3
EtOWMzOC00YmJjLWIzNzEtZGMxZTQzOGMxIiwiY2xpZW50X2lkIjoiNVV6T3dBWEdvSU9lbz
YwYWV3OTRQN0c1TUFaRTNhSnAiLCJzY2MiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIkVkZ2
VNaWNyb1Rlc3RQcm9kdWN0Il0sImlhdCI3ODEyMzQ2MSwiZXhwIjoxNDc4MTI1MjYwfQ.Dx5
f5U7PXm8koNGmFX4N6VrxKMJnpndKgoJ5zWSJvBZ6Ccvhlpd85ipIIA5S2A5nx4obYWp_rpY
RJpIGYwyxP6Oq2j0rxnVjdCC4qyYMgthZjhKgEBVBe3s1ndP72GP2vV6PsSA9RQ2-yzsy9r0
TzhAZ3NJTxT1tS0XKqKngE-OhR3fJHVLAzdMDT0AmS9H0Z2NAJtQOuK6RTpCjG9B6Bc48AEM
sj7QSM-1LWiQ8LdY8k_BoC06qsTI7bCQGWwTuqL-ismbcx2bxovUxSemZIaoROfuF-dCZHG3
2aTP75WxBvvNgBBvPvQtPzbeSOtEaww' }发出 HTTP 请求以获取令牌
您也可以发出原始 HTTP 请求以获取令牌。下面是一个 curl 示例。直接替换 您的组织和环境名称,并替换消费者 ID 和使用方密钥 client_id 和 client_secret 参数的值:
curl -i -X POST "http://<org>-<test>.apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials", "client_id": "4t8X137pOUUtMR7wag3M1yZTcRxeK", "client_secret": "RAcOFVOvO0jns"}' -H "Content-Type: application/json"
验证令牌
针对指定的 组织和环境。
用法
edgemicro token verify -o [org] -e [env] -f [filename]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-f, --file |
包含要验证的 JWT 的文件的名称。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro token get -o docs -e test -f token.jwt
有效令牌的示例输出
{ application_name: 'b43342ef-86f6-4666-a121-b9ac2025d217',
client_id: 'O9ZQRZKnn1rdgcKQsAZUBkQSMdOsKS',
scopes: [],
api_product_list: [ 'MicroTest' ],
iat: 1436396155,
exp: 1436397954 }无效令牌的示例输出
{ [JsonWebTokenError: invalid token] name: 'JsonWebTokenError', message: 'invalid token' }过期令牌的示例输出
{ [TokenExpiredError: jwt expired]
name: 'TokenExpiredError',
message: 'jwt expired',
expiredAt: Tue Jul 07 2015 09:19:25 GMT-0600 (MDT) }直接获取不记名令牌
您可能希望直接获取不记名令牌,方法是向令牌发出 HTTP 请求 端点。实际的令牌端点在部署的代理中实现 和 Deployment-edge-service CLI 命令
下面是一个 curl 示例。只需在网址中替换您的组织和环境名称,然后 请替换从 Apigee 上的开发者应用获取的使用方 ID 和使用方密钥值 边缘用途 client_id 和 client_secret 参数:
curl -i -X POST "http://<org>-<test>.apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials", "client_id": "4t8X137pOUUtMR7wag3M1yZTcRxeK", "client_secret": "RAcOFVOvO0jns"}' -H "Content-Type: application/json"
示例输出:
HTTP/1.1 200 OK X-Powered-By: Express Cache-Control: no-store Pragma: no-cache Content-Type: application/json; charset=utf-8 Content-Length: 640 ETag: W/"280-ze/g/k+c9taqp110vjYQ" Date: Fri, 17 07 2015 15:49:24 GMT Connection: keep-alive "<long string of numbers and letters>"
初始化新的 Edge Microgateway 配置
首次安装 Edge Microgateway 后运行此命令一次。创建新的默认值
配置文件:~/.edgemicro/default.yaml。
用法
edgemicro init
参数
| 参数 | 说明 |
|---|---|
-c, --configDir |
(可选)指定 Edge Microgateway 配置文件的路径。默认情况下 配置文件位于 ./config/config.yaml 中。(已添加 v2.4.x) |
-h, --help |
输出使用情况信息。 |
示例
edgemicro init
输出 (成功)
config initialized to /MyHome/.edgemicro/default.yaml
验证 Edge Microgateway 配置
验证 Edge Microgateway 是否已正确配置。
用法
edgemicro verify -o [organization] -e [environment] -k [public-key] -s [secret-key]
参数
示例
edgemicro verify -o docs -e test -k abc123 -s xyz456
输出 (成功)
logging to /var/tmp/edgemicro-My-Machine.local-a0c48610-a148-11e6-8466-93f081b05988 installed plugin from analytics installed plugin from oauth a0c48610-a148-11e6-8466-93f081b05988 edge micro listening on port 8000 verifying analytics negative case: OK verifying bootstrap url availability:OK verifying jwt_public_key availability: OK verifying products availability: OK verifying quota with configured products: OK verifying analytics with payload: OK verification complete
检查微网关集群状态
添加了:v2.2.4-beta
默认情况下,Edge Microgateway 以集群模式启动。您可以使用此命令 集群状态
用法
edgemicro status
参数
| 参数 | 说明 |
|---|---|
-h, --help |
输出使用情况信息。 |
示例
edgemicro status
输出 (成功)
current nodejs version is v6.1.0 current edgemicro version is 2.2.4-beta edgemicro is running with 4 workers
停止 microgateway 集群
添加了:v2.2.4-beta
停止 Edge Microgateway 集群。
用法
edgemicro stop
参数
| 参数 | 说明 |
|---|---|
-h, --help |
输出使用情况信息。 |
示例
edgemicro stop
输出 (成功)
current nodejs version is v6.1.0 current edgemicro version is 2.2.4-beta Stop Completed Successfully
重新加载 microgateway 集群
添加了:v2.2.4-beta
在配置更改后提供零停机重启。重新加载 Edge Microgateway 拉取新配置
用法
edgemicro reload -o [organization] -e [environment] -k [public-key] -s [secret-key]
参数
| 参数 | 说明 |
|---|---|
-o, --org |
您为其配置 Edge Microgateway 的 Apigee 组织。 |
-e, --env |
您为其配置了 Edge Microgateway 的环境。 |
-k, --key |
运行“edgemicro
configure”时返回的键值对命令。 |
-s, --secret |
运行“edgemicro
configure”时返回的 Secret 值命令。 |
-h, --help |
输出使用情况信息。 |
示例
edgemicro reload -o docs -e test -k abc123 -s xyz456
输出 (成功)
... Reload Completed Successfully