수익 창출 서비스 설치

수익 창출 서비스는 Apigee Edge의 확장 프로그램이므로 독립형 프로세스로 실행되지 않습니다. 올인원 (AIO) 구성을 제외하고 기존 Apigee Edge 설정 내에서 실행됩니다. AIO 구성에서는 수익 창출 서비스를 설치할 수 없습니다.

수익 창출 요건

  • 여러 관리 서버 노드를 사용하는 에지 토폴로지에 수익 창출을 설치하는 경우(예: 노드 13개 설치) 수익 창출을 설치하기 전에 두 에지 관리 서버 노드를 모두 설치해야 합니다.
  • Edge 설치에 여러 Postgres 노드가 있는 Edge에 수익 창출을 설치하려면 Postgres 노드를 마스터/대기 모드로 구성해야 합니다. Postgres 마스터 노드가 여러 개 있는 경우 Edge에 수익 창출을 설치할 수 없습니다. 자세한 내용은 Postgres용 마스터 대기 복제 설정을 참조하세요.
  • 올인원 (AIO) 구성에서는 수익 창출을 사용할 수 없습니다.

설치 개요

다음 단계는 기존 Apigee Edge 설치에 수익 창출 서비스를 추가하는 방법을 보여줍니다.

  • apigee-setup 유틸리티를 사용하여 Apigee 관리 서버 노드를 업데이트하여 수익 창출 서비스(예: 카탈로그 관리, 한도 및 알림 구성, 청구 및 보고)를 사용 설정합니다.

    13노드 설치와 같이 관리 서버 노드가 여러 개 있는 경우 수익 창출을 설치하기 전에 두 에지 관리 서버 노드를 모두 설치해야 합니다.

  • apigee-setup 유틸리티를 사용하여 Apigee 메시지 프로세서를 업데이트하여 수익 창출 서비스의 런타임 구성요소(예: 거래 기록 정책, 제한 시행)를 사용 설정합니다. 여러 메시지 프로세서가 있는 경우 모든 메시지 프로세서에 수익 창출을 설치하세요.
  • 에지 조직을 위한 수익 창출 온보딩 프로세스를 수행합니다.
  • 수익 창출을 지원하도록 Apigee 개발자 서비스 포털 (또는 간단히 포털)을 구성하세요. 자세한 내용은 개발자 포털에서 수익 창출 구성을 참고하세요.

수익 창출을 위한 자동 구성 파일 생성

다음은 수익 창출 설치를 위한 자동 구성 파일의 예시입니다. 구성에 맞게 이 파일을 수정하세요. 이 파일을 포함하려면 setup.sh에 -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 서버가 필요합니다.
  • 단일 데이터 센터 설치에서 홀수의 주Keeper 노드를 voters로 구성해야 합니다. JoKeeper 노드 수가 짝수이면 일부 노드는 observers으로 구성됩니다. 짝수의 데이터 센터에 Edge를 설치하는 경우 투표자 노드 수를 홀수로 만들려면 일부 JoKeeper 노드를 observers로 구성해야 합니다. 주Keeper 리더 선거 중에 투표자 노드 1개가 leader으로 선출됩니다. 위의 ZK_HOSTS 속성이 여러 데이터 센터 설치에서 리더 노드를 지정하는지 확인합니다.
  • Cassandra 인증을 사용 설정하면
    CASS_USERNAME
    CASS_PASSWORD
    속성을 사용하여 Cassandra 사용자 이름과 비밀번호를 전달할 수 있습니다.

모든 관리 서버와 수익 창출 서비스 통합

관리 서버 노드에서 수익 창출을 통합하려면 다음 절차를 따르세요.

  1. 여러 관리 서버 노드를 사용하는 에지 토폴로지에 수익 창출을 설치하는 경우(예: 13노드 설치) 수익 창출을 설치하기 전에 두 관리 서버 노드를 모두 설치했는지 확인하세요.
  2. 관리 서버 노드에서 설정 스크립트를 실행합니다.
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    -p mo 옵션은 수익 창출 통합을 지정합니다.

    'apigee' 사용자가 구성 파일에 액세스하거나 읽을 수 있어야 합니다.

  3. 여러 관리 서버 노드에 수익 창출을 설치하는 경우 두 번째 관리 서버 노드에서 2단계를 반복합니다.

