iconik System Architecture

iconik is a globally load-balanced hybrid cloud system comprising of microservices. It is designed to be cloud-vendor independant but utilises services from multiple different cloud services.

Transcode
Transcode
Clients
Clients
colo / dc /
on-premises third-party integration
colo / dc /<br>on-premises third-party integration
Cloud Service Provider
Cloud Service Provider
Region 1
Region 1
Zone 1
Zone 1<br>
Kubernetes cluster
Kubernetes cluster
Kubernetes
Kubernetes Engine

Microservice deploy
[Not supported by viewer]
Microservices
Compute Engine

Nodes
[Not supported by viewer]
Files
Cloud Storage

Multiple Buckets
[Not supported by viewer]
Vision
API
[Not supported by viewer]
Cloud Video
Intelligence API
Cloud Video<br/>Intelligence API
Cassandra
Compute Engine
[Not supported by viewer]
Persistent
Disk
Persistent<br/>Disk
Monitoring
Stackdriver
[Not supported by viewer]
Global DNS
Cloud DNS
[Not supported by viewer]
Analysis
BigQuery

Usage and stats
[Not supported by viewer]
Cloud Load
Balancing
Cloud Load<br/>Balancing
Region 2
Region 2
Zone 1
Zone 1
Kubernetes cluster
Kubernetes cluster
Kubernetes
Kubernetes Engine

Microservice deploy
[Not supported by viewer]
Microservices
Compute Engine

Nodes
[Not supported by viewer]
Files
Cloud Storage

Multiple Buckets
[Not supported by viewer]
Vision
API
[Not supported by viewer]
Cloud Video
Intelligence API
Cloud Video<br/>Intelligence API
Name
Compute Engine
[Not supported by viewer]
Persistent
Disk
Persistent<br/>Disk
Analysis
BigQuery

Usage and stats
[Not supported by viewer]
on-premises
on-premises
Desktop
Desktop
Laptop
Laptop
Phone
Phone
iconik
Storage
Gateway

[Not supported by viewer]
Media Convert
Media Convert
Application
Application
Database
Database
Storage
Storage
Transcoders
Transcoders
encoding.com
encoding.com
ZencoderAWSElementalTelestreamCloudTelestreamVantage
Authentication
Authentication<br>
Google Apps
[Not supported by viewer]
Auth0ADFS
Analysis of content
Analysis of content
AWS Rekognition
AWS Rekognition
GCS Vision
API
GCS Vision<br>API<br>
GCS Video
Intelligence
[Not supported by viewer]
Storage
Storage<br>
AWS S3
AWS S3
BackBlaze B2
[Not supported by viewer]

<div style="text-align: center"><div style="text-align: left"><div style="text-align: right"><div style="text-align: left"><br></div></div></div></div>
GCS Cloud
Storage
GCS Cloud<br>Storage<br>

Image showing the overview of iconik with third-party integrations

iconik mainly runs on Google Cloud Platform utilising global load balancing with failover support. Google Kubernetes Engine is responsible for managing individual microservices on Google Cloud, so there are always enough running instances of a particular service in a region to handle the current load and any potential failure. These individual services can be grown as needed.

The main database is Apache Cassandra, and 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 asa 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 microservice.

Application monitoring

Overall monitoring of the iconik application is deployed on a separate architecture in Amazon AWS so as not to be dependant on the same provider of infrastructure as the main iconik application. This utilises a serverless architecture using AWS Lambda, AWS CloudFront, AWS CloudWatch, AWS SNS and AWS S3.

A public page for current status of iconik is available at https://status.iconik.io

More in-depth information

Security is covered by the Security section of this help documentation.