EKS News 006

A lot of thankless work is being in the upstream Kubernetes project everyday. There’s no time like the present to acknowledge the hard work of others. This week I’d like to thank the folks working on the dockershim removal documentation for the 1.24 release. This tiger team is in charge of updating all the Kubernetes documentation with regard to Docker Engine. This often includes updates that need a deep understanding of the inner workings of Kubernetes. Thank you!

This week we’ll using EKS and ALBs to expose multiple applications, multi-tenacy in ArgoCD aws-load-balancer-controller and more!

How To Expose Multiple Applications on Amazon EKS Using a Single Application Load Balancer

  • Every suffix (“/”) at the end of a web address will point to a different microservice… This type of load balancing or routing is known as path-based routing (routing based in the URL path).
  • Demonstrates how to expose your applications that are running as containers and being orchestrated by Amazon EKS through an Application Load Balancer
  • AWS Load Balancer Controller is a controller that helps manage Elastic Load Balancers for Kubernetes clusters
  • Different teams can be completely independent from each other because they can deploy and manage their own services and ingresses while relying on the ALB.

Best Practices for Multi-tenancy in Argo CD

  • Argo CD supports RBAC and SSO which allows admins to specify and scope permissions based on user or role
  • Today, there are two choices when using Argo CD with untrusted users:
  1. Admins can carefully control the contents of connected git repositories via permissions in git and set limitations on which repositories can be added to Argo CD.
  2. Each set of users can operate on independent instances of Argo CD. Either approach will prevent users from accessing secrets or components that are beyond their expected scope.

Auto Scaling CI Agents At Wix

Our summary is a direct quote of some of their summary:

  • Identified bottlenecks and missing features on our legacy architecture.
  • Redesigned the Infrastructure to enable scale & configurability.
  • Used awesome open source projects in order to implement generic automated scaling: K8S, KEDA and Prometheus.
  • Designed a monitoring solution in order to make the right decisions and be cost-effective.

PredictKube - an AI-based predictive autoscaler for KEDA made by Dysnix

  • Dysnix has built PredictKube, a KEDA-based scaler that is responsible for resource balancing * AI model that has learned to react proactively to patterns of traffic activity
  • Help with both in-time scaling and solving the problem of overprovision

kubernetes-sigs/aws-load-balancer-controller: A Kubernetes controller for Elastic Load Balancers

  • Just updated! Now uses the new Ingress API version networking.k8s.io/v1 available in kubernetes 1.19 and later releases
  • IMPORTANT If you are upgrading the controller from a prior version to v2.4.0, please apply the entire manifest or use helm due to the webhook changes.
  • It satisfies Kubernetes Ingress resources by provisioning Application Load Balancers
  • It satisfies Kubernetes Service resources by provisioning Network Load Balancers

GitHub - Amazon Managed Grafana Roadmap

GitHub - Amazon Mananaged Prometheus Roadmap