মনিটাইজেশন পরিষেবা ইনস্টল করা

মনিটাইজেশন পরিষেবা হল Apigee Edge-এর একটি এক্সটেনশন, তাই এটি স্বতন্ত্র প্রসেস হিসেবে রান করে না। এটি যেকোনও বিদ্যমান Apigee Edge সেট-আপের মধ্যে চলে, তবে অল-ইন-ওয়ান (AIO) কনফিগারেশন এর ব্যতিক্রম। আপনি AIO কনফিগারেশনে মনিটাইজেশন পরিষেবা ইনস্টল করতে পারবেন না।

মনিটাইজেশন সংক্রান্ত প্রয়োজনীয়তা

  • আপনি যদি একাধিক ম্যানেজমেন্ট সার্ভার নোড ব্যবহার করে এমন একটি এজ টপোলজিতে মনিটাইজেশন ইনস্টল করেন, যেমন একটি 13-নোড ইনস্টলেশন, তাহলে মনিটাইজেশন ইনস্টল করার আগে আপনাকে অবশ্যই উভয় এজ ম্যানেজমেন্ট সার্ভার নোড ইনস্টল করতে হবে।
  • Edge-এ মনিটাইজেশন ইনস্টল করতে, যেখানে Edge ইনস্টলেশনে একাধিক Postgres নোড রয়েছে, Postgres নোডগুলি অবশ্যই মাস্টার/স্ট্যান্ডবাই মোডে কনফিগার করা উচিত। একাধিক Postgres মাস্টার নোড থাকলে, আপনি Edge-এ মনিটাইজেশন ইনস্টল করতে পারবেন না। আরও জানতে, Postgres-এর জন্য মাস্টার-স্ট্যান্ডবাই রেপ্লিকেশন সেট-আপ করুন দেখুন।
  • অল-ইন-ওয়ান (AIO) কনফিগারেশনের সাথে মনিটাইজেশন উপলভ্য নয়।

ইনস্টলেশন ওভারভিউ

নিম্নলিখিত ধাপগুলি থেকে বোঝা যায় যে আগে থেকে ইনস্টল করা Apigee Edge-এ কীভাবে মনিটাইজেশন পরিষেবা যোগ করতে হয়:

  • apigee-setup ইউটিলিটি ব্যবহার করে Apigee ম্যানেজমেন্ট সার্ভার নোড আপডেট করুন যাতে মনিটাইজেশন পরিষেবা চালু করা যায়, যেমন, ক্যাটালগ ম্যানেজমেন্ট, সীমা ও বিজ্ঞপ্তি কনফিগারেশন, বিলিং ও রিপোর্টিং।

    আপনার একাধিক ম্যানেজমেন্ট সার্ভার নোড থাকলে, যেমন ১৩-নোড ইনস্টলেশন, তাহলে আপনাকে Monetization ইনস্টল করার আগে দুটি Edge ম্যানেজমেন্ট সার্ভার নোড ইনস্টল করতে হবে।

  • apigee-setup ইউটিলিটি ব্যবহার করে Apigee মেসেজ প্রসেসর আপডেট করুন যাতে মনিটাইজেশন পরিষেবার রানটাইম কম্পোনেন্ট চালু করা যায়, যেমন, ট্রানজ্যাকশন রেকর্ডিং নীতি এবং সীমা এনফোর্সমেন্ট। আপনার একাধিক মেসেজ প্রসেসর থাকলে, সবকটিতে মনিটাইজেশন ইনস্টল করুন।
  • আপনার Edge সংস্থার জন্য মনিটাইজেশন অনবোর্ডিং প্রসেস সম্পূর্ণ করুন।
  • মনিটাইজেশনকে সাপোর্ট করার জন্য Apigee ডেভেলপার পরিষেবা পোর্টাল (বা সহজভাবে, পোর্টাল) কনফিগার করুন। আরও তথ্যের জন্য, ডেভেলপার পোর্টালে মনিটাইজেশন কনফিগার করুন দেখুন।

মনিটাইজেশনের জন্য একটি সাইলেন্ট কনফিগারেশন ফাইল তৈরি করা হচ্ছে

নিচে Monetization ইনস্টলেশনের জন্য একটি উদাহরণ সাইলেন্ট কনফিগারেশন ফাইল দেখানো হয়েছে। আপনার কনফিগারেশনের জন্য প্রয়োজন অনুযায়ী এই ফাইল এডিট করুন। এই ফাইল অন্তর্ভুক্ত করতে 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 সার্ভার প্রয়োজন।
  • একটি ডেটা সেন্টার ইনস্টলেশনে, ZooKeeper নোডের বিজোড় সংখ্যা voters হিসেবে কনফিগার করা উচিত। ZooKeeper নোডের সংখ্যা জোড় হলে, কিছু নোড observers হিসেবে কনফিগার করা হবে। আপনি যখন জোড় সংখ্যক ডেটা সেন্টার জুড়ে Edge ইনস্টল করছেন, তখন ভোটার নোডের সংখ্যা বিজোড় করতে কিছু ZooKeeper নোডকে observers হিসেবে কনফিগার করতে হবে। ZooKeeper লিডার নির্বাচনের সময় একজন ভোটার নোডকে leader হিসেবে বেছে নেওয়া হবে। নিশ্চিত করুন যে উপরের ZK_HOSTS প্রপার্টি একাধিক ডেটা সেন্টার ইনস্টলেশনে একটি লিডার নোড নির্দিষ্ট করে।
  • আপনি Cassandra যাচাইকরণ চালু করলে, নিম্নলিখিত প্রপার্টি ব্যবহার করে Cassandra ইউজার নেম ও পাসওয়ার্ড পাস করতে পারবেন:
    CASS_USERNAME
    CASS_PASSWORD

