營利服務是 Apigee Edge 的擴充功能,因此不會以獨立程序執行。這項工具可在任何現有的 Apigee Edge 設定中執行,但不包括 All-In-One (AIO) 設定。您無法在 AIO 設定中安裝營利服務。
營利規定
- 如果您要在使用多個管理伺服器節點的 Edge 拓樸上安裝營利功能 (例如 13 個節點的安裝作業),則必須先安裝 Edge 管理伺服器節點,再安裝營利功能。
- 如果 Edge 安裝項目有多個 Postgres 節點,如要在 Edge 上安裝營利,就必須在主要/待命模式下設定 Postgres 節點。如果您有多個 Postgres 主要節點,就無法在 Edge 上安裝營利。詳情請參閱「為 Postgres 設定主機-待命機器複寫」。
- 全方位 (AIO) 設定不適用營利功能。
安裝總覽
下列步驟說明如何在現有的 Apigee Edge 安裝中新增營利服務:
- 使用
apigee-setup
公用程式更新 Apigee Management Server 節點,啟用營利服務,例如目錄管理、限制和通知設定、帳單和報表。如果您有多個管理伺服器節點 (例如 13 個節點安裝),則必須先安裝 Edge 管理伺服器節點,再安裝營利功能。
- 使用
apigee-setup
公用程式更新 Apigee 訊息處理器,以便啟用營利服務的執行階段元件,例如交易記錄政策和強制執行限制。如果有多個訊息處理器,請為所有訊息處理器安裝「營利」功能。 - 為您的 Edge 機構執行營利新手上路流程。
- 設定 Apigee 開發人員服務入口網站 (簡稱「入口網站」),以便支援營利。詳情請參閱「在開發人員中心設定營利功能」。
建立營利功能的靜默設定檔
以下是營利安裝作業的靜默設定檔範例。視需要編輯這個檔案以設定。如要加入這個檔案,請使用 -f 選項進行設定。
# 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. # If your password uses special characters, wrap it in single quotes. # 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 節點設為
voters
。如果有許多 ZooKeeper 節點為偶數,則部分節點會設為observers
。在偶數個資料中心中安裝 Edge 時,必須將部分 ZooKeeper 節點設為observers
,才能讓投票節點數量為奇數。在 ZooKeeper 領袖選舉期間,系統會選出一個投票節點做為leader
。確認上方的ZK_HOSTS
屬性指定了多個資料中心安裝作業中的主要節點。 - 如果您啟用 Cassandra 驗證功能,可以使用下列屬性來傳遞 Cassandra 使用者名稱和密碼:
CASS_USERNAME CASS_PASSWORD
將營利服務整合至所有管理伺服器
請按照下列程序在管理伺服器節點上整合營利功能。
- 如果您要在使用多個管理伺服器節點的 Edge 拓樸上安裝營利功能 (例如 13 節點安裝作業),請務必先安裝兩個管理伺服器節點,再安裝營利功能。
- 在管理伺服器節點上執行設定指令碼:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
-p mo
選項會指定要整合營利功能。「apigee」使用者必須能存取或讀取設定檔。
- 如果要在多個管理伺服器節點上安裝營利功能,請在第二個管理伺服器節點上重複執行步驟 2。
設定成功後,系統會在 PostgreSQL 資料庫中建立營利服務的 RDBMS 架構。這樣就完成了營利服務及其相關元件的整合作業,並與 Postgres 伺服器整合。
將營利服務整合至所有訊息處理工具
請按照下列程序,在所有 Message Processor 節點上整合營利功能。
- 在第一個 Message Processor 節點的指令提示中,執行設定指令碼:
/opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile
-p mo
選項會指定要整合營利功能。「apigee」使用者必須能存取或讀取設定檔。
- 對所有訊息處理器節點重複此程序。
成功設定後,「訊息處理者」會更新為「營利服務」。這會完成將營利服務及其相關元件與訊息處理器整合的程序。
營利功能的導入程序
如何建立新機構組織並啟用營利功能:
下次登入 Edge 使用者介面時,您會在機構的頂層選單中看到「營利」項目:
如要設定入口網站以支援營利功能,請參閱「在開發人員入口網站中設定營利功能」。
在營利安裝中新增管理伺服器節點
如果您將管理伺服器新增至現有的 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 restart
- 在新的管理伺服器上,呼叫以下內容:
/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 restart
其他設定
以 PDF 檔案格式提供帳單文件
營利功能會以 HTML 格式向使用者顯示帳單文件。如要以 PDF 檔案格式提供帳單文件,您可以整合營利系統與結帳系統,這類系統提供 PDF 產生功能或取得支援的第三方 PDF 程式庫授權。
設定機構
如要新增/更新組織屬性,您可以使用 PUT
要求,如以下範例所示:
curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \ -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT
營利功能會根據機構的設定做出回應。例如:
{ ... "displayName": "Orgnization name", "name": "org4", "properties": { "property": [ ... { "name": "MINT_CURRENCY", "value": "USD" }, { "name": "MINT_COUNTRY", "value": "US" }, { "name": "MINT_TIMEZONE", "value": "GMT" } ] } }
下表列出可用於設定 Mint 組織的組織層級屬性。
屬性 | 說明 |
---|---|
MINT_TAX_MODEL
|
可接受的值為「DISCLOSED」、「UNDISCLOSED」、「HYBRID」(預設值為空值) |
MINT_CURRENCY
|
ISO 貨幣代碼 (預設為空值) |
MINT_TAX_NEXUS
|
稅務連結 (預設為空值) |
MINT_DEFAULT_PROD_TAX_CATEGORY
|
產品的預設稅目 (預設值為空值) |
MINT_IS_GROUP_ORG
|
IS 群組組織 (預設為「false」) |
MINT_HAS_BROKER
|
Has broken (預設值為 false) |
MINT_TIMEZONE
|
時區 (預設為空值) |
MINT_TAX_ENGINE_EXTERNAL_ID
|
稅務引擎 ID (預設為空值) |
MINT_COUNTRY
|
機構所在國家/地區 (預設為空值) |
MINT_REG_NO
|
機構組織的登記編號,英國提供的編號與稅號不同 (預設為空值) |
MINT_BILLING_CYCLE_TYPE
|
「PRORATED」、「CALENDAR_MONTH」(預設為「CALENDAR_MONTH」) |
MINT_SUPPORTED_BILLING_TYPE
|
「PREPAID」/「POSTPAID」/「BOTH」(預設為「PREPAID」) |
MINT_IS_SEPARATE_INV_FOR_FEES
|
指出是否應產生單獨的費用月結單 (預設為「false」) |
MINT_ISSUE_NETTING_STMT
|
指出是否應發出對沖聲明 (預設為「false」) |
MINT_NETTING_STMT_PER_CURRENCY
|
指出是否應依貨幣產生對沖明細表 (預設為「false」) |
MINT_HAS_SELF_BILLING
|
指出機構是否有自付帳單 (預設為「false」) |
MINT_SELF_BILLING_FOR_ALL_DEV
|
指出機構是否為所有開發人員提供自結帳功能 (預設為「false」) |
MINT_HAS_SEPARATE_INV_FOR_PROD
|
指出機構是否為每項產品開立單獨的月結單 (預設為「false」) |
MINT_HAS_BILLING_ADJUSTMENT
|
指出機構是否支援帳單調整項 (預設值為「false」) |
features.isMonetizationEnabled
|
管理 UI 用來顯示營利專用選單 (預設為「false」) |
ui.config.isOperator
|
管理員介面用來將供應商顯示為「Operator」或「Organization」(預設為「true」) |
如要使用管理 UI 設定業務組織設定,請參閱「 在 Edge 中存取營利功能」。
營利限制
如要強制執行營利限制,請將「營利限制檢查」政策附加至 API Proxy。具體來說,系統會在下列情況下觸發這項政策:
- 開發人員存取營利 API 尚未註冊或未訂閱費率方案。
- 開發人員已超過訂閱費率方案的交易量。
- 開發人員預付帳戶餘額或後付抵免額數量已達上限。
在上述情況下,營利限制檢查政策會觸發錯誤,並封鎖 API 呼叫。這項政策會擴充 Raise Fault 政策,您可以自訂傳回的訊息。適用的條件會從商務變數衍生而來。
詳情請參閱「強制對 API Proxy 強制執行營利限制」。