구성이 완료되면 수익 창출 서비스의 RDBMS 스키마가 PostgreSQL 데이터베이스에 생성됩니다. 수익 창출 서비스 및 관련 구성요소가 Postgres 서버와 통합되었습니다.

모든 메시지 프로세서와 수익 창출 서비스 통합

모든 메시지 프로세서 노드에서 수익 창출을 통합하려면 다음 절차를 따르세요.

  1. 첫 번째 메시지 프로세서 노드의 명령 프롬프트에서 설정 스크립트를 실행합니다.
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    -p mo 옵션은 수익 창출 통합을 지정합니다.

    'apigee' 사용자가 구성 파일에 액세스하거나 읽을 수 있어야 합니다.

  2. 모든 메시지 프로세서 노드에서 이 절차를 반복합니다.

구성이 완료되면 메시지 프로세서가 수익 창출 서비스로 업데이트됩니다. 수익 창출 서비스 및 관련 구성요소가 메시지 프로세서와 통합되었습니다.

수익 창출 온보딩

새 조직을 만들고 수익 창출을 사용 설정하려면 다음 안내를 따르세요.

  1. 새 조직과 마찬가지로 조직을 만듭니다. 자세한 내용은 조직 온보딩을 참고하세요.
  2. 조직에 수익 창출 사용 설정에 설명된 대로 수익 창출 프로비저닝 API를 사용합니다. 이렇게 하려면 시스템 관리자 권한이 있어야 합니다.

다음에 Edge UI에 로그인하면 조직의 최상위 메뉴에 수익 창출 항목이 표시됩니다.

수익 창출을 지원하도록 포털을 구성하려면 개발자 포털에서 수익 창출 구성을 참고하세요.

수익 창출 설치에 관리 서버 노드 추가

기존 Edge 설치에 관리 서버를 추가하는 경우 새 관리 서버에 수익 창출 서비스를 추가하고 통신할 수 있도록 모든 관리 서버를 구성해야 합니다.

관리 서버를 추가하려면 다음 단계를 따르세요.

  1. 관리 서버를 설치합니다.
  2. 관리 서버에 수익 창출 기능을 설치합니다.
  3. 원본 관리 서버에서 다음을 호출합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  4. 원본 관리 서버를 다시 시작합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
  5. 관리 서버에서 다음을 호출합니다.
    /opt/apigee/apigee-service/bin/apigee-service edge-mint-management-server mint-configure-mgmt-cluster
  6. 관리 서버를 다시 시작합니다.
    /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_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

조직 등록 번호, 영국에서 세금 ID와 다른 번호를 부여합니다. 기본값은 null입니다.

MINT_BILLING_CYCLE_TYPE

'PRORATED', 'Calendar_MONTH' (기본값: 'Calendar_MONTH')

MINT_SUPPORTED_BILLING_TYPE

'선불'/'후불'/'모두' (기본값: '선불')

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

관리 UI에서 공급자를 연산자와 조직으로 표시하는 데 사용됩니다. 기본값은 'true'입니다.

관리 UI를 사용하여 비즈니스 조직 설정을 구성하는 방법은 Edge에서 수익 창출 액세스를 참조하세요.

수익 창출 한도

수익 창출 한도를 시행하려면 API 프록시에 수익 창출 한도 확인 정책을 연결하세요. 특히 정책은 다음 조건에서 트리거됩니다.

  • 수익 창출 API에 액세스하는 개발자가 등록되지 않았거나 요금제를 구독하지 않았습니다.
  • 개발자가 정기 결제 요금제에 대한 거래량을 초과했습니다.
  • 개발자의 선불 계정 잔액 또는 후불 신용 한도에 도달했습니다.

수익 창출 한도 확인 정책은 위에 나열된 경우와 같은 상황에서 오류를 발생시키고 API 호출을 차단합니다. 이 정책은 오류 발생 정책을 확장하고 반환되는 메시지를 맞춤설정할 수 있습니다. 적용 가능한 조건은 비즈니스 변수에서 파생됩니다.

자세한 내용은 API 프록시에 수익 창출 한도 적용을 참고하세요.