সব ম্যানেজমেন্ট সার্ভারের সাথে মনিটাইজেশন পরিষেবা ইন্টিগ্রেট করুন

ম্যানেজমেন্ট সার্ভার নোডে মনিটাইজেশন ইন্টিগ্রেট করতে নিম্নলিখিত পদ্ধতি ব্যবহার করুন।

  1. আপনি যদি একাধিক ম্যানেজমেন্ট সার্ভার নোড ব্যবহার করে এমন একটি এজ টপোলজিতে মনিটাইজেশন ইনস্টল করেন, যেমন একটি ১৩-নোড ইনস্টলেশন, তাহলে নিশ্চিত করুন যে আপনি মনিটাইজেশন ইনস্টল করার আগে উভয় ম্যানেজমেন্ট সার্ভার নোড ইনস্টল করেছেন।
  2. ম্যানেজমেন্ট সার্ভার নোডে, সেটআপ স্ক্রিপ্ট রান করুন:
    /opt/apigee/apigee-setup/bin/setup.sh -p mo -f configFile

    -p mo বিকল্পটি মনিটাইজেশন ইন্টিগ্রেট করার জন্য নির্দিষ্ট করে।

    "apigee" ব্যবহারকারীর কাছে কনফিগারেশন ফাইল অ্যাক্সেসযোগ্য বা পাঠযোগ্য হতে হবে।

  3. আপনি একাধিক ম্যানেজমেন্ট সার্ভার নোডে Monetization ইনস্টল করলে, দ্বিতীয় ম্যানেজমেন্ট সার্ভার নোডে ২ নম্বর ধাপটি আবার করুন।

কনফিগারেশন সম্পূর্ণ হলে, PostgreSQL ডেটাবেসে মনিটাইজেশন পরিষেবার জন্য RDBMS স্কিমা তৈরি করা হয়। এর মাধ্যমে 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

অতিরিক্ত কনফিগারেশন

পিডিএফ ফাইল হিসেবে বিলিং ডকুমেন্ট জমা দিন

'মনিটাইজেশন' ব্যবহারকারীদের HTML ফর্ম্যাটে বিলিং ডকুমেন্ট দেখায়। পিডিএফ ফাইল হিসেবে বিলিং ডকুমেন্ট প্রদান করতে, আপনি মনিটাইজেশনকে এমন একটি বিলিং সিস্টেমের সাথে ইন্টিগ্রেট করতে পারেন যা পিডিএফ তৈরি করে বা কোনও মানানসই থার্ড-পার্টি পিডিএফ লাইব্রেরির লাইসেন্স দেয়।

সংস্থার সেটিংস কনফিগার করুন

সংস্থার অ্যাট্রিবিউট যোগ/আপডেট করতে, আপনি 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 কারেন্সি কোড (ডিফল্ট হল নাল)

MINT_TAX_NEXUS

ট্যাক্স নেক্সাস (ডিফল্ট হল ফাঁকা)

MINT_DEFAULT_PROD_TAX_CATEGORY

ডিফল্ট প্রোডাক্ট ট্যাক্স বিভাগ (ডিফল্ট হল নাল)

MINT_IS_GROUP_ORG

গ্রুপ অর্গানাইজেশন কিনা (ডিফল্ট হল "false")

MINT_HAS_BROKER

ভেঙে গেছে (ডিফল্ট হল মিথ্যা)

MINT_TIMEZONE

টাইমজোন (ডিফল্ট হল নাল)

MINT_TAX_ENGINE_EXTERNAL_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

ম্যানেজমেন্ট UI-এর মাধ্যমে ব্যবহার করা হয় যাতে অপারেটর বনাম সংস্থা হিসেবে পরিষেবা প্রদানকারীকে দেখানো যায় (ডিফল্ট হল "true")

ম্যানেজমেন্ট UI ব্যবহার করে ব্যবসায়িক প্রতিষ্ঠানের সেটিংস কনফিগার করার জন্য, Edge-এ মনিটাইজেশন অ্যাক্সেস করুন দেখুন।

মনিটাইজেশনের সীমা

মনিটাইজেশন সীমা এনফোর্স করতে, API প্রক্সিতে মনিটাইজেশন সীমা চেক করার নীতি অ্যাটাচ করুন। বিশেষ করে, নিম্নলিখিত শর্তে নীতিটি ট্রিগার করা হয়:

  • মনিটাইজ করা API অ্যাক্সেস করা ডেভেলপার রেজিস্টার করা নেই বা রেট প্ল্যানে সাবস্ক্রাইব করেনি।
  • সাবস্ক্রাইব করা রেট প্ল্যানের জন্য ডেভেলপার ট্রানজ্যাকশন ভলিউম অতিক্রম করেছেন।
  • ডেভেলপারের প্রি-পেড অ্যাকাউন্ট ব্যালেন্স বা পোস্ট-পেড ক্রেডিট সীমা শেষ হয়ে গেছে।

উপরে তালিকাভুক্ত পরিস্থিতির মতো ক্ষেত্রে মনিটাইজেশন সীমা চেক করার নীতি ত্রুটি দেখায় এবং API কল ব্লক করে। এই নীতি Raise Fault নীতিকে আরও প্রসারিত করে এবং আপনি ফেরত আসা মেসেজ কাস্টমাইজ করতে পারবেন। প্রযোজ্য শর্তাবলী ব্যবসার ভেরিয়েবল থেকে নেওয়া হয়।

আরও তথ্যের জন্য, API প্রক্সিতে মনিটাইজেশন সীমা এনফোর্স করুন দেখুন।