Monetization Services のインストール

Edge for Private Cloud v. 4.16.05

Monetization Services は Apigee Edge の拡張機能であるため、スタンドアロンでは実行されません。 プロセスですMonetization Services は既存の Apigee Edge 環境内で稼働します。

Monetization の要件

  • 複数の Management Server ノードを使用する Edge トポロジ(13 ノード構成など)に Monetization をインストールする場合は、Monetization をインストールする前に両方の Edge Management Server ノードをインストールする必要があります。
  • 複数の Postgres ノードがある Edge インストール環境に Monetization をインストールする場合は、Postgres ノードをマスター / スタンバイ モードで構成する必要があります。Monetization をインストールできません Postgres マスターノードが複数ある場合は、エッジ上に作成します。詳細については、マスター / スタンバイ レプリケーションを設定する Postgres

インストールの概要

次の手順は、既存の Apigee Edge インストール環境に Monetization Services を追加する方法を示しています。

  • apigee-setup ユーティリティを使用して Apigee Management Server ノードを更新し、カタログ管理、制限と通知の構成、請求、レポートなどの Monetization Services を有効にします。

    13 ノード構成など、複数の Management Server ノードがある場合は、 Monetization をインストールする前に、両方の Edge Management Server ノードをインストールします。
  • apigee-setup ユーティリティを使用して Apigee Message Processor を更新し、トランザクション記録ポリシーや上限適用などの Monetization Services のランタイム コンポーネントを有効にします。もし 複数の Message Processor がある場合は、そのすべてに Monetization をインストールします。
  • Edge 組織で Monetization オンボーディング プロセスを実行します。
  • 収益化をサポートするように Developer Services ポータルを構成します。詳細については、http://apigee.com/docs/monetization/content/configure-monetization-developer-portal をご覧ください。

Monetization 用のサイレント構成ファイルを作成する

以下に、Monetization のインストール用のサイレント構成ファイルの例を示します。これを編集 構成ファイルを必要に応じて変更します。このファイルを含めるには、setup.sh の -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
: <ph type="x-smartling-placeholder">
    </ph>
  • Edge 構成ファイルに SMTP 情報が指定されていない場合は、追加します。Monetization には、SMTP サーバーが必要です。
  • 単一データセンター環境では、すべての ZooKeeper ノードはデフォルトで次のように構成されます。 います。複数のデータセンターに Edge をインストールする場合、一部の ZooKeeper ノードは オブザーバーとして構成できます。上記の ZK_HOSTS プロパティにより、複数データセンター インストールにおけるリーダーノードが指定されていることを確認してください。
  • Cassandra 認証を有効にする場合は、Cassandra のユーザー名とパスワードを 次のプロパティを使用します。
    CASS_USERNAME
    CASS_PASSWORD

収益化サービスを統合する すべての管理サーバーと

Management Server ノードで Monetization を統合するには、次の操作を行います。

  1. 複数の Management Server を使用する Edge トポロジに Monetization をインストールする場合 Management Server がインストールされていることを確認し、 Monetization をインストールする前に、コンテナ イメージを確認してください。
  2. Management Server ノードでセットアップ スクリプトを実行します。
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    「-p mo」オプションは、Monetization を統合することを指定します。

    構成ファイルは、apigee からアクセス可能または読み取り可能である必要があります。できます。たとえば、ファイルをノードの /tmp ディレクトリに配置します。
  3. 複数の Management Server ノードに Monetization をインストールする場合は、各ノードで手順 2 を繰り返します。 2 番目の Management Server ノードで起動されます。

構成が正常に行われると、Monetization Services の RDBMS スキーマが PostgreSQL データベースに作成されます。これで、Monetization Services とその関連コンポーネントは Postgres Server に統合されました。

収益化サービスを統合する すべての Message Processor

すべての Message Processor で Monetization を統合するには、次の操作を行います。 説明します。

  1. 最初の Message Processor ノードで、コマンド プロンプトに対して次のセットアップ スクリプトを実行します。
    > /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    「-p mo」オプションは、収益化を統合することを指定します。

    構成ファイルは、apigee からアクセス可能または読み取り可能である必要があります。できます。たとえば、 /tmp ディレクトリ内のファイル 作成されます。
  2. すべての Message Processor ノードに対して、この手順を繰り返します。

構成が正常に行われると、Message Processor は Monetization Services で更新されます。この Monetization Services とその関連コンポーネントがメッセージと統合されている 決済代行業者。

収益化オンボーディング

収益化を有効にして新しい組織を作成するには、まず新しい組織を作成する方法と同じように組織を作成します。詳細については、組織のオンボーディングをご覧ください。

組織で収益化を有効にするための追加のオンボーディング

組織の収益化のオンボーディングを完了するには、次の手順を行う必要があります。

  1. 収益化グループ mxgroup を作成します。
  2. Qpid をグループに追加します。
  3. 組織の収益化を有効にします。
  4. 組織の通知設定を有効にします。
  5. 収益化を有効にするすべての組織に対して、この手順を繰り返します。

