Application Platform Core
1. Overview
1.1 Introduction
HAP Application Platform Core replicates HAP capabilities completely to partners, allowing customers and partners to deploy and implement HAP Server on a specified computing platform and achieve multi-tenant operational capabilities at the same time. In summary, the customer or partner has a full set of APaaS product capabilities that can provide public cloud services. Partners can operate independently on an OEM basis (combined with on-premises vertical applications) or integrate it with their own product capabilities to offer to end customers.
1.2 Terminology
Terminology | Description |
---|---|
Authorization | The enabling of platform-related functionality to an organization |
Authorization Metrics | It refers to independently saleable feature items, feature collections or measurable feature items of platform. Authorization metrics are provided by the HAP system, and the brand cannot add, delete, or change authorization metrics information. |
Edition | HAP Application Platform Core itself is a complete product, and partners can define different product editions by combining the authorization metrics items provided by the platform. When the platform is initialized, by default it provides 3 editions, namely Standard Edition, Professional Edition and Flagship Edition. The brand can edit and add editions, but cannot delete editions. |
Additional Purchase Metrics | It refers to the sales and operation personnel to authorize the registered organizations, if the authorized product edition can not meet the users' needs, they can purchase additional metrics of "authorization metrics" on the basis of the edition. |
2. Platform Architecture
2.1 Product Architecture
-
System settings: the basic configuration and authorization information of the platform. After the platform is deployed, enter the platform secret key in the "Authorization" in the system settings for authorization; after that, complete the platform initialization through other configuration items. (See "3.1 System Configuration" below for details of configuration items)
-
Master data: the basic master data service of the platform, including organization, authorization metrics, product edition, platform users and other basic data.
-
APaaS Operation: It is a self-built initial application based on the platform's capability for the basic operation. The brand's sales and operation personnel can use this application to authorize and manage the organization.
2.2 Deployment Architecture
HAP Application Platform Core will adopt the professional cluster deployment architecture mode of HAP Server, based on Kubernetes for service orchestration and dynamic instance scaling to ensure system performance while making full use of server resources. The following is the deployment architecture diagram:
The minimum server configuration is as follows (300 concurrency, 99% availability):
Usage | Configuration | OS | Deployed Services | Number |
---|---|---|---|---|
Load and Forward Microservice Application | Bandwidth: 100Mbps, by traffic 8C/32G/40G system disk/100G data disk | Debian 10+ | Nginx HAP Microservices | 3 |
Cache | Bandwidth: 100Mbps, by traffic 4C/16G/40G system disk/100G data disk | Debian 10+ | Redis | 1 |
Middleware | Bandwidth: 100Mbps, by traffic 4C/16G/40G system disk/200G data disk | Debian 10+ | Kafka, Elasticsearch, mingdaoyun-file | 3 |
Database | Bandwidth: 100Mbps, by traffic 8C/32G/40G system disk/200G data disk (SSD) | Debian 10+ | MySQL, MongoDB | 3 |
Load Equalizer | Cloud Services | - | Platform Access Portal | 1 |
Object Storage | Cloud Services, Storage Package Specifications: 1TB | - | e.g. Alibaba Cloud OSS | 1 |
The recommended server configuration is as follows (1000+ concurrency, 99.9% availability):
Usage | Configuration | OS | Deployed Services | Number |
---|---|---|---|---|
Load and Forward | Bandwidth: 100Mbps, by traffic 4C/8G/100G system disk/200G data disk | Debian 10+ | Nginx | 2 |
Microservice Application | Bandwidth: 100Mbps, by traffic 32C/64G/100G system disk/300G data disk | Debian 10+ | HAP Microservices | 3 |
Cache | Bandwidth: 100Mbps, by traffic 16C/32G/100G system disk/200G data disk | Debian 10+ | Redis | 2 |
Message queue | Bandwidth: 100Mbps, by traffic 16C/32G/100G system disk/500G data disk | Debian 10+ | Kafka | 3 |
Full-text search | Bandwidth: 100Mbps, by traffic 16C/32G/100G system disk/500G data disk | Debian 10+ | Elasticsearch | 3 |
File Storage Load Balance | Bandwidth: 100Mbps, by traffic 16C/32G/100G system disk/500G data disk | Debian 10+ | mingdaoyun-file | 3 |
RDB | Bandwidth: 100Mbps, by traffic 16C/32G/100G system disk/500G data disk (SSD) | Debian 10+ | MySQL | 2 |
NoSQL | Bandwidth: 100Mbps, by traffic 32C/64G/100G system disk/500G data disk (SSD) | Debian 10+ | MongoDB | 3 |
Load Equalizer | Cloud Services | - | Platform Access Portal | 1 |
Object Storage | Cloud Services, Storage Package Specifications: 1TB | - | e.g. Alibaba Cloud OSS | 1 |
3. Platform Function Description
3.1 System Configuration
System configuration is the functional module of basic configuration management and authorization management of the platform. It provides configuration and management items such as general, application, login, resource, collaboration suite, integration, security, admin, log, brand, authorization, etc. Note: See the description of [System Configuration] for details of the undescribed parts.
3.1.1 Admin
As shown above, the [Admin] module is used to configure the personnel who can view and manage the [System Configuration] page, and only the personnel of the organization to which the current user belongs can be added. The default admin is the initial user of the platform installation and registration (it is not recommended to set too many admins to avoid misoperations; when the admin changes his position or leaves the organization, his role of admin be handed over to another member in this module).
3.1.2 Brand
As shown above, HAP partners can configure the brand information of the platform in the [Brand] module, which is reflected in the [Login/Signup] page. The brand name, logo and background image of the login and signup page can be configured.
3.1.3 Authorization
As shown above, after installing and deploying the platform edition, firstly enter the "authorization key" (which is applied through HAP's sales consultant), after successful authorization, the [Authorization] page presents the authorization information; when the key is about to expire or the platform authorization needs to be upgraded, you need to apply for the key again.
Click [Update Key] button, and enter the latest authorization key to authorize successfully, the latest authorization of the platform will take effect immediately.
Authorization Information Description:
Authorization Item | Description |
---|---|
Expiration time of key | Expiration time of the key to be valid in the platform |
Expiration time of upgrade service | Expiration time of upgrade service provided by the platform |
Internal user quota | The available quota for valid member accounts in all organizations of the platform |
External user quota | The available quota for valid external users in all organizations of the platform |
3.1.4 Organizational and user change events
As shown in the above figure, it supports pushing events related to organizations and users within the platform to the configured address. The push will be triggered when creating organizations, changing organization names, registering new users, canceling user accounts, or users joining/leaving organizations.
Parameter Description:
Parameter Name | Type | Explanation |
---|---|---|
type | int | Event types, 100+are organizational related events; 200+are user related events 100: Create an organization 101: Changes in organizational information 102: New user registration 201: User information changes (including: changes in administrator roles under the organization, modification of user information, joining the organization, and account recovery) 202: User Resignation |
accountId | string | Account Id |
projectId | string | Organization Id |
extraDatas | string | Additional registration of organization information (JSON structure string), with value only when creating the organization |
ip | string | Operation IP |
source | string | Registration tracking code, distinguishing user registration source channels |
time | datetime | Operation time |
Example of event format:
{
"type": 1,
"accountId": "string",
"projectId": "string",
"extraDatas": "string",
"ip": "string",
"source": "string",
"time": "2024-01-01 00:00:00"
}
3.2 APaaS Operation
APaaS operation is the default application provided to partners' sales and operation personnel based on HAP platform after partners install and deploy Application Platform Core. Partners can customize the edition based on "APaaS Operation", authorize users through the "Authorization Work Order" module, and enable the corresponding functions of the platform.
3.2.1 Business Flowchart
As shown above, the "APaaS Operation" application provides a standard platform operation and management system, after the platform user signs up (the default organization created at registration is the free edition, and its function is consistent with the official free edition of HAP),the partner's sales personnel can apply for authorization for platform users in the "Authorization Work Order" module. After the work order is created, it will be approved by the operating personnel, and the authorization will be completed after the approval is completed.
3.2.2 Application Function Description
3.2.2.1 Application Data Initialization
After the installation and deployment of the platform, the following steps for data initialization need to be performed when entering the "APaaS Operation" application:
1. Configure the APIs for docking master data service
As shown above, click [Management] and the [API] worksheet in the application and modify the "Address" field of two records.
A: Configure the domain name of CRM service (i.e. master data service)
B: Configure the token of the service
Note: Please get the above information from the installation and deployment personnel (if deployed by the HAP team, this operation will be provided during the initialization).
2. Sync authorization metrics, edition, and organization information
When syncing the above information, please follow the order of operation, there are two ways to sync:
A: Click [Management] and [Sync Data] in the application, and click buttons on the page to sync
As shown above, after entering the page, click the sync buttons on the left side of the page in order.
B: Manual synchronization via workflow
As shown above, follow the order marked on the figure to enter the workflow and click the "Execute immediately" button in the upper right corner of the details page.
3. Add members to the application role "Sales" and "Operation"
After the data synchronization is completed, initialize the members of operation role. Partners can invite company members to sign up for the platform account, add them to the platform organization, then add them to the corresponding roles in "APaaS Operation" application.
3.2.2.2 Organization Management
Organization management provides all the organization information of the platform, including the basic and authorization information of all organizations. The organization information of the platform is automatically synchronized through workflows, and the default synchronization frequency is once an hour for the incremental organization information of the day. Organization anagement mainly includes the following:
1. Sync Organization Information
Since the organization information is synchronized to the "Organization" worksheet through the workflow, and there are some timing and measurement information, so the data cannot be updated in real time. You can use the "Sync Data" button on the organization details page to synchronize the latest organization information (it is recommended to "Sync Data" in time).
2. Disable Organization
Please be cautious with this operation. The main effects of disabling an organization include:
A: The "purchased product edition" of the disabled organization will be updated to: free version;
B: All the "additional purchase metrics" in the disabled organization will be changed to "invalid" status.
3. Cancel Authorization
Cancelling authorization is to cancel the "organization's additional purchase metrics" (after cancellation, the additional purchase metrics, the additional purchase metrics in the organization will be invalid). It is applicable to the cancellation of an organization's additional purchase metrics when there is an authorization error.
3.2.2.3 Product Management
Product management includes authorization metrics and editions, among which, authorization metrics are the basic function items or function collections provided by the HAP platform. Authorization metrics information cannot be added, edited, or deleted (if there are new items, operators can synchronize them through the timed workflow "[Authorization Metrics] Data Synchronization"); partners can define their own editions in the [Edition] module (the edition is a collection of authorization metrics). The edition information can be edited (including the authorization metrics in the edition, which can be added, deleted, or modified), but cannot be deleted. When the platform is initialized, the Standard Edition, Professional Edition and Ultimate Edition are provided by default.
3.2.2.3.1 Edition
1. Edition List
2. New Edition
Description of fields in the Edition worksheet:
Field | Description |
---|---|
Edition Code | Unique identifier for the edition, cannot be modified after edition is created. |
Category | It is a reserved field for partners to define the category according to their needs. For example, a product edition can be defined separately for special customer requirements, and tagged with the "Customized Product". |
Status | When the status is "Discontinued", the discontinued editions cannot be selected in the Authorization Work Order module. |
Default Edition | There can be only one default edition, which is the default trial edition of the product when the organization is created, and the trial period can be edited. |
Authorization Metrics->Usage Limit | When the authorization metric in the edition is of counting type, the operating personnel can define the usage limit of the metric. Enter "an integer greater than 0" or "unlimited", all other characters are invalid ("unlimited" means that the usage of the metric is not limited). |
3.2.2.3.2 Authorization Metrics
For the data in the Authorization Metrics worksheet, all the fields are read-only except for the "Status" field, which can be edited. When the platform is upgraded (adding authorization metrics), users need to synchronize manually (in the Sync Data worksheet, click "Sync Authorization Metrics"), or wait for the timed workflow "[Authorization Metrics] Data Synchronization" to synchronize automatically.
Description of fields in the Authorization Metrics worksheet:
Field | Description |
---|---|
Metric Code | Read-only field |
Billing Nature | Used to distinguish whether the authorization metric is of "counting " type |
Status | When defining the edition, you can't check the metrics of invalid status |
Category | The default categories provided by HAP include Basic Capability, Advanced, Integration, and Value-added Service; generally "integration" refers to the integration with third-party platforms; "value-added service" is a metric used for measurement. |
3.2.2.4 Authorization Management
Authorization management is a way to authorize functions to the organization after the approval of the "authorization work order". Authorization types include the following:
A: New Purchase
It refers to customers who purchase for the first time (i.e. organization).
B: Renewal
It refers to the organization after the expiration, continues the services (you can change the version and purchase additional indicators, etc.).
C:Additional purchase
It refers to the additional purchase of other authorized metrics based on the purchased product and services (after approval, the metrics are incremented).
D: Upgrade
It generally refers to upgrading the product version (also can purchase additional metrics).
E: Recharge
Recharge the balance of the organization for SMS consumption, purchase of platform services, etc.
Description of fields in the Authorization Work Order worksheet:
Field | Description |
---|---|
Approval Status | By default, there are three statuses: draft, approved, and approval failed. The default authorization status of work orders created by users is "draft". After the work order is created, the application operator is notified by the workflow, and the approval status is updated after the operator approves the work order. |
Authorization Status | The default status is normal. When the approval finishes, if the authorization status is abnormal, it means the authorization fails, and you can check the reason of failure in the "Description of Authorization Abnormality" field. In this case, you need to check whether the "usage limit" of the authorization metrics in the work order is abnormal, or check whether the main data service is running normally. |
Additional Purchase Metrics | You can only add metrics in the "value-added services" line, and you need to fill in the "usage limit" corresponding to the metrics, which only supports integers greater than 0. |