SAMi - Smart API Marketplace Documentation
Deploy SAMi from Google Cloud Marketplace
- 1 Overview
- 1.1 1. How does SAMi help your business?
- 1.2 2. SAMi Architecture
- 1.3 3. Deploy SAMi -
- 1.3.1 About Google Click to Deploy
- 1.3.1.1 Pre-requisites:
- 1.3.2 Quick install with Google Cloud Marketplace
- 1.3.3 Command-line instructions
- 1.3.4 Prerequisites
- 1.3.4.1 Set up command-line tools
- 1.3.4.2 Configure kubectl to connect to the cluster
- 1.3.4.3 Clone this repo
- 1.3.4.4 Install the Application resource definition
- 1.3.5 Install the app
- 1.3.6 4. Configure SAMi post installation
- 1.3.7 5. Deleting your SAMi installation
- 1.3.8 Delete the GKE cluster
- 1.3.1 About Google Click to Deploy
Overview
SAMi, Smart API Marketplace is a platform product designed to provide digital solutions for tech e-commerce website businesses. It assists in driving and accelerating the adoption of new revenue streams in the market through digital transformations. SAMi offers comprehensive solutions for companies, with wide-ranging capabilities aimed at generating focused value. For more information, please visit the official SAMi website. SAMi
SAMi can be deployed from GCP marketplace by -
UI inputs
Command-line steps
Below are a few details on SAMi and crisp steps to install SAMi & proceed to configure, use & accelerate your business. To activate SAMi license, please contact or send an email to - sami-connect@sidgs.com
For any further queries, get in touch with SAMi Support - sami-support@sidgs.com
1. How does SAMi help your business?
Expedite the time to market for digital services
Micro-service to API assets creation & publishing
Co-own assets for better collaboration & quicker market responses
Streamline the partner onboarding and enhance experience
Role based Workflow Task Automation with teams & approvals
User-friendly UI interface - single-click approach with invite users
Self service - Discover API Products, Try APIs real-time & API Subscription capabilities
Supercharge partner and developer engagement
One stop shop to drive digital growth
Organized, yet flexible & firm ecosystem build, learn & change enablement
Unified portal for UAT and production entitlement & consumption
A Comprehensive catalog of APIs
Powerful search and filtering with horizontal Categorizations
Summarized & detailed views of API Products, Description, sandbox - endpoints, parameters, responses, documentation, and support elements for app building
BIAN Reference catalog
Proactively manage your API products and portfolios
Regular usage feedback using analytics based on personas
Built-in tools for quick asset onboarding & Publishing
Future proof your technology, business & reach
Through a robust, cloud-native, pre-secured and resilient platform.
SAMi is extensible with multiple API gateway platforms for a unified marketplace experience
Below is a brief on licensed features of SAMi -
Product-APIs Marketplace/ Developer portal
A unique APIs marketplace with API-Product catalogs, Order Management, Entitlement Management & Fulfillment
Elastic Search for Products across multiple categories
User Dashboards for Product Managers, Developers, Partners
Marketplace styling, Notifications and Alerts
Developer-Hub & Publisher-Hub Integrations
Onboard Developers by invite or signup option
Unified Experience for all api-products listed in the same platform with options to test using available SDKs and API specifications
API proxies, APIs design, development and test facilitation in various environments [Developer, UAT, Pre-prod, production]
Multiple Apps subscription & Teams creation for effective collaboration
Community forums & Knowledge-Base for broader collaboration & community building
Product Management with Monetization
Unified Product Catalog Management of multiple Product categories
Set Recommendations of Products for user consumption
Monetize API-Products with personalized Rate plans for products with a single product supporting multiple rate plans
User Ratings for products
Subscription Management
Centralized Subscription Management for all category API products
Active & Inactive subscription listings with individual Active durations & Subscription Approval Management
Profile Management of individual developers, Product Managers, and Administrators
Product Unsubscribe and App disablement options are available
Assets management
Manage all assets like SDKs, API specifications, Product Features & FAQs from a single pane
Reuse Assets for Products resulting in efficient portfolio consolidation
Create & manage Product SKUs with versioning & permissions for users
Optional workflow for asset publishing
Analytics
API Usage statistics
Individual Rate-based billing reports
Product Analytics for user engagement
2. SAMi Architecture
3. Deploy SAMi -
About Google Click to Deploy
Popular open-source software stacks on Kubernetes, packaged by Google is a standard method used to deploy SAMi.
Pre-requisites:
To Deploy a Kubernetes Application, you need the following permissions:
Project: <Enter your project name>
All of:
container.thirdPartyObjects.create
container.thirdPartyObjects.update
container.roleBindings.create
container.jobs.create
container.configMaps.create
container.secrets.create
To acquire access, contact your organization administrator.
To request SAMi license, please contact or send an email to - sami-connect@sidgs.com
For any further queries, get in touch with SAMi Support - sami-support@sidgs.com
Quick install with Google Cloud Marketplace
Get up and running with a few clicks! To install SAMi application to a Google Kubernetes Engine cluster using Google Cloud Marketplace, click on - Deploy SAMi on GCP Marketplace.
The below SAMi page with Product details & purchase choice is displayed in the GCP marketplace.
Proceed by clicking on Purchase button, follow the rest of the steps as guided on UI to enter related & relevant valid information. Post completion of the previous steps, the product details page is loaded. To access the deployment page, click on the "Configure" button as seen below -
The image provided showcases the deployment page for the SAMi application, highlighting several key fields:
Existing Kubernetes Cluster: This dropdown menu enables the selection of an existing Kubernetes cluster for deploying the application. Kubernetes is renowned for its capability to automate - deployment, scaling, and management of containerized applications.
Namespace: Designates the Kubernetes namespace targeted for application deployment. Namespaces are devised for scenarios with numerous users distributed among various teams or projects.
App Instance Name: Assigns a unique identifier or name to this particular application instance.
operator.serviceAccountName: This field is utilized to either create a new service account or designate an existing one. This account is used by the operator (application) to interact with the Kubernetes API.
Portal Hostname: Specifies the hostname for the portal, providing user access to the application. An example hostname is provided below:
sample.application.io
Management URL for Integration: Outlines the URL for managing the application's integration with other services or platforms. The URL format is specified as follows:
https://<portal hostname>/vsp/api/vds
An example for reference:
https://sample.application.io/vsp/api/vds
https://sample.application.io/vds/vsp/api
Liferay URL: This URL is crucial for integrating the Liferay application to serve the UI portal. The required URL format is:
For instance:
Use Inbuilt Standalone Database: This toggle option determines whether to utilize the application's inbuilt standalone database.
The application fundamentally uses PostgreSQL as its underlying database and the EMBEDDED database should be installed as a part of the deployment in the current version
Postgres Database Hostname for Apigee Edge (OPTIONAL): The hostname of the PostgreSQL database for application connectivity.
Postgres Database Name for Apigee Edge (OPTIONAL): Database name used for application connectivity.
Postgres Username for Apigee Edge (OPTIONAL): Username for connecting the application to the PostgreSQL database.
Postgres Database Password for Apigee Edge (OPTIONAL): Password for the PostgreSQL database connection.
Info |
---|
The database configuration below can be same as the above database configurations. |
Postgres Database Hostname for Apigee X/Hybrid/PayG (OPTIONAL): The hostname of the PostgreSQL database for application connectivity.
Postgres Database Name for Apigee X/Hybrid/PayG (OPTIONAL): Database name used for application connectivity.
Postgres Username for Apigee X/Hybrid/PayG (OPTIONAL): Username for connecting the application to the PostgreSQL database.
Postgres Database Password for Apigee X/Hybrid/PayG (OPTIONAL): Password for the PostgreSQL database connection.
Reporting Service Account: This dropdown menu facilitates the selection of a service account for reporting purposes. It authenticates and accesses GCP services to generate reports.
Note: Hostname, and database name may contain only the ASCII letters a through z (in a case-insensitive manner), the digits 0 through 9, and the hyphen character ('-').
Command-line instructions
One can complete deployment of SAMi using these below steps with Google Cloud Shell or a local workstation.
"Need to place the SAMi GCP marketplace app link"
Prerequisites
Set up command-line tools
You'll need the following tools in your environment. If you use Cloud Shell, gcloud
, kubectl
, Docker, and Git are installed in your environment by default.
Configure gcloud
as a Docker credential helper:
Code Block |
---|
language bash |
Create a Google Kubernetes Engine cluster
Create a cluster from command-line. If you already have a cluster that you want to use, skip this step. Use region-appropriate zones for the deployment, below is an example. For more information on setting the right zone, please refer to https://cloud.google.com/compute/docs/gpus/gpu-regions-zones.
Configure kubectl
to connect to the cluster
Clone this repo
Clone this repo and its associated tools repo:
Install the Application resource definition
An Application resource is a collection of individual Kubernetes components, such as Services, Deployments, and so on, that you can manage as a group.
To set up your cluster to understand Application resources, run the following command:
The command has to be executed once for each cluster chosen for deployment.
The Application resource is defined by the Kubernetes SIG-apps community. The source code can be found on github.com/kubernetes-sigs/application.
Install the app
Navigate to the SAMi
directory:
Code Block |
---|
languagebash |
Configure the app with environment variables
Choose an instance name and namespace for the app. In most cases, you can use the default
namespace.
Code Block |
---|
language bash |
Set up the image tag:
It is advised to use stable image reference which you can find on Marketplace Container Registry. Example:
Code Block |
---|
languagebash |
Configure the container images:
Code Block |
---|
languagebash |
Code Block |
---|
language bash |
Expand the manifest template
Code Block |
---|
language bash |
Apply the manifest to your Kubernetes cluster
Use kubectl
to apply the manifest to your Kubernetes cluster. This installation creates:
4. Configure SAMi post installation
Once SAMi is deployed, it can be verified by logging into the browser by opening the
It generally takes around 10-15 mins for initial setup for bringing up the UI.
SAMi license can be requested, applied as seen in steps of below link & further configured for application & usage from here - https://sidgs.atlassian.net/wiki/spaces/SM/pages/2982445506
5. Deleting your SAMi installation
Alternately, you can delete the resources by using types and a label:
Delete the GKE cluster
Optionally, if you no longer need the deployed app or the GKE cluster to which it is deployed, you can delete the cluster by running the following command:
© 2024 SID Global Solutions | https://www.mysami.io | https://www.sidgs.com | +1 484-218-0021