これらのタスクをすべて行うには、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_HOSTSREGION を、収益化のインストール時に使用した値と同じ値に設定します。
  • 複数のデータセンター構成で収益化を有効にする場合は、次の操作を行います。
    • Management Server で、データごとにオンボーディング プロセスを繰り返す必要があります。 選択します。
    • 構成ファイルには、対象のデータセンター内の Qpid ノードのみを 構成されます。

このスクリプトを実行するには、次のようにします。

  1. スクリプトを呼び出します。
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-monetization -f configFile

    構成ファイルは「apigee」ユーザーがアクセス可能または読み取り可能である必要があります。たとえば、ファイルをノードの /tmp ディレクトリに配置します。

    複数の Management Server がある場合、このスクリプトを実行する必要があるのはそのうちの 1 つだけです。

    このスクリプトは、組織、プロダクト、デベロッパー、アプリケーションを Cassandra データベースから Monetization PostgreSQL データベースに複製します。Monetization のインストールが正常に完了した後 データが自動的に同期されるサービス。
  2. 収益化を有効にする組織ごとに、この手順を繰り返します。
  3. 複数のデータセンターを運用している場合は、管理ページでこのプロセスを繰り返します。 別のデータセンターのサーバー。構成ファイルに、構成されているデータセンター内の Qpid ノードのみが表示されていることを確認します。

次に Edge UI にログインすると、最上位レベルのメニューに [Monetization] エントリが表示されます。 必要があります。

Developer Services ポータルを構成する

収益化をサポートするように Developer Services ポータルを構成するには、http://apigee.com/docs/monetization/content/configure-monetization-developer-portal をご覧ください。

Monetization インストールに Management Server ノードを追加する

既存の Edge インストールに Management Server を追加する場合、新しい Management Server に Monetization Services を追加して、すべての Management Server を通信できるように構成する必要があります。

Management Server を追加するには:

  1. 新しい Management Server をインストールします。
  2. 新しい Management Server に Monetization をインストールします。
  3. 既存の Management Server で次のコマンドを実行します。
    > /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  4. 元の Management Server を再起動します。
    &gt; /opt/apigee/apigee-service/bin/apigee-service edge-management-server の再起動
  5. 新しい Management Server で次のコマンドを実行します。
    > /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  6. 新しい Management Server を再起動します。
    > /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

追加構成

請求書類の送信先 PDF ファイル

Monetization では、エンドユーザーに請求書が HTML 形式で表示されます。請求書を PDF ファイルとして提供するために、Monetization を PDF 生成が可能な課金システムと統合したり、サポート対象のサードパーティによる PDF ライブラリにライセンスを付与したりできます。

組織の構成 設定

バックエンド設定: 次の表に、収益化組織の構成に使用可能な組織レベルの属性を示します。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"
            }
        ]
    }
}

属性

説明

MINT_TAX_MODEL

有効な値は DISCLOSED、

UNDISCLOSED、HYBRID(デフォルトは null)

MINT_CURRENCY

ISO 通貨コード(デフォルトは null)

MINT_TAX_NEXUS

税金のネクサス(デフォルトは null)

MINT_DEFAULT_PROD_TAX_CATEGORY

デフォルトの製品税のカテゴリ(デフォルトは null)

MINT_IS_GROUP_ORG

IS グループ組織(デフォルトは false)

MINT_HAS_BROKER

破損あり(デフォルトは false)

MINT_TIMEZONE

タイムゾーン(デフォルトは null)

MINT_TAX_ENGINE_EXTERNAL_ID

税金エンジン ID(デフォルトは null)

MINT_COUNTRY

組織の国(デフォルトは null)

MINT_REG_NO

組織の登録番号。英国では納税者番号とは異なる番号が与えられます(デフォルトは null)。

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

Monetization に固有のメニューを表示するために管理 UI によって使用されます(デフォルトは false)。

ui.config.isOperator

プロバイダをオペレーターと組織として表示するために管理 UI によって使用されます

(デフォルトは true)

管理 UI を使用してビジネス組織の設定を構成する方法については、http://apigee.com/docs/monetization-services/content/get-started-using-monetization-services をご覧ください。

: 収益化サービスの上限と通知機能を使用している場合は、アクセス トークンの検証ポリシーの後にプロキシ フローで上限ポリシーを適用するようデベロッパーに指示してください。

制限ポリシーは、特定の制限に達した場合に API 呼び出しをブロックするように設計された明示的なポリシーです。 できます。このポリシーでは、ビジネスの上限を確認し、超過した上限がある場合はエラーを発生させます。 表示されます。これは Raise Fault ポリシーの拡張版ですが、条件はビジネス変数から導き出されます。

プロキシ デベロッパー向けの管理 UI で UI テンプレートが利用可能です。プロキシ開発者は Mint ポリシーを接続しますこのポリシーが実行されると、ポリシーに従って障害レスポンスとともに障害が発生します。ContinueOnError が true に設定されている場合、障害は発生せず、フロー変数「mint.limitsViolated」、「mint.isDeveloperSuspended」、「mint.limitsPolicyError」が設定されます。これらの変数は、必要に応じて、さらなる例外処理に使用できます。