iconik is a globally load-balanced hybrid cloud system comprising of microservices. It is designed to be cloud-vendor independent and utilizes services from multiple different cloud services. iconik runs on Google Cloud Platform or Amazon AWS depending on customer configuration, utilising global load balancing with failover support between our redundant regions . The main services which are used within each cloud vendor are load balancing, compute resources, kubernetes, cloud storage, logging and monitoring and networking services. iconik is designed from the ground up to be highly resilient to failure and every component is chosen to be highly accessible and horizontally scalable.
Kubernetes is the orchestration engine responsible for managing individual microservices. This engine is responsible for redundancy, autoscaling and failover within a single region so there are always enough running instances of a particular service to handle the current load and any potential failure. These individual services can be scaled up and down as needed, depending on the current load.
The main database is Apache Cassandra, and it is running as a cluster within each individual region with replication to other regions to allow for both individual machine failures and region outages.
Other services such as RabbitMQ, Elastic, Transcode and Redis are managed and scaled by Kubernetes in each region.
iconik’s application layer is composed of microservices and presented through an application gateway service with centralised authentication and authorisation.
iconik on Google Cloud
On GCP, iconik uses the managed Google Kubernetes Engine (GKE) which in turn uses Google Compute Engine for the individual virtual machines. The default storage for media files is Google Cloud Storage but customers can bring their own storage from any of our supported storage vendors. We also integrate with Google Vision and Google Video Intelligence as the default AI services.
iconik on Amazon Web Services
On AWS, iconik uses the managed Elastic Kubernetes Service which in turn uses Amazon Compute Cloud (EC2) for the individual virtual machines. The default storage for media files is Amazon S3 but customers can bring their own storage from any of our supported storage vendors. We also integrate with Amazon Rekognition as the default AI service.
Image showing the overview of iconik on AWS with third-party integrations
Application monitoring
iconik monitoring is primarily done through Grafana but we also use other monitoring tools such as Google Cloud Observability and AWS CloudWatch.
A public page for the current status of iconik is available at https://status.iconik.io
More in-depth information
- Microservices
- Hybrid Cloud
- System Architecture and Redundancy
- Technology
- Upgrades
- Backup
- Disaster Recovery Plan
Security is covered by the Security section of this help documentation.