diff --git a/README.md b/README.md index bb8b241..9dc5198 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,6 @@ The project centers around the implementation of Istio to enhance the advantages of a microservices architecture. -For cert-maneger to work correctly `--set meshConfig.ingressSelector=gateway --set meshConfig.ingressService=istio-gateway` to be able to resolve http01 challenge from lets-encrypt - - # Setup EKS Cluster ![alt text]() @@ -20,13 +17,14 @@ For cert-maneger to work correctly `--set meshConfig.ingressSelector=gateway --s Installation of Istiod consist of combination of pilot, citadel and gallery. Ensure to update meshconfig in the istiod.yaml to allow easy installation of cert-manager so as to be able to resolve http01 challenge from lets encrypt -![alt text](global-2.png) + +![alt text]() ![alt text]() Confirm if Istiod pod is running -![alt text]() +![alt text]() Now that Istio is deployed properly we can start managing traffic in the cluster using the istio control plane. @@ -34,47 +32,47 @@ We need to ensure istio inject sidecars to all pods which enhance and control co Ensuring istio is deployed in all pod in a namespace, in order for istio to manage traffic, each service must have an istio sidecar -![alt text]() +![alt text]() We have two deployments to simulate canary with each one having label version "v1" and "v2" respectively and label "app:first-app", which is used by service as the label selector and this will randomly route traffic between v1 and v2 -![alt text]() +![alt text]() -![alt text]() +![alt text]() To handle managing and shifting traffic, we make use of some istio custom resources # DestinationRule: Let you define the how you want to route your traffic using subsets and specifying appropriate labels and the service -![alt text]() +![alt text]() # Virtualservice: Lets you define how you want to route traffic to different versions using http or https -![alt text]() +![alt text]() The screenshot above just show all traffic will go the v1 version. Lets run the app-01 folder to deploy the application and explore how the traffic is covered. To test, we we used a client inside kubernetes which also has a sidecar -![alt text]() +![alt text]() -![alt text]() +![alt text]() Lets exec into the client and use curl to hit our first app service in the staging namespace. From the screenshot, we can see that we are only connecting the v1 application. -![alt text](image.png) +![alt text]() Now lets edit the virtual service to ensure traffic goes to v1 and v2 equally -![alt text]() +![alt text]() -![alt text]() +![alt text]() -![alt text]() +![alt text]() -Same with if we want all traffic to move to v2 only +Same with if we want all traffic to move to v2 only -![alt text](15.png) +![alt text]() -![alt text]() \ No newline at end of file +![alt text]() \ No newline at end of file diff --git a/15.png b/png/15.png similarity index 100% rename from 15.png rename to png/15.png diff --git a/Pasted Graphic 2.png b/png/Pasted Graphic 2.png similarity index 100% rename from Pasted Graphic 2.png rename to png/Pasted Graphic 2.png diff --git a/Pasted Graphic 3.png b/png/Pasted Graphic 3.png similarity index 100% rename from Pasted Graphic 3.png rename to png/Pasted Graphic 3.png diff --git a/Pasted Graphic 46.png b/png/Pasted Graphic 46.png similarity index 100% rename from Pasted Graphic 46.png rename to png/Pasted Graphic 46.png diff --git a/Pasted Graphic 47.png b/png/Pasted Graphic 47.png similarity index 100% rename from Pasted Graphic 47.png rename to png/Pasted Graphic 47.png diff --git a/Pasted Graphic 7.png b/png/Pasted Graphic 7.png similarity index 100% rename from Pasted Graphic 7.png rename to png/Pasted Graphic 7.png diff --git a/You, 2 days ago 1 author (You).png b/png/You, 2 days ago 1 author (You).png similarity index 100% rename from You, 2 days ago 1 author (You).png rename to png/You, 2 days ago 1 author (You).png diff --git a/deployment.appsfirst-app-v2 unchanged.png b/png/deployment.appsfirst-app-v2 unchanged.png similarity index 100% rename from deployment.appsfirst-app-v2 unchanged.png rename to png/deployment.appsfirst-app-v2 unchanged.png diff --git a/global-1.png b/png/global-1.png similarity index 100% rename from global-1.png rename to png/global-1.png diff --git a/global-2.png b/png/global-2.png similarity index 100% rename from global-2.png rename to png/global-2.png diff --git a/image.png b/png/image.png similarity index 100% rename from image.png rename to png/image.png diff --git a/io.k8s.api.core.v1.Service (v1@service.json) You, 2 days ago l.png b/png/io.k8s.api.core.v1.Service (v1@service.json) You, 2 days ago l.png similarity index 100% rename from io.k8s.api.core.v1.Service (v1@service.json) You, 2 days ago l.png rename to png/io.k8s.api.core.v1.Service (v1@service.json) You, 2 days ago l.png diff --git a/kind VirtualService-1.png b/png/kind VirtualService-1.png similarity index 100% rename from kind VirtualService-1.png rename to png/kind VirtualService-1.png diff --git a/kind VirtualService.png b/png/kind VirtualService.png similarity index 100% rename from kind VirtualService.png rename to png/kind VirtualService.png diff --git a/virtualservice.networking.istto.tofirst-app confiqured-1.png b/png/virtualservice.networking.istto.tofirst-app confiqured-1.png similarity index 100% rename from virtualservice.networking.istto.tofirst-app confiqured-1.png rename to png/virtualservice.networking.istto.tofirst-app confiqured-1.png diff --git a/virtualservice.networking.istto.tofirst-app confiqured.png b/png/virtualservice.networking.istto.tofirst-app confiqured.png similarity index 100% rename from virtualservice.networking.istto.tofirst-app confiqured.png rename to png/virtualservice.networking.istto.tofirst-app confiqured.png