2. Who are we ?
● QuickSign is the European leader in digital onboarding for
financial services
● White label
● Now handling millions of digital subscriptions per year
10 years experience
15 countries
7. GitOps ??
“Put simply, GitOps is the art and science of
using Git pull requests to manage
infrastructure provisioning and software
deployment.”
https://www.twistlock.com/2018/08/06/gitops-101-gitops-use/
8. GitOps benefits
• One tool to rule them all
• Version control for all changes
• Easy diff between two moments
• Covers also supporting infrastructure: monitoring and logging
https://www.twistlock.com/2018/08/06/gitops-101-gitops-use/
12. Kubernetes is sweet pie for GitOps ;)
• Everything is described ... as YAML, easy to version
• Most state, can be dumped as YAML and “imported” / applied
• Diff engine built-in (kubectl apply)
13. Custom Resource Definitions (since 1.7)
• Your own Kubernetes resources ! yeah
• Ex: a product configuration per customer (POCO)
1. public static resources -> GCS bucket / CDN
2. BPMN models -> deployed in our BPMN engine
• “POCO deployer”: CRD Controller
15. Service labels, annotations and queries
• Extended service registry
• Overlay your own metadata
• Query services by its metadata
• We use it to specify the transport, data formats and protocol
schemes of our BPMN tasks
16. GPU
• GPU on GKE
• Attached to VM
• nvidia driver installed as daemonset
• Only pods asking for GPUs as allocated to GPU nodes
• More expensive
• one GPU are not shareable to multiple pods :-(
17. Ingress
• Ingress Nginx behind a GCE LB level 4 (TCP)
• We don’t use the GCE level 7 load balancer
1. All services are down when a route is created … WTF ?
2. No http to https redirection
18. Outbound gateway
• GCE VM with fixed IP
• outbound traffic goes through that VM to have a fix outbound IP
• required for external IP filtering
Gateway of India, Mumbai, India
19. HPA (Horizontal Pod Autoscaler)
• Sky is the limit in the Cloud
• Automatically add replicas when under load
• Stateless pods only for now (most are)
• PDB (Pod Disruption Budget) : max unavailable = 1
• On GKE: node auto-scaling