I would have never believed that I would be excited about Authentication and Authorization. What on the technological spectrum could Istio possibly do to make me excited about these dreadful topics, and more importantly why should it excite you as well? Because, Istio takes these responsibilities from our services and offloads them to the Envoy
CategoryKubernetes
Authorization in Istio
Authorization with Auth0 Authentication enables us to know who a user is, but we need the authorization to know what they can access. Istio provides the tools for this as well! As an example, we’ll create two groups of users (shown in figure 24): Users: with access to only the SA-WebApp and SA-Frontend service. Moderators:
Istio series Summary
Tap yourself on the back, you are amazing for sticking with this it definitely wasn’t easy, there were bumps along the way and it wasn’t as smooth as I presented. But now you mastered this amazing technology! Istio? Let’s call it Beast-io!! Because it’s such a BEAST! It provided us with: Observability over our services
Timeouts, Retries and CircuitBreakers with Istio
It’s not always that the code is buggy. In the list of “The 8 fallacies of distributed computing” the first fallacy is that “The network is reliable”. The network is definitely NOT reliable, and that is why we need Timeouts and Retries. For demonstration purposes, we will continue to use the buggy version of sa-logic, where
Canary Deployments with Istio
Canary Deployment is the process of rolling out a new version of an application to a small set of users, as a step to verify the absence of issues, and then with a higher assurance of quality release to the wider audience. Let’s continue with the same buggy subset of sa-logic to demonstrate canary deployments,
Shadowing – VirtualServices in Practice
Shadowing or Mirroring is used when we want to test a change in production but not affect end-users, so we mirror the requests into a second instance that has the change and evaluate it. To phrase it simpler it’s when one of your colleagues picks the most critical issue and makes a Big ball of
A/B Testing – DestinationRules in Practice
Traffic Management Using the Envoy’s Istio provides a host of new capabilities to your cluster enabling: Dynamic request routing: Canary deployments, A/B testing, Load balancing: Simple and Consistent Hash balancing Failure Recovery: timeouts, retries, circuit breakers. Fault Injection: delays, abort requests etc. In this series, we will showcase these capabilities in our application and get
Istio out of the box: Kiali, Grafana & Jaeger
Istio features out of the box By intercepting all network communication Istio is fed with metrics and data that can be used to gain observability of the whole application. Kiali, an open source project uses this data to provide the answer to the question: What microservices are part of my Istio service mesh and how
Istio in Practice – Routing with VirtualService
The VirtualService resource The VirtualService instructs the Ingress Gateway how to route the requests that were allowed into the cluster. For our application requests coming through the http-gateway must be routed to the sa-frontend, sa-web-app and sa-feedback services (shown in figure 1). Let’s break down the requests that should be routed to SA-Frontend: Exact path
Istio in Practice – Ingress Gateway
Intro to Ingress Gateway A best practice for allowing traffic into your cluster is through Istio’s Ingress Gateway which positions itself at the edge of the cluster and on incoming traffic enables Istio’s features like routing, security, monitoring. During Istio’s installation, the Ingress Gateway component and a service that exposes it externally were installed into
Getting started with Istio
To set up Istio you need a Kubernetes Cluster with at least 4 vCPU and 8 GB of RAM. This guide is tested with the following Kubernetes Implementations: Google Container Engine (GKE) Azure Kubernetes Service (AKS) Digital Ocean (20 days free Kubernetes link) After creating the cluster and configuring access with the Kubernetes command line
Istio an introduction
Foreword In the projects that we use Kubernetes, as the number of Services increased we started to lose observability and control. So I explored Istio, and before just jumping into it and having everything in production, I updated my sample application from the series Kubernetes and everything else and tested Istio out, and then got it