Kubernetes and MongoDB Installation
Question: Will the Kubernetes Cluster and applications like MongoDB that Apinizer needs be installed, or are they already available and will be used? If they will be installed, will your organization’s employees install them, or will servers be allocated to the Apinizer team? If they will be installed by the Apinizer team, will the servers have limited or full internet access? Our Recommendations:- Using these components if they are already available in your organization
- Having them prepared by your team if installation will be done
- Having them installed by the Apinizer team if installation will be done
- If installation will be done by the Apinizer team, the relevant servers must have the accesses specified in the Network Topology and Port Requirements page
Network Security
Question: Is there a product other than WAF and firewall that controls the network where Apinizer will be installed and performs security hardening? Our Recommendations:- If such a product exists, it should be reported as it can block internal traffic of the cluster where Apinizer is located, which is important to speed up solution search in case of possible problems. This information can be obtained from your organization’s Network and Security Unit employees
Network Blocks
Question: Is there any usage in the 10.244.x.x block in the network where Apinizer will be installed? Our Recommendations:- If it is being used, Apinizer installation will need to be installed on another block, so this information should be obtained from your organization’s network team
Port Configuration
Question: From which ports should Apinizer broadcast on the servers where it is located? Our Recommendations:- From the 30000-32767 range, 32080 for Manager, 30080 or 30090 for worker
- At ports to be set under the management of your organization’s DevOps Team (from the same range or using nginx ingress)
DNS Configuration
Question: Will the DNSs that Apinizer will access be automatically resolved on the servers where Apinizer will be located? If not, are these IP-host definitions available as ready? Our Recommendations:- Setting servers to automatically resolve these addresses, as they may change even if very rarely
- Preparing hostname-IP pairs as a list to be added to Apinizer
- Addresses such as
apiyonetim.kurum.comandapi.kurum.com
SSL Termination
Question: Where will SSL termination be done? Our Recommendations:- On your organization’s firewall
- In the application where your organization performs DNS redirection and load balancing operations
- In Apinizer worker applications
External Access
Question: If Apinizer will be used outside your organization, from which IP will it exit? Have the necessary (NAT) operations been performed for Apinizer servers to exit from this address? Our Recommendations:- Not changing your organization’s existing exit, Apinizer also exiting from this address
Worker Configuration
Question: How will Apinizer’s worker application (Core and RAM usage, JVM parameters) be configured? Our Recommendations:- Dividing your existing license into two or three and entering appropriate JVM parameters and distributing to multiple containers accordingly
- With different settings according to your organization’s applied policy
Kubernetes Management
Question: How will the Kubernetes systems where Apinizer will be installed be managed? Our Recommendations:- From the Apinizer interface
- With methods belonging to your organization
Log Management
Question: Where should traffic logs be written? Our Recommendations:- To one of the servers allocated with Elasticsearch that Apinizer will install
- To another application set up by your organization
Pre-Installation Checklist
- Kubernetes and MongoDB installation strategy determined (ready, who will install, internet access)
- Network security products (other than WAF, firewall) identified and reported
- Network blocks checked (10.244.x.x usage)
- Port configuration decision made (Manager and Worker ports)
- DNS configuration planned (automatic resolution or hostname-IP list)
- Apinizer access DNSs determined (apiyonetim.kurum.com, api.kurum.com, etc.)
- SSL termination point determined
- NAT configuration planned for external access
- Worker configuration decision made (JVM parameters, container count)
- Kubernetes management method determined (Apinizer interface or organization methods)
- Log management strategy determined (Elasticsearch or external system)

