Cài đặt Dịch vụ Kiếm tiền

Dịch vụ kiếm tiền là một tiện ích của Apigee Edge, do đó, dịch vụ này không chạy dưới dạng một quy trình độc lập. Dịch vụ này chạy trong mọi chế độ thiết lập Apigee Edge hiện có, ngoại trừ cấu hình Tất cả trong một (AIO) Bạn không thể cài đặt Dịch vụ kiếm tiền trên cấu hình AIO.

Yêu cầu về việc kiếm tiền

  • Nếu bạn đang cài đặt tính năng Kiếm tiền trên một cấu trúc liên kết Edge sử dụng nhiều nút Máy chủ quản lý, chẳng hạn như bản cài đặt 13 nút, thì bạn phải cài đặt cả hai nút Máy chủ quản lý Edge trước khi cài đặt tính năng Kiếm tiền.
  • Để cài đặt tính năng Kiếm tiền trên Edge, trong đó bản cài đặt Edge có nhiều nút Postgres, các nút Postgres phải được định cấu hình ở chế độ Chính/Dự phòng. Bạn không thể cài đặt tính năng Kiếm tiền trên Edge nếu có nhiều nút chính Postgres. Để biết thêm thông tin, hãy xem bài viết Thiết lập tính năng sao chép Chính-Dự phòng cho Postgres.
  • Tính năng Kiếm tiền không được cung cấp trong cấu hình Tất cả trong một (AIO).

Tổng quan về quy trình cài đặt

Các bước sau đây minh hoạ cách thêm Dịch vụ kiếm tiền vào một bản cài đặt Apigee Edge hiện có:

  • Sử dụng tiện ích apigee-setup để cập nhật nút Máy chủ quản lý Apigee nhằm bật Dịch vụ kiếm tiền, chẳng hạn như quản lý danh mục, định cấu hình hạn mức và thông báo thanh toán và báo cáo.

    Nếu bạn có nhiều nút Máy chủ quản lý, chẳng hạn như bản cài đặt 13 nút, thì bạn phải cài đặt cả hai nút Máy chủ quản lý Edge trước khi cài đặt tính năng Kiếm tiền.

  • Sử dụng tiện ích apigee-setup để cập nhật Bộ xử lý thông báo Apigee nhằm bật các thành phần thời gian chạy của Dịch vụ kiếm tiền, chẳng hạn như chính sách ghi lại giao dịch và thực thi hạn mức. Nếu bạn có nhiều Bộ xử lý thông báo, hãy cài đặt tính năng Kiếm tiền trên tất cả các bộ xử lý đó.
  • Thực hiện quy trình giới thiệu tính năng Kiếm tiền cho các tổ chức Edge.
  • Định cấu hình Cổng dịch vụ dành cho nhà phát triển Apigee (hay đơn giản là cổng thông tin) để hỗ trợ tính năng kiếm tiền. Để biết thêm thông tin, hãy xem bài viết Định cấu hình tính năng Kiếm tiền trong Cổng thông tin dành cho nhà phát triển.

Tạo tệp cấu hình không tương tác cho tính năng Kiếm tiền

Dưới đây là tệp cấu hình không tương tác mẫu cho bản cài đặt tính năng Kiếm tiền. Hãy chỉnh sửa tệp này theo nhu cầu về cấu hình của bạn. Sử dụng tuỳ chọn -f cho setup.sh để đưa tệp này vào.

# Edge configuration properties
# Specify IP address or DNS name of node.
IP1=192.168.1.1  # Management Server, SymasLDAP, New Edge 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>"

Lưu ý:

  • Nếu tệp cấu hình Edge của bạn không chỉ định thông tin SMTP, hãy thêm thông tin đó. Tính năng Kiếm tiền yêu cầu máy chủ SMTP.
  • Trong bản cài đặt một trung tâm dữ liệu, theo mặc định, tất cả các nút ZooKeeper đều được định cấu hình làm nút chính. Khi bạn cài đặt Edge trên nhiều trung tâm dữ liệu, một số nút ZooKeeper sẽ được định cấu hình làm nút quan sát. Đảm bảo rằng thuộc tính ZK_HOSTS ở trên chỉ định một nút chính trong bản cài đặt nhiều trung tâm dữ liệu.
  • Nếu bạn bật tính năng xác thực Cassandra, bạn có thể truyền tên người dùng và mật khẩu Cassandra bằng cách sử dụng các thuộc tính sau:
    CASS_USERNAME
    CASS_PASSWORD

Tích hợp Dịch vụ kiếm tiền với tất cả Máy chủ quản lý

