Minimum System Requirements
Single Node Versus Multiple Nodes
You can start with a minimal node pool containing a single node. However, it's often recommended to have at least three nodes for high availability and fault tolerance. The actual number of nodes you need will depend on your workload's resource requirements and desired redundancy. IDHub recommends having at least 4 nodes cluster (1 Master node with 3 worker nodes).
IDHub can be run on any Cloud or local Kubernetes Cluster. For Cloud, this can be either Google Kubernetes Engine (GKE), Amazon EKS, Azure Kubernetes Service (AKS), etc., or for local, you may use KIND or MicroK8s.
GCP: You need a Google Cloud Platform (GCP) account and a project within GCP to create a GKE cluster. Also, you should ensure that you enable Kubernetes Engine API.
AWS: You need an AWS account to create and manage resources, including EC2 instances for your cluster.
Azure: You need an Azure subscription to create and manage resources,
Virtual CPUs and Memory
For IDHub workload, you will need the following machine types.
n2d-standard-2 (2 vCPU, 1 core, 8 GB memory)
The above is for GCP, but for any other cloud providers, the resources will be similar
A minimum of 3 with the above configuration
A persistent storage provided by your Kubernetes provider. A minimum of 40GB persistent storage will be required to run IDHub.
For GCP Container-Optimized OS or Ubuntu
For AWS: Amazon Linux, Ubuntu
For Azure: Ubuntu
GCP: You need to make sure that you have a properly configured Virtual Private Cloud (VPC) network in GCP for your GKE cluster. Network settings and firewall rules should be set up to allow communication with the cluster and any external services you need.
AWS: Set up security groups and network ACLs to control inbound and outbound traffic. Consider using Elastic Load Balancers (ELBs) or AWS Network Load Balancers (NLBs) for external traffic distribution.
Azure: Configure Network Security Groups (NSGs) and route tables to control inbound and outbound traffic. Use Azure Load Balancers to distribute external traffic to the cluster.
For other cloud providers, network configuration would be similar.
GCP - IAM Policies: We highly recommend to implement proper IAM (Identity and Access Management) policies to control who can access and manage your GKE cluster.
AWS - IAM Roles: Implement AWS Identity and Access Management (IAM) roles to manage permissions and access control for your nodes and services within the cluster.
Azure: Integrate with Azure Active Directory (Azure AD) for identity and access management. Use Azure AD Service Principals for secure access to Azure resources.
For other cloud providers, you should ensure implementing proper IAM controls or policies.
You need to make sure that the nodes have internet connectivity to pull container images and access external resources if required by your workloads.
For accessing Idhub, you may use either Google Chrome, Mozilla Firefox or Safari.