Installation
This section explains how the installation of the Apinizer Platform is performed.
Installation Prerequisites
Before installing the Apinizer Platform, ensure that the necessary prerequisites are in place. Verify that the operating system is supported and that you have the required development platforms before starting the installation process.
Supported Operating Systems
As Apinizer operates on Kubernetes, it supports all operating systems that have Kubernetes installed.
Installation Topologies
The requirements below are stated for the recommended minimum configuration. You can adjust them based on your service loads.
Apinizer does not recommend a single-server installation for a production environment. Consider such an installation configuration only for PoC (Proof of Concept) environments.
Do not use Test/PoC installations for load testing purposes! If you are interested in discussing the proper configuration for load testing, please refer to our Benchmark Results page or get in touch with us.
Topology/Purpose | No | Operation System | CPU | RAM | Disk | Installation |
PoC Deployment | Server 1 | Ubuntu Server 22.04.02 LTS | 8 Core | 16 GB | 100 GB | Kubernetes Master and Worker, Elasticsearch, Replica set MongoDB Single Instance |
Test/ Minimum Deployment | Server 1 | Ubuntu Server 22.04.02 LTS | 8 Core | 16 GB | 200 GB | Kubernetes Master, Elasticsearch, Replica set MongoDB Single Instance |
Test/ Minimum Deployment | Server 2 | Ubuntu Server 22.04.02 LTS | 8 Core | 12 GB | 40 GB | Kubernetes Worker |
Starter Deployment | Server 1 | Ubuntu Server 22.04.02 LTS | 8 Core | 16 GB | 500 GB | Kubernetes Master, Elasticsearch, Replica set MongoDB Single Instance |
Server 2 | Ubuntu Server 22.04.02 LTS | 8 Core | 12 GB | 40 GB | Kubernetes Worker | |
Professional Deployment | Server 1 | Ubuntu Server 22.04.02 LTS | 8 Core | 32 GB | 1 TB | Kubernetes Master, Elasticsearch, MongoDB Replica Set |
Server 2 | Ubuntu Server 22.04.02 LTS | 10 Core | 12 GB | 40 GB | Kubernetes Worker | |
Server 3 | Ubuntu Server 22.04.02 LTS | 10 Core | 12 GB | 40 GB | Kubernetes Worker | |
High Available Deployment | Server 1 | Ubuntu Server 22.04.02 LTS | 4 Core | 4 GB | 40 GB | Kubernetes Master |
Server 2 | Ubuntu Server 22.04.02 LTS | 4 Core | 4 GB | 40 GB | Kubernetes Master | |
Server 3 | Ubuntu Server 22.04.02 LTS | 4 Core | 4 GB | 40 GB | Kubernetes Master | |
Server 4 | Ubuntu Server 22.04.02 LTS | 12 Core | 16 GB | 40 GB | Kubernetes Worker | |
Server 5 | Ubuntu Server 22.04.02 LTS | 12 Core | 16 GB | 40 GB | Kubernetes Worker | |
Server 6 | Ubuntu Server 22.04.02 LTS | 12 Core | 16 GB | 40 GB | Kubernetes Worker | |
Server 7 | Ubuntu Server 22.04.02 LTS | 4 Core | 4 GB | 200 GB | MongoDB Replica Set 1 | |
Server 8 | Ubuntu Server 22.04.02 LTS | 4 Core | 4 GB | 200 GB | MongoDB Replica Set 2 | |
Server 9 | Ubuntu Server 22.04.02 LTS | 4 Core | 4 GB | 200 GB | MongoDB Replica Set 3 | |
Server 10 | Ubuntu Server 22.04.02 LTS | 8 Core | 64 GB | 2 TB | Elasticsearch Cluster 1 | |
Server 11 | Ubuntu Server 22.04.02 LTS | 8 Core | 64 GB | 2 TB | Elasticsearch Cluster 2 |
Pre-Installation Decisions
To efficiently use Apinizer, it is recommended to decide on how it will be used, and then install and configure Apinizer with these settings. Therefore, having answers to some questions ready will greatly expedite the installation and configuration process. The Apinizer team has shared these questions below, along with some alternative suggestions. These alternatives are written in the order of recommendation based on the experience of the Apinizer team. In the "Your Preference" field, you are expected to provide your feedback by either writing the suggested item and your comments or directly stating your preference.
Question | Our Recommendations | Your Preference |
---|---|---|
Will the necessary applications such as Kubernetes Cluster and MongoDB be installed, or are they already in place and ready for use by Apinizer?If installation is required, will your organization's staff handle it, or will the Apinizer team be provided with a dedicated server? |
| |
Is there any product other than WAF and firewall that controls the network where Apinizer will be installed and tightens security? |
| |
Is there any usage of the 10.244.x.x block in the network where Apinizer will be installed? |
| |
Which ports should Apinizer broadcast from on the servers it is installed on? |
| |
Will the DNS resolution for Apinizer be handled automatically on the servers there Apinizer is located? If not, are the IP-host mappings already available? |
| |
Will the Apinizer interface and workers be accessed via DNS? If yes, what will be the DNS configurations? |
| |
Where will SSL termination be performed? |
| |
If Apinizer is to be used outside your organization, from which IP address will it exit? Have the necessary (NAT) processes been implemented to allow Apinizer servers to exit from this address? |
| |
How will the Apinizer worker application (Core and RAM usage, JVM parameters) be configured? |
| |
How will the Kubernetes systems on which Apinizer will be installed be managed? |
| |
Where should traffic logs be written? |
| |
If the traffic logs are in the Elasticsearch managed by Apinizer, how will the backup of this data be taken? |
| |
Are there sensitive information in the traffic logs that should not be visible? If yes, what are these? In which parts of the messages should they not appear? |
| |
Where should application and token acquisition logs be written, if the settings are active? |
| |
If there are logs to be stored in the database, how will the growth be controlled? |
| |
Will the admin user account created with the initial installation be used for the Apinizer interface? If yes, who will be using it? |
| |
Will user management for those accesing the Apinizer interface be entirely handled through Apinizer, or will password authentication be done with LDAP/Active Directory? |
| |
How will the Apinizer support team provide support to your team using Apinizer, the Apinizer application and, if desired, the servers on which Apinizer is installed? |
|