Hãy làm theo quy trình sau để tích hợp tính năng kiếm tiền trên các nút Máy chủ quản lý.

  1. Nếu bạn đang cài đặt tính năng Kiếm tiền trên một cấu trúc liên kết Edge sử dụng nhiều nút Máy chủ quản lý, chẳng hạn như bản cài đặt 13 nút, thì hãy đảm bảo rằng bạn đã cài đặt cả hai nút Máy chủ quản lý trước khi cài đặt tính năng Kiếm tiền.
  2. Trên nút Máy chủ quản lý, hãy chạy tập lệnh thiết lập:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    Tuỳ chọn -p mo chỉ định tích hợp tính năng Kiếm tiền.

    Người dùng "apigee" phải có thể truy cập hoặc đọc tệp cấu hình.

  3. Nếu bạn đang cài đặt tính năng Kiếm tiền trên nhiều nút Máy chủ quản lý, hãy lặp lại bước 2 trên nút Máy chủ quản lý thứ hai.

Khi định cấu hình thành công, một lược đồ RDBMS cho Dịch vụ kiếm tiền sẽ được tạo trong cơ sở dữ liệu PostgreSQL. Thao tác này sẽ hoàn tất quá trình tích hợp Dịch vụ kiếm tiền và các thành phần liên quan với Máy chủ Postgres.

Tích hợp Dịch vụ kiếm tiền với tất cả Bộ xử lý thông báo

Hãy làm theo quy trình sau để tích hợp tính năng kiếm tiền trên tất cả các nút Bộ xử lý thông báo.

  1. Trên nút Bộ xử lý thông báo đầu tiên, tại dấu nhắc lệnh, hãy chạy tập lệnh thiết lập:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    Tuỳ chọn -p mo chỉ định tích hợp tính năng Kiếm tiền.

    Người dùng "apigee" phải có thể truy cập hoặc đọc tệp cấu hình.

  2. Lặp lại quy trình này trên tất cả các nút Bộ xử lý thông báo.

Khi định cấu hình thành công, Bộ xử lý thông báo sẽ được cập nhật bằng Dịch vụ kiếm tiền. Thao tác này sẽ hoàn tất quá trình tích hợp Dịch vụ kiếm tiền và các thành phần liên quan với Bộ xử lý thông báo.

Giới thiệu tính năng Kiếm tiền

Cách tạo một tổ chức mới và bật tính năng kiếm tiền:

  1. Tạo tổ chức như cách bạn tạo bất kỳ tổ chức mới nào. Để biết thêm thông tin, hãy xem bài viết Giới thiệu một tổ chức.
  2. Sử dụng API cung cấp tính năng kiếm tiền như mô tả trong Bật tính năng kiếm tiền cho một tổ chức. Để làm việc này, bạn phải có đặc quyền quản trị viên hệ thống.

Khi đăng nhập vào Giao diện người dùng Edge mới vào lần tiếp theo, bạn sẽ thấy mục Kiếm tiền trong trình đơn cấp cao nhất cho tổ chức:

Trình đơn Kiếm tiền trong giao diện người dùng mới của Edge

Để định cấu hình cổng thông tin nhằm hỗ trợ tính năng kiếm tiền, hãy xem bài viết Định cấu hình tính năng Kiếm tiền trong cổng thông tin dành cho nhà phát triển.

Thêm một nút Máy chủ quản lý vào bản cài đặt tính năng Kiếm tiền

Nếu bạn thêm một Máy chủ quản lý vào bản cài đặt Edge hiện có, bạn phải đảm bảo rằng bạn đã thêm các dịch vụ Kiếm tiền vào Máy chủ quản lý mới và định cấu hình tất cả Máy chủ quản lý để chúng có thể giao tiếp.

Cách thêm một Máy chủ quản lý:

  1. Cài đặt Máy chủ quản lý mới.
  2. Cài đặt tính năng Kiếm tiền trên Máy chủ quản lý mới bằng lệnh sau:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f /opt/silent.conf

Cấu hình bổ sung

Cung cấp tài liệu thanh toán dưới dạng tệp PDF

Tính năng Kiếm tiền hiển thị tài liệu thanh toán cho người dùng cuối ở định dạng HTML. Để cung cấp tài liệu thanh toán dưới dạng tệp PDF, bạn có thể tích hợp tính năng Kiếm tiền với một hệ thống thanh toán cung cấp tính năng tạo tệp PDF hoặc cấp phép cho một thư viện PDF của bên thứ ba được hỗ trợ.

Định cấu hình chế độ cài đặt tổ chức

Để thêm/cập nhật các thuộc tính của tổ chức, bạn có thể sử dụng yêu cầu PUT, như trong ví dụ sau:

curl -u SYS_ADMIN_EMAIL:SYS_ADMIN_PASSWORD \
  -v http://ms_IP:8080/v1/organizations/orgId -d 'org object with attributes' -X PUT

Tính năng Kiếm tiền phản hồi bằng các chế độ cài đặt của tổ chức. Ví dụ:

