私有雲版本 4.17.05 版本
營利服務是 Apigee Edge 的擴充功能,因此並非獨立運作。可在任何現有 Apigee Edge 設定中執行。
營利規定
- 如果您是使用多個管理伺服器節點 (例如 13 個節點安裝) 的邊緣拓撲來安裝營利服務,則必須先安裝這兩個 Edge Management Server 節點才能安裝營利功能。
- 如要在 Edge 安裝具有邊緣 Postgres 節點的邊緣安裝營利服務,則必須在主要/待命模式下設定 Postgres 節點。如果有多個 Postgres 主要節點,就無法在 Edge 中安裝營利功能。詳情請參閱為 Postgres 設定主副本複製功能。
安裝總覽
下列步驟說明如何在現有的 Apigee Edge 安裝作業中加入營利服務:
- 使用 Apigee-setup 公用程式來更新 Apigee Management Server 節點,以便啟用營利服務,例如目錄管理、限制和通知設定、帳單和報表。
如果你有多個管理伺服器節點 (例如安裝 13 個節點),就必須安裝 Edge Edge Server 節點再安裝營利服務。 - 使用 Apigee-setup 公用程式來更新 Apigee Message Message Process,以便啟用營利服務的執行階段元件,例如交易錄製政策和限制強制執行。如有多位訊息處理工具,請在所有訊息中安裝「營利」。
- 為您的 Edge 機構執行營利新手上路程序。
- 設定開發人員服務入口網站以啟用營利功能。詳情請參閱 http://apigee.com/docs/monetization/content/configure-monetization-developer-portal。
為營利建立靜音設定檔
以下是營利安裝設定檔的靜音設定檔範例。視需要根據設定編輯這個檔案。使用 -f 選項來進行設定,加入這個檔案。
注意:一般來說,您可以將這些屬性新增至用來安裝 Edge 的設定檔,如「在節點上安裝 Edge 元件」一節所示。
# Edge configuration properties # Specify IP address or DNS name of node. IP1=192.168.1.1 # Management Server, OpenLDAP, UI, ZooKeeper, Cassandra IP2=192.168.1.2 # ZooKeeper, Cassandra IP3=192.168.1.3 # ZooKeeper, Cassandra IP4=192.168.1.4 # Router, Message Processor IP5=192.168.1.5 # Router, Message Processor IP6=192.168.1.6 # Qpid IP7=192.168.1.7 # Qpid IP8=192.168.1.8 # Postgres IP9=192.168.1.9 # Postgres # Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost. HOSTIP=$(hostname -i) # Edge sys admin credentials ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=yourPassword # If omitted, you are prompted for it. # Specify the Management Server port. APIGEE_PORT_HTTP_MS=8080 # # Monetization configuration properties. # # Postgres credentials from Edge installation. PG_USER=apigee # Default from Edge installation PG_PWD=postgres # Default from Edge installation # Specify Postgres server. MO_PG_HOST="$IP8" # Only specify one Postgres node. # Create a Postgres user for Monetization. # Default username is "postgre". # If you specify a different user, that user must already exist. MO_PG_USER=postgre MO_PG_PASSWD=moUserPWord # Specify one ZooKeeper host. # Ensure this is a ZooKeeper leader node in a multi-datacenter environment. ZK_HOSTS="$IP2" # Specify Cassandra information. # Ensure CASS_HOSTS is set to the same value as when you installed Edge. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Default is "Apigee", unless it was changed during Edge install. CASS_CLUSTERNAME=Apigee # Cassandra uname/pword required only if you enabled Cassandra authentication. # CASS_USERNAME= # CASS_PASSWORD= # Specify the region. # Default is dc-1 unless you are in a multi-datacenter environment. REGION=dc-1 # If your Edge config file did not specify SMTP information, add it. # Monetization requires an SMTP server. SMTPHOST=smtp.gmail.com SMTPPORT=465 SMTPUSER=your@email.com SMTPPASSWORD=yourEmailPassword SMTPSSL=y SMTPMAILFROM="My Company <myco@company.com>"附註:
- 如果您的 Edge 設定檔並未指定 SMTP 資訊,請新增該檔案。您必須啟用 SMTP 伺服器才能營利。
- 在單一資料中心安裝中,所有 ZooKeeper 節點預設都會採用領導者。在多個資料中心安裝 Edge 時,系統會將 ZooKeeper 節點設為觀測器。確保上述 ZK_hostS 屬性在安裝多個資料中心時指定了主要節點。
- 啟用 Cassandra 驗證功能後,您可以使用下列屬性傳遞 Cassandra 使用者名稱和密碼:
CASS_Username
CASS_PASSWORD
將營利服務與所有管理伺服器整合
請按照下列程序整合管理伺服器節點的營利功能。
- 如要在採用多個管理伺服器節點 (例如 13 個節點安裝) 的 Edge 拓撲中安裝營利功能,請務必先安裝兩個管理伺服器節點再安裝營利功能。
- 在管理伺服器節點上執行設定指令碼:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
「-p mo」選項會指定整合營利功能。
設定檔必須可供「Apigee」使用者存取或讀取。 - 如要在多個管理伺服器節點上安裝營利功能,請在第二個管理伺服器節點上重複步驟 2。
設定成功後,系統會在 PostgreSQL 資料庫中建立營利服務的 RDBMS 結構定義。以便將營利服務及其相關聯的元件與 Postgres Server 整合完成。
將營利服務與所有訊息處理器整合
請按照下列程序整合所有訊息處理器節點的營利功能。
- 在第一個訊息處理器節點上,按照命令提示字元執行設定指令碼:
> /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
「-p mo」選項會指定整合營利功能。
設定檔必須可供「Apigee」使用者存取或讀取。 - 針對所有「訊息處理器」節點重複這項程序。
成功設定後,訊息處理工具就會透過營利服務更新。如此即可整合營利服務及相關元件與訊息處理工具。
啟用營利功能
如要建立已啟用營利功能的新機構,請先按照所有新機構的方式建立機構。詳情請參閱「為機構提供支援」。
為機構啟用營利功能的其他新手上路流程
如要完成機構的營利功能啟用程序,您必須符合以下條件:
- 建立營利群組:mxgroup。
- 將 Qpid 新增至群組。
- 為機構啟用營利功能。
- 為機構啟用通知設定。
- 為所有要啟用營利功能的機構重複執行這項程序。
使用 enable-monetization 指令執行所有這些工作。這個指令碼會採用包含以下屬性的設定檔:
MSIP=IPorDNSofManagementServer APIGEE_PORT_HTTP_MS=8080 # Default is 8080. ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=yourPassword # If omitted, you are prompted for it. # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" # Space-separated list IP/DNS names of all Qpid nodes in the data center being configured. QPID_HOST="$IP6 $IP7" QPID_PORT=8083 # Default is 8083. REGION=dc-1 ORG_NAME=myorg # The Edge org where you want to enable monetization. MX_GROUP=mxgroup # Default Monetization group.
注意事項:
- 將 CASS_HOSTS 和 REGION 設為您在安裝營利服務時使用的值。
- 如要在多個資料中心設定中啟用營利功能,請按照下列步驟操作:
- 您必須在每個資料中心的管理伺服器中重複執行新手上路程序。
- 設定檔只能列出正在設定的資料中心 QQid 節點。
如何執行指令碼:
- 叫用指令碼:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile
設定檔必須可供「Apigee」使用者存取或讀取,
如果你有多個管理伺服器,只需在其中一個伺服器中執行這個指令碼。
這個指令碼會將機構、產品、開發人員和應用程式從 Cassandra 資料庫複製到營利 PostgreSQL 資料庫。安裝「營利服務」後,系統將自動同步處理資料。 - 為每個要啟用營利功能的機構重複執行這項程序。
- 如果您位於多個資料中心環境,請在其他資料中心的管理伺服器中重複這項程序。請確認設定檔只列出資料中心內的 Qpid 節點。
下次登入 Edge UI 時,就會在頂層頂層選單中看到機構的營利項目:
設定開發人員服務入口網站
如需設定開發人員服務入口網站以啟用營利功能,請參閱 http://apigee.com/docs/monetization/content/configure-monetization-developer-portal。
將管理伺服器節點新增至營利安裝作業
如果您將管理伺服器新增至現有的 Edge 安裝作業,請務必先將營利服務新增至新的管理伺服器,並設定所有管理伺服器,以便相互通訊。
如何新增管理伺服器:
- 安裝新的管理伺服器。
- 在新的管理伺服器上安裝營利服務。
- 在「原始」管理伺服器中,呼叫下列項目:
> /opt/apigee/apigee-service/bin/apigee-service Edge-mint-management-server mint-configure-mgmt-cluster - 重新啟動原始管理伺服器:
> /opt/apigee/apigee-service/bin/apigee-service Edge-management-server 重新啟動 - 在新的管理伺服器中,呼叫下列項目:
> /opt/apigee/apigee-service/bin/apigee-service Edge-mint-management-server mint-configure-mgmt-cluster - 重新啟動新的管理伺服器:
> /opt/apigee/apigee-service/bin/apigee-service Edge-management-server 重新啟動
其他設定
提供 PDF 檔案的帳單文件
營利頁面會以 HTML 格式向使用者顯示帳單文件。如要提供 PDF 檔案的帳單文件,您可以將營利服務整合為支援 PDF 的帳單系統,或支援的第三方 PDF 程式庫。
調整機構設定
後端設定:下表列出可用於設定 Mint 機構的機構層級屬性。您可以使用 PUT 呼叫新增/更新這些屬性,如下所示:
> curl -u ${ADMIN_EMAIL}:${ADMINPW} -v http://<management-ip>:8080/v1/organizations/{orgId} -d '{org object with attributes}' -X PUT
例如,上述 CURL 指令的輸出內容看起來會像這樣:
{
...
"displayName": "Orgnization name",
"name": "org4",
"properties": {
"property": [
...
{
"name": "MINT_CURRENCY",
"value": "USD"
},
{
"name": "MINT_COUNTRY",
"value": "US"
},
{
"name": "MINT_TIMEZONE",
"value": "GMT"
}
]
}
}
Attributes |
Description |
---|---|
MIN__TAX_MODEL |
接受的值包括「關閉」、 UNDISOFFD、HYBRID (預設為空值) |
MINT_CURRENCY |
ISO 貨幣代碼 (預設為空值) |
最小值:TT_TAX_NEXUS |
課稅關聯 (預設為空值) |
MINT_DEFAULT_PROD_TAX_CATEGORY |
預設產品稅目 (預設為空值) |
範圍:群組群組 |
IS 群組分類 (預設為 false) |
MIN_HAS_BROKER |
已毀損 (預設為 false) |
MINT_TIMEZONE |
時區 (預設為空值) |
MINT_TAX_ENGINE_EXTERNAL_ID |
稅務引擎 ID (預設為空值) |
MINT_COUNTRY |
機構所在的國家/地區 (預設為空值) |
MIN__REG_NO |
機構登記號碼,英國提供與稅號不同的編號 (預設為空值) |
MINT_BILLING_CYCLE_TYPE |
PRORATED,CALENDAR_MONTH (預設為 CALENDAR_MONTH) |
MINT_SUPPORTED_BILLING_TYPE |
PREPAID/POSTPAID/BOTH (預設為 PREPAID) |
MIN__IS_SEPARATE_INV_FOR_FEES |
表示是否應該產生另一份收費發票 (預設值為 false) |
MINT_ISSUE_NETTING_STMT |
說明是否應發出淨額聲明 (預設值為 false) |
MINT_NETTING_STMT_PER_CURRENCY |
指出是否應為每個貨幣產生淨收益敘述 (預設為 false) |
MIN_HAS_SELF_BILLING |
顯示機構是否使用自行計費功能 (預設為 false) |
MIN__SELF_BILLING_FOR_ALL_DEV |
指出機構是否已為所有開發人員設定自助式帳單(預設為 false) |
MIN__HAS_SEPARATE_INV_FOR_PROD |
指出機構是否針對每項產品分別開立應付憑據 (預設值為 false) |
MINT_HAS_BILLING_ADJUSTMENT |
指出機構是否支援帳單調整 (預設為 false) |
feature.is 營利 Enabled |
管理 UI 用於顯示營利相關選單 (預設為 false) |
ui.config.isOperator |
由管理 UI 使用,將供應商顯示為衛星營運商機構 (預設為 true) |
如要透過管理使用者介面調整企業機構設定,請參閱 http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services。
注意:如果您使用營利服務限制和通知功能,請指示開發人員在存取權杖驗證政策後,在 Proxy 流程中附加限制政策。
「限制政策」是一種明確政策,可在達到特定上限時封鎖 API 呼叫。如果政策有任何限制超過設定的值,這項政策就會檢查商業限制,並引發錯誤。這個行為是升高政策的延伸,但條件衍生自業務變數。
UI 開發人員的管理使用者介面會提供 UI 範本。Proxy 開發人員應在訊息流程中附加壓縮政策。執行這項政策後,系統會依政策傳回錯誤回應錯誤。如果將 ContinueOnError 設為 true,則不會引發錯誤,且會設定「mint.limitsViolated」、「mint.isDeveloper 遭停權」和「mint.limitsPolicyError」變數,系統可能會在必要時進一步處理例外狀況例外狀況。