{
  ...
  "displayName": "Orgnization name",
  "name": "org4",
  "properties": {
    "property": [
      ...
      {
        "name": "MINT_CURRENCY",
        "value": "USD"
      },
      {
        "name": "MINT_COUNTRY",
        "value": "US"
      },
      {
        "name": "MINT_TIMEZONE",
        "value": "GMT"
      }
    ]
  }
}

Bảng sau đây liệt kê các thuộc tính ở cấp tổ chức mà bạn có thể định cấu hình cho một tổ chức phát hành.

Thuộc tính Mô tả
MINT_TAX_MODEL

Các giá trị được chấp nhận là "DISCLOSED", "UNDISCLOSED", "HYBRID" (giá trị mặc định là null)

MINT_CURRENCY

Mã tiền tệ theo ISO (giá trị mặc định là null)

MINT_TAX_NEXUS

Mối quan hệ về thuế (giá trị mặc định là null)

MINT_DEFAULT_PROD_TAX_CATEGORY

Danh mục thuế mặc định cho sản phẩm (giá trị mặc định là null)

MINT_IS_GROUP_ORG

Tổ chức nhóm IS (giá trị mặc định là "false")

MINT_HAS_BROKER

Có bị lỗi (giá trị mặc định là false)

MINT_TIMEZONE

Múi giờ (giá trị mặc định là null)

MINT_TAX_ENGINE_EXTERNAL_ID

Mã công cụ thuế (giá trị mặc định là null)

MINT_COUNTRY

Quốc gia của tổ chức (giá trị mặc định là null)

MINT_REG_NO

Số đăng ký của tổ chức, Vương quốc Anh cung cấp số khác với mã số thuế (giá trị mặc định là null)

MINT_BILLING_CYCLE_TYPE

"PRORATED", "CALENDAR_MONTH" (giá trị mặc định là "CALENDAR_MONTH")

MINT_SUPPORTED_BILLING_TYPE

"PREPAID"/"POSTPAID"/"BOTH" (giá trị mặc định là "PREPAID")

MINT_IS_SEPARATE_INV_FOR_FEES

Cho biết có nên tạo hoá đơn riêng cho phí hay không (giá trị mặc định là "false")

MINT_ISSUE_NETTING_STMT

Cho biết có nên phát hành bảng kê bù trừ hay không (giá trị mặc định là "false")

MINT_NETTING_STMT_PER_CURRENCY

Cho biết có nên tạo bảng kê bù trừ theo từng đơn vị tiền tệ hay không (giá trị mặc định là "false")

MINT_HAS_SELF_BILLING

Cho biết tổ chức có tự thanh toán hay không (giá trị mặc định là "false")

MINT_SELF_BILLING_FOR_ALL_DEV

Cho biết tổ chức có tự thanh toán cho tất cả nhà phát triển hay không (giá trị mặc định là "false")

MINT_HAS_SEPARATE_INV_FOR_PROD

Cho biết tổ chức có hoá đơn riêng cho từng sản phẩm hay không (giá trị mặc định là "false")

MINT_HAS_BILLING_ADJUSTMENT

Cho biết tổ chức có hỗ trợ điều chỉnh thanh toán hay không (giá trị mặc định là "false")

features.isMonetizationEnabled

Giao diện người dùng Edge mới sử dụng thuộc tính này để hiển thị trình đơn dành riêng cho tính năng kiếm tiền (giá trị mặc định là "false")

ui.config.isOperator

Giao diện người dùng Edge mới sử dụng thuộc tính này để hiển thị nhà cung cấp dưới dạng Nhà điều hành so với Tổ chức (giá trị mặc định là "true")

Để định cấu hình chế độ cài đặt tổ chức kinh doanh bằng Giao diện người dùng Edge mới, hãy xem Bắt đầu sử dụng tính năng kiếm tiền.

Hạn mức kiếm tiền

Để thực thi hạn mức kiếm tiền, hãy đính kèm chính sách Kiểm tra hạn mức kiếm tiền vào các proxy API. Cụ thể, chính sách này được kích hoạt trong các điều kiện sau:

  • Nhà phát triển truy cập vào API được kiếm tiền chưa đăng ký hoặc chưa mua gói giá.
  • Nhà phát triển đã vượt quá khối lượng giao dịch cho gói giá đã mua.
  • Nhà phát triển đã đạt đến số dư tài khoản trả trước hoặc hạn mức tín dụng trả sau.

Chính sách Kiểm tra hạn mức kiếm tiền sẽ gây ra lỗi và chặn các lệnh gọi API trong những trường hợp như nêu trên. Chính sách này mở rộng chính sách Gây ra lỗi và bạn có thể tuỳ chỉnh thông báo được trả về. Các điều kiện áp dụng được lấy từ các biến kinh doanh.

Để biết thêm thông tin, hãy xem Thực thi hạn mức kiếm tiền trên các